ToolsCompareBlog Download

How to Count Calories Accurately by Weight

How to count calories accurately: why a food scale beats cups and spoons, raw vs cooked weights, and when eyeballing is close enough. USDA examples.

Counter44

Calorie Tracker

Log your meals as you go

Counter44 tracks calories and macros against a daily target.

Free · No sign-up needed

Disclaimer: This article is general nutrition information, not medical advice. Every calorie figure here is an estimate. If you have a medical condition or specific dietary needs, talk to a doctor or registered dietitian.

To count calories accurately, get the measurement right first and worry about the app later. An app multiplies whatever number you give it. If that number is “1 cup” of almonds, which USDA weighs at 92 g to 143 g depending on the cut, the math is precise and the answer can still be off by almost 300 kcal.

  • Weigh in grams. Labels print grams next to the household measure, and USDA lists foods per 100 g. A scale with a tare button reads that unit directly.
  • Match raw to raw and cooked to cooked. The entry has to describe what was on the scale. Weigh oats, pasta and rice dry.
  • Weigh the dense foods, eyeball the greens. Oil, butter, nut butter, nuts, cheese, dressing, granola and big starch portions are worth the scale. Spinach, broccoli and berries aren’t.
  • Log everything, guesses included. Even weighed records miss what never gets written down.

Food scale vs measuring cups vs eyeballing

The three tools don’t measure the same thing.

ToolWhat it measuresWhere it driftsBest use
Digital scale with tareMass, in gramsMostly in the entry you pick, such as raw vs cookedSolid foods, dense foods, anything sticky
Measuring cups and spoonsVolumeGrams per cup change with the cut, the packing and the pourWater-thin liquids: milk, broth, coffee
EyeballingNothing; it’s an estimateDepends on the food and on youLow-calorie foods and meals you can’t measure

Grams are the unit the label stands behind. US nutrition labels must give the serving in a household measure “followed by the equivalent metric quantity in parenthesis,” grams for most foods and milliliters for fluids (21 CFR 101.9(b)(7)). When the FDA checks a label, “compliance will be based on the metric measure” (101.9(g)(7)). The cup is printed for convenience; the grams are what the label is held to.

USDA FoodData Central, the free US government nutrient database, gives nutrient values per 100 g (per 100 mL for some branded products). A gram reading drops straight into one formula: grams × kcal per 100 g ÷ 100. A cup has to become grams first, and that’s where the error creeps in. The cup itself is fixed (240 mL for labeling, under 101.9(b)(5)(viii)). How much food fits in it isn’t.

How tare works. Set the empty bowl on the scale, press tare and the display goes to zero. Add the food and read the grams. Building a bowl of oats, peanut butter and berries? Press tare before each new food and log each reading as its own entry.

Where cups and spoons drift

USDA’s own portion weights show how far “1 cup” can wander. Each figure is grams × kcal per 100 g ÷ 100, so you can check it by FDC ID.

“1 cup” ofFDC IDkcal / 100 gLighter cupHeavier cupGap
Almonds170567579Sliced, 92 g = 532.68 kcalWhole, 143 g = 827.97 kcal295.29 kcal
Pasta, dry169736371Shells, 64 g = 237.44 kcalElbows, 122 g = 452.62 kcal215.18 kcal
Cheddar173414403Shredded, 113 g = 455.39 kcalDiced, 132 g = 531.96 kcal76.57 kcal
Spaghetti, cooked169737158Loose, 124 g = 195.92 kcalPacked, 151 g = 238.58 kcal42.66 kcal

The cut and the packing change the cup. Sliced almonds and shredded cheese fill a cup with fewer grams than whole almonds or diced cheese. A packed cup of cooked spaghetti holds 27 g, or 21.8%, more than a loose one.

Cereal depends on density. A cup holds 28 g of Cheerios (FDC 173884, 372 kcal per 100 g) or 122 g of homemade granola (FDC 171646, 489 kcal per 100 g). That’s 104.16 kcal against 596.58 kcal: 4.4 times the weight and 5.7 times the calories. The Cheerios figure is USDA’s 2018 record for the brand-name cereal, so check your box.

Pouring by eye overshoots too. In an informal 2014 Consumer Reports test, 92% of 124 shoppers poured more than the recommended serving. With the largest of three bowls, the average pour ran 132% over the serving for Cheerios and 282% over for granola.

Nut butter won’t level. USDA lists 2 tablespoons of smooth peanut butter (FDC 172470) at 32 g, or 32 × 598 ÷ 100 = 191.36 kcal. If your two spoonfuls weigh 45 g (a hypothetical), that’s 45 × 598 ÷ 100 = 269.1 kcal, 77.74 kcal more than the entry. Weigh your usual spoonful once and you’ll know your own number.

