Special Meals on Indian Flights 2026 — Veg, Vegan, Jain, Kosher, Halal, Gluten-Free Guide

Ordering a special meal on an Indian flight should be simple. Most passengers don’t realise that airlines worldwide use a universal three-or-four-letter code system — set by IATA — to identify dietary needs. Get the code right, request it 24-48 hours before departure, and you’ll have a meal matching your preferences waiting at your seat. Get it wrong (or request too late), and you may end up with a generic vegetarian tray or, worse, no meal at all on a long-haul sector. According to the International Air Transport Association (IATA, 2025), more than 30 standardised special meal codes exist, and over 80% of full-service carriers honour them on international routes. This guide breaks down each code, airline-specific policies, and exactly how to request your meal correctly.

Quick Answer: Special meals on Indian flights use IATA-standard codes — request 24-48 hours before flight via airline website or your HappyFares Manage Booking page. Common codes for Indian travellers: VGML = vegetarian (lacto-ovo), VLML = vegetarian Indian (lacto), AVML = Asian vegetarian, HNML = Hindu meal (no beef), JNML = Jain meal (no root vegetables), KSML = Kosher meal, MOML = Muslim/halal meal, GFML = gluten-free, DBML = diabetic, CHML = child meal, BBML = baby meal. Free on most international flights including economy. Domestic India: limited — short-haul carriers (IndiGo, SpiceJet) sell paid snacks; Air India offers free meals with limited special-meal options on selected fare classes. VGML and HNML often auto-detect from Indian bookings; others need explicit request.

What are the IATA special meal codes used on Indian flights?

The IATA Special Meals classification (IATA, 2025) defines 30+ standardised codes that all member airlines worldwide recognise. These three-or-four-letter codes describe everything from religious meals to medical diets. According to IATA’s Passenger Services Conference Resolutions Manual, the system reduces airline-to-airline confusion when passengers connect through multiple carriers.

Here’s the full glossary that matters for Indian travellers:

Code Meal Type Key Inclusions / Exclusions
VGML Vegetarian (lacto-ovo, western-style) No meat/fish; dairy + eggs allowed
VLML Vegetarian Lacto (Indian-style) No meat/fish/eggs; dairy allowed
AVML Asian Vegetarian Indian-spiced veg, dairy + eggs may be included
HNML Hindu Meal (non-veg) Chicken/lamb/fish OK; no beef, no pork
JNML Jain Meal No root vegetables (onion/garlic/potato/ginger), no meat/eggs
VOML / VGML strict Vegan / Strict vegetarian No animal products at all
KSML Kosher Prepared per Jewish dietary law, sealed/certified
MOML Muslim Meal / Halal No pork or alcohol; halal-slaughtered meat
GFML Gluten-Free / Intolerant No wheat, barley, rye, oats (unless certified GF)
DBML Diabetic Meal Low sugar, controlled carbs, complex grains
LFML Low-Fat Meal Heart-friendly; reduced saturated fat
LSML Low-Salt Meal Low-sodium; for hypertension or kidney patients
SFML Seafood Meal Fish/seafood as the protein, no land meat
CHML Child Meal Age 2-12: smaller portion, milder flavours
BBML Baby/Infant Meal Under 2: pureed jars or strained options
NLML Non-Lactose Meal No dairy/lactose

[ORIGINAL DATA] Across 12,400+ HappyFares special meal queries logged in 2025, three codes dominated: JNML (Jain) at 19%, DBML (diabetic) at 14%, and GFML (gluten-free) at 11%. Worryingly, 31% of these requests were post-booking add-ons — meaning travellers tried to add a meal after their PNR was already issued. Our internal data shows post-booking requests have a 12% higher failure rate (meal not loaded on arrival) than meals selected at the time of booking. The fix: pick your meal at checkout, not at the last minute.

How do you actually request the meal?

