Unsold Research Bulletin

Vol. 1 — How Unsold grades

Methodology of record: GRADING.md v3.1.2 · typeset from source, nothing paraphrased

Download the pressed PDF · or print this page — the stylesheet finishes the job.

How Unsold grades

Methodology v3.1.2 — 2026-08-30

This is the whole method, in public. Unsold penalizes proprietary blends; it would be strange to run on one. Every number below lives in src/engine/score.ts and src/engine/ingredients.ts, and every grade in the catalog follows from them: the same label data always produces the same grade, and the rules that get it there are the ones written down here.

What a grade is, and what it is not

Unsold grades the label's best case. Every stamp assumes the Supplement Facts panel is telling the truth — the doses as printed, the forms as named. Most products fail anyway.

Independent laboratory testing answers a different question: is the label true? That question matters, and the answer can move a grade in only one direction. An F on paper cannot be redeemed by a lab. An A on paper still has to survive one.

The office grades the promise. It does not test the powder, and it does not pretend to.

What the letters mean

GradePlain language
A+Top-of-range clinical doses, best-in-class forms, nothing hidden. Rare on purpose.
A / A-Dosed like they actually read the research. Buy with confidence.
B+ / B / B-Mostly honest and mostly effective, with a soft spot or two — a light dose, a cheaper form, one thing undisclosed.
C+ / C / C-Middling. The right ingredients shy of the doses that make them work, or fine on paper and cheap in the details. Not a scam, not a standout.
D+ / D / D-Sprinkles of the good stuff priced like the full dose. Mostly filler and fairy dust.
FMarketing with a Supplement Facts panel attached.

The cutoffs are the familiar academic ones (97/93/90 for A+/A/A-, and so on down). A grade is a compressed summary — the per-ingredient breakdown is the actual argument, and it is always one tap away.

The pipeline

Each product runs through the same seven steps, in order, every time:

  1. Dose normalization. Every labeled dose is converted into the reference ingredient's canonical unit (mg ↔ mcg, IU → mcg for vitamin D). A dose we cannot honestly convert is not guessed at — it is set aside.
  2. Basis matching. A range stated per day is compared against a day's dose; a range stated per serving is compared against one serving. Where components are only meaningful together — EPA and DHA — they are summed first and graded once. See Comparing like with like below.
  3. Clinical-range banding. The normalized dose is compared against the clinically studied range in the reference table: effective (interpolated 90–100 by position inside the range), above-range (86), excessive (68), slightly under (62), underdosed (42), trace (24), meaningless trace (12). Concealed doses score 34. A row explicitly marked unsupported has no published generic range and does not contribute to the grade.
  4. Form-quality modulation. Ingredients are not interchangeable chemicals. Magnesium glycinate absorbs; magnesium oxide mostly passes through. Each form carries a 0–1 quality factor, and a cheap form can dock up to 40% of the band score.
  5. Weighted mean. Ingredient scores roll up into one 0–100 number, weighted by how much each ingredient matters (hero actives up to 2.0, incidental fairy dust as low as 0.6). Rows marked incidental — a processing aid the product makes no claim on — are left out here, and EPA and DHA have already been summed into the single row their evidence is stated on.
  6. Blend-concealment penalties. On top of each hidden ingredient's low score, that mean is then shaved in proportion to how much of the formula is hidden inside proprietary blends (up to 40% of the grade), plus a flat extra penalty when a hero active — the ingredient you are actually buying the product for — is the thing being hidden. The order matters and it is this way round: you cannot shave a grade before you have computed one.
  7. Letter cutoffs + deterministic flags. The number maps to a letter, and pure rules over the computed scores emit the flag chips: proprietary blend hides the doses, underdosed hero ingredient, cheap ingredient form, most of the formula is hidden, every dose disclosed, and so on. The one-line verdict comes from a fixed template table. No step anywhere in this pipeline involves randomness, the clock, the network, or a model generating text.

Where the numbers come from

A grade is only as good as the range it is measured against. For two years this document described those ranges in the aggregate — "commonly cited clinical literature and monographs" — which sounded reasonable and told you nothing about any particular number.

So in July 2026 every one of the 69 reference ingredients was audited against the literature, one row at a time, and every citation was re-checked by a second reader working independently of the one that found it. Both readers were AI agents, kept separate on purpose; the audit does not claim they were equivalent, and two machines agreeing is weaker evidence than two experts agreeing. The result is uncomfortable, and it is published here rather than smoothed over:

