What Can I Eat for Constipation and What to Avoid

Eating more fiber-rich fruits, vegetables, legumes, and whole grains is the most effective dietary change you can make to relieve constipation. The current guideline is 14 grams of fiber for every 1,000 calories you eat daily, and most people fall well short of that. But fiber is only part of the picture. Certain fruits work through additional mechanisms, magnesium-rich foods help draw water into your intestines, and some common foods can make things worse.

Fruits That Work as Natural Laxatives

Prunes are the classic recommendation, and they earn it. They contain sorbitol, a sugar alcohol that draws water into your colon, softening hard stool and triggering a laxative effect. Dried prunes have more than double the sorbitol of prune juice in the same serving size, plus more fiber (some fiber is lost during juicing). If you can tolerate the texture, whole dried prunes are the better choice.

Green kiwifruit is a less obvious pick that performs remarkably well. A multicenter clinical trial published in The American Journal of Gastroenterology found that eating two green kiwifruits per day increased complete bowel movements by roughly 1.5 extra per week in people with chronic constipation. Participants also reported softer stools, less straining, and better overall comfort. Notably, kiwifruit outperformed psyllium (a common fiber supplement) for stool consistency and straining. The combination of fiber, water content, and a natural enzyme that aids digestion makes kiwi unusually effective.

Other fruits worth adding: apples, pears, and citrus fruits provide soluble fiber that forms a gel in your gut, keeping things moving. Bananas and avocados are also good sources of soluble fiber.

High-Fiber Vegetables and Legumes

Beans, lentils, and peas are among the highest-fiber foods available. Black beans, kidney beans, and chickpeas deliver both soluble and insoluble fiber in a single serving, which means they soften stool and add bulk at the same time. If you’re not used to eating legumes regularly, start with smaller portions and increase gradually to avoid gas and bloating.

For vegetables, good options include green beans, cauliflower, potatoes (with the skin on), carrots, and cooked spinach. Potatoes and spinach pull double duty because they’re also rich in magnesium, which has its own role in keeping your bowels regular.

Whole Grains That Add Bulk

Whole grains provide insoluble fiber, the type that doesn’t dissolve in water and instead adds physical bulk to stool, helping it move through your intestines faster. Whole-wheat bread, oatmeal, brown rice, and barley are all solid choices. When buying cereal, look for options with 5 grams or more of fiber per serving. For bread, aim for at least 2 grams per slice.

Wheat bran deserves a special mention. It’s one of the most concentrated sources of insoluble fiber you can eat. Sprinkling a couple of tablespoons over yogurt or into a smoothie is an easy way to increase your intake without overhauling your diet.

Why Magnesium-Rich Foods Help

Magnesium acts as a natural osmotic agent at higher doses, pulling water into your intestines to soften stool. You don’t need supplements to get this benefit. Foods naturally high in magnesium include almonds, cashews, pumpkin seeds, black beans, cooked spinach, Swiss chard, and dark chocolate (70% cacao or higher). Peanut butter, brown rice, and oatmeal also contribute meaningful amounts.

These foods won’t produce the dramatic effect of a magnesium-based laxative, but eaten consistently as part of your regular diet, they support the kind of gut environment where constipation is less likely to develop in the first place.

Prebiotic Foods for Long-Term Gut Health

Some foods contain specific types of fiber that feed beneficial bacteria in your colon. These prebiotic fibers (like inulin) help your gut microbiome produce short-chain fatty acids, which stimulate the muscles in your intestinal wall and promote regular contractions. Think of this as a longer-term strategy rather than quick relief.

Good prebiotic sources include raw or cooked onions, garlic, jicama, bananas, peas, almonds, flaxseed, and whole grains like wheat, corn, rye, and barley. Many of these overlap with the high-fiber foods already mentioned, which means a constipation-friendly diet naturally supports your gut bacteria too.

Water Makes Fiber Work

Fiber without adequate fluid can actually make constipation worse. Fiber absorbs water as it moves through your digestive tract. If there isn’t enough water available, stool becomes drier and harder to pass. A study on adults with chronic functional constipation found that a daily fiber intake of 25 grams increased stool frequency on its own, but the effect was significantly enhanced when participants drank 1.5 to 2 liters of water per day.

This doesn’t mean you need to force-drink water all day. But if you’re increasing your fiber intake, make a conscious effort to drink more fluids than usual. Water, herbal tea, and broth all count.

Foods That Can Make Constipation Worse

High-fat, low-fiber foods slow digestion and delay the movement of stool through your intestines. The main culprits, according to Johns Hopkins Medicine, include fried foods, processed meats, commercially baked goods, and anything heavy in oil, butter, or grease. Cheese is called out as a particular offender. Fats take a long time for your body to break down, and most high-fat foods contain very little fiber to offset that sluggish transit.

High-fat diets like keto can be especially problematic. If you’re following a very low-carb eating pattern that limits fruits, vegetables, and whole grains, you’re cutting out most of the foods your colon relies on for regular movement. That doesn’t mean fat is inherently bad for digestion, but a diet built around it at the expense of fiber will often lead to constipation.

A Practical Starting Point

You don’t need to overhaul your diet overnight. A reasonable approach is to pick two or three changes you can maintain. Swap white bread for whole wheat. Add a handful of almonds or a couple of kiwis as a daily snack. Stir some beans into a soup or salad. Drink a glass of water with each meal. These small shifts add up quickly, and most people notice a difference within a few days to a week. If you’re currently eating very little fiber, increase gradually over a week or two. A sudden jump in fiber intake can cause gas and cramping before your gut adjusts.