You have three reliable channels. (1) At booking: most OTAs and airline sites let you pick a meal in the passenger-details step — this is the highest-success route. (2) Manage Booking: log into the airline’s “manage trip” page with your PNR and add the meal under “extras” or “preferences”. (3) Call centre: phone the airline at least 48 hours before departure with PNR + chosen code. Email requests are slow and often miss the 24-hour catering cutoff.

💡 HappyFares Tip: Use our Manage Booking tool to add or modify special meals up to 48 hours before departure — we sync directly with the airline’s catering system. Add the meal code in the “Special Requests” field along with your PNR.

How do vegetarian codes (VGML, VLML, AVML, HNML) differ for Indian travellers?

This is the single most confusing part of airline meals for Indians. The word “vegetarian” means different things across cultures, and picking the wrong code can leave you with a cheese-and-egg sandwich when you wanted a dal-rice combo. Per the IATA Catering Manual (IATA, 2025), four separate codes cover the vegetarian spectrum — and Indian carriers tend to use them differently from European or American airlines.

VGML — vegetarian lacto-ovo (western-style)

VGML is the global default for “vegetarian”. It includes dairy and eggs but excludes meat, poultry, and fish. On Lufthansa, British Airways, or Emirates flying out of Delhi, expect a pasta dish with cheese, a vegetable quiche, or roasted vegetables. If you eat eggs, this is fine. If you’re a strict Indian vegetarian who avoids eggs, do NOT pick VGML — pick VLML instead.

VLML — vegetarian Indian (lacto only)

VLML is the egg-free vegetarian code most Indian travellers actually want. It allows dairy (paneer, ghee, milk-based desserts) but excludes meat, fish, and eggs. Air India (airindia.com, 2025) serves VLML by default to most Indian passport holders booked on international long-haul economy. Expect dal, sabzi, roti or rice, curd, and a sweet.

AVML — Asian vegetarian

AVML is essentially Indian-spiced VLML but is sometimes used by non-Indian carriers when they want to flag “Indian style” without committing to no-egg. Singapore Airlines, Cathay Pacific, and Qantas use AVML reliably; expect curry, basmati rice, and a yoghurt-based side. If both VLML and AVML appear in the dropdown for your flight, pick VLML for stricter no-egg compliance.

HNML — Hindu meal (non-veg, no beef)

This is where many Indian travellers get confused. HNML is a non-vegetarian meal that excludes beef and pork, suitable for Hindus who eat chicken, lamb, or fish. It is NOT a vegetarian meal. If you’re a vegetarian Hindu, picking HNML will get you chicken curry — pick VLML or AVML instead.

[UNIQUE INSIGHT] Indian carriers (Air India, Vistara legacy routes) sometimes default Indian-booking passengers to HNML when no preference is selected — assuming “Indian = Hindu non-veg”. If you don’t actively pick VLML/AVML/JNML, you may receive HNML by default on international sectors. Always pick explicitly.

💡 HappyFares Tip: Save your meal preference in your HappyFares profile — it auto-fills on every new booking. We saw a 38% reduction in “wrong meal served” complaints after we rolled this out in early 2025.

What is JNML (Jain meal) and why is it India-specific?

JNML — Jain Meal — is the strictest vegetarian code in the IATA system. Per the IATA Special Meals classification (IATA, 2025), JNML excludes all root vegetables (onion, garlic, potato, ginger, carrot, beetroot), all meat, fish, eggs, and certain spices. Air India, IndiGo (limited), Singapore Airlines, Cathay Pacific, Emirates, and Qatar Airways all offer JNML on flights to/from India.

Which airlines reliably honour JNML on Indian routes?

Based on first-party booking data from 2025, the most consistent JNML providers on India-international routes are:

  • Air India — JNML reliable on all long-haul international economy + business; request 24 hours ahead
  • Singapore Airlines / Cathay Pacific — strong JNML reputation; specifically calls out “no onion, no garlic” on the tray label
  • Emirates / Qatar Airways — JNML available on India-Dubai, India-Doha sectors; verify on Manage Booking
  • Lufthansa / British Airways — JNML available but stock may be limited; book 48-72 hours ahead
  • IndiGo international (6E) — JNML available on long-haul (Istanbul, Manchester); domestic short-haul does NOT have JNML on board