3 of the 69 ranges are anchored to a source that states their numbers. Three more carry a real citation that fixes at most one end of the band. The other 63 are not anchored at all.

That headline used to read "6 of the 69", and correcting it is the point of v3.0.3. Six rows carry a genuine, resolvable citation — but a citation is not automatically a warrant for both ends of a range. The NIH fixes magnesium's 350 mg ceiling and says nothing about where an effect begins. The taurine meta-analysis fixes a 1 g floor and runs all the way to 6 g, while this table stops at 2,000 mg by convention. The theanine trial administered a single 200 mg dose, which fixes neither end of 100–400. Counting those three as ranges a source states was the same overclaim, one level down, that this whole audit existed to remove — so they are now reported separately instead of folded in to make the number look better.

Every row says which it is, in the table itself. A row either carries a source — title, issuing body, year, a resolvable DOI/PMID/URL, the dose sentence quoted from it, and whether that sentence covers the whole range or only part of it — or it carries an explicit no-source declaration naming what was found and why that cannot govern the number. There is no third option, and there is no blank. A partial source that does not say which end it fixes will not pass the checks, and a row that leaves the field out will not compile, and both npm run verify and npm test refuse a declaration filled with an empty string that merely looks like one. CI runs the compiler, the checks and the tests on every change.

"No source" is a first-class answer here, and it is always better than a plausible-looking one. The five reasons a row can give:

DeclarationWhat it means
practitioner conventionA band the industry uses. Widely used is not established.
intake referenceBuilt on an RDA, AI, or UL. An adequacy floor or a safety ceiling is not an effective dose.
off-basisReal evidence exists, but doses in mg/kg, or mg/litre, or a branded extract — so it cannot set a fixed milligram band.
null at the coded doseSomeone tested doses in this range and found nothing.
implementation sentinelThe number is a deliberate engine device, not a dose. (Apoaequorin only.)

No-source and unsupported are separate decisions. A no-source declaration preserves what was found about a coded range; it does not silently decide every product-grade consequence. An unsupported row is a narrower, explicit policy decision: no defensible generic range is published or used for that row's coded use, the ingredient remains visible on the label, and it is left out of the weighted mean. In v3.1.0 that decision applies only to melatonin, L-tyrosine, and arginine. Their no-source findings remain printed on the row; no other ingredient's policy changed. An unsupported ingredient hidden in a proprietary blend still counts as hidden mass — refusing a range does not launder concealment into transparency.

The 63 do not divide the way the comfortable version of this sentence would have it, so here is the count. Intake reference is the largest group at 23 — rows built on an RDA, AI, or UL, which the table directly above says are not effective doses. Practitioner convention is second at 18. Twelve are off-basis, nine are null at the coded dose — someone tested that range and found nothing — and one is the sentinel. So a plurality of our unsourced ranges rest on adequacy and safety references rather than on formulator practice, and nine of them sit on top of a null result. Widely used, adequacy floor, and tested and found nothing are three different claims, and you are entitled to tell them apart.

Where the line between "partial source" and "convention" currently sits, and why it is drawn conservatively. A row is recorded as a partial source when a resolvable paper states a dose for the same compound on the same basis that lands on an endpoint of the coded range. It stays practitioner convention when the located evidence is for a branded or standardized extract that a generic milligram row cannot inherit, when the dose sits inside the range without fixing either edge, or when the coded number came from formulator practice and the citation merely sits nearby.

Applied strictly, that rule would probably move more rows out of convention and into partial than the three now recorded: sixteen of the eighteen convention rows cite a resolvable paper, and several name a dose at or very near an endpoint. We have not moved them, and the reason is directional. Every such reclassification takes a row out of the 63 and puts it in the partial column; none of them can raise the headline 3. So the number this document leads with is a floor, not an estimate, and the error runs against us. Deciding each of those sixteen is an evidence judgement that deserves its own pass rather than a batch edit made while tidying, and until it happens this paragraph is the honest description of the boundary.

The two are independent, on purpose. Magnesium carries a real source — the NIH's 350 mg ceiling for supplemental magnesium — and still sits at the lowest certainty tier, because a safety limit is not evidence that a dose works. A citation is not a compliment.

A range is never tuned to protect a product. The ranges are the same for every product on the site, which is the entire reason the grades are reproducible. When a range moves, it moves because the evidence moved, and every product it touches moves with it — including the ones that were flattering us.

Comparing like with like

