Home / Methodology / How to read the label

Read this before you compare two foods

How to read the Verified Label

Every food on this site gets the same standardized panel — same fields, same order, same rules for what counts as verified versus a gap. This walks through each section with a real recreation of the panel and numbered notes on what you're looking at. See the concerns we refuse to checkmark for what's deliberately left off this panel entirely.

Section 1 · Composition

Why every nutrient is shown on a dry-matter basis

Guaranteed analysis on the bag is reported "as fed" — meaning it still includes the food's water content. Kibble runs about 10% moisture; canned food runs about 78%. Comparing as-fed numbers across those two is like comparing concentrate to juice: the wet food's protein looks artificially low simply because it's diluted with water.

We remove the water mathematically so every food lands on the same scale, regardless of form.

Composition — dry-matter basis

Protein 29.5%2label: 26% min1 typical — the median dry food is 30.0%3

Illustrative example, not a specific product — see a live panel on any product page.

  1. 1As-fed label value — exactly what's printed on the bag: a legal minimum guarantee, not a measured average, and it still includes the food's moisture content.
  2. 2Dry-matter value (the large number) — what we actually display and compare across foods, computed from the as-fed value.
  3. 3Corpus anchor text — where this number sits among every dry food we've verified. Section 3 below explains the dot and track underneath it.
Dry-matter % nutrient % ÷ (100 − moisture %) × 100 Wet and fresh foods get this same conversion, but their corpus anchors are shown separately from dry food's — a wet food's dry-matter protein naturally runs higher than a dry food's, so anchoring them against the same median would be misleading rather than helpful. That's why product pages omit the dot for non-dry forms instead of comparing across forms.

Section 2 · Composition, continued

Estimated carbohydrates — and the one assumption on this whole panel

Pet food labels are not required to list carbohydrate content directly. We estimate it as the remainder after protein, fat, moisture, and fiber are subtracted — which requires one more number most labels don't print: ash (the mineral content left after a food is fully incinerated in a lab test).

Case A · this brand discloses ash

Est. carbohydrates computed from disclosed ash1 ≈38.2%computed lower than 61% of dry foods

Case B · this brand doesn't disclose ash

Est. carbohydrates ash not disclosed → 8% assumed, so this is an estimate2 ≈41.0%computed anchor available once more brands disclose ash

Illustrative examples — two possible states a food's row can be in, shown side by side for comparison; a single real product only ever shows one of the two.

  1. 1When a brand discloses ash on its label (common on wet and cat food, rarer on dry dog food), the carb estimate is computed entirely from disclosed numbers — the row reads as a normal computed value.
  2. 2When ash isn't disclosed, we assume a typical 8% dry-matter ash content so the row can still show something useful — but we flag it amber and say so directly in the row. This is the only assumption anywhere on the site; every other computed field combines disclosed label numbers with no estimation.
Estimated carbohydrates % 100 − protein % − fat % − moisture % − fiber % − ash % All percentages as-fed before the dry-matter conversion is applied to the result. This is the Modified Atwater approach used across veterinary nutrition — not something we invented — and it's always labeled with the “≈” symbol to signal it's an estimate, never a measured value.

Section 3 · Corpus anchors

What the dot and the track actually mean

A single number ("29.5% protein") tells you almost nothing on its own — is that high, low, or ordinary? The anchor line under most rows answers that by placing this exact food among every dry food we've verified for that metric.

denser than 89% of dry foods (median 392)3
1this food2corpus median

Illustrative example (kcal/cup density) — see live anchors on any product page.

  1. 1The blue dot — this exact food's position along every verified dry food's sorted values for that metric, from lowest to highest.
  2. 2The faint tick at the midpoint — the corpus median: the typical, middle-of-the-pack food. A dot right on the tick means "ordinary."
  3. 3The plain-English text above the track spells out the percentile so you never have to eyeball the dot alone — and it always names the median's actual value, not just a percentile rank.

