What to Eat Before a Run (And What to Avoid)
You’re lacing up your shoes, you’re ready to go, and then it hits you: should I eat something first? And if so, what? Get it wrong and you’re either running on empty or dealing with stomach cramps two miles in.
Pre-run nutrition doesn’t need to be complicated. But there are a few timing windows and food choices that can make a real difference in how you feel out there. So let’s break it down.
The Timing Window Matters More Than the Food
Here’s the most important thing about eating before a run: when you eat matters just as much as what you eat.
Your body needs time to digest. Eat too close to your run and blood flow gets diverted to your stomach instead of your legs. That’s when you get cramps, nausea, or worse.
The general framework looks like this:
- 2 to 4 hours before: A full meal is fine. Think carbs with some protein and a little fat. A bowl of oatmeal with banana, toast with peanut butter, or a simple pasta dish.
- 30 to 60 minutes before: Keep it small and simple. A banana, a handful of pretzels, or a piece of toast with jam. Easy-to-digest carbs only.
- Less than 30 minutes: Either skip it or grab something tiny. A few sips of sports drink or a couple of dates.
Healthline’s guide to pre-run nutrition recommends high-carb, moderate-protein meals 2 to 4 hours out, then switching to light carb-only snacks closer to run time.
The Best Pre-Run Foods
The best pre-run foods share a few things in common. They’re high in easily digestible carbohydrates, relatively low in fat and fiber, and they sit well in your stomach.
Great choices 2 to 4 hours before:
- Oatmeal with banana and a drizzle of honey
- Toast with peanut butter and jam
- A bagel with a thin layer of cream cheese
- Rice with a small portion of chicken
- A smoothie with fruit, yogurt, and a bit of juice
Great choices 30 to 60 minutes before:
- A banana (the classic runner’s snack for good reason)
- A handful of pretzels or crackers
- White toast with jam
- An energy bar that’s mostly carbs
- A few dates or dried fruit
Bananas are basically the perfect pre-run food. They’re easy on the stomach, packed with quick carbs, and they have potassium which helps with muscle function. There’s a reason you see them at every race start line.
Foods to Avoid Before Running
Some foods are great for your overall diet but terrible right before a run. High fiber, high fat, and high protein meals all slow digestion and can leave you feeling heavy, bloated, or racing to find a bathroom.
Skip these before a run:
- High-fiber foods: Beans, lentils, broccoli, raw vegetables, whole grain cereals with lots of fiber. Your body works hard to break these down, and that process creates gas. Not fun mid-run.
- High-fat foods: Burgers, fried foods, cheese-heavy meals, creamy sauces. Fat takes the longest to digest of any macronutrient.
- Dairy (for many people): Milk, ice cream, yogurt with lots of lactose. Research published in the Journal of the International Society of Sports Nutrition found that runners with GI issues frequently avoid milk products before races, and for good reason.
- Spicy food: That Thai curry might be delicious, but capsaicin can irritate your GI tract during exercise.
- Large amounts of caffeine on an empty stomach: A small coffee is fine (and can actually help performance). A triple espresso with nothing else? That’s asking for trouble.
- Carbonated drinks: The gas has to go somewhere, and you probably don’t want that happening at mile 3.
About 30 to 50% of endurance athletes experience GI symptoms during exercise. A lot of that comes down to what (and when) they ate beforehand. The good news? It’s largely preventable.
Should You Run on an Empty Stomach?
“Should I run on an empty stomach?” is one of the most debated topics in running. And the honest answer is: it depends on the run.
For short, easy runs (30 minutes or less), running fasted is totally fine for most people. Your body has enough stored glycogen from previous meals to handle it. Some runners actually prefer it because there’s zero chance of stomach issues.
For longer runs or harder efforts, you really do want fuel. Your glycogen stores only last so long, and running on empty during a tempo run or a long run over an hour means you’ll hit a wall faster. Your pace drops, your effort feels harder, and you just won’t perform as well.
The “fasted running burns more fat” idea has some truth to it. Your body does tap into fat stores more readily when glycogen is low. But that doesn’t mean it leads to more weight loss overall. Total calorie balance across the day matters way more than whether you ate before one specific workout.
So if you’re a morning runner who feels fine heading out the door without eating, keep doing that for your easy runs. But fuel up before anything long or intense.
Don’t Forget About Hydration
We can’t talk about pre-run nutrition without talking about hydration. Dehydration will tank your performance faster than eating the wrong food.
Start hydrating well before your run. Aim for about 16 to 20 ounces of water in the 2 to 3 hours before you head out. Then have another 4 to 8 ounces about 15 minutes before you start.
You don’t need sports drinks for runs under an hour. Water is plenty. Save the electrolyte drinks for longer efforts, especially in hot weather. And speaking of weather, hydration matters in cold weather running too, even when you don’t feel thirsty.
A Simple Pre-Run Nutrition Plan
If all of this feels like a lot, here’s the simplest version:
Morning runner? Have a banana and a few sips of water 15 to 30 minutes before you go. If you’re running less than 30 minutes, you can skip eating entirely.
Afternoon runner? Make sure your lunch was balanced (carbs, protein, some fat) and wait at least 2 hours before running. If it’s been 3 or more hours since lunch, have a small snack.
Evening runner? Same idea. Have a light snack if dinner is still a ways off, or run 2 to 3 hours after an early dinner.
The key is experimenting. Everyone’s stomach is different. What works perfectly for one runner might cause issues for another. Try different foods and timing during training (not on race day) until you find your sweet spot.
Never Try Something New on Race Day
This is the single most important piece of advice for pre-run nutrition: never try something new on race day. Your race morning breakfast should be something you’ve eaten dozens of times before training runs.
Race day nerves already mess with your digestion. Adding an unfamiliar food into the mix is just asking for problems.
If you’re training for a race, use your long runs to practice your nutrition plan. Same foods, same timing, same amounts. By the time race day comes, eating should feel like just another part of your routine.
Tracking your runs with an app like Vima Run can help you correlate what you ate with how your run felt. Over time, you’ll start to see patterns.
If you’re just getting started with running, our beginner’s guide to running covers all the basics. And if side stitches are an issue for you (which is often food-related), check out our guide on how to stop side stitches mid-run.
Frequently Asked Questions
Can I eat a protein bar before running?
It depends on the bar. Some protein bars are high in fat and fiber, which can cause stomach issues. Look for bars that are mostly carbohydrates with moderate protein and eat them at least 30 to 60 minutes before your run. Save the heavy protein bars for after.
Is coffee okay before a run?
Yes, for most people. Caffeine can actually improve running performance by reducing perceived effort. A small cup of coffee 30 to 60 minutes before a run is fine. Just don’t overdo it, and make sure you’ve had some water too.
What if I feel nauseous during my run?
Nausea during running usually comes from eating too much, eating too close to your run, or eating high-fat and high-fiber foods. Try eating earlier, eating less, and sticking to simple carbs. If it keeps happening regardless of what you eat, slow your pace and see if that helps.
How long before a run should I stop eating?
For a full meal, give yourself at least 2 to 3 hours. For a small snack, 30 to 60 minutes is usually enough. For something tiny like a banana or a few dates, 15 to 30 minutes works for most runners.
Do I need to eat before a short run?
Not necessarily. For runs under 30 minutes at an easy pace, your body has enough stored energy to handle it without eating first. If you feel good running on empty for short efforts, that’s completely fine.