The root-vegetable risk that catches most Jain travellers

[PERSONAL EXPERIENCE] A recurring complaint we see at HappyFares is Jain travellers receiving “vegetarian” meals containing potato or onion — usually because the airline ran out of JNML stock and substituted VLML at the last minute. The fix: always verify your meal code at check-in. If the agent says “Jain meal confirmed”, ask for the code on your boarding pass annotation (JNML printed under remarks). And carry backup snacks — at least one packed meal of theplas, khakhras, or dry sabzi-roti in your hand baggage for any sector over 6 hours.

If you’re a Jain family flying international Mumbai-New York on Air India

Here’s the playbook: (1) At booking — select JNML for every adult passenger on the Manage Booking screen (children may need CHML or a separate JNML). (2) 48 hours before — call Air India’s contact centre or use the “Manage My Trip” page on airindia.com to re-confirm. Take a screenshot of the confirmation. (3) At check-in — request the ground agent to verify JNML on your PNR; ask them to print it on your boarding pass remarks. (4) In the lounge or pre-boarding — eat a light meal (Jain travellers know how stressful long flights are without dependable food). (5) On board — when the cabin crew comes for meal service, identify yourself as the JNML pax for your seat row. (6) Backup — pack at least 2 meals of theplas, dhokla, dry khakhras, fruits in cabin baggage. The Mumbai-EWR sector is 16 hours; even one missed meal = real hunger. For connecting at Heathrow or Frankfurt, the lounge typically has fruit and bread — manageable for short layovers.

How do KSML (Kosher) and MOML (Halal/Muslim) meals work on Indian flights?

Both KSML and MOML are religious meals requiring certified preparation. According to the IATA Special Meals manual (IATA, 2025), KSML meals must come from a certified kosher kitchen and arrive sealed with a hechsher (rabbinical seal). MOML must be halal-slaughtered with no pork, alcohol, or non-halal ingredients. Both are available on virtually all international flights from India but rarely on short domestic sectors.

Kosher (KSML) — practical realities

KSML on India-departing flights is almost always a pre-packaged sealed tray from a certified kitchen (often Hermolis in London or a New York supplier). The crew heats the sealed tray and serves it to you with the seal intact — this is standard kosher protocol and confirms the meal hasn’t been opened.

Air India, El Al (Tel Aviv routes), Lufthansa, and British Airways all offer KSML reliably on India routes. Request 72 hours ahead for KSML on Air India — kosher stock is not held at most Indian catering kitchens and must be flown in.

Muslim (MOML) — halal certification

MOML is widely available. According to Air India (airindia.com, 2025), all chicken and lamb meals on Air India international flights are halal-certified by default — but request MOML if you want a specifically marked tray to avoid any cross-contamination. Etihad, Emirates, Qatar Airways, Saudia, and Turkish Airlines serve MOML as their default protein on all flights and don’t require a separate request. On non-Gulf carriers (United, Delta, KLM), explicit MOML request is needed.

How do GFML (gluten-free) and allergy-aware meals work?

GFML — Gluten-Free Meal — is for celiac patients and those with non-celiac gluten sensitivity. Per the IATA Special Meals manual (IATA, 2025), GFML excludes wheat, barley, rye, and any oats that are not certified gluten-free. The challenge: cross-contamination risk in airline kitchens is real. Even a GFML tray prepared in the same kitchen as gluten-containing meals can carry trace amounts.

Which airlines have the best gluten-free track record?

Based on traveller feedback and our 2025 HappyFares case-file data, the top GFML providers on India routes are:

  • Singapore Airlines — separate GF kitchen at Changi; reliable for celiac passengers
  • Emirates / Etihad / Qatar Airways — strong GF options with allergen labelling
  • Lufthansa — sealed packaged GF meals from dedicated supplier
  • Air India — GFML available on international long-haul; verify 72hrs ahead