The per-day problem. A Supplement Facts panel states a dose per serving. Almost all of the governing evidence — RDIs, loading protocols, nearly every clinical trial — is a daily total. Comparing one directly against the other is a category error, and it quietly mis-grades every product meant to be taken more than once a day.

Each reference range now declares which basis it is on, and each product may declare how many servings a day its label's directions state. Where both are known, the engine compares a day against a day.

Where the directions are not on file, it does what it has always done — treats one serving as the day's dose, the most charitable reading available — but it now says so on the row instead of burying the assumption in the arithmetic:

That clinical range is a daily total, and this label's directions are not on file — so one serving was judged as one day's dose. If the label tells you to take more than one serving a day, the real daily amount is higher than what is measured here.

Being straight about the current state: no product in the catalog records its label directions yet, so that notice appears on every per-day row today. Transcribing directions is label-reading work, product by product, and it has not been done. The mechanism is built, tested, and honest about its own gap — which is better than an engine that silently assumed the answer, and better than a number invented to fill the field. Not one grade moved because of this change.

What the range is measured in. Every row also declares its mass basis, because milligrams are not interchangeable. Elemental magnesium is not magnesium salt. Folate is dosed in DFE, vitamin A in RAE, niacin in NE — conversions most labels never print. Curcuminoids are not turmeric. Citrulline malate is about two-thirds citrulline. Alpha-GPC raw material is often half alpha-GPC. Probiotics are counted, not weighed. Where a row's number means something narrower than the word on the label, the row says so.

EPA and DHA. A fish oil can print one number ("EPA/DHA 600 mg") or two ("EPA 360 mg, DHA 240 mg"). Until v3.0.0 those were graded by different rules: the combined row cleared its floor at 250 mg, while the split rows each demanded 250 mg — so an identical oil needed twice as much to pass, purely for printing more detail. It was also weighted twice. Punishing a label for itemizing is exactly backwards for this project.

The NIH records that no EPA-specific or DHA-specific intake recommendation was ever set, and the American Heart Association's language is combined. There is no authority for a 250 mg EPA-alone floor, so the engine no longer enforces one: EPA and DHA are summed and graded once, against the combined total. Both rows stay on the panel exactly as printed, marked as counted in the total above.

Two limits are deliberate. A component hidden inside a proprietary blend is never absorbed into a total — that would launder concealment into a clean number. And if a label already discloses the combined figure itself, nothing is combined, so no dose is ever counted twice.

The stance

Why blends are penalized. A hidden dose is worse than a known-bad dose. A known-bad dose you can at least see; a hidden one asks you to pay for a promise. "Proprietary blend" is not a formulation secret — the FDA already requires every active in the blend to be named, just not quantified. The only thing concealed is the part that lets you judge value. So concealment is graded as what it is: a choice to keep you from checking.

Why some rows do not count. A Supplement Facts panel lists what is in the product, which is not the same as what the product is offering. A creatine gummy sets with pectin and a sodium-citrate buffer, so its panel prints a few milligrams of sodium. Nobody buys a creatine gummy for sodium.

A row is marked incidental when both are true: the nutrient appears only as an artifact of manufacture, and the product makes no claim on it. An incidental row is transcribed and shown exactly as printed — the panel is never edited — but it does not enter the weighted mean, because this engine grades toward the ingredients you actually bought the product for, and grading a creatine gummy against its buffer salt contradicts that.

The rule is deliberately narrow. A nutrient the product's name, category, marketing, or panel positioning presents as something it delivers is not incidental, however small the dose: an electrolyte powder with 40 mg of sodium is underdosed, not incidental, and a multivitamin's 20 mg of magnesium is a claim it chose to make. Where the evidence does not clearly show a processing aid, the row stays scored. The conservative answer is always to leave it scored.

This marker can only ever improve a grade, so every use of it is published in the product data itself — visible on the product's own result page, not hidden in an internal note.

Why forms matter. Two labels can print "400 mg magnesium" and deliver wildly different amounts of usable magnesium. Grading the molecule and ignoring the form would grade the marketing, not the product.

Why unscored rows exist. If an ingredient is not in the clinical reference table, we show it and score nothing. We never invent a range for an ingredient we have not reviewed. (Note what that does and does not promise: the 69 rows we do score against are declared one by one above, and 63 of them carry no governing source. Not inventing a range is a lower bar than citing one, and this sentence only claims the lower bar.) An unrecognized ingredient is neutral — it neither helps nor hurts the grade — because "we haven't reviewed it" is not evidence of anything.