Where cups are fine. Thin liquids such as milk, broth and black coffee fill to the line the same way every time.

Raw or cooked: match the entry to what’s on the scale

Cooking moves water. Pasta and oats soak it up and get heavier, while chicken loses it and gets lighter. The grams change, so the calories per 100 g change too. Below, three USDA pairs get logged the wrong way.

Chicken breast, skinless and boneless: raw (FDC 171077) is 120 kcal per 100 g, grilled (FDC 171534) is 151.

  • 150 g of grilled breast logged with the raw entry: 150 × 120 ÷ 100 = 180 kcal, against 150 × 151 ÷ 100 = 226.5 kcal. That’s 46.5 kcal, or 20.5%, low.
  • 200 g of raw breast logged with the grilled entry: 200 × 151 ÷ 100 = 302 kcal instead of 240 kcal, 25.8% high.

Pasta: dry (FDC 169736) is 371 kcal per 100 g, cooked (FDC 169737) is 158.

  • 200 g of cooked spaghetti logged as dry: 200 × 371 ÷ 100 = 742 kcal instead of 316 kcal, 2.35 times too high.
  • 80 g of dry pasta logged with the cooked entry: 80 × 158 ÷ 100 = 126.4 kcal instead of 296.8 kcal, 57.4% low.

Oats: dry (FDC 173904) is 379 kcal per 100 g, cooked with water (FDC 173905) is 71.

  • 40 g of dry oats with the dry entry: 40 × 379 ÷ 100 = 151.6 kcal. With the cooked entry: 40 × 71 ÷ 100 = 28.4 kcal, 81.3% low.

Weigh water-absorbing foods dry. A cooked pasta or oatmeal entry assumes USDA’s ratio of water to grain. Yours depends on the pot, the minutes and the draining. Dry grams don’t move, so weigh the dry portion, log it with the dry entry, then cook. Rice and dried beans work the same way.

Weigh meat raw when you can. When you can’t, weigh it cooked and pick a cooked entry for the same method: grilled with grilled, roasted with roasted. Whole dishes like a pot of chili need their own ingredient-and-pot method; this guide sticks to single portions.

When eyeballing is good enough

The calories riding on a guess come from one product: the portion’s grams × its kcal per gram × how far off you are. A big miss on a small number is still a small number. On typical USDA portions, a 25% miss costs this much:

Food (FDC ID)kcal per gUSDA portionPortion kcalA 25% miss
Spinach, raw (168462)0.231 cup, 30 g6.91.7
Broccoli, raw (170379)0.341 cup chopped, 91 g30.97.7
Strawberries, raw (167762)0.321 cup whole, 144 g46.111.5
Butter, salted (173410)7.171 tbsp, 14.2 g101.825.5
Banana (173944)0.891 medium, 118 g105.026.3
Olive oil (171413)8.841 tbsp, 13.5 g119.329.8
Chicken breast, raw (171077)1.204 oz, 113 g135.633.9
Almonds (170567)5.791 oz, 28.35 g164.141.0
Peanut butter (172470)5.982 tbsp, 32 g191.447.8
Rice, white, cooked (168878)1.301 cup, 158 g205.451.4

Read the last column. Gram for gram, olive oil carries 26 times the calories of broccoli (8.84 ÷ 0.34), but a guess costs a share of the whole portion. A 25% miss is under 12 kcal for spinach, broccoli or strawberries, 25 to 34 kcal for a banana, a tablespoon of butter or oil, or a chicken portion, and about 50 kcal for a cup of cooked rice. Pour three tablespoons of oil instead of one and the stakes triple.

A rule of thumb (this article’s framing, not a published standard):

  • Eyeball it: leafy greens, most non-starchy vegetables and berries. The whole portion is a few dozen kcal at most.
  • Count it by size: whole fruit. At 89 kcal per 100 g, USDA’s banana sizes come to 72.09 kcal extra-small (81 g), 89.89 small (101 g), 105.02 medium (118 g), 121.04 large (136 g) and 135.28 extra-large (152 g). Picking one size off costs 14.2 to 17.8 kcal.
  • Weigh it: oil, butter, nut butter, nuts, cheese, dressing, granola and big starch portions. Weigh starches dry.

How good are guesses? In a 2017 study by Bucher and colleagues, 128 adults estimated portions of 17 foods. Guesses of weight with no aid landed within 25% of the true amount only 24.3% of the time. On balance they ran high (median error +23.5%), but the direction depended on the food: lettuce came in a median 55.6% under, chicken 107.5% over.