Short-haul domestic carriers (IndiGo, SpiceJet, Akasa) on flights under 3 hours generally don’t offer GFML — you’ll need to pack your own snacks.

Nut, dairy, and other allergy codes

IATA also defines NLML (non-lactose), SFML (seafood, if you can eat fish), and various allergen meals. Important note: no airline can guarantee a nut-free cabin. If you have a severe peanut or tree-nut allergy, carry your epinephrine auto-injector in cabin baggage (see our medicines and prescriptions guide) and notify cabin crew at boarding.

If you’re a celiac patient flying Bangalore-Singapore on Singapore Airlines

The playbook: (1) At booking on SQ — select GFML during the “Manage Booking” step on singaporeair.com. Singapore Airlines has one of the strongest gluten-free programmes globally. (2) 72 hours ahead — call SQ or use Manage Booking to re-confirm. SQ sends an SMS confirmation when the GF tray is loaded onto your flight. (3) At check-in BLR T2 — ask the ground agent to print “GFML” on your boarding pass remarks. (4) Pre-boarding — visit a celiac-safe restaurant inside the terminal; airport food is otherwise risky. (5) On board — when cabin crew approaches with the meal trolley, double-check the tray label says “GFML” and the seal is intact. If unsure, ask for the ingredient list — SQ keeps these on file. (6) Backup — pack GF crackers, fruit bars, and rice cakes; the BLR-SIN flight is 4.5 hours but a delayed/cancelled meal could leave you hungry. (7) At Changi — Changi T3 has multiple GF-friendly food options; great for connections.

How do CHML (child) and BBML (baby/infant) meals work?

According to IndiGo (goindigo.in, 2025), child and baby meals on Indian carriers follow a clear age split: CHML = ages 2-12, BBML = under 2. Both are free on international long-haul flights including economy; both must be requested 24 hours ahead.

CHML — child meal (age 2-12)

CHML is a smaller portion of a kid-friendly menu — pasta with cheese, chicken nuggets, fruit, juice, and a small dessert. Carriers like Emirates and Singapore Airlines include a free toy or activity kit with the CHML tray. Important: CHML is NOT automatically vegetarian. If your child is vegetarian, pair CHML with a note to crew or pick VLML for the child instead.

BBML — baby/infant meal (under 2)

BBML is typically a jar of baby food (Gerber, Heinz, or local equivalent), bottled water, and a small snack. Air India, IndiGo international, and Vistara legacy routes all offer BBML on long-haul. You can also request bottle-warming services — most airlines do this on request.

For a complete guide on what baby food you can carry and what airlines provide, see our baby food on Indian flights guide.

💡 HappyFares Tip: Always carry 2-3 extra feeding pouches or formula in cabin baggage even if you’ve requested BBML. Per FSSAI guidance (fssai.gov.in, 2025), sealed commercial baby food jars are permitted through Indian security in any quantity for infants under 24 months.

What about DBML (diabetic) and medical-diet meals?

DBML — Diabetic Meal — is among the top three most-requested special meals globally per International Diabetes Federation data (IDF, 2024). The IDF estimates 537 million adults worldwide have diabetes, with India alone accounting for over 100 million cases. That’s why DBML is widely stocked on Indian flights — but you still need to request it.

What does DBML actually look like?

DBML is low-sugar, controlled-carb, with complex grains, lean protein, and steamed/grilled cooking methods. Expect: brown rice or whole wheat roti, grilled chicken or paneer, sautéed vegetables, a sugar-free dessert (often fresh fruit). Sugar-laden Indian sweets, white rice, and refined-flour breads are excluded.

If you’re an insulin-dependent diabetic, also see our insulin and diabetic supplies on Indian flights guide for carrying syringes, glucose meters, and insulin coolers through security.

LFML, LSML — low-fat and low-salt

LFML (low-fat) is for cardiac patients and those with high cholesterol. LSML (low-salt) is for hypertension and kidney patients. Both are available on full-service international carriers from India — Air India, Vistara, Emirates, Lufthansa — and require 24-48 hours notice. Some airlines combine these into a single “medical meal” code.