What "unscorable" means. If a product contains nothing we can score — an all-novel formula — it does not get a fabricated grade. It gets an explicit "nothing recognizable to grade" result. A grade we cannot support is worse than no grade.

A worked example of the philosophy: the concealed-blend fix

For a while, the concealment math had a hole. The blend penalty counted hidden rows only when the hidden ingredient was also in the reference table. A row hidden in a blend and unrecognized escaped entirely — it didn't count as hidden mass, and in products where it was the only blend row, the product didn't even register as having a blend.

The predictable result: a multi-collagen product hid its entire active formula behind one row labeled "Proprietary Blend" and graded B+ on its two disclosed token vitamins. A pre-workout parked a 13.5-gram stimulant matrix in unrecognized blend rows and graded B on the handful of ingredients it chose to disclose.

That is backwards. A label does not get less suspicious because the thing it hides is obscure — the less we can identify the hidden mass, the more the concealment is the story. The fix: concealment now counts every blend-hidden row, recognized or not. Unrecognized hidden rows still get no per-ingredient score (we never invent a range), but their mass counts toward the "most of the formula is hidden" penalties and flags. Those two products dropped to C and C-, and 47 other products with the same pattern moved down with them. No product was special-cased; the rule changed, the math followed.

Certainty

A grade says how honest and well-dosed a label is. It does not say how strong the science behind the ingredients is — creatine and coffee-fruit extract can both be dosed perfectly, and they are not equally proven. So every result also carries a small evidence: mark next to the grade: high, solid, emerging, or early. Each reference ingredient is tiered by the body of evidence located for that ingredient (A: meta-analysis, position stand, or multiple RCTs; B: two or more controlled trials; C: a single trial or clearly limited human evidence; D: observational, traditional-use, or mechanism-only), and the mark reports which tier dominates the scored formula, weighted by how much each ingredient matters. It rides alongside the grade and never changes it — an F built on high-certainty evidence is still an F, and an A built on early evidence is still an A.

v3.0.0 lowered 46 of the 69 tiers. The rule is that a tier grades the evidence located for the ingredient — how much good research says it does anything at all — judged on efficacy findings only. Under that rule most of the vitamin and mineral rows fell to D: they are built on RDAs and ULs, which are adequacy and safety references rather than efficacy findings. No tier was raised.

A tier is not a claim about our numbers. Whether a source states the range we coded is a separate field, recorded separately, and the two do not move together. Caffeine is tier A carrying no source: the literature is deep, and no single paper prescribes 100–400 mg. Magnesium is the mirror image — a real citation at the lowest tier, because a safety ceiling is not evidence that a dose works. Read the tier as how well studied is this ingredient, and the range's own source line as who says these numbers. Six ingredients have the second. Sixty-nine have the first.

Where a clinical guideline recommends against an ingredient — the American Academy of Sleep Medicine on melatonin, systematic reviews on valerian and chamomile — that lowers the certainty mark and is written into the row's caveat, where a reader will see it. It does not delete the range and it is never smuggled in as a dose penalty. This engine grades whether a label matches the doses that were studied. It does not decide for you whether the ingredient is worth taking; it tells you what was found and lets you weigh it.

Manufacturing Assurance

The grade and the certainty mark answer two questions about the label: is it dosed well, and how well studied are the ingredients. Neither one asks whether the tub in your hand actually contains what the label says. Starting with a small pilot, some result pages also carry a third, separate line: Manufacturing Assurance — what publicly verifiable quality-control evidence exists for this product, found in manufacturer statements, certifier registries, and facility audit records.

What this is not. Unsold did not open a single tub. It did not run a single test. Manufacturing Assurance reports what is publicly documented about someone else's testing — the manufacturer's own claim, an accredited lab's registry entry, a facility auditor's certificate — never Unsold's own verification of purity, potency, contents, or safety. A high mark here is not Unsold vouching for the product; it is Unsold pointing at what is checkable and naming exactly who checked it.

Five tiers, low to high:

TierWhat it means
No assurance evidence foundChecked; no public quality-control claim located beyond a bare legal baseline (every U.S. facility must already be cGMP-compliant — that alone is not evidence of anything more).
Manufacturer-declared testingThe manufacturer states testing publicly, but no independent registry confirms it. A real certification program named by the manufacturer is still a manufacturer claim until the certifier's own listing corroborates it.
Independently audited facilityA named independent body currently audits the manufacturing facility — not this exact product.
Exact-product independent certificationThis exact SKU is listed by name in an official independent certifier's own registry.
Current lot / every-batch verificationAn independent source names covered lots, or states every batch is tested before release, for this exact product.

