Home Methodology

Methodology

How Nutrient Lookup sources, verifies, and updates its data.

Last reviewed August 2026

Our editorial promise is straightforward: every number on this site comes from a publicly accessible source, and where the source is the restaurant itself, we say so. This page documents how the database is built and refreshed.

Primary sources

The first source for each chain's data is the chain's own legal nutrition disclosure — the PDF or HTML page they publish for the FDA's menu-labeling rule (21 CFR 101.11). For chains operating 20 or more locations, that disclosure is required by federal law, and it is the canonical source of per-item calories, fat, carbohydrates, sodium and the standard FDA allergen panel. Where the chain's disclosure includes ingredient lists, we capture those as well.

We supplement the chain disclosure with values from USDA FoodData Central when the per-item disclosure is incomplete (for example, when fiber is unreported but the dish is built around a bean or grain whose fiber content is reliably known). FDC entries we cite include their canonical FDC ID for traceability.

Update cadence

Casual-dining menus shift seasonally. The chains we track typically refresh entrées twice a year, with smaller limited-time-offer (LTO) changes in between. We re-pull each chain's nutrition disclosure on a rolling 60-day cycle and reconcile it against our published data. Material reformulations get an "updated" stamp on the affected item pages.

What we do not do

  • We do not estimate or interpolate calorie counts. If a chain has not published a value, the cell is left blank rather than guessed.
  • We do not adjust for "as ordered" modifications (extra cheese, double protein, dressing on the side). The numbers reflect the dish as published.
  • We do not make medical recommendations. We surface information; the appropriate use of that information is between you and your doctor or registered dietitian.

Common questions

Why do my receipts sometimes show a different calorie count?

Casual-dining kitchens prep at scale, and per-portion variance — particularly in sauced or fried items — is a known phenomenon. The chain's published number is a target, not a guarantee. Our database reflects the published target.

Why are some dishes missing?

The most common reason is that the chain's published disclosure lists the dish only in a regional menu (e.g. happy-hour-only, or only at certain locations). We tag and publish those when they appear in the public disclosure.

Reference standards we use

Historical nutrient reference layer: MenuStat (NYC DOHMH), 2018

In August 2026 we added a second, clearly-dated data layer on top of the primary 2026 database above. It comes from MenuStat Annual Data, published by the New York City Department of Health and Mental Hygiene and distributed via Harvard Dataverse (doi:10.7910/DVN/K4NYTR) under a CC0 1.0 Public Domain Dedication. We used the 2018 annual file, MenuStat's most recent year.

What it adds: six nutrient fields our own disclosure-sourced database does not carry — saturated fat, trans fat, cholesterol, potassium, dietary fiber and sugar — shown in a separate "Per MenuStat (NYC DOHMH), 2018" card on the item pages where we found an exact match. It never touches, overwrites, or "corrects" any of our own 2026 figures.

Why it is dated 2018, not 2026: MenuStat has not published a newer annual file. A restaurant chain can and does reformulate menu items over eight years, so a 2018 nutrient value is not necessarily today's value. Every MenuStat figure on this site carries its own "2018" label for that reason, and we do not use it to validate or contradict our 2026 figures.

Match method: restricted to the nine chains that appear in both datasets — Applebee's, Chili's, Denny's, IHOP, Olive Garden, Outback Steakhouse, Red Lobster, Ruby Tuesday and TGI Fridays. Within each chain, we required an exact match between our item name and a MenuStat 2018 item name, after normalizing case, punctuation, and portion-size wording/placement (e.g. "8oz Top Sirloin" vs. "Top Sirloin, 8 oz"). No fuzzy or partial-text matching was used; a near-miss stays unmatched rather than risk attaching the wrong dish's numbers.

Counts: 224 of our items fall within these nine chains. 75 matched a MenuStat 2018 item name exactly (74 to a single MenuStat record, and 1 where MenuStat itself carries more than one 2018 record under the identical item name — for that one item we show every variant, clearly labeled, rather than guess which build applies). 149 items had no exact match and were left untouched. Of the exact matches, 1 (Denny's "Build Your Own Grand Slam") resolved to a MenuStat record with none of the six target fields populated, so it carries no visible card. 74 item pages carry a visible MenuStat 2018 card.

Field coverage caveat: Potassium was one of the six fields we set out to add, but MenuStat's 2018 file only populates it for a small fraction of all rows dataset-wide, and for none of our matched items — so no page on this site currently shows a MenuStat potassium value. This is a gap in the source data, not a step we skipped.

Units: saturated fat, trans fat, dietary fiber and sugar are shown in grams; cholesterol and potassium in milligrams — the same FDA Nutrition Facts label convention our own figures already use. MenuStat's raw file does not repeat a unit per cell; we render values under this standard convention rather than inventing one.

What we deliberately did not do: we did not overwrite or "correct" any current 2026 figure with a 2018 MenuStat value; we did not fuzzy-match item names; we did not extend this layer beyond the nine overlapping chains; and we did not add any new pages — the MenuStat card only appears on existing item pages that already existed in our 2026 database.

Found an error?

Email the editorial desk via the contact page and reference the URL of the page in question. We respond to corrections in priority order ahead of feature requests.