The dataset
Everything on this site is generated from one structured file. It is public, it is free to use with attribution, and it is here because a claim you cannot check is not worth much. If you want to verify something we have written, or build something we have not, start here rather than with our prose.
- Formulas
- 111
- Brands
- 50
- Ingredients
- 113
- Last built
- 2026-08-23
Download
- /data/atlas.json — the full dataset: formulas, brands and the ingredient catalogue.
- /data/changelog.json — every recall and reformulation we have recorded, with source URLs.
- /data/koray-compliance.json — the editorial lint report for every article, including its failures.
No key, no sign-up, no rate limit. If you are going to hit it repeatedly, cache it: it rebuilds when the content does, not on a schedule.
What is in a formula record
Each entry in skus[] carries 28 fields. The ones that matter, and the traps:
- sku, brand, display_name
- Identity. `sku` is the stable key and does not change.
- stage, age_range, product_type, format
- What it is and who it is for. `product_type` is one of standard, hypoallergenic, comfort, soy, anti-reflux, lactose-free, goat.
- origin_country, organic, certifications
- Where it is made and what it is certified as. Certifications are transcribed from the label, not inferred.
- protein_source, carbohydrate_primary
- The two axes that separate formulas more than any others. `protein_source: amino-acids` is how the amino-acid formulas are identified.
- ingredients
- Resolved ingredient slugs, derived from a verbatim transcription of the label. This is the field the rest of the site is built on.
- nutrition_per_100ml, dha_mg_per_100ml
- Energy, protein, fat, carbohydrate, sodium, iron and DHA, per 100 ml prepared.
- bioactives
- Booleans: gos, fos, hmo_2fl, lactoferrin, mfgm, probiotics.
- red_flags
- Booleans: palm_oil, corn_syrup_solids, maltodextrin, soy, carrageenan and others. Cross-checked against `ingredients` on every build.
- price_usd_per_tin, price_per_oz_usd, price_verified
- Price per ounce is per ounce of **powder**. Ready-to-feed products are priced per fluid ounce of liquid and are not comparable on the same axis.
- lifecycle, last_verified, verified_by
- Record status. `verified_by` currently reads `ai-assisted` on every record.
How it is built, and what that means for trust
Records are drafted with AI assistance from primary sources: the manufacturer’s own ingredient statement, the nutrition panel, and the relevant regulation. The label transcription is kept verbatim in the source files, and the structured fields are resolved from it rather than typed in independently. Every record carries verified_by: ai-assisted, which is the honest status.
That is a reason to check us, not a reason to dismiss us. The whole point of publishing the file is that you do not have to take a byline’s word for anything. We also publish our own errors: in August 2026 a build-time cross-check found 19 incorrect flags in this dataset, including an entire brand line wrongly marked as containing palm oil. The fix and the reasoning are in the changelog, and the cross-check now runs on every build so that class of error cannot return.
Read the full methodology before citing anything.
Licence and citation
Released under CC BY 4.0. Use it commercially, remix it, build on it. The one condition is attribution with a link back, so a reader can reach the source and check it themselves.
Formula Atlas. "The Infant Formula Atlas" (dataset), 2026. 111 infant formulas with composition, certifications and verified pricing. https://formulaatlas.com/infant-formula-atlas/data (CC BY 4.0)
What it is not
- Not a clinical reference. Nobody here is a clinician. The fields describe what is on a label, not what a particular baby should be fed.
- Not a live price feed. Prices carry a
price_verifieddate, and many are months old. European formulas are re-checked against a retailer feed; US retail has no equivalent source and drifts. - Not exhaustive. 111 formulas is a large share of what US families can actually buy, not every formula in the world.
- Not independently audited. The cross-checks are ours and they run automatically, which is not the same as a third party having verified the file.
Found an error? That is the most useful thing you can send us: contact. Corrections get published in the changelog with the date, whether or not they make us look good.