Learn → How we score

How we score food.

Three lenses, stacked. Your goals first — then how processed the food is, then what's actually on the label. Every rule cites a chapter.

  • 01The framework, three lenses
  • 02The walkthrough, scan to verdict
  • 03What we don't know yet

The framework

Three lenses,
stacked.

Same bag of chips, two readers, different verdicts. The lenses run in this order, every time.

  1. 01Goals

    What are you trying to do?

    You pick from 14 goals at onboarding. Behavior goals (eat less junk, watch added sugar, avoid seed oils), outcome goals (lower cholesterol, manage blood sugar, lose weight slowly), and context goals (feed kids well, pregnancy, longevity). Multi-select, soft cap of 4.

    When you scan a product, the engine produces one analysis per active goal, so a parent watching their own cholesterol while shopping for their kid sees both concerns side by side. The overall verdict is the strictest among them. If one goal flags the product, the day isn't streak-safe.

    Browse the 14 goals
  2. 02NOVA

    How processed is it?

    We use NOVA classification(Monteiro et al., 2009; adopted by Brazil's national dietary guidelines, the Pan-American Health Organization, and France's 2017 nutrition policy). NOVA splits food into four groups by how processed it is:

    • Group 1— unprocessed or minimally processed (fruit, vegetables, eggs, grains, fresh meat)
    • Group 2— culinary ingredients (oil, butter, salt, sugar)
    • Group 3— processed foods (canned beans, cheese, fresh bread, smoked fish)
    • Group 4— ultra-processed: industrial formulations with five+ ingredients and additives unavailable to home cooks

    Group 1 and 2 are the floor of any reasonable diet. Group 3 is fine. Group 4 is the category where Hall 2019 (NIH metabolic ward RCT) found people overate by 500 calories per day versus unprocessed controls.

  3. 03Ingredients

    What’s actually on the label?

    Once we know the NOVA group, we read every line of the ingredient list. We cross-reference against a 12,000-additive database reconciled from Ruth Winter's Consumer's Dictionary of Food Additives, FDA GRAS filings, EFSA Acceptable Daily Intake records, and the chapter-by-chapter mechanism-of-concern coverage in van Tulleken, Lustig, Moss, and Taubes.

    Each ingredient gets one of three dispositions: whole food / culinary (honey, salt, olive oil), ultra-processed marker(BHT, polysorbate 80, modified starches, “natural flavor”), or analysis (fortification, processing aids, contested additives).

    Browse the glossary

The evidence base

20 books, 4 textbooks, four public databases

The framework is established science. Our judgment calls trace back to the sources below. Everything we cite sits in this list.

Academic spine4 textbooks
  • Krause and Mahan's Food and the Nutrition Care Process, 16e — the clinical dietetics standard
  • Modern Nutrition in Health and Disease, 12e — the advanced-nutrition reference
  • Advanced Nutrition and Human Metabolism, 8e — cellular biochemistry
  • Academy of Nutrition and Dietetics Complete Food and Nutrition Guide, 5e — consumer-facing dietetics
Trade nonfiction16 books

Investigative and clinical writers across the modern nutrition debate: van Tulleken, Lustig, Moss (×2), Taubes, Schatzker, Nestle (×2), Means, Spector, Pollan (×2), Willett, Tribole and Resch, Kessler, and Winter.

Full bibliography →
Public databases4 sources
  • USDA FoodData Central — macronutrient and micronutrient values for whole foods
  • Open Food Facts — product label data, ingredient lists, NOVA tagging
  • FDA additives database — GRAS status, regulatory history
  • EFSA Food Additive Database — European Acceptable Daily Intake values

The walkthrough

From scan to verdict

