LabelMath

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.

Which parts of the food labelling regulations LabelMath implements
AreaCitationState
Nutrient declaration and rounding increments101.9(c)(1)–(c)(8)Implemented in full, with the paragraph shown beside every number.
%DV — Daily Reference Values and Reference Daily Intakes101.9(c)(8)(iv), (c)(9), (d)(7)(ii)Implemented, 2016-rule values, all four population columns.
Serving size and servings per container rounding101.9(b)(7), (b)(8)Implemented, including the “about” flag on rounded serving counts.
Reference amounts customarily consumed101.12(b)All 146 reference amounts published as a lookup table.
Panel formats and type-size floors101.9(d), (e), (f), (j)(13)All six formats laid out to the stated point-size minimums.
Ingredient statement, descending order of predominance101.4(a)(1), (a)(2)Implemented, with the 2-percent-or-less grouping as an alternative.
Major food allergen labelling21 U.S.C. 343(w), FASTER Act 2021All nine allergens including sesame, with a Contains statement builder.
Compliance sampling and laboratory analysis101.9(g)NOT implemented, and cannot be — it requires analysing your product.
Nutrient content and health claims101.13, 101.54–101.83NOT implemented. Making a claim changes your obligations; get advice.
State cottage food rulesState law, 50 variantsNOT 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