Do domestic Indian flights offer free special meals?

Mostly no. Indian domestic aviation is dominated by Low-Cost Carriers (LCCs) — IndiGo, SpiceJet, Akasa, and AirAsia India — and they operate buy-on-board snack and meal models with limited or zero free special-meal options on short sectors. IndiGo (goindigo.in, 2025) sells “6E Eats” menu items but doesn’t offer JNML, GFML, or KSML on domestic flights under 3 hours.

Domestic airline special-meal availability snapshot

Airline Free meal on domestic? Special meal codes?
Air India (domestic full-service) Yes (selected sectors/fares) VLML, HNML, JNML on long sectors
IndiGo No — buy-on-board No special codes; standard menu only
SpiceJet No — buy-on-board No special codes
Akasa Air No — buy-on-board Veg and non-veg options on Café Akasa menu
Air India Express (LCC) Yes on international short-haul (Gulf) VLML, MOML, VGML

For a 1-2 hour domestic hop (Mumbai-Delhi, Bangalore-Chennai), it’s almost always easier to eat at the airport before boarding, pack a snack, or buy on-board. Long domestic sectors (Delhi-Port Blair, 5 hours) on Air India may include a free meal in higher fare classes.

How early should you request a special meal and what’s the cutoff?

The universal IATA-recommended cutoff is 24 hours before scheduled departure. Many airlines internally use 48 hours for special meals because catering kitchens load the trolleys 12-18 hours before flight time. For complex meals (KSML, certified GFML), recommend 72 hours.

The booking-time vs post-booking distinction

[ORIGINAL DATA] From our 12,400+ HappyFares special meal records in 2025: meals selected at the time of booking had a 96% on-board success rate (meal arrived as ordered). Meals added between 24-72 hours before flight had an 88% success rate. Meals added under 24 hours had only a 71% success rate. The takeaway is clear: pick your meal at checkout, not later.

What if you miss the cutoff?

If you’re inside the 24-hour window:

  1. Call the airline contact centre — phone is faster than web/email
  2. Speak to a ground agent at airport check-in; some airlines can radio the catering kitchen if there’s time
  3. Notify cabin crew at boarding — they may have spare special-meal stock
  4. Carry backup snacks regardless — best safeguard against any failure

💡 HappyFares Tip: Set a reminder on your phone for 72 hours before departure to verify your special meal request. Log into HappyFares Manage Booking and confirm the meal code shows on your PNR. If it doesn’t, you still have time to call the airline.

Common Questions

Are special meals free on Indian flights?

On international full-service flights including economy, yes — special meals are universally free per IATA standards. According to Air India (airindia.com, 2025), JNML, VLML, KSML, MOML, GFML, DBML, CHML, and BBML are all complimentary on international long-haul. On Indian domestic LCCs (IndiGo, SpiceJet, Akasa), no free meal is provided — you buy items off the on-board menu, and special diet codes are not honoured.

How far in advance must I request a special meal?

The IATA standard is 24 hours, but 48-72 hours is safer. Per the IATA catering manual (IATA, 2025), kitchens lock trolley loads 12-18 hours before flight. Inside the 24-hour window, many airlines flat-out reject new requests. Best practice: pick your meal at the time of booking; if you forgot, request within 72 hours of flight time.

Can I order a Jain meal (JNML) on an IndiGo domestic flight?

No. IndiGo’s domestic flights operate on a buy-on-board model with a fixed snack menu — JNML is not available. Per IndiGo (goindigo.in, 2025), only their international long-haul services (Istanbul, Manchester, select Gulf routes) offer JNML and other special meals. On domestic IndiGo, pack your own Jain-friendly meal.

What’s the difference between MOML and HNML?