Having a measuring cup to compare against didn’t help. Another group used a measuring cup as a visual yardstick to judge food already on the plate; nobody filled the cup. “All foods were on average overestimated with the measuring cup,” the authors wrote, and only 19.6% of those estimates landed within 25%.

Train your eye against the scale. Weigh a food the first few times you eat it. After that, guess first and weigh second every so often. The gap is the error you’d otherwise log without knowing.

Counter44

Calorie Tracker

Log today's meals in Counter44

The errors a scale can’t fix

A scale gets your portion right. The calorie number attached to that portion still carries slack of its own.

Labels have one-sided slack. Under 21 CFR 101.9(g)(5), a food is misbranded when its calories run more than 20% over the label. Running under is treated differently: “reasonable deficiencies of calories” under labeled amounts “are acceptable” (101.9(g)(6)). Only the overage gets a number. In practice labels hold up: a 2013 study of 24 snack foods found measured calories a median 4.3% (6.8 kcal) above the label, “well within FDA limits.”

At restaurants, single items stray. A 2011 JAMA study measured 269 items from 42 restaurants. On average, stated calories were accurate (10 kcal per portion over, not statistically significant). But 50 items, 19%, came in at least 100 kcal over the stated value.

Database values are estimates too. Database calories are usually calculated from protein, fat and carbohydrate using Atwater energy factors. In a controlled feeding study, almonds delivered 129 kcal per 28 g serving, while the Atwater factors predicted 168 to 170 kcal, a 32% overestimate. Don’t start logging almonds lower over it. Treat any “per 100 g” figure as an average, since nobody ran your plate through a lab.

The biggest miss is what never gets logged. In a 2002 study, 10 registered dietitians and 10 comparable women were trained to keep 7-day weighed food records while their energy expenditure was measured with doubly labeled water. The non-dietitians underreported by 429 kcal a day on average, the dietitians by 223 kcal. Weighing alone didn’t close the gap. A 1992 study of 10 people with a history of “diet resistance” found intake underreported by 47%, though that was a small, specific group, not a figure for people in general.

So aim for consistent and complete. Log as you eat. Count the cooking oil, the drinks, the dressing and the bites off someone else’s plate. A log built on the same scale and the same entries is off in the same way every day, which keeps one week comparable with the next.

Logging weighed portions in Counter44

Counter44, the calorie and macro tracker behind this site, works in the same unit as your scale. Its bundled database holds about 7,200 USDA-derived foods, each stored per 100 g or mL.

  • Log the grams on the scale. Search the food in Add Food, enter the weight and Counter44 scales the calories, protein, carbs and fat from the per-100 g values. The calorie ring and macro bars on the Today screen update with it, and recent foods show up as chips in the search.
  • A named serving is a shortcut. Some entries carry a named serving such as “1 cup.” Picking it logs the serving size stored with that entry. Typing your scale’s grams logs the amount you ate.
  • Weigh honey, syrup and oil. Counter44 treats g and mL as the same unit, with no density conversion. A labeling tablespoon is 15 mL, but USDA weighs a tablespoon of honey (FDC 169640) at 21 g. Against an entry storing USDA’s 304 kcal per 100 g, typing that tablespoon as 15 logs 15 × 304 ÷ 100 = 45.6 kcal. The 21 g you poured is 63.84 kcal, so the log is about 29% low. Maple syrup (FDC 169661, 20 g per tablespoon) logs about 25% low the same way, and olive oil (13.5 g) about 11% high. Those percentages are approximate. The fix is exact: weigh it.
  • Packaged foods become custom foods. There’s no barcode scanner, so build the food from the label. Counter44 keeps food values per 100 g or mL. To turn a label’s per-serving numbers into per-100 g values, divide each one by the serving’s grams and multiply by 100. A label showing 140 calories per 28 g serving works out to 140 ÷ 28 × 100 = 500 kcal per 100 g. Custom foods are unlimited on the free tier.
  • Quick Add the meals you couldn’t weigh. A restaurant plate gets your best estimate of calories and macros. A logged estimate beats a blank day.
  • Forgot something? Swipe back to an earlier day on the Today screen and log it there.

The daily calorie target Counter44 sets up from your profile and goal is an estimate, not medical advice. Food logging, custom foods and Quick Add are free, with no account and no ads. If you want to try weighing for a week, you can download Counter44 for iOS and Android.