Scope is not optional reading. Every entry also states what the evidence actually covers — the finished product, the facility that makes it, or (for a branded raw ingredient inside the formula, like a chelated mineral) only that ingredient's own supply chain. A branded ingredient's authenticity program is real evidence about that ingredient; it never certifies the finished, blended, encapsulated product around it, and this page never lets it try.

"Current" is bounded, not permanent. Every record is explicitly marked as tier support, context, or history, and every supporting record must match the entry's stated scope. Currency is evaluated against the frozen evidence date printed on the disclosure. A certificate must remain valid on that date; a live registry with no published expiration records when it was observed and the date through which that observation may support current wording. Moving the evidence date forward requires a fresh registry check. An expired or malformed supporting record fails even when another valid source sits beside it; historical evidence can remain visible, but cannot support the tier.

The v1 pilot is 11 catalog products, hand-researched against primary sources, deliberately spanning the full tier range above. Every other product on the site shows "Not yet reviewed" — an honest gap, never confused with a checked-and-found-nothing "no assurance evidence found." The pilot does not move, rank, or filter anything else on the site: it is absent from the score, the grade distribution, category rankings, better- graded alternatives, and the certainty mark, by construction.

Reproducibility

The grading engine is a pure function. Same label data in, same grade out — no randomness, clock, network, or LLM. Manufacturing Assurance likewise never reads the machine clock: it validates its frozen evidence ledger against the explicit evidence date stored with that ledger.

``bash npm run verify # 41 checks: worked examples, determinism, flag rules, # full-catalog integrity, a data-provenance lint, an # evidence-tier lint, the range-provenance lint that fails # if any row leaves its source undeclared, a # single-source-of-truth sweep that fails when a number or # a definition stated in this document stops matching the # engine, and a prerendered-route coverage check that fails # if any static route in the router has no static HTML in # dist/ — then prints every graded product and the # distribution npm test # unit tests + a full-catalog snapshot test ``

The snapshot test (src/engine/snapshot.test.ts) records every product's grade, numeric score, concealment fraction, and flags. Any tuning change — a constant, a reference range, a data edit — shows up in the pull request as a complete, line-by-line diff of its consequences. CI runs verify, tests, and a build on every PR and posts the grade distribution as a comment. If a grade in the app ever disagrees with what npm run verify prints on the same commit, that is a bug, and we want to hear about it.

What grades are NOT

  • Not a safety assessment. An F does not mean a product is dangerous and an A+ does not mean it is safe for you. Interactions, contraindications, allergies, pregnancy, medication — none of that is in scope.
  • Not medical advice. Unsold grades whether a label delivers the doses and forms the clinical literature studied. Whether you should take anything is a conversation for a clinician who knows your history.
  • Not a review of the brand. We grade formulas, not companies. A brand can earn an A on one SKU and an F on the next; several do.
  • Not permanent. Labels reformulate. Each grade is a dated snapshot of a specific panel from the source cited on its result page. If the tub in your hand prints a different panel, the label wins — confirm against the physical product before you buy.

Changelog

  • v3.1.2 — 2026-08-30. Two NIH DSLD records were corrected against their structured labels. Gorilla Mode now records both the printed 190 mg elemental sodium and the separate 500 mg Pink Himalayan Sea Salt mass; the salt row is shown but not scored, so sodium is not counted twice. Its amended filing moves from C / 74.1 to C- / 72.7. Redcon1 Total War now records its omitted 5 mg Cocoa Seed Extract row and the label's printed botanical forms and standardizations; those rows have no matching repository reference and remain visible and unscored, so its B / 84.6 result is unchanged.

No scoring rule, range, weight, cutoff, or evidence policy changed. One product changed numeric score and letter grade; the raw grade distribution remains A:62 B:61 C:28 D:31 F:97. Counted as verdicts, the catalog still has 263 graded products with 81 real F grades and 16 refusals standing outside the distribution entirely.

  • v3.1.1 — 2026-08-28. Four records were refreshed against current manufacturer or NIH DSLD evidence. Transparent Labs BULK now records its 20.8 g serving, disclosed sodium, corrected potassium, and the printed B6/B12 forms; its amended filing moves from B+ to A-. Garden of Life Vitamin Code Men now keeps K1 120 mcg and K2 (MK-4) 20 mcg as separate rows. Hiya now records calcium at 25 mg and its disclosed 25 mg fruit-and-vegetable blend. Seed DS-01 now records the manufacturer's current four blend totals; its stored 400 mg prebiotic row remains explicitly unconfirmed by that page.