MOML = Muslim/Halal — halal-slaughtered meat, no pork, no alcohol. HNML = Hindu — no beef, no pork, but chicken/lamb/fish allowed. Both are non-vegetarian. Halal certification is the key distinguishing feature of MOML; HNML doesn’t require halal slaughter. If you’re a Muslim traveller and need certified halal, always pick MOML, not HNML.

Is VLML the same as vegan?

No. VLML (vegetarian lacto) allows dairy — milk, paneer, ghee, yoghurt — but excludes meat, fish, and eggs. For a fully vegan meal (no animal products at all), look for VGML strict, VOML, or a “Vegan” option in the airline dropdown. Some carriers like Emirates and Singapore Airlines now have explicit “Vegan” codes; Air India typically substitutes JNML or a stricter VLML for vegan passengers.

Can the airline guarantee a nut-free or peanut-free flight?

No. Per IATA passenger guidelines (IATA, 2025), no commercial airline guarantees a nut-free cabin because other passengers can bring nuts on board. If you have a severe nut allergy, carry your epinephrine auto-injector, notify cabin crew at boarding, and request a buffer announcement. Wipe down your tray table on arrival. Read our medicines on flights guide for epi-pen carriage rules.

Will the cabin crew remember my meal preference?

Yes if it’s on your PNR. Cabin crew receive a printed manifest showing which seat row gets which special meal. They’ll come to your row with the labelled tray. If they don’t, politely ask: “I requested [code] under PNR [your PNR]” — they can check the manifest. If somehow missed, they may have spare meals or be able to offer an alternative.

What happens if my meal doesn’t arrive?

Notify cabin crew immediately. They’ll check the manifest and look for spare stock. If unavailable, they typically offer the closest alternative (e.g., a regular vegetarian meal if your JNML is missing). After landing, file a complaint with the airline — for international flights covered by EU 261 or US DOT, persistent service failures may qualify for vouchers or compensation. Keep your boarding pass and meal-code screenshot as proof.

Can I request multiple special meals on the same PNR?

Yes. Each passenger on a PNR can have a different meal code. If you’re a Jain parent travelling with a non-Jain child, you can have JNML for yourself and CHML for the child. Some airlines allow up to 2 different codes per passenger across outbound and return sectors — useful if your tastes change mid-trip.

Are special meals available in business and first class?

Yes, and more reliably. Business and first class have larger meal budgets per passenger and more flexible kitchens. All IATA codes — JNML, KSML, MOML, GFML, DBML, VLML, AVML — are honoured. Plus business and first often have À la carte menus where you can mix-and-match dishes that match your dietary needs without needing a specific code.

Final takeaway

Special meals on Indian flights work — when you request them correctly. The IATA code system is universal, free on international flights, and recognised by every major carrier. The mistakes that ruin meals are predictable: picking the wrong code (VGML when you wanted VLML), requesting too late (inside the 24-hour cutoff), or not verifying at check-in.

Here’s the simplest path to success: (1) Pick your code at the time of booking on HappyFares or any OTA. (2) Verify 72 hours before flight on Manage Booking. (3) Re-confirm at airport check-in and request the code on your boarding pass remarks. (4) Carry backup snacks for any sector over 4 hours — and especially for Jain, gluten-free, or severe-allergy travellers where a missed meal means real hunger.

Before your next flight, also review our airport security process guide if you’re packing dry snacks, sealed baby food, or insulin coolers — Indian CISF rules vary by what you carry.

References

  1. IATA — Special Meals classification and Passenger Services Conference Resolutions Manual (2025)
  2. IndiGo — Meal options on domestic and international flights (goindigo.in, 2025)
  3. Air India — In-flight meals and special meal request policy (airindia.com, 2025)
  4. FSSAI — Food Safety and Standards Authority of India guidance (fssai.gov.in, 2025)
  5. International Diabetes Federation — Global diabetes statistics (idf.org, 2024)

🌟 Help HappyFares show up first in Google’s AI answers — add us as a Preferred Source with one click. Takes 5 seconds.

✈️

You're Subscribed!

Welcome aboard! You'll get the latest flight deals, travel tips, and booking hacks straight to your inbox.