Eating more soluble fiber, healthy fats, and plant-based proteins while cutting back on saturated fat can lower LDL cholesterol by meaningful amounts, often within a few weeks. The best part: you don’t need a single special product or supplement. The foods that work are ordinary grocery staples, and the science behind them is strong.
How Food Actually Lowers Cholesterol
Your liver uses cholesterol to make bile acids, which help you digest fat. Normally, those bile acids get reabsorbed and recycled. Certain foods interrupt that cycle. Soluble fiber, for example, binds to bile acids in your intestine and carries them out of your body. Your liver then pulls more cholesterol from your bloodstream to make fresh bile, and your LDL drops as a result.
Other foods work differently. Plant sterols physically block cholesterol from being absorbed in the first place. Unsaturated fats replace the saturated fats that raise LDL production. No single food does everything, but combining several of these strategies in your regular meals can add up to a significant change on your next blood test.
Soluble Fiber: The Most Reliable Tool
Eating 5 to 10 grams of soluble fiber a day can lower total and LDL cholesterol by 5 to 11 points, and sometimes more. That’s a modest amount, easily reached with a few swaps throughout the day.
The richest sources include oats, barley, beans, lentils, apples, citrus fruits, and psyllium husk. A bowl of oatmeal delivers about 2 grams of soluble fiber. A cup of cooked black beans adds another 4 to 5 grams. Toss an apple or an orange into your afternoon and you’re well within the effective range. The key is consistency. A daily habit matters far more than an occasional large serving.
Nuts, Especially Walnuts
A large trial published in Circulation followed over 700 healthy older adults for two years. Those who ate roughly 30 to 60 grams of walnuts daily (a small to moderate handful) saw their total cholesterol drop by 4.4% and their LDL fall by 3.6%. Interestingly, men responded more strongly than women, with LDL reductions of 7.9% compared to 2.6%.
Walnuts, almonds, and other tree nuts are high in unsaturated fats and fiber, which both contribute to the effect. They’re calorie-dense, so the simplest approach is using them to replace less healthy snacks rather than adding them on top of what you already eat. A handful of almonds instead of chips or crackers, walnuts stirred into oatmeal instead of butter on toast.
Swap Saturated Fat for Unsaturated Fat
The American Heart Association recommends keeping saturated fat below 6% of your daily calories. On a 2,000-calorie diet, that’s about 13 grams, roughly the amount in a couple tablespoons of butter plus a serving of full-fat cheese.
When people in clinical trials replaced saturated fat with either monounsaturated or polyunsaturated fat, their LDL dropped by roughly 25 mg/dL on average. Both types of unsaturated fat performed equally well. That means cooking with olive oil instead of butter, choosing avocado over cream cheese, and using canola or peanut oil for higher-heat cooking all make a real difference. The swap matters more than the specific oil you choose. These oils are safe at typical cooking temperatures, though you should stop using any oil that starts to smoke, and avoid reheating or reusing cooking oils.
The biggest sources of saturated fat in most diets are red meat, full-fat dairy, baked goods, and fried foods. You don’t have to eliminate them entirely. Even partial substitutions, like using olive oil in place of butter a few times a week, shift the balance.
Fatty Fish for Triglycerides
Salmon, mackerel, sardines, and other fatty fish are rich in omega-3 fatty acids, which primarily lower triglycerides rather than LDL. A meta-analysis of randomized trials found that roughly 1 gram per day of combined EPA and DHA (the omega-3s in fish) reduced triglycerides by about 19 mg/dL, while 2 grams per day brought a roughly 43 mg/dL reduction. The relationship is nearly linear: more omega-3, lower triglycerides.
The effect on LDL is minimal, and high doses can actually nudge LDL up slightly. So if your main concern is LDL cholesterol, fish alone won’t solve it. But if your triglycerides are elevated alongside your cholesterol, two or three servings of fatty fish per week is one of the most effective dietary changes you can make.
Soy Protein
Replacing some animal protein with soy protein consistently lowers LDL by about 4 to 7 mg/dL. That finding has held up across decades of studies. Tofu, edamame, tempeh, and unsweetened soy milk are the most straightforward sources. The effect is modest on its own, but it stacks with other changes. Using tofu in a stir-fry cooked in olive oil with vegetables and served over barley, for example, hits several cholesterol-lowering strategies in a single meal.
Plant Sterols and Stanols
Plant sterols are natural compounds found in small amounts in vegetable oils, nuts, seeds, and grains. At higher doses, they block cholesterol absorption in the gut. Consuming 2 grams of plant sterols daily lowers LDL by 8% to 10%, a clinically meaningful drop.
Getting 2 grams from whole foods alone is difficult, which is why some margarines, orange juices, and yogurts are fortified with them. The FDA allows products containing at least 0.65 grams per serving to carry a heart-health claim. Two servings a day of a fortified spread or drink can reach the effective threshold. If you already eat plenty of nuts, seeds, and whole grains, you’re getting some plant sterols naturally, though probably not enough for a maximal effect.
What About Eggs?
Eggs contain about 186 mg of cholesterol per yolk, but dietary cholesterol has a surprisingly small effect on blood cholesterol for most people. The cholesterol in eggs doesn’t raise LDL the way saturated and trans fats do. Most healthy people can eat up to seven eggs a week without increasing their risk of heart disease. If the rest of your diet is relatively low in cholesterol, an egg a day is a reasonable choice. The bigger priority is what you cook those eggs in and what you eat alongside them.
How Long Until You See Results
Dietary changes can start shifting your cholesterol levels in as little as three weeks, though most people see clear results on a blood test within three to six months. The National Heart, Lung, and Blood Institute notes that measurable changes often appear around the six-week mark. Your individual timeline depends on how dramatically you change your eating pattern, your genetics, and how high your levels were to start.
The most effective approach combines multiple strategies rather than relying on any single food. Adding oats and beans for fiber, switching to olive oil, snacking on walnuts, eating fish twice a week, and cutting back on red meat and full-fat dairy creates a cumulative effect that no individual food can match on its own.