No scoring rule, range, weight, cutoff, or evidence policy changed. Three products changed numeric score, one changed letter grade, and Hiya's score stayed fixed. Two third-party source records now bind to manufacturer pages, reducing the unverified-source count from five to three. Raw engine distribution is A:62 B:61 C:28 D:31 F:97. Counted as verdicts, the catalog has 263 graded products with 81 real F grades and 16 refusals standing outside the distribution entirely.

  • v3.1.0 — 2026-08-06. Three owner-decided unsupported evidence findings now change the engine rather than sitting beside it: melatonin, L-tyrosine, and arginine have no generic clinical range to publish or score for their coded uses. Their labels and no-source declarations remain visible, but their former bands no longer supply a grade. This is not a narrower substitute range, and no other ingredient was reclassified.

Seventeen products contain a target row; sixteen numeric scores changed. Seven products changed letter grades, GNC Men's Nitric Oxide Maximizer became not graded rather than carrying the cutoff artifact F, and eight changed score without a letter or refusal change. The eight amended filings preserve their former stamps; Nutra Innovations Epitome also retains its earlier B → C amendment. Built By Nature Nitric Oxide remains F / 21.4. The full deterministic inventory is produced from the catalog by the verification tests and build artifacts.

Raw engine distribution is A:61 B:62 C:28 D:31 F:97. Counted as verdicts, the catalog has 263 graded products with 81 real F grades and 16 refusals standing outside the distribution entirely. The remaining 16 carry no grade.

Unsupported rows render an explicit refusal on the product page, score no dose band, and leave a hidden blend's opacity penalty intact. The one refusal follows the same public/API rule as every other ungraded product: no letter grade is published in its title, share card, certificate, docket, structured data, or generated API metadata.

  • v3.0.4 — 2026-07-29. Fifteen products were being published as F for a reason that is not their fault: nothing on their panel is in this reference table. Greens powders, digestive enzymes, colostrum, fruit-and-vegetable blends. The engine scores them 0, the letter cutoffs turn 0 into F, and the page title, the share description and the grade card all went on to state it.

F is a verdict — the table above defines it as "Marketing with a Supplement Facts panel attached." Publishing it for a formula we simply have no reference data for asserts a judgement the record does not support, about a named company, in exactly the places that travel: an indexable <title>, an og:title unfurled by every messenger, and a downloadable card. The structured data on those pages had been honest all along, emitting no rating at all; the human-readable half had not.

No grade moved and nothing was re-scored. The numeric is still 0, the internal letter is still F, the snapshot is untouched. What changed is what gets published: those pages now read "not graded", the card presses NOT GRADED in caption ink rather than a red F, the stamp on the page does the same, and the score line says nothing on this panel is in the reference table. The distribution is unchanged — the halls, the homepage and llms.txt had already excluded these fifteen, which is precisely why the grade surfaces and the counting surfaces disagreed.

The predicate for "the engine refused to grade this" had been copy-pasted into six files. It is now one exported function, which is the actual fix: the duplication is why the surfaces drifted apart in the first place.

Also in this release: the boundary between partial source and practitioner convention is now written down under Where the numbers come from, including the admission that applied strictly it would likely move more rows into the partial column — never into the headline 3, so the published number is a floor.

  • v3.0.3 — 2026-07-29. The headline number was too flattering, and this corrects it downward. 3 of the 69 ranges are anchored to a source that states their numbers. Three more are anchored at one end at most. The other 63 are not. Between them sit three rows that carry a real, resolvable citation covering at most one end of the coded band — magnesium's ceiling, taurine's floor, and a single theanine dose that fixes neither end of its range.

Nothing was found to be wrong with those three citations; they are the same sources, still quoted, still resolvable. What changed is that "a source states this range" now means the source states the range, not that a source exists somewhere near it. Every source row declares its coverage, a partial one must name which end it fixes and which end is convention, and a build check refuses a partial that does not.

The reader-facing effect is on the row itself: the breakdown now prints the gap, so a magnesium range of 200–350 mg sits directly above a quote that mentions only 350. The same check that guards the split in this document now also guards it in llms.txt, where the sourcing breakdown had never been verified — the catalog numbers one line above it were.

No range, tier, score, letter, or flag changed, and no grade moved.

  • v3.0.2 — 2026-07-29. The provenance every range carries is now visible on the site, and the facts this document states are now checked against the engine instead of being retyped.