References

  1. USDA FoodData Central. Source of every per-100 g value and portion weight in this guide (SR Legacy data set; search by FDC ID).
  2. USDA FoodData Central: FAQ. States that SR Legacy, released in April 2018, is the final release of that data type and will not be updated.
  3. 21 CFR 101.9, Nutrition labeling of food (Cornell Legal Information Institute). Household measures followed by grams (b)(7), the 15 mL tablespoon and 240 mL cup (b)(5)(viii), the 20% calorie excess rule (g)(5), acceptable calorie deficiencies (g)(6) and compliance based on the metric measure (g)(7).
  4. Bucher, T. et al. (2017). The international food unit: a new measurement aid that can improve portion size estimation. International Journal of Behavioral Nutrition and Physical Activity, 14, 124. 128 adults, 17 foods; share of estimates within 25% of the true amount, by estimation aid.
  5. Consumer Reports (2014). Cereal portion control matters. Informal pour test with 124 shoppers and three bowl sizes.
  6. Jumpertz, R. et al. (2013). Food label accuracy of common snack foods. Obesity, 21(1), 164-169. Calories in 24 snack foods a median 4.3% above the label.
  7. Urban, L. E. et al. (2011). Accuracy of stated energy contents of restaurant foods. JAMA, 306(3), 287-293. 269 items from 42 restaurants; 19% at least 100 kcal over the stated value.
  8. Novotny, J. A. et al. (2012). Discrepancy between the Atwater factor predicted and empirically measured energy values of almonds in human diets. American Journal of Clinical Nutrition, 96(2), 296-301. Measured 129 kcal per 28 g serving against 168 to 170 kcal predicted.
  9. Champagne, C. M. et al. (2002). Energy intake and energy expenditure: a controlled study comparing dietitians and non-dietitians. Journal of the American Dietetic Association, 102(10), 1428-1432. Underreporting on 7-day weighed food records against doubly labeled water.
  10. Lichtman, S. W. et al. (1992). Discrepancy between self-reported and actual caloric intake and exercise in obese subjects. New England Journal of Medicine, 327(27), 1893-1898. 10 participants with a history of diet resistance.

Counter44

Calorie Tracker

Start with one meal

Counter44 works out your daily target from your height, weight and goal. Then you log what you eat and keep a streak going.

Free · No sign-up needed

Scan to get the app

Frequently Asked Questions

Is a food scale more accurate than measuring cups?

For most solid foods, yes. A scale reads grams, the unit nutrition labels and USDA FoodData Central use, while the weight of a cup changes with how the food is cut and packed. USDA lists a cup of whole almonds at 143 g and a cup of sliced almonds at 92 g. Cups work fine for thin liquids like milk, broth and coffee.

Should I weigh food raw or cooked?

Either works if the database entry matches what you weighed. Weigh foods that soak up water, like oats, pasta and rice, dry. If you log 150 g of grilled chicken breast with the raw entry, you record 180 kcal instead of 226.5 kcal, 20.5% low (USDA FoodData Central 171077 and 171534).

Can I count calories accurately without a food scale?

Roughly. Use label servings, count whole fruit by size and log a best estimate for meals you can't measure. In a 2017 study, only 24.3% of unaided weight guesses landed within 25% of the true amount, so borrow a scale for energy-dense foods like oil, nut butter, nuts and cheese if you can.

How accurate are nutrition labels?

Close on average. A 2013 study of 24 snack foods found measured calories a median 4.3% above the label. Under US rules, a food whose calories run more than 20% over the label is misbranded, but there is no matching numeric limit for food that has fewer calories than the label says.

How many grams is a tablespoon of peanut butter?

USDA FoodData Central lists 2 tablespoons of smooth peanut butter at 32 g, about 191 kcal, so 1 tablespoon is about 16 g. Sticky foods don't level off in a spoon, so weigh your own usual spoonful once and log that weight.

Do I need to weigh fruits and vegetables?

Leafy greens, most non-starchy vegetables and berries, usually not. USDA puts a cup of chopped raw broccoli at about 31 kcal, so even a 25% miss costs under 8 kcal. Whole fruit can be counted by size: USDA's banana sizes run from 81 g to 152 g, about 14 to 18 kcal apart per size step.

Should I log liquids in mL or grams?

In Counter44, log anything thicker or oilier than water in grams, because the app treats g and mL as the same unit with no density conversion. USDA weighs a tablespoon of honey at 21 g, about 64 kcal. Typed as 15 for a 15 mL tablespoon against an entry at USDA's 304 kcal per 100 g, it logs about 46 kcal.

How do I use the tare button on a kitchen scale?

Put the empty bowl or plate on the scale and press tare to zero it. Add the food and read the grams. To add a second food to the same bowl, press tare again first, so the scale shows only the new food.