When a food's form is wet or fresh, or the underlying value isn't disclosed, the row shows "no corpus anchor" instead of a dot — we never fabricate a position for a food we can't honestly place. Currently 494 verified dry foods make up the anchor corpus (protein median 30% dry matter).

Section 4 · Disclosure states

The four states every field can be in

Every row on the panel is honestly labeled as one of four states — we never blend them or imply more certainty than the data supports.

Verified

Pulled directly from the official label or a source that quotes it verbatim — no computation involved.

Legumes in first 10None
ƒ Computed

Derived by formula from two or more verified label values — dry-matter conversion, estimated carbs, kcal per serving.

Fat, dry matter15.8%
? Undeterminable

The recipe contains an ingredient (like fish meal) where U.S. rules don't require the relevant fact on the finished label — so no label, from any brand, can prove it either way.

EthoxyquinCan't be determined
Not disclosed

The brand simply doesn't publish this field. We show it as a plain gap rather than guessing a plausible-looking number.

Calcium / phosphorusNot disclosed

Section 5 · Standards & ingredients

Two very different AAFCO claims, printed to look almost the same

Nearly every commercial food carries an AAFCO nutritional-adequacy statement — but the statement comes in two forms with very different evidence behind them, and the label rarely explains the difference.

Standards & ingredients

AAFCO statement1 Feeding trials ✓ · adult maintenance
AAFCO statement2 Formulated to meet · adult maintenance

Both statements are real AAFCO categories — a given food carries one or the other, never both.

  1. 1Feeding trials — the stronger claim: "Animal feeding tests using AAFCO procedures substantiate that [this food] provides complete and balanced nutrition." The recipe was actually fed to real dogs under a defined protocol.
  2. 2Formulated to meet — the more common claim: the recipe was calculated on paper against AAFCO's nutrient profiles, with no feeding trial required. Most foods on the market, including many good ones, use this route — it isn't a red flag by itself, but it's a meaningfully different level of evidence than a feeding trial.

Section 6 · Standards & ingredients

What each ingredient flag is actually checking

Every flag below is computed straight from the ordered ingredient list — nothing here is a judgment call about "quality," only a factual check against a specific, named criterion.

Named animal protein first; named meals only e.g. "chicken" or "chicken meal," not "meat meal"Yes
Legumes in first 10 the FDA's own DCM inquiry looked at pea/lentil position — see why we don't turn this into a risk score2 (peas, lentils)
BHA / BHT preservatives synthetic preservatives some owners choose to avoidNone on label
Carrageenan (thickener) wet-food thickener, occasionally linked to GI sensitivity in some dogsYes
Ethoxyquin see the "undeterminable" state aboveCan't be determined from label

Illustrative combination of states — not one real product's actual flags.

Notice the legume flag in particular: the FDA's DCM investigation (2018–2023) never established that legume position causes heart disease — see why we don't checkmark taurine/DCM risk. We report legume position as a fact from the FDA's own inquiry, not as a verdict.

Section 7 · Footer

The transparency meter isn't a quality score

Every product page ends with a count of how many of our 15 standard fields (guaranteed analysis, calories, AAFCO type, ingredient flags, recall history, and manufacturer) the source material actually discloses.

Label transparency 11 of 15 1

Illustrative example — 11/15 disclosed fields.

  1. 1This is a completeness signal, not a quality judgment. A food at 15/15 could still be a mediocre recipe; a food at 8/15 isn't automatically worse — it usually means the brand (or our best available source for it) simply publishes less. Use it to know how much you can verify, not to rank foods.

The transparency count, the corpus size behind every anchor, and the source link are all printed together in the panel's footer — so the provenance of every number above it is one scroll away, not buried in a separate page.

See it on a real, live label

Every section above is a recreation. Purina Pro Plan Sensitive Skin & Stomach Salmon & Rice Formula Adult Dry Dog Food is a real, currently-priced product page carrying 14 of 15 standard fields — a good one to see the full panel on.

Open the real Verified Label →