The declarations are published, not just recorded. v3.0.0 made every range declare its origin and then showed it to nobody — the only reader was a build lint. A methodology fact that lives only in the repository is not published, whatever the changelog says. Expand any scored row in the per-ingredient breakdown and it now prints what the range is measured in and where it came from: the source that states its numbers, quoted, or the explicit declaration that no source does and what was found instead. No range, tier, weight or grade changed.

Four surfaces were saying things this document had already retracted. llms.txt — the file written for AI assistants to repeat verbatim — called every one of the reference ranges cited, which is the exact aggregate claim v3.0.0 was written to withdraw, and every catalog number in it was stale by ten products and two methodology versions. humans.txt cited v2.2.0. The downloadable bulletin PDF was pressed from v2.2.0 and offered under a line reading "typeset from source, nothing paraphrased". The type definitions still defined an evidence tier as grading "the citations behind a reference row" — the definition v3.0.1 retired. All four are corrected.

One reassurance was false and is withdrawn. This document said "most of the 63 are practitioner conventions". They are not: convention is the second-largest group at 18. The largest is intake reference at 23 — RDAs and ULs, which this document elsewhere says are not effective doses — and nine rows are null at the coded dose. The composition is now printed and checked.

The pipeline was described in the wrong order. Step 5 shaved the grade and step 6 computed it. The engine has always done it the other way round; the list now matches the code.

The F in the distribution is two things added together, and says so now. A:61 B:62 C:30 D:32 F:94 is the raw engine distribution over all 279 products, in which the 15 the engine refused to grade carry a placeholder F. Counted as verdicts rather than ranks — the way the halls, the category reports and the front page count them — it is 264 graded products and 79 real F grades. Both numbers were already published on different surfaces; neither moved.

Thirteen new checks close the class. A duplicated count, version or definition must now be derived from the engine or asserted equal to it. The sweep fails when this document's sourced/unsourced split, declaration composition, distribution, version, check count, or retired-definition ban stops matching the table; when llms.txt or README.md state a catalog the engine does not produce; when the breakdown stops rendering the declarations; when the downloadable PDF was pressed from a different GRADING.md; and — for the first time — when the scoring path can see an evidence tier at all. That last one is the rule this document has stated in seven places since v2.2.0 and had never once tested.

No range, tier, weight, hero flag, form quality, score, letter or flag changed, and no grade moved.

  • v3.0.1 — 2026-07-29. A contradiction introduced by v3.0.0, found on review and corrected before publication. v3.0.0 gave every range a formal source declaration, and 63 of the 69 declared they had none — while the product page went on calling each scored ingredient a "tier-A source," and this document defined a tier as grading "the located evidence for the range as coded." Under that definition six tier-A rows could not have kept an A, since no source states their range.

The tiers were right and the words were wrong. A tier grades how well studied the ingredient is; provenance records who states our numbers. They are separate questions and the repository now says so consistently — the page counts ingredients rather than sources, and the Certainty section states the distinction outright. No range, tier, score, letter, or flag changed, and no grade moved.

  • v3.0.0 — 2026-07-29. The clinical evidence audit of all 69 reference ingredients is closed out, and every range now declares where its numbers came from.

The headline as v3.0.0 published it: six rows carried a citation, and the remaining 63 declared none, each one naming in the table what was actually located and why it cannot govern. (v3.0.3 corrected the first half of that sentence: only three of those six state their range end to end.) Reasonable practitioner convention is the second-largest group, at 18; the largest is intake reference at 23, and nine rows are null at the coded dose. "Widely used" and "established" are different claims and the table no longer blurs them. A build-failing check makes an undeclared range impossible, and a second one fails if a declaration is left empty.

46 of the 69 evidence tiers were lowered. A tier grades the body of evidence behind the ingredient — how much good research says it does anything at all. That is a different question from provenance, which asks whether a source states our range, and the two are deliberately independent: caffeine is tier A carrying no source (the literature is deep, but no single paper prescribes 100–400 mg), while magnesium carries a real citation at the lowest tier (a safety ceiling is not evidence that a dose works). Under that test most vitamin and mineral rows fell to the lowest tier: they rest on RDAs and ULs, which measure dietary adequacy and safety, not efficacy. No tier was raised. Certainty still rides alongside the grade and still never changes it, so not one grade moved because of a tier.

The per-serving/per-day mismatch is fixed. Panels state doses per serving; the evidence is almost always a daily total. Ranges now declare their basis, products may declare the servings per day their directions state, and the engine compares a day against a day. No product records its directions yet, so today every per-day row carries a visible notice that one serving was judged as one day's dose — the assumption is stated instead of hidden. No grade moved.

