Foods With More Calcium Than a Glass of Milk

A cup of whole milk contains about 276 mg of calcium, and skim milk comes in at 299 mg. Plenty of foods beat those numbers serving for serving, and many others pack more calcium per gram even if a typical portion is smaller. Whether you’re lactose intolerant, vegan, or simply want variety in your diet, you have real options. Most adults need 1,000 mg of calcium a day (1,200 mg after age 50), so knowing where to find it matters.

Yogurt and Hard Cheeses

The single easiest swap is plain low-fat yogurt. An 8-ounce serving delivers about 415 mg of calcium, roughly 40% more than a cup of milk. Fruit-flavored yogurt is close behind at around 344 mg. The straining process used for Greek yogurt removes some calcium, so standard yogurt is actually the better choice here.

Hard and aged cheeses concentrate calcium because they lose moisture during production. An ounce and a half of part-skim mozzarella provides about 333 mg. Swiss and Gruyère deliver around 270 mg in a single ounce. Parmesan is dense with calcium too, though you’d rarely eat enough in one sitting to match a glass of milk: one tablespoon has about 70 mg. Still, grated over pasta or salad, it adds up fast.

Canned Fish With Bones

Canned sardines are one of the most calcium-dense foods you can buy. A 3-ounce serving (eaten bones and all, which is standard for canned sardines) contains about 325 mg of calcium, topping a cup of milk. Canned salmon with bones provides around 181 mg per 3 ounces. The bones soften during the canning process, so they’re completely edible and barely noticeable in texture. These fish also supply vitamin D, which your body needs to absorb calcium in the first place.

Seeds: Small but Powerful

Poppy seeds are remarkably calcium-rich. A single tablespoon (just 9 grams) contains 127 mg. Sesame seeds come in at about 88 mg per tablespoon. Chia seeds provide 76 mg per tablespoon. None of these will match a full glass of milk in a single tablespoon, but their calcium density by weight is far higher than milk’s. Sprinkle a couple of tablespoons of sesame seeds on a stir-fry, add chia to a smoothie, and you’ve quietly covered a significant chunk of your daily needs without any dairy at all.

Tofu (When Made With Calcium)

Not all tofu is created equal for calcium. Firm tofu made with calcium sulfate, the most common coagulant, packs about 253 mg per half cup. That’s a substantial amount from a food that often serves as a base for an entire meal. Soft tofu made the same way has about 138 mg per half cup. If the label lists calcium sulfate or calcium chloride in the ingredients, you’re getting the calcium-rich version. Tofu set with magnesium chloride (nigari) contains significantly less.

Fortified Drinks

Most commercial plant milks (almond, soy, oat, rice) are fortified to match cow’s milk almost exactly, landing at about 300 mg per 8-ounce glass. Calcium-fortified orange juice hits the same mark. The key is to shake the container well before pouring, because the added calcium can settle to the bottom. Calcium-fortified soy milk specifically has been shown to deliver absorption rates comparable to cow’s milk, making it a reliable substitute.

Leafy Greens and Absorption

Cooked kale provides about 94 mg of calcium per cup, and bok choy about 74 mg per cup of raw shredded leaves. Those numbers look modest compared to milk, but here’s what makes them interesting: your body absorbs calcium from low-oxalate greens like kale, bok choy, and broccoli at roughly 40 to 53%, compared to about 27 to 32% from milk. So the usable calcium from a cup of cooked kale is closer to milk’s contribution than the raw numbers suggest.

Spinach is the notable exception. Despite containing a lot of calcium on paper (123 mg per half cup cooked), its high oxalate content binds to the calcium and forms insoluble complexes your gut can’t absorb. Spinach is a great food for other reasons, but it’s a poor calcium source. Stick with kale, bok choy, collard greens, broccoli, and Chinese mustard greens for greens that actually deliver their calcium to your bones.

Beans, Grains, and Other Sources

Cooked soybeans provide about 131 mg per half cup, and cooked amaranth leaves reach 276 mg per cup, matching a glass of whole milk. White beans and pinto beans contribute more modest amounts (around 50 to 80 mg per half cup), but they’re foods people eat in large portions, so the totals add up. Teff, a grain popular in Ethiopian cooking, offers 123 mg per cooked cup.

Blackstrap molasses is sometimes mentioned as a calcium source, but a tablespoon contains only about 41 mg. It’s a nice bonus if you already use it in baking or cooking, though not something to rely on as a primary source. Fortified breakfast cereals typically add about 130 mg per serving, making them a useful baseline when paired with milk or fortified plant milk.

Building a High-Calcium Day Without Milk

The practical takeaway is that no single food needs to replace milk. Calcium adds up across the day. A breakfast of fortified oat milk with cereal (around 430 mg combined), a lunch with a sardine sandwich (325 mg), and a dinner featuring firm tofu and bok choy (300+ mg) puts you well over 1,000 mg without a single glass of cow’s milk. Tossing sesame seeds or chia seeds into meals throughout the day fills any remaining gaps.

If you eat dairy, plain yogurt is the most efficient single source available. If you don’t, the combination of calcium-set tofu, fortified beverages, canned fish with bones, and low-oxalate greens covers the same ground with calcium your body absorbs just as well.