Paste a packet's ingredient list to check INS codes, FSSAI permission, source-dependent additives, and veg-dot implications.
100% private - everything runs in your browser, no data is sent anywhere
Indian Food Ingredient Checker - INS, FSSAI, Veg-dot
100% private - your ingredient list never leaves your browser. Pasted lists are never sent to a server, logged, or stored. The first Check click loads the additive database in the background (so you do need a connection until that finishes); after that all checks run locally in your browser.
Try the sample below
ClearCoverage: completeSample check: Instant noodle masala packet
No known additive red flags. Note: this checks additives only - base ingredients (dairy, honey, animal oils) and the brand's declared veg dot are the product status, not this result.
Per-item breakdown (9 items)
Wheat flour base ingredient
It is a base ingredient, not a food additive with an INS or E number. This tool covers FSSAI/Codex-numbered additives like preservatives, colours, emulsifiers, sweeteners, and flavour enhancers.
edible vegetable oil (palm) base ingredient
Palm oil is a base ingredient (a vegetable oil), not a food additive with an INS or E number. It can be a starting material for additive forms like INS 471 (mono- and diglycerides) and sometimes INS 322 (lecithin), which are the coded additives you may see on a packet.
Salt is a base ingredient, not a food additive with an INS or E number. One packet-reading trap: 'Chinese salt' usually means MSG, which is INS 621, not regular table salt.
It is a base ingredient, not a food additive with an INS or E number. This tool covers FSSAI/Codex-numbered additives like preservatives, colours, emulsifiers, sweeteners, and flavour enhancers.
To request coverage for an additive we do not have yet, email us. Please include the INS code only - the rest of your ingredient list never leaves your browser unless you choose to share it.
Quick facts
Input format
Plain text (paste a packet's ingredient list)
Codes supported
INS (Codex), E-number (EU), and common ingredient aliases
Dataset size
89 FSSAI- and JECFA-cited additives
Reference regulation
FSS Packaging and Labelling Regulations 2011 / 2020 (Version VIII), FSS Food Products Standards and Food Additives Regulations 2011
Verdict tones
clear / watch / flag / incomplete
Source-dependent items flagged
INS 322 lecithin, INS 471 mono- and diglycerides, INS 631 inosinate, INS 270 lactic acid, INS 472e DATEM
Cosmetics, supplements, brand sourcing decisions, medical / dietary advice
Privacy
100% browser-side, no data sent anywhere
Second sample: Chocolate biscuit packet
A typical chocolate biscuit list. The verdict surfaces INS 322 lecithin as source-dependent and attaches a sub-code advisory to INS 503 because Codex distinguishes 503(i) and 503(ii) while our dataset has the bare INS 503 entry.
Source-dependent additives in this list: Lecithin (INS 322). The veg dot on the actual pack is the brand's declaration.
How this tool reads an Indian packet ingredient list
The parser scans your paste for INS and E codes, handling all the real-packet shapes brands actually use: INS 330, E330, ins-330, INS 500(ii), E500ii, INS 150d, INS 472e, and INS 160(b). Codes embedded inside class declarations like acidity regulator (INS 330) are extracted automatically; multi-code class brackets like raising agents (INS 500(ii), INS 503) split into separate per-item rows.
Tokens that are not INS codes try alias matching first ( lecithin, citric acid, tartrazine map to their canonical INS entry), then non-additive matching (palm oil, salt, sugar, atta, milk solids and similar base ingredients are flagged as base, not additives), and finally recognised class declarations (mixed spices, nature identical flavouring substances, premix, added vitamins are recognised but outside the additive scope). Anything that does not fit any of these is marked unrecognised, and if more than half of the paste is unrecognised the verdict drops to incomplete rather than risking a misleading clear.
What the veg dot really means in India
The green dot in a green square is the brand's vegetarian declaration for the product. The brown dot in a brown square means non-vegetarian. The dot is mandatory under FSS Packaging and Labelling Regulations 2011 / 2020 and the brand is legally responsible for the classification.
The regulation has explicit carve-outs: milk products, honey, beeswax (INS 901), carnauba wax (INS 903), and shellac (INS 904) are not classified as non-vegetarian for the dot, even though some are biologically animal-origin. This tool respects those carve-outs - beeswax and shellac items will resolve to a clear verdict, not a flag, even though their biological origin is non-vegan.
Several common additives are source-dependent: INS 322 lecithin, INS 471 mono- and diglycerides, INS 631 disodium inosinate, INS 270 lactic acid, and INS 472e DATEM. The INS code alone does not tell you whether the brand used a plant or animal source. The dot on the actual pack does. Our tool surfaces source-dependent items as watch so you know to check the dot.
What this tool does NOT do
Does not give medical, dietary, or allergy advice. If you have a specific dietary need, consult a doctor or registered dietitian.
Does not decide product-level vegetarian status. Base ingredients (dairy, honey, animal oils) and brand sourcing are outside its scope; the pack's dot is authoritative.
Does not read cosmetic or supplement packs. The regulatory framework, naming conventions, and dot rules are different for non-food packs.
Does not lookup brand-specific products by barcode or product name.
Does not perform OCR on uploaded pack photos in v1. Paste the ingredient list as text instead.
Does not save, share, or transmit your pasted text. The client component contains no fetch, XMLHttpRequest, or sendBeacon calls; a jest gate enforces this.
Frequently Asked Questions
How does this checker decide if a packet is vegetarian?+
It parses each INS or E code from the ingredient list, matches it to our 89-entry FSSAI / JECFA / EFSA-cited dataset, and applies the FSSAI Labelling and Display Regulations 2020 rules for the brown vs green dot. The verdict reports per-additive: vegetarian dot, non-vegetarian dot, source-dependent, or permitted-with-restrictions. The tool does NOT decide product-level vegetarian status because base ingredients like dairy, honey, and animal-derived oils are outside its scope and only the brand's printed dot on the actual pack is the legally binding declaration.
Why does the tool say 'source-dependent' for some additives?+
A few common Indian-packet additives can come from either plant or animal sources depending on the manufacturer: INS 322 lecithin (soy or egg yolk), INS 471 mono- and diglycerides (palm or tallow), INS 631 disodium inosinate (sardine-extract or yeast fermentation), INS 270 lactic acid (sugar-fermentation or whey), and INS 472e DATEM (palm or tallow). The INS code alone cannot tell you which source the brand used. The green or brown dot on the actual pack does - the brand has to declare the final product's category. We surface the source-dependent flag so you know to check the dot before deciding.
What's the difference between INS and E numbers?+
INS is the International Numbering System set by Codex Alimentarius and used by FSSAI; E numbers are the European Union approval prefix. For almost every common additive the digits are identical: E330 is the same as INS 330 (citric acid). The E prefix means the EU has approved the additive. Indian packs may show either format, sometimes both, and our parser handles INS 330, E330, ins-330, E-330, ins330, and the Hindi prefix forms identically. A handful of additives have an INS code but no E equivalent (and vice versa); for those the parser still finds the right entry.
Why are beeswax and shellac classified as vegetarian-dot when they're animal-origin?+
FSS Packaging and Labelling Regulations 2020 (Version VIII) carve out beeswax (INS 901), carnauba wax (INS 903), shellac (INS 904), milk products, and honey from the brown 'non-vegetarian food' symbol. Of these, beeswax is bee-derived and shellac is insect-derived; carnauba wax is plant-origin (from the carnauba palm) and is listed in the carve-out for completeness. The regulation classifies the FINISHED product as vegetarian if these are the only animal-source ingredients used. Strict-veg readers (Jain, ISKCON) may still avoid beeswax and shellac on biological-origin grounds - our detail pages cite the biological origin alongside the regulatory classification so you can make an informed choice.
What happens if I paste an ingredient the tool doesn't recognise?+
Unrecognised tokens are flagged explicitly in the per-item table. If more than half of the items are unrecognised, the overall verdict drops to 'incomplete' rather than presenting a misleading 'clear'. If just a few are unrecognised, the verdict becomes 'watch' with a partial-coverage badge. We work from a curated FSSAI / JECFA / EFSA-cited dataset of 89 additives. To request coverage for a specific INS we don't have yet, email desiutils.in@gmail.com with the INS code only - the rest of your ingredient list never leaves your browser unless you choose to include it.
Does this tool work for cosmetics or supplements or non-food packs?+
No, this tool is for food packets only. The dataset, the FSSAI permission status, the JECFA ADI evaluations, and the brown / green dot regulation all reference packaged food. Cosmetic and supplement ingredient lists use different regulatory frameworks (Drugs and Cosmetics Act, Drugs and Cosmetics Rules), often list the same compounds under different naming conventions (INCI names for cosmetics), and have their own veg / non-veg disclosure rules. Do not rely on this tool for non-food packs.
Is my pasted list sent to a server?+
No. Your pasted ingredient list never leaves your browser. It is never sent to a server, logged, stored, or shared. There is no signup, no login, no cookie that tracks the content of what you paste. The tool does load its additive database (a ~90 KB JavaScript chunk) on the first Check click, so a network connection is required up to that point; after the database is cached every subsequent check runs locally in your browser. The only outbound network requests this page makes are the page load itself, the lazy-loaded additive database, and the in-content advertisement - none of which receive any of your textarea content. A build-time test asserts no fetch, XMLHttpRequest, or sendBeacon calls exist in the client component.
How current is the FSSAI data this tool uses?+
Each ingredient entry has a lastVerified date stamped on its detail page. The reference regulation is the FSS Food Safety and Standards (Food Products Standards and Food Additives) Regulations 2011 with subsequent amendments, plus the FSSAI Labelling and Display Regulations 2020 (Version VIII). For JECFA we cite the monograph year and meeting number. We re-verify entries whenever an FSSAI Gazette notification or Compendium revision lands, a JECFA meeting publishes a new evaluation, or a relevant EFSA re-evaluation is released. If you spot a stale entry, email us with the INS code and we will refresh that detail page within a week.
What does 'permitted-restricted' mean for an additive?+
FSSAI permits the additive but with category-specific upper limits, mandatory label declarations, or restrictions for foods aimed at infants or specific consumer groups. Common examples: INS 621 MSG carries 'Contains added Monosodium Glutamate' and 'Not recommended for infants below 12 months' labels and is prohibited in infant food; INS 102 tartrazine carries the 'May have an adverse effect on activity and attention in children' warning in some categories. The additive is legal in those categories, but the brand has to follow the additional rules. Our tool surfaces this as a 'watch' tone with the specific restriction quoted on the per-item row.
Can I trust the veg dot on the actual pack over this tool?+
Yes. The dot is the brand's binding declaration about the entire product, including the additives, base ingredients, processing aids, and the specific source of any source-dependent additive used in that batch. Our tool checks ADDITIVES against a public regulatory dataset; the brand has the full bill of materials. If the tool says 'source-dependent' or 'watch' and the pack shows a green dot, the pack is authoritative. If the pack is missing a dot entirely (rare on FSSAI-regulated packs), email the brand or report it to FSSAI via the Food Safety Compliance System portal.
Sources
FSSAI Food Safety and Standards (Labelling and Display) Regulations 2020, Version VIII (fssai.gov.in)
Looking up a single INS code instead of a whole packet? Use the Ingredients Explained hub - it lists all 89 additives with detailed plain-English explanations, FSSAI permission status, JECFA ADI evaluations, and veg-status reasoning.
For nutritional decoding of common Indian meals (calories, macros, portion sizes), pair this checker with the Indian Meal Calorie Calculator.
Regulatory status, not medical advice
This tool summarises publicly published FSSAI permissions, JECFA scientific evaluations, and FSS Labelling Regulations veg-dot rules. It is not medical or dietary advice. Manufacturer ingredient sourcing varies, especially for source-dependent additives - the Indian veg / non-veg dot logo on the actual pack is the brand's legally binding declaration. For health decisions, consult a doctor or registered dietitian. Last reviewed: May 2026.