Every step the app takes when you scan a product. Steps 1–3 are universal. Steps 4–6 run once per active goal.

  1. 1

    Identify the product

    The barcode lookup hits Open Food Facts (and USDA for whole foods). We pull the canonical name, brand, ingredient list, nutrition facts, and category. If the product isn't in either database, we say so. We don't guess.

  2. 2

    Place it in a NOVA group

    Single-ingredient items map to Group 1 or 2 directly. Multi- ingredient items get tagged Group 3 or Group 4 based on the presence of ultra-processed markers in the ingredient list. A single Group-4 marker drops the product to Group 4.

  3. 3

    Scan the ingredient list

    Every ingredient is matched against our 12,000-entry additive corpus. We flag concerns by mechanism (gut barrier, glycation, endocrine, neurodevelopmental), source disagreement, and regulatory status across US and EU. Constraints (allergies, vegan, kosher) are checked here as hard rules.

  4. 4

    Apply each of your goals

    For every goal you picked, we run that goal's rules from the verdict spec. Hard rules first (e.g. watch added sugar: above 25g per serving = streak-breaker). Then soft rules (5–25g = fine sometimes). Then bonuses (whole-fruit sweetness, fiber, intact whole grains).

  5. 5

    Write a per-goal explanation

    A language model with the same evidence base loaded as context writes a one-sentence headline and a short explanation for each goal. The rules already decided the verdict; the model only writes the user-facing copy. This keeps every reason traceable to a book chapter.

  6. 6

    Render the verdicts

    You see a card per goal, sorted by severity. The overall verdict is the strictest among them. If one goal flags the product, the streak isn't saved, and you see which goal raised the flag and why.

The verdicts

Three answers

What each verdict looks like in the app — same product, different goal would land differently.

GoodEnough

Steel-cut oats, plain

for lower cholesterol

Beta-glucans, zero added sugar.

Soluble fiber binds bile acids in the gut. Krause 16e, ch. 33.

Fine Sometimes

Whole-grain crackers

for feeding kids well

Real grain, but sodium is high.

280mg per serving — under the kid threshold, above the comfort line.

Streak-Breaker

Strawberry yogurt cup

for watching added sugar

Sugar in the top three ingredients.

22g added sugar — past the 5g serving threshold for this goal.

The verdict rates the product against your goals. It does not rate you. The same Streak-Breaker bag of chips on a Tuesday in week 47 of consistent eating lands differently from the same bag on day three. The streak is what matters. Any single scan is noise.

What we don't know

The honest part

Three places the score is still imperfect.

We don’t know you yet

Spector's PREDICT study (King's College London, ZOE, Stanford, Mass General) found that under 1 percent of people sit at the average glucose, insulin, and triglyceride response to identical foods. Until you connect a CGM or a microbiome panel, we score against the population average. We'll say so when we're scoring you against you.

Some additives are genuinely contested

For carrageenan, MSG, modified starches, citric acid, and ascorbic acid, the case against them is suggestive but not closed. We tag these as “analysis” rather than pretending to a verdict. The glossary entry shows what each source says.

Ingredient lists lie sometimes

FDA rules let a single sugar split across 4 names so it doesn't dominate the top of the list. “Natural flavor” covers up to 100 individual chemicals. “Spices” can hide MSG-equivalent glutamate releasers. We catch the common tricks and flag them in the breakdown. Beyond that, we're bound by the label you can see.

Updates

When the algorithm changes

When we change how scoring works, we log it here with a date and a reason. We don't silently re-rate your saved products. Major version changes appear in your app feed.

  • May 18, 2026

    Verdict engine v0.2

    Replaced single-goal verdicts with multi-select goals (14 total), per-goal analysis, and a strictest-wins overall verdict. Each goal's rules cite a specific book chapter; the eval harness blocks ungrounded additions.

  • May 17, 2026

    Surface simplification

    Retired the internal 1–5 concern scale in public surfaces. Replaced it with the three-bucket NOVA disposition (food / ultra-processed marker / analysis). The 1–5 data stays in the database for internal use.

  • May 16, 2026

    Honey re-rate

    Re-rated honey from L4 to L3 (contested) after surfacing the Winter / Lustig source disagreement.

Ready to scan something?

GoodEnough is in private beta. Join the waitlist to be one of the first to score your kitchen against your goals.

Spot a factual error on this page, or a verdict you think is wrong? Email support@getgoodenough.com. Every correction lands in the changelog above.