Salted butter carries 81.1g of fat per 100g against lowfat 1% cottage cheese's 1.02g — a gap of 79.5 times. Measured per 100 calories instead, the same two foods sit 8.0 times apart: 11.31g against 1.42g. Both figures come from the same two USDA FoodData Central rows (butter is FDC 173410, cottage cheese FDC 173417). Nothing about the foods changed between the two sentences. Only the denominator did, and it took a 79.5-fold gap down to an 8.0-fold one.
That collapse is not a quirk of these two foods. It is a hard limit on what any fat comparison can say once you divide by calories, and it is worth understanding before you trust the next "X times more fat" headline you read.
Why the gap collapses: butter is already at the ceiling
Across all 189 foods in our dataset, the highest fat-per-100-calorie figure is 11.31g, and exactly two foods reach it: butter and olive oil. They tie. Butter is 717 calories per 100g and olive oil is 884, so per 100g the oil holds 23% more fat — but per 100 calories they are indistinguishable, because both are very close to being nothing but fat.
There is a reason nothing goes higher. Fat supplies roughly 9 calories per gram, so 100 calories of pure fat is about 11.1g of it, and no food can carry more fat per calorie than fat itself does. Butter's row implies 8.8 calories per gram of its fat — 717 calories, minus the 3.6 accounted for by its 0.85g of protein and 0.06g of carbohydrate, divided by 81.1g of fat. That is slightly under the textbook 9, which is why the arithmetic lands at 11.31 rather than 11.1; USDA applies food-specific energy factors rather than one number for everything.
The consequence is the whole point of this post. Per 100g, fat has no ceiling worth speaking of — olive oil is 100g of fat per 100g, and the ratio against a watery food can run to hundreds. Per 100 calories, the top of the scale is 11.31g, so the largest gap available shrinks by an order of magnitude. The 79.5× headline is arithmetically true and it is measuring calorie density as much as it is measuring fat.
The ten fattiest foods per 100 calories, out of 189
The ceiling is visible in how tightly the top of this list is packed. The first ten foods span 11.31g down to 9.22g — the tenth is 18% below the first. On a per-100g basis the same ten span 100g down to 15.4g, a range of 6.5 times.
| Food (USDA description) | Calories /100g | Fat /100g | Fat /100 kcal |
|---|---|---|---|
| Oil, corn, peanut, and olive | 884 | 100g | 11.31g |
| Butter, salted | 717 | 81.1g | 11.31g |
| Nuts, walnuts, English, halves, raw | 654 | 69.7g | 10.66g |
| Nuts, pecans, halves, raw | 691 | 73.3g | 10.61g |
| Nuts, macadamia nuts, raw | 718 | 75.8g | 10.56g |
| Cream, heavy | 340 | 35.6g | 10.47g |
| Cheese spread, cream cheese base | 295 | 28.6g | 9.69g |
| Nuts, coconut meat, raw | 354 | 33.5g | 9.46g |
| Pork, cured, bacon, unprepared | 393 | 37.13g | 9.45g |
| Avocados, raw, California | 167 | 15.4g | 9.22g |
Raw walnuts sit third at 10.66g of fat per 100 calories, within 6% of butter. Per 100g butter looks 16% fattier than walnuts. Per calorie the two are nearly the same food, which is the sort of thing the per-100g basis hides and the per-calorie basis shows.
The whole dairy shelf, on both bases
Butter and cottage cheese are the two ends of it. Everything between them moves the same way when the basis changes.
| Food (USDA description) | Fat /100g | Fat /100 kcal | Protein /100 kcal |
|---|---|---|---|
| Butter, salted | 81.1g | 11.31g | 0.12g |
| Cream, heavy | 35.6g | 10.47g | 0.59g |
| Cheese spread, cream cheese base | 28.6g | 9.69g | 2.41g |
| Cheese, cheddar | 34g | 8.33g | 5.71g |
| Cheese, mozzarella, whole milk | 22.35g | 7.45g | 7.39g |
| Cheese, ricotta, whole milk | 10.2g | 6.8g | 5.03g |
| Yogurt, plain, whole milk | 3.25g | 5.33g | 5.69g |
| Yogurt, Greek, plain, lowfat | 1.92g | 2.63g | 13.63g |
| Cheese, cottage, lowfat, 1% milkfat | 1.02g | 1.42g | 17.22g |
Whole-milk mozzarella is the crossover: 7.45g of fat and 7.39g of protein per 100 calories, the only food on this shelf where the two columns meet. Above it, the calories are mostly fat. Below it, mostly protein.
Saturated fat gives the same answer, which is worth knowing
Salted butter holds 51.4g of saturated fat per 100g against lowfat 1% cottage cheese's 0.65g — 79.1 times — and per 100 calories, 7.17g against 0.90g, or 7.9 times. Both sit within 0.6% of the total-fat fold at the matching basis, because butter's fat is 63.4% saturated and cottage cheese's is 63.7%, so switching from total fat to saturated fat does not reorder anything here. If you were hoping the saturated-fat comparison would tell a different story from the total-fat one, it does not.
What 100 calories of each actually looks like
100 calories of salted butter is 13.9g. 100 calories of lowfat 1% cottage cheese is 138.9g — ten times the mass. This is where the per-calorie basis stops flattering itself. Both numbers are our rows divided into 100 — a scrape of butter against a small bowl of cottage cheese.
Which is to say these two foods are not substitutes and the comparison was never a swap. Nobody spreads cottage cheese on a pan or eats a bowl of butter. What the per-calorie figure is good for is the question of what a calorie buys you: at cottage cheese's 17.22g of protein per 100 calories against butter's 0.12g, the same calorie is doing completely different work.
The reversal is bigger than the gap it reverses
Per 100 calories, lowfat cottage cheese carries 145 times the protein of salted butter — 17.22g against 0.12g. That is eighteen times larger than the 8.0× fat gap running the other way, and it is the figure worth taking away from the pair. Butter's 0.85g of protein per 100g is not a rounding error in a food that is otherwise fine on protein; it is the entire protein content.
Per 100g the same reversal is only 14.6×, because cottage cheese's 12.4g of protein sits in a food with a tenth of butter's calorie density. The per-calorie basis exaggerates in cottage cheese's favour here for exactly the reason it compressed the fat gap: the denominators differ by 10×, and every ratio in this comparison moves by that factor when you switch.
What this data cannot tell you
Our rows carry no tablespoon or cup weights — every food is stored per 100g — so there is no per-tablespoon butter figure here and we are not going to estimate one. If you need it, weigh the pat and scale from the 100g column: butter is 0.811g of fat per gram, cottage cheese 0.0102g per gram.
Second, both rows describe one specific product. "Cottage cheese" here means lowfat, 1% milkfat. Full-fat 4% cottage cheese is a different food with several times the fat, and it is not the row these figures come from. The same applies to unsalted butter, cultured butter and ghee, none of which are this row either.
The pattern worth remembering
When a fold-change is enormous, check whether the denominator is doing the work. A 79.5× fat gap that becomes 8.0× per calorie was mostly a statement about water content. The rule generalises: any nutrient with a per-calorie ceiling — fat at about 11.1g, protein at 25g, carbohydrate at 25g — compresses hard when you switch bases, and the per-100g version of the same comparison will always sound more dramatic.
Knowing the ratio is the easy part, and it takes about a minute. The tedious part is the one that decides anything: whether the butter on this morning's toast and the bowl of cottage cheese at four o'clock added up to the day you meant to have. That is the arithmetic people quit doing by the second week. Sunn runs it over WhatsApp — photograph the plate or type "cottage cheese and a slice of toast", and the running total comes back without opening an app or filling in a form.
Related: we put cottage cheese and butter head-to-head on every macro, compared butter against olive oil (the two foods tied at the top of the table above), cottage cheese against Greek yogurt, published butter's full macro breakdown, and ranked all 189 foods by protein per calorie. If the basis question is new to you, our macro-counting guide covers what to divide by and when.
Written by Espen Opdahl
Founder of Sunn. Building AI-powered nutrition coaching to make healthy eating simple. Nutrition data sourced from the USDA FoodData Central database.
Medical disclaimer: This content is for informational purposes only and is not a substitute for professional medical advice, diagnosis, or treatment. Always consult a qualified healthcare provider before making changes to your diet or exercise routine.