Food Calories by Weight Calculator
Enter the calories from a nutrition label or a USDA FoodData Central entry, and protein, carbs and fat if you want them. Say whether those numbers are per 100 g or per serving, then type how much you ate. The calculator scales each number to your portion, shows calories per gram, and tells you how many label servings you ate. Results are estimates from the numbers you enter, not medical advice.
Food Calories by Weight Calculator
The label and your portion
The label's numbers are
The gram or mL number in brackets after the serving, such as 32 for "2 tbsp (32g)". On a single-serving pack, use the net weight on the front. Needed for "Per serving" labels. With "Per 100 g or mL" it's optional and only sets the servings figure.
Use the kcal (Calories) number. If the label also lists kJ, ignore that one.
Use the label's unit: grams for a gram label, mL for a mL label. Weighed in ounces? 1 oz = 28.35 g.
—
Default example: USDA FoodData Central, chicken breast, meat only, roasted (FDC 171477).
Results are estimates from the numbers you enter. Labels and databases are rounded, and foods vary. This calculator is not medical advice.
Counter44
Calorie Tracker
Track your calories day by day
Counter44 sets a daily calorie and macro target. Log meals from over 7,000 foods and watch the ring fill in.
Free · No sign-up needed
How to calculate calories by weight
Every number on a nutrition label refers to one stated amount: a serving on US labels, 100 g or 100 mL on EU-style labels. Scaling to what you ate is a straight proportion: label value ÷ label amount × amount eaten. The calculator applies it to calories, protein, carbs and fat at once.
The fields start out filled in with USDA FoodData Central's roasted chicken breast (FDC 171477): 165 kcal per 100 g. A 150 g portion is 165 × 150 ÷ 100 = 247.5 kcal, shown as 248. A per-serving label works the same way, with the serving's grams as the divisor. For a made-up label with 190 Calories per 32 g serving, 45 g is 190 × 45 ÷ 32 = 267.19 kcal, shown as 267, or 1.41 servings.
Calories are rounded to whole kcal, protein, carbs and fat to 0.1 g, and calories per gram and servings to two decimals. Halves round up, and each figure is rounded once from the unrounded math, never from another rounded result.
Per 100 g or per serving: reading the label
On a US Nutrition Facts label, the serving size is a household measure followed by its metric amount in brackets: grams for foods, mL for drinks (21 CFR 101.9(b)(7)). Single-serving containers are the exception; on those, use the net weight on the package. The FDA's label guide says "all the nutrient amounts shown on the label, including the number of calories, refer to the size of the serving." For these labels, press Per serving and enter the bracketed number as the serving size.
Some labels add a second column for the whole package. FDA requires one, with some exceptions, on packages holding 200% to 300% of the reference amount (101.9(b)(12)(i)). Use whichever column matches the numbers you type.
EU and UK-style labels give energy and nutrients "per 100 g or per 100 ml" (Regulation (EU) No 1169/2011, Article 32) and may add a per-portion column next to it (Article 33). Press Per 100 g or mL for the main column. Energy appears in both kJ and kcal: enter the kcal figure. If a food comes out above 10 kcal per gram, the calculator flags a likely kJ mix-up.
Grams vs mL, raw vs cooked: the two easy mistakes
Grams and mL match only for foods about as dense as water. FoodData Central weighs a US cup (about 236.6 mL) of whole milk at 244 g, olive oil at 216 g and honey at 339 g. A tablespoon of honey is 21 g in FDC, or 64 kcal, but typing a 15 mL spoonful as 15 g against the per-100 g figure gives 46. Olive oil errs the other way: FDC's 13.5 g tablespoon is 119 kcal, while 15 g gives 133.
Cooking changes water content, and with it calories per gram. FDC lists raw long-grain white rice at 365 kcal per 100 g and the same rice cooked at 130 kcal per 100 g. A 150 g portion of cooked rice is 195 kcal with the cooked entry, but 548 kcal with the raw one.
The fix is the same for both: weigh in the label's unit and in the label's state, dry or cooked. If your scale shows ounces, one ounce is exactly 28.349523125 g (NIST Handbook 44), or 28.35 g for everyday use.
Why your total won't match the label to the calorie
Label figures are rounded. Under 21 CFR 101.9(c), calories are declared to the nearest 5 up to 50 and to the nearest 10 above that, protein and carbs to the nearest gram, and fat to the nearest 0.5 g below 5 g. FDC's smooth peanut butter works out to 191.36 kcal for a 32 g serving, which a label would print as 190.
Calories also aren't always protein, carbs and fat × 4, 4 and 9. The first method FDA lists uses food-specific Atwater factors from USDA Agriculture Handbook No. 74 (Merrill and Watt). For that peanut butter, 4/4/9 gives 640.6 kcal per 100 g, while FDC's own factors give the listed 598. So the calculator works from the label's calorie figure, not from the macros.
FDA also treats a food as misbranded if lab analysis finds its calories more than 20% above the declared value (101.9(g)(5)). Shortfalls are handled under a separate clause. None of this makes weighing pointless: a weighed portion is still closer than an eyeballed serving. Just treat every result as an estimate.
Counter44 stores its roughly 7,200 bundled foods per 100 g or 100 mL, and you log what you ate in grams or mL. If a packaged food isn't in there, add a custom food or use Quick Add for the calories and macros from this page. Log portions by the gram in Counter44.
Other Counter44 calculators are listed on the tools page as they are published.
This calculator and the figures on this page are estimates for planning, not medical advice. If you have a medical condition, are pregnant, or have a history of disordered eating, talk to a doctor or registered dietitian before changing how you eat.
Frequently Asked Questions
Common questions about food calories by weight calculator
How do you calculate calories by weight?
Divide the label's calories by the amount they're for, then multiply by the amount you ate. For a per-100 g label: calories × your grams ÷ 100. For a per-serving label: calories × your grams ÷ the serving's grams. USDA FoodData Central lists roasted chicken breast (FDC 171477) at 165 kcal per 100 g, so 150 g is 165 × 150 ÷ 100 = 247.5, about 248 kcal. Protein, carbs and fat scale the same way.
How do I calculate calories per gram?
Divide the calories by the grams they're for. A label with 190 Calories per 32 g serving works out to about 5.94 kcal per gram, and a per-100 g value of 165 is 1.65 kcal per gram. Multiply calories per gram by 100 to compare with per-100 g labels. The calculator shows both.
What if the serving size on the label isn't what I ate?
That's normal. The FDA says the serving size "reflects the amount that people typically eat or drink" and isn't a recommendation, and every number on the label refers to that one serving. Weigh what you ate, choose Per serving, and enter the gram figure from the serving line. On a single-serving pack, use the net weight. The calculator scales every number and shows how many servings you had: 45 g of a 32 g serving is 1.41 servings.
Is 100 mL the same as 100 g?
Only for foods about as dense as water. FoodData Central's cup weights show the spread: a US cup is about 236.6 mL, and FDC lists a cup of whole milk at 244 g (about 1.03 g per mL), olive oil at 216 g (about 0.91 g per mL) and honey at 339 g (about 1.43 g per mL). So measure in the label's unit: grams for a per-100 g label, mL for a per-100 mL label. FDC weighs 1 tbsp of honey at 21 g, which is 64 kcal, while typing a 15 mL spoonful as 15 g against the per-100 g figure gives 46 kcal. The calculator, like Counter44's food model, doesn't convert between grams and mL.
Should I weigh food raw or cooked?
Weigh it in the same state as the numbers you're using. Cooking changes water content, and with it calories per gram. FoodData Central lists long-grain white rice at 365 kcal per 100 g raw (11.6 g water) and 130 kcal per 100 g cooked (68.4 g water). A 150 g portion of cooked rice is about 195 kcal with the cooked entry, but 548 kcal if you use the raw figure by mistake. Check whether your label or database entry describes the food dry or cooked.
Why don't protein, carbs and fat × 4, 4 and 9 add up to the label's calories?
Labels don't all use the same method. FDA rules (21 CFR 101.9(c)(1)(i)) allow food-specific Atwater factors, the general 4/4/9, 4/4/9 after subtracting non-digestible carbohydrate, FDA-approved food factors, or bomb calorimetry. Each printed number is also rounded: calories to the nearest 5 up to 50 and the nearest 10 above that, carbs and protein to the nearest gram, and fat to the nearest 0.5 g below 5 g. FoodData Central's smooth peanut butter (22.2 g protein, 22.3 g carbs and 51.4 g fat per 100 g) comes to 640.6 kcal at 4/4/9, but FDC lists 598. Its food-specific factors (3.47, 4.07 and 8.37) give 598.0. That's why this calculator scales the label's own calorie figure rather than rebuilding it from macros.
How many grams are in an ounce of food?
One avoirdupois ounce is exactly 28.349523125 g, one-sixteenth of the 453.59237 g pound (NIST Handbook 44). Most people round to 28.35 g. That makes 4 oz 113.4 g, or about 187 kcal of roasted chicken breast at 165 kcal per 100 g. Fluid ounces measure volume, not weight: 1 US fl oz is about 29.57 mL. Most US labels give the gram or mL amount after the serving, and single-serving packs show a net weight, so you rarely need to convert.
How do I log a weighed portion in Counter44?
Counter44's roughly 7,200 bundled USDA-derived foods are stored per 100 g or 100 mL, with an optional named serving such as "1 cup". Search the food in Add Food and log the amount you ate in grams or mL. For a packaged food that isn't there, add it as a custom food (unlimited on the free tier), or use Quick Add to enter the calories and macros this calculator gave you. Counter44 needs no account and keeps your data on your device.