Menu
Do restaurants have to list calories on the menu?
By RestaurantDoctorAI · Updated · 11 min read
Most independent restaurants don't have to put calories on the menu. The rules cover chains and large businesses: in the US, chains with 20 or more locations; in England, businesses with 250 or more employees; in Ontario, chains with 20 or more locations in the province. If you show calories anyway, they can't mislead your guests, and the free counter below works them out from your recipe.
The short version
- US: chains with 20 or more locations have to post calories, and New York City's rule starts at 15. Any other restaurant can opt in by registering with FDA.
- England: businesses with 250 or more employees. Ontario: chains with 20 or more locations there. Scotland, Wales, Northern Ireland, Ireland and the rest of the EU: voluntary.
- Calories you choose to show still can't mislead. Keep the recipe and the sums behind every number.
- Calories per plate = each ingredient's grams × its calories per 100 g ÷ 100, added up, ÷ the plates the recipe makes.
- The big errors come from the kitchen, not the math: meat weighed raw, frying oil left out, a sauce divided by its raw weight.
The short answer, country by country
- United States: chains with 20 or more locations under the same name, plus any restaurant that registers with FDA.
- New York City: chains with 15 or more locations nationally.
- England: businesses with 250 or more employees.
- Ontario: chains with 20 or more locations in Ontario.
- New South Wales: chains with 20 or more outlets in the state or 50 nationally, and in kilojoules.
- Scotland, Wales, Northern Ireland, Ireland, the rest of the EU and Canada outside Ontario: nobody. It's voluntary.
Voluntary means we found no law requiring calories there. We haven't checked every EU country, Australia's other states or New Zealand, and in the US a state or city can add rules of its own.
Who has to put calories on the menu
United States
FDA's menu labeling rule has applied since May 7, 2018 to restaurants in a chain of 20 or more locations “doing business under the same name” and selling substantially the same menu items. Franchised locations count toward the 20. Daily specials, dishes on the menu for less than 60 days a year and custom orders are left out.
New York City's health code draws the line at 15 locations nationally, so chains with 15 to 19 locations post calories there “even if they are not subject to federal requirements”, as the city puts it. Below 20 locations, FDA leaves room for states and cities to set rules of their own, so check with your local health department.
United Kingdom
In England, the calorie labelling regulations have covered businesses with 250 or more employees, part-time staff included, since April 6, 2022. The government's guidance “encourages smaller food businesses” to label anyway, and says it will consider extending the rule to them.
Scotland paused its plans in May 2023, and Wales was still reviewing the evidence in September 2024, Food Standards Scotland reported. In Northern Ireland, calories are voluntary.
Canada
Ontario's Healthy Menu Choices Act covers chains with 20 or more locations in the province. There's no federal menu rule, though the Canadian Food Inspection Agency says nutrition values a restaurant does give “must be accurate and not false or misleading”. We found no other province with a rule.
Ireland and the rest of the EU
EU law makes nutrition information on food sold loose optional “unless Member States adopt national measures”, and we found no country that has. Ireland drew up plans, then set them aside: in 2022 its Department of Health said there were “no plans to revisit the matter”, TheJournal.ie reported.
If you post calories: what the menu has to show
If a rule above covers you, it sets the format. If none does, it's a good model, and in Northern Ireland, Ireland and the rest of the EU part of it applies to voluntary calories too.
US chains, and restaurants that register
The federal rule asks for:
- Calories next to each item's name or price, in type at least as large as the name or price, with “Calories” or “Cal”.
- Numbers rounded to the nearest 5 up to 50 calories and the nearest 10 above. Under 5 can be shown as 0.
- On every menu page: “2,000 calories a day is used for general nutrition advice, but calorie needs vary.”
- Also on the menu: “Additional nutrition information available upon request.” Behind it, a written sheet on site with 11 nutrients for each item, from fats and sodium to sugars and protein.
- The same on your website: “menus on the Internet” count as menus.
- Records FDA can ask for, due in about 4 to 6 weeks by its guidance: the database and its version, the recipe, what each ingredient adds, and two signed statements that the numbers are complete and the kitchen follows the recipe.
England, at 250 or more employees
The regulations and the government's guidance ask for:
- Calories per portion in kcal, next to the dish's description or price, with the portion size or how many people it serves.
- The statement “adults need around 2000 kcal a day” on every menu page or board, word for word. Pages that only list children's food can leave it out.
- The same on websites and delivery apps.
- A menu without calories only for a guest who asks for one.
- Calories within plus or minus 20% of the real figure, which the guidance calls “an acceptable margin”. It recommends keeping records of how you worked them out.
Ontario, at 20 or more locations
Ontario's menu-labelling guide asks for:
- Calories next to each item's name or price, in the same font and format and at least the same size, with “Calories” or “Cals”.
- Numbers rounded to the nearest 10 above 50 calories, the nearest 5 from over 5 up to 50 and the nearest whole number below that, with 0 under half a calorie.
- A set statement on daily needs, in English or French: adults and teens 13 and older “need an average of 2,000 calories a day”, children 4 to 12 an average of 1,500. Copy it word for word from the regulation.
Everywhere else
In Northern Ireland, Ireland and the rest of the EU, calories you show by choice must be in kJ as well as kcal (FSA guidance, EU rules). Northern Ireland also expects updates “at the next menu reprint, or within six months”, and suggests a line such as “The energy information is provided as a guide.”
Wherever you are, the numbers can't mislead. In the US, food is misbranded if its labeling is “false or misleading in any particular” (21 U.S.C. 343), and in Great Britain a misleading label is an offence (Food Safety Act 1990). Keep the recipe and the sums behind each number, and redo it when the recipe changes.
Leave out words like “low calorie”. That's a nutrition claim, with rules of its own: in the US for any restaurant, chain or not (21 CFR 101.10), and in Northern Ireland and the EU too (FSA guidance).
How to work out a dish's calories
Add up the calories in everything that goes into the dish, then divide by the plates it makes. You don't need a lab: FDA's guidance says “You are not required to conduct laboratory analysis” and names USDA's nutrient database as a basis. England's guidance points to the UK's own food tables for most food, and USDA's for food from the US.
Weigh each ingredient as it goes into the dish, after trimming, and use the value for the same state: a raw value for a raw weight, a cooked value for a cooked weight. Round once, at the end.
Take calories per 100 g from the pack's label where there is one. For fresh food, use USDA FoodData Central, the US government's free food database, which is in the public domain. Its SR Legacy data, the final edition of the database FDA's guidance names, is what the counter below uses.
If you've worked out the dish's plate cost, you already have most of what you need: the same amounts, after trimming, and the same number of plates.
- Beef patty, 80/20, pan-broiled, 124.2 g
- 305.5
- Bun, 44 g
- 122.8
- Cheddar, 1 slice, 28 g
- 112.8
- Ketchup, 1 tbsp, 17 g
- 17.2
- Lettuce, 1 leaf, 8 g
- 1.1
- Tomato, 1 slice, 20 g
- 3.6
Each line is grams × USDA's calories per 100 g ÷ 100: for the patty, 124.2 × 246 ÷ 100. The 562.95 total goes on a US menu as 560, and with UK and EU energy factors it's 554 kcal. The patty was 6 oz raw: USDA's cooking yield for a pan-broiled medium-fat patty is 73%.
The counter opens on this plate. Change the rows to your recipe and pick where you trade: it rounds the way that country's menus do, and lists each ingredient with its USDA record for your files.
Free calculator
Menu calorie counter
Add what goes into one dish and get its calories for the menu. Nothing you type leaves this page.
Example numbers. Replace them with yours.
Ingredient 1
USDA: Beef, ground, 80% lean meat / 20% fat, patty, cooked, pan-broiled · FDC 171798
Pan-broiled, a patty keeps about 73% of its raw weight (USDA cooking yield). Enter the weight after cooking. Weighed it raw? Pick “Ground beef 80/20, raw”.
Calories in this ingredient305.46
Ingredient 2
USDA: Rolls, hamburger or hotdog, plain · FDC 172796
Calories in this ingredient122.76
1 each = 44 g
Ingredient 3
USDA: Cheese, cheddar (Includes foods for USDA's Food Distribution Program) · FDC 173414
Calories in this ingredient112.84
1 each = 28 g
Ingredient 4
USDA: Catsup · FDC 168556
Calories in this ingredient17.17
1 tbsp (US) = 17 g
Ingredient 5
USDA: Lettuce, iceberg (includes crisphead types), raw · FDC 169248
Calories in this ingredient1.12
1 each = 8 g
Ingredient 6
USDA: Tomatoes, red, ripe, raw, year round average · FDC 170457
Calories in this ingredient3.6
1 each = 20 g
- Enter what goes on the plate, after trimming. Weigh it if you can: cups of flour vary a lot.
- Pick the item that matches how you weighed it, raw or cooked. A burger patty loses about a quarter of its weight in the pan, and some of that is fat.
- Fried? Add the oil it soaks up as its own row. Weigh the fryer oil before and after a batch, and the difference is what the food took in.
- Not on the list? Pick “Other: from the pack label” and type the kcal per 100 g from its nutrition panel.
1 for a single plate.
With the example numbers
560 calories a plate
Exactly 562.95 before rounding. US menus round to the nearest 10 above 50 calories.
An estimate from USDA nutrition data and your recipe. It isn't a lab test.
Nutrient values: USDA FoodData Central (public domain). FDC ID shown for each ingredient.
How we worked it out
- Dish
- Burger plate
- 1. Beef, ground, 80% lean meat / 20% fat, patty, cooked, pan-broiled (FDC 171798)
- 124.17 g × 246 ÷ 100 = 305.46
- 2. Rolls, hamburger or hotdog, plain (FDC 172796)
- 1 each = 44 g; × 279 ÷ 100 = 122.76
- 3. Cheese, cheddar (Includes foods for USDA's Food Distribution Program) (FDC 173414)
- 1 each = 28 g; × 403 ÷ 100 = 112.84
- 4. Catsup (FDC 168556)
- 1 tbsp (US) = 17 g; × 101 ÷ 100 = 17.17
- 5. Lettuce, iceberg (includes crisphead types), raw (FDC 169248)
- 1 each = 8 g; × 14 ÷ 100 = 1.12
- 6. Tomatoes, red, ripe, raw, year round average (FDC 170457)
- 1 each = 20 g; × 18 ÷ 100 = 3.6
- Whole recipe
- added up = 562.95 calories
- Rounded for a US menu
- 562.95 → 560
- Nutrient data
- USDA FoodData Central, SR Legacy (April 2018)
Two things it leaves to you. It doesn't take off alcohol that cooks out of a sauce: USDA's retention table leaves 25% after an hour of simmering and 5% after two and a half hours, so a wine sauce comes out a little high, by 6% in our example. And it gives kcal only: MenuCal, a free government tool, gives kJ too.
The mistakes that throw the number off
The sums are the easy part. These mistakes move the number far more, each measured on USDA data or our worked examples.
- Raw weight with a cooked value, or the other way round. A 6 oz raw 80/20 beef patty is 432 calories by USDA's raw value and 305 once pan-broiled, by its cooked value and cooking yield: it loses water and fat in the pan. Count the raw figure for the cooked burger and you overstate it by 41%.
- The wrong database item. USDA's fast-food fries are 312 calories per 100 g and its fresh-cut fries 198: 58% more for the same weight. Read the full USDA name and pick the one that matches how you cook.
- Frying oil left out. In USDA's own recipe for fresh-cut fries, 59% of the calories come from the oil the potatoes soak up. To measure yours, weigh the fryer oil before and after frying a weighed batch, as Health Canada describes, and add the difference as its own row.
- A sauce divided by its raw weight. Simmering drives off water, not calories. If you serve by the ladle, weigh the pot after cooking. Our example sauce lost 22% of its weight, and dividing by the raw weight would have understated every ladle by the same 22%.
- Flour by the cup. Published weights for a cup of flour vary widely. In our example pancake recipe, they put one pancake anywhere from 133 to 160 calories, and USDA's cup weight gives 140. Weigh the flour once and write down the grams.
- Rounding as you go. Round once, at the end. Each rounded line can be off by up to half a rounding step, and the errors add up.
What professional nutrition analysis costs
If you'd rather pay someone, or you're a chain that needs records FDA can check, these are the published prices.
| Who does the work | Published price |
|---|---|
| Food Label Maker: its nutritionists analyze your recipe | From $69 a recipe |
| Menu Analytics: recipe nutrition analysis | $150 a recipe |
| Food Lab, Inc.: restaurant menu items, from a database | $240 an item |
| Medallion Labs: lab test for fat, protein, moisture and ash, with calories worked out from them | $354 a sample |
| Medallion Labs: full US nutrition panel | $1,656 a sample |
| MenuSano: software you enter your recipes into | From $29 a month |
| NutriCalc (UK): software you enter your recipes into | From £750 + VAT a year |
| MenuCal: government tool in Ireland, Northern Ireland and Scotland | Free |
When FDA costed its rule in 2014, it put a database analysis at $25 to $100 an item and a lab test at $650. With about 4 hours of record-keeping each, it estimated $280 to $1,030 an item, $660 on average, for an average of 117 items a chain (FDA's cost analysis). For one restaurant posting calories by choice, a calculation from your own recipe, with the sums kept, is a method every rulebook in this guide allows.
Common questions
Can restaurants lie about calories?
No. Calories you post can't mislead, even when no rule made you post them. For chains, FDA starts by working with the restaurant and treats small slips, like extra pepperoni on a pizza, as minor (FDA guidance). Beyond that, New York City can fine $200 a violation (city FAQ), England has a £2,500 fixed penalty (regulations), and Ontario's fines are set per day (the Act).
How accurate do menu calories have to be?
The US sets no margin: FDA dropped a proposed 20% test in 2014 and judges each case on the restaurant's method and records (final rule). England's guidance treats plus or minus 20% as acceptable. Either way, base the number on what your kitchen really serves.
Do I need a lab test?
No. FDA says you don't need one, and England, the EU and Ontario accept a calculation from food data too. A lab test suits a dish you can't break into ingredients, and starts at $354 a sample at the lab above.
Do calories have to be on delivery apps and online menus?
Only if a rule covers you. Then yes: FDA counts menus on the internet, England's guidance includes websites and delivery apps, and Ontario includes online menus. FDA's 2023 draft guidance also encourages chains to show calories on delivery apps, without requiring it.
The rules are summarized from official sources as of the date above; check the current rules where you operate. General information, not legal, nutrition or medical advice.