What this is · what it is not
About LabelMath
LabelMath turns a recipe into an FDA Nutrition Facts panel: it weighs each ingredient in grams, sums the nutrients, divides by the servings the batch yields and applies the declaration rules of 21 CFR 101.9. It is free, has no account and no metering, and every calculation runs in your browser. It is a labelling tool, not a compliance service, and the difference is the most important thing on this page.
Where the numbers come from
Every ingredient is a record from USDA FoodData Central, SR Legacy release. SR Legacy is the last full release of the old Standard Reference and remains the broadest source of generic, unbranded, per-100 g nutrient profiles for whole ingredients — which is what a recipe builder needs, and what the Branded Food Products database is not.
The index ships as a static JSON file inside this site: 5,276generic ingredients with USDA household-measure gram weights attached. There is no runtime API call, no API key and no rate limit, so the tool cannot break because someone else’s service went down. Each ingredient keeps its USDA record number so you can look the source data up yourself.
What is implemented, and what is deliberately not
A tool that quietly stops short is worse than one that says where it stops. This is the whole scope, including the parts that are out of it.
| Area | Citation | State |
|---|---|---|
| Nutrient declaration and rounding increments | 101.9(c)(1)–(c)(8) | Implemented in full, with the paragraph shown beside every number. |
| %DV — Daily Reference Values and Reference Daily Intakes | 101.9(c)(8)(iv), (c)(9), (d)(7)(ii) | Implemented, 2016-rule values, all four population columns. |
| Serving size and servings per container rounding | 101.9(b)(7), (b)(8) | Implemented, including the “about” flag on rounded serving counts. |
| Reference amounts customarily consumed | 101.12(b) | All 146 reference amounts published as a lookup table. |
| Panel formats and type-size floors | 101.9(d), (e), (f), (j)(13) | All six formats laid out to the stated point-size minimums. |
| Ingredient statement, descending order of predominance | 101.4(a)(1), (a)(2) | Implemented, with the 2-percent-or-less grouping as an alternative. |
| Major food allergen labelling | 21 U.S.C. 343(w), FASTER Act 2021 | All nine allergens including sesame, with a Contains statement builder. |
| Compliance sampling and laboratory analysis | 101.9(g) | NOT implemented, and cannot be — it requires analysing your product. |
| Nutrient content and health claims | 101.13, 101.54–101.83 | NOT implemented. Making a claim changes your obligations; get advice. |
| State cottage food rules | State law, 50 variants | NOT implemented. Summarised in general terms only. |
Two rules most free calculators get wrong
Vitamin and mineral percentages do not round to whole percents.21 CFR 101.9(c)(8)(iii) puts them on 2, 5 and 10 percent increments depending on the level. FDA’s own sample label in 101.9(d)(12) declares “Iron 8 mg 45%”. Eight divided by eighteen is 44.4 percent, which is 44 percent to the nearest whole percent and 45 percent on the five-percent increment that applies above ten. Only the second reproduces the published label.
A per-container column is re-declared, not multiplied. Rounding is an increment ladder, so it is not linear. Three servings of 2.4 g of fat is 7.2 g in the container and declares as 7 g; multiplying the declared 2.5 g by three gives 7.5 g. LabelMath re-declares each column from its own unrounded total, which is why the dual-column panel here does not match the arithmetic you would do by hand from the printed numbers.
What the site does with your data
Nothing leaves your browser. Recipes are held in local storage so they survive a reload; there is no account, no upload and no server-side copy. The privacy policy sets out the detail, including the two third-party scripts the site loads and what they see.
Scope, and where the rest of the toolkit lives
LabelMath does nutrition labelling: nutrient aggregation, FDA rounding, panel layout and export. It deliberately does not do recipe measurement conversion — cups to grams, ounces to millilitres, scaling a batch. That belongs to gramstocups.io, and duplicating it here would make both tools worse.
Frequently asked questions
- Is a LabelMath panel FDA-compliant?
- The panel's format, rounding and declaration rules follow 21 CFR 101.9. The nutrient values do not come from your product — they come from USDA composition averages for generic ingredients. FDA compliance is judged against the food in the package, so no tool that has never analysed your food can guarantee it, and LabelMath does not claim to. It gets the regulation right; you are responsible for the data describing your product.
- When do I actually need a laboratory analysis?
- When a nutrient content claim or health claim is on the label, when a retail or foodservice buyer requires a certificate of analysis, when you are exporting, and whenever the product's composition is genuinely uncertain — variable-yield sauces, fermented foods, anything with significant cooking loss you have not measured. FDA's own compliance procedure in 21 CFR 101.9(g) is a composite sample analysis, not a database lookup.
- Does my recipe get uploaded anywhere?
- No. The ingredient database is a static file served with the page, and every calculation runs in your browser. Recipes are saved to your browser's local storage so they survive a reload, and they are never transmitted. There is no account, no login and no server that has ever seen your formulation.
- Why is LabelMath free when competitors charge monthly?
- Because the marginal cost of a label here is zero. There is no nutrient API to pay per call, no rendering service and no per-user storage — the database ships inside the site and the arithmetic is client-side. The site is supported by advertising placed below the tool, never between you and your result.
- How current is the regulation text quoted on this site?
- It is transcribed from the eCFR text of 21 CFR parts 101 current as of 1 July 2026, including the 2016 final rule's Daily Values and the sesame allergen requirement effective 1 January 2023. Every quoted passage carries its paragraph number so you can verify it against the eCFR yourself.
Corrections
If a rounding branch, a quoted paragraph or a Daily Value here is wrong, that is a bug and it matters more than any feature. The regulation text on this site is transcribed from the eCFR current as of 1 July 2026 and every claim carries its paragraph number so it can be checked. LabelMath is an independent tool and is not affiliated with, endorsed by or connected to the U.S. Food and Drug Administration or the U.S. Department of Agriculture.
Keep going
- nutrition facts label generatorBuild the panel from a recipe: USDA nutrient data, 21 CFR 101.9 rounding, six formats, PNG, SVG and PDF.
- FDA rounding rulesEvery rounding increment in 21 CFR 101.9, quoted, with worked examples and an interactive check.
- Daily Values chartThe full DRV and RDI tables from 21 CFR 101.9(c)(8)(iv) and (c)(9), all four population columns.
- privacy policyNo accounts, no uploads, no recipe leaves your browser.