EPA and DHA are now graded on their combined total. A label printing "EPA 360 mg, DHA 240 mg" used to need 500 mg to clear two separate 250 mg floors, while a label printing "600 mg" cleared one — the same oil, graded worse for itemizing. No authority sets an EPA-alone or DHA-alone floor, so the engine stopped enforcing one. Both rows stay on the panel; the total carries the grade. Hidden components are never absorbed into a total, and a label that discloses the combined figure is never counted twice.

One range moved: beta-alanine, to 4,000–6,000 mg. The ISSN position stand states 4 to 6 g daily; the table had run 3,200–6,400 mg, awarding a full effective score 800 mg below the cited floor. As with magnesium in v2.4.0, the source states a dose on the same basis as the row, so the source sets the number.

Twelve products were restamped, each carrying a Notice of Amended Filing with the previous grade struck through: seven pre-workouts fell as beta-alanine came into line with its source (Legion Pulse and Transparent Labs BULK from A to B+, Ghost Legend and Redcon1 Total War from A to B, and three more), and five fish oils rose once EPA and DHA stopped being measured against a floor nobody set (Pure Encapsulations EPA/DHA Vegetarian from D- to B, four others from C- to B). Twenty-three products moved in total; every one traces to those two changes, and nothing else in the catalog moved at all.

Distribution went from A:65 B:54 C:35 D:31 F:94 to A:61 B:62 C:30 D:32 F:94. Nothing was special-cased. Some grades went up, some went down, and the ones that went down were ours to lose.

Read that F carefully, because it is two things added together. It is the raw engine distribution over all 279 products, and the 15 the engine refused to grade carry a placeholder F inside it. Counted as verdicts rather than ranks — which is how the Hall of Shame, the category reports and the front page all count them — the catalog is 264 graded products with 79 real F grades and 15 refusals standing outside the distribution entirely. Refusing to grade is a separate verdict, not a rank; the raw number is printed here because it is what npm run verify prints, and a document that quoted a friendlier total than its own harness would be doing the thing this page is about.

  • v2.4.0 — 2026-07-29. Magnesium's effective range now ends at 350 mg, not 400 mg. The NIH Office of Dietary Supplements sets the Tolerable Upper Intake Level for supplemental magnesium at 350 mg for adults, so the previous table awarded its best possible score to a dose above an official safety ceiling. Six products that had been stamped A are restamped B or B-, and each carries a Notice of Amended Filing showing the previous grade struck through. Several mid-range products rose slightly, because a narrower range means a 300 mg dose now sits higher within it. Nothing was special-cased: the range moved, the math followed.

This is the first range corrected as a result of the clinical evidence audit of all 69 reference ingredients. That audit also found that most ranges in this table carry no recorded source, and that several evidence tiers overstate what the located literature supports. Those remain open and are being worked through deliberately rather than quietly.

  • v2.3.0 — 2026-07-29. Added the incidental-row rule above. The engine weights sodium as a hero ingredient against a 200–1000 mg clinical range, which is correct for an electrolyte powder and wrong for a creatine gummy whose only sodium is its citrate buffer. Force Factor Essentials Creatine Gummies doses creatine at a clinical 5000 mg, conceals nothing, and graded D on 5 mg of sodium; it now grades A+. Beast Bites moved the same way. No clinical range, weight, or hero flag was changed — the fix is a per-row marker, applied only where a label names the processing aid. Three rows across the catalog qualified. Effective Nutra carries one and still grades F, because its creatine dose is 1000 mg: the marker corrects a category error, it does not rescue an underdosed product.
  • v2.2.0 — 2026-07-27 (launch). First versioned public snapshot of the methodology, including the certainty indicator described above. This document lived as unversioned working notes in the repo before launch; v2.2.0 is simply the moment it started keeping count, numbered to match the catalog's DATA_VERSION so the doc and the data never drift apart.

Supplement formulas change. This verdict reflects the label data on file as of its source date. Always confirm against the physical label before you buy. Unsold grades formulas, not brands - and we're not doctors. This is information, not medical advice; check with a qualified healthcare professional before changing what you take.

UNSOLD

The bottle tells you what you bought. The grade tells you what you got.

Something on file look wrong? →

Deterministic supplement grading. Same label in, same verdict out - no accounts, no affiliate links, nothing to sell you. Grades formulas, not brands. Not medical advice.