How Net Carb Numbers Are Checked: Datasets and Labels
Drafted with AI assistance, reviewed and approved by TwentyGrams before publishing.

Short answer: a net-carb figure rests on three things. They are the dataset the total-carb and fiber values came from, the label convention that printed the carbohydrate line, and the rule used for any sugar alcohols. If you know all three, you can redo the number yourself. If one is missing, two honest sources can disagree by several grams.
This piece covers how the numbers are checked. For the formula itself, see the net carbs guide.
Where does a net-carb figure come from?
For whole foods, the usual source is USDA FoodData Central (FDC), which publishes several datasets. Foundation Foods and SR Legacy hold laboratory analyses and compiled values. FNDDS holds the values used for national dietary surveys. Branded Foods holds label data that manufacturers submit. Net carbs are then worked out from two stored values: total carbohydrate minus fiber.
Here is the sum on one record. Per USDA FoodData Central, SR Legacy, “Raspberries, raw” (FDC 167755) lists 11.94 g total carbohydrate and 6.5 g fiber per 100 g. 11.94 − 6.5 = 5.44 g net carbs per 100 g. Any number that claims to come from that record should match that sum.
Why do two sources give different numbers for the same food?
Usually because they measured different samples. Each figure is right for its own record, but none is a universal constant.
In SR Legacy, “Broccoli, raw” (FDC 170379) lists 6.64 g total carbohydrate and 2.6 g fiber per 100 g, which is 4.04 g net. In Foundation Foods, “Broccoli, raw” (FDC 747447) lists 6.27 g and 2.4 g, which is 3.87 g net. Both describe the same vegetable, but they are separate USDA records with their own sample and analysis history. So a net-carb figure should name its dataset, not only “USDA”. Variety, ripeness and preparation move the number too.
How do US and EU labels print carbohydrate differently?
A US label’s carbohydrate line includes fiber. An EU label’s carbohydrate line excludes it. Using the same formula on both labels gives the wrong answer for one of them.
- US labels (21 CFR 101.9) print “Total Carbohydrate”. That figure includes dietary fiber and any sugar alcohols, and fiber is listed beneath it. Net carbs = total carbohydrate − fiber.
- EU labels (Regulation (EU) No 1169/2011) print “Carbohydrate”, defined in Article 2(2)(s) as carbohydrate metabolised by humans, which includes polyols (sugar alcohols). Fibre is not part of that line and is declared separately. Because the line already leaves fibre out, subtracting fibre from it again counts the fibre twice. Sugar alcohols, which sit inside the line, are a separate step.
Neither regulation defines the term “net carbs”; both only define the carbohydrate line.
The raspberry record shows what goes wrong. Printed the US way, those USDA values read 11.94 g total carbohydrate and 6.5 g fiber. As an illustration, printed the EU way, the same values would read 5.44 g carbohydrate and 6.5 g fibre. Subtracting fibre from the EU line gives 5.44 − 6.5 = −1.06 g, which cannot be right.
The error is harder to spot when fiber is small: subtracting it twice gives a figure that looks reasonable but is too low. Community databases such as Open Food Facts gather products from many countries, so one record can follow either convention. A few checks help: the country of sale, the label wording (“Carbohydrate” with a separate “Fibre” line rather than “Total Carbohydrate”), and recomputing the calories from the macros. The calorie check is a clue, not proof, because labels round their figures.
How are sugar alcohols counted?
On a US label, sugar alcohols sit inside the Total Carbohydrate line, so a sugar-alcohol figure comes off on top of fiber. Neither regulation defines “net carbs”, and no standard fixes a percentage for sugar alcohols. Trackers choose their own rule. The one described in the net carbs guide, and used by TwentyGrams, works like this: erythritol and allulose (a rare sugar, not a polyol) are subtracted in full, and other named sugar alcohols (maltitol, xylitol, sorbitol and similar) at half.
- A blank is not a zero. If no sugar-alcohol figure is on record, nothing gets subtracted, and the net number reads higher than it would with the figure in hand.
- The rule changes the result. Some approaches subtract no sugar alcohols at all, so a net-carb figure is only fully checkable when the rule that produced it is stated next to it.
- The percentages are a counting convention. They describe how a number is calculated, not how any person’s body responds to a given sweetener.
How can you check a net-carb number yourself?
Three questions, in order:
- Which source? A named dataset and record (for example FDC 167755), or a specific package label. A bare “USDA” is not enough when the datasets disagree, as the broccoli records do.
- Which convention? If it is a US-style label, subtract fiber. If it is an EU-style label, do not subtract fibre again. If fiber is larger than the carbohydrate line, that can indicate the EU convention, but it can also be a data-entry error, so check the label wording and country of sale as well.
- Which sugar-alcohol rule? Find the grams, the type, and the percentage used. If any of the three is missing, the figure cannot be fully reproduced.
To run the subtraction on your own label values, the net carbs calculator does the arithmetic, and the net carbs guide collects the related pages.