Marathon fueling
Why Beans, Whole Grains, and Cruciferous Veg Ruin a Vegan Carb Load
Lentils, oats, and broccoli can spend a 15 g race-week fiber budget before lunch. Swap to white rice, tofu, and peeled produce; keep carbs high for 48 hours.

Beans, steel-cut oats, and broccoli will spend a ~15 g race-week fiber budget before you have stored the glycogen. A 1.5-cup bowl of lentil soup is already ~15 g of fiber — the whole day's ceiling in one sitting. For 36–48 hours, swap those staples for white rice, white pasta, firm tofu, and peeled produce so carbohydrate can rise to 8–12 g per kg while intestinal residue falls.
That is the entire protocol. The foods are not "bad." They are the wrong tool for two days.
Why fiber fights a carb load
Carb loading asks the gut to absorb a huge amount of carbohydrate while carrying as little leftover bulk as possible. Fiber does the opposite of that second job. Soluble fiber holds water and slows gastric emptying. Insoluble fiber adds stool volume. Galacto-oligosaccharides in beans and fructans in wheat and onion ferment in the colon and produce gas.
During hard running, splanchnic blood flow drops as cardiac output is redirected to working muscle and skin. de Oliveira, Burini, and Jeukendrup (2014) describe how that hypoperfusion, plus mechanical jostling, turns ordinary intestinal contents into nausea, bloating, and urgency. Costa and colleagues (2017) frame the same picture as exercise-induced gastrointestinal syndrome. Diet does not cause the blood-flow shift. Diet decides how much material is sitting there when it happens.
A typical plant-based day already runs 35–50 g of fiber. The race-week working ceiling used here is about 15 g. You are not "eating clean." You are emptying the pipe.
Glycogen still needs 8–12 g of carbohydrate per kg of body mass per day over those last 36–48 hours (Burke et al., 2011; Thomas, Erdman & Burke, 2016). For a 70 kg runner that is 560–840 g of carbohydrate. Hitting that number with lentils and brown rice is how people arrive well-fuelled and then sprint for a porta-potty at 28 km.
Fiber is residue and fermentable substrate. For two days, cut it to about 15 g while carbohydrate stays at 8–12 g/kg — not the other way around.
The three groups that blow the budget
Legumes are the largest single hit. They also ferment. One serving can close the day.
Whole grains and bran are the quiet accumulator. Whole-wheat pasta, brown rice, steel-cut oats, and two slices of wholemeal toast each carry two to four times the fiber of the refined version. Because they appear at every meal, the total climbs without any plate looking extreme.
Cruciferous vegetables — broccoli, cauliflower, cabbage, Brussels sprouts — combine moderate fiber with sulphur compounds that produce gas out of proportion to the gram count. A cup of cooked broccoli is ~5 g. Next to a bean chili it is the difference between a tight day and an overshoot.
| Before (usual vegan plate) | Fiber | After (race-week plate) | Fiber |
|---|---|---|---|
| Lentil soup, 1.5 cups | ~15 g | White rice, 2 cups + 150 g tofu | ~2 g |
| Black beans, 1 cup | ~15 g | White rice, 1 cup + 150 g tofu | ~1.5 g |
| Three-bean chili, 1.5 cups | ~16 g | White pasta, 2 cups + marinara + tofu | ~6 g |
| Steel-cut oats + 1 tbsp chia | ~9 g | White bagel + maple syrup | ~2 g |
| Whole-wheat pasta, 2 cups | ~12 g | White pasta, 2 cups | ~3 g |
| Broccoli, 1 cup cooked | ~5 g | Peeled zucchini, 1 cup, or skip | ~1 g or 0 |
None of those swaps reduce carbohydrate. Several raise it. A cup of cooked white rice is ~45 g of carbohydrate with ~0.6 g of fiber. A cup of black beans is ~41 g of carbohydrate with ~15 g of fiber. Same-ish carb, completely different residue.
Edamame (~8 g/cup), hummus (~6 g per 1/2 cup, often with onion), and quinoa (~5 g/cup) fail the same test when stacked on oats.
One bean serving can be the entire 15 g budget. Whole grains add a few grams at every meal. Crucifers add gas on top of the grams.
A normal-looking day that still fails
Nobody eats a "fiber bomb" on purpose. They eat a sensible plant-based Thursday, 36 hours before a Sunday marathon.
| Meal | Before | Fiber | After | Fiber |
|---|---|---|---|---|
| Breakfast | Steel-cut oats, chia, mixed berries | ~15 g | White bagel, maple, ripe banana | ~5 g |
| Lunch | Chickpea and kale grain bowl | ~16 g | White rice, tofu, soy sauce | ~2 g |
| Snack | Apple with skin, 23 almonds | ~8 g | Rice cakes with jam, pretzels | ~2 g |
| Dinner | Whole-wheat pasta, lentil ragu, salad | ~18 g | White pasta, marinara, 150 g tofu | ~6 g |
| Day total | ~57 g | ~15 g | ||
The "before" day is more than three times the ceiling. No single item is outrageous. That is why eyeballing "a light lunch" fails, and why a calculator beats a vibe.
Carbohydrate on the "after" day is not lower. The bagel is ~55 g of carbohydrate. Two cups of white rice at lunch is ~90 g. Two cups of white pasta at dinner is ~80 g. Add maple, juice, and a banana and a 70 kg runner can still chase 700 g without another chickpea.
If chewing volume is the limiter — and at 10 g/kg it usually is — drink some of the carbohydrate. Maurten Drink Mix 160 is ~40 g of carbohydrate per serving with no fiber. Tailwind Endurance Fuel is ~25 g per labeled serving. Skratch Super High-Carb is ~100 g in one bottle if you can tolerate that concentration in training. Those products are manufacturer-confirmed vegan on current brand language; check the electrolyte drink mix guide rather than grabbing a recovery canister that shares the same logo.
A normal vegan day can total ~50 g of fiber with no "junk" on the plate. The race-week version of the same meals can land near 15 g with equal or higher carbohydrate.
Item-for-item swaps that keep the carbs
The rule is simple: keep the starch, lose the bran, skins, seeds, and legumes.
| Instead of | Use | Fiber saved (approx.) | Carb change |
|---|---|---|---|
| Steel-cut oats + chia | White bagel + maple, or cream of rice | ~7 g | Rises |
| Brown rice, 1 cup | White rice, 1 cup | ~3 g | Similar (~45 g) |
| Whole-wheat pasta, 2 cups | White pasta, 2 cups | ~9 g | Similar or slightly higher |
| Lentil soup, 1.5 cups | Rice + tofu | ~13 g | Often rises |
| Apple with skin | Ripe banana or applesauce | ~1–2 g | Similar |
| Baked potato with skin | Peeled potato or instant mash | ~2 g | Similar |
| Mixed berries, 1 cup | Pulp-free juice, 240 ml | ~5.5 g | Rises (~26 g carbs, ~0.5 g fiber) |
| Avocado, 1/2 | Extra bagel or rice | ~5 g | Rises a lot — avocado is fat, not a carb-load food |
Peanut butter, almonds, flax, and chia fail the same test. Two tablespoons of peanut butter is ~3 g of fiber for 8 g of carbohydrate. A tablespoon of chia is ~5 g of fiber for 5 g of carbohydrate — almost all of the carb is fiber. They are training-week foods.
Fruit is not a free pass: mixed berries ~6 g/cup, three Medjool dates ~5 g. Default is a ripe banana (~3 g) or seedless jam on white bread.
Restaurant version: white pasta, simple tomato or olive oil, extra bread, no salad tower. If vegan means a pile of roasted vegetables, switch to rice and tofu.
Every swap keeps or raises carbohydrate. Fiber is what leaves. Avocado, chia, and nut butters are the foods people "add for health" that quietly wreck the budget.
Protein without the bean tax
Race week is a bad week to prove lentils can do everything. They can, most of the year. For two days, protein comes from soy that has already been processed out of the hull.
Firm tofu, 150 g: ~16 g protein, ~1 g fiber, almost no fermentable oligosaccharides compared with a cup of beans. Fortified soy milk, 1 cup: ~7 g protein, ~1 g fiber. A 50 g tempeh portion: ~10 g protein, ~3 g fiber — usable if the rest of the day is already lean, easy to overshoot if dinner also has marinara and a banana.
That holds protein near 1.2–1.6 g/kg. A 70 kg runner can hit ~100 g with 300 g of tofu plus soy milk and the protein in pasta and bread.
Skip edamame, skip the chickpea pasta, skip the "high-protein" whole-grain bowl. Those products exist to raise protein by raising fiber. Wrong week.
Tofu and fortified soy milk replace beans for two days. Tempeh is a small cap, not a steak-sized slab.
Gels, chews, and drink mix during the load
Food still does most of the 700 g. Packets fill the gap when another plate of rice is not going to happen.
Maurten Gel 100 is 25 g of carbohydrate with a negligible fiber cost. Neversecond C30 Gel is 30 g. GU Energy Gel (original line, flavor-checked) is about 22 g. None of these belong in the fiber column. They belong in the carbohydrate column, and they belong in the gels and chews catalog so you are not practising with a honey gel you cannot use on Sunday.
"Real food" gels are the exception. Chia-based packets carry fiber on purpose. Date-heavy purees carry fiber plus a fructose load. They can work for the runner who trained with them. They are a poor way to close a carb-load day that is already near 15 g from bagels and bananas.
Drink mix is usually the cleaner extra. Count every gram toward the daily carbohydrate target the same way you count rice. Do not add a high-fiber smoothie on top because the packet "wasn't real food."
Conventional gels and drink mixes add carbohydrate without spending the fiber budget. Chia and fruit-puree packets can spend it. Check the product, then count the grams.
This lasts until the finish, not until Monday night
The restriction starts about three days out as a fade — brown rice to white, oats to bagel — and is fully on for the last 36–48 hours. Starting a white-food week ten days early mostly produces constipation and a heavy taper. Starting at the pasta dinner on Saturday night leaves Friday's chili still in the colon.
Rehearse one low-fiber day 10–14 days out, then run the next morning on your race breakfast. That session tells you whether rice plus maple sits, and whether the house actually contains white pasta.
After the race, eat the beans. Iron, potassium, and the rest of a plant-based diet belong back on the plate the same day. Extending the low-fiber pattern "just to be safe" costs recovery food for no glycogen reason.
If the scale rose 1–2 kg during the load, that is stored glycogen and water, which was the point. It is not a reason to skip the rice.
Fade fiber over about three days, hold ~15 g for 36–48 hours, rehearse once in training, and put legumes back on the plate after the finish.
Frequently asked questions
Why is fiber a problem before a marathon?
How much fiber is in a bowl of lentil soup?
Are whole grains bad for runners?
What can I eat instead of beans for protein during race week?
When can I eat high-fiber foods again?
How much fiber should I eat while carb loading?
Do I have to cut fruit as well as beans?
Can I use gels and drink mix during the carb load itself?
Sources
- de Oliveira, E. P., Burini, R. C., & Jeukendrup, A. (2014). Gastrointestinal complaints during exercise: prevalence, etiology, and nutritional recommendations. Sports Medicine.
- Costa, R. J. S., Snipe, R. M. J., Kitic, C. M., & Gibson, P. R. (2017). Systematic review: exercise-induced gastrointestinal syndrome. Alimentary Pharmacology & Therapeutics.
- Burke, L. M., Hawley, J. A., Wong, S. H., & Jeukendrup, A. E. (2011). Carbohydrates for training and competition. Journal of Sports Sciences.
- Thomas, D. T., Erdman, K. A., & Burke, L. M. (2016). ACSM Joint Position Statement: Nutrition and Athletic Performance.
- USDA FoodData Central — typical cooked lentil, black bean, oat, broccoli, rice, pasta, and tofu entries.
Educational content only. Carbohydrate, fiber, iron, B12, and hydration needs vary. Consult a sports dietitian or physician for individualized guidance — especially if you have a GI condition, anemia, or a history of underfueling.