How Many Carbs Per Hour? A Practical Guide for Runners & Cyclists

    February 26, 2026  —  13 min read

    By ·Founder of PODIUM

    Fuel Smarter. Finish Faster.

    Download the engine. Generate your plan. Execute with Confidence.

    Your carb target isn't a single number you memorize. It's the smallest of three numbers PODIUM compares for every workout: what your duration and effort actually demand, what your gut can handle today, and the sport ceiling. A safety floor catches you if the smallest of those would leave you bonking. Once you understand the four constraints, your number for any session falls out of the math.

    Two athletes ask the same question: how many carbs per hour?

    Athlete A is doing a 75-minute tempo run, capacity 60 g/h. The engine prescribes 30 g/h. The work doesn't demand more. Athlete B is doing a 3-hour easy ride, capacity 40 g/h. The engine prescribes 40 g/h. Their gut isn't ready for what the work would otherwise demand.

    Same question, two different prescriptions, neither inside the "30 to 60 g/h" range you've probably seen on a Strava infographic. The reason most carb-per-hour advice is wrong isn't the numbers. It's that there's no model behind them.

    Here's PODIUM's.

    The framework

    PODIUM picks your carbs-per-hour by comparing three numbers and choosing the smallest. A fourth number (the safety floor) overrides the result when the smallest would let you bonk.

    1. Research target. What your duration and effort actually demand, based on the substrate-utilization research.
    2. Your capacity. What your gut can absorb today, set by your onboarding profile and adjusted as you gut-train.
    3. Sport ceiling. The upper bound (90 g/h untrained, 120 g/h once you've gut-trained), the same for both running and cycling.
    4. Safety floor. The minimum on long sessions, gate-keyed (20 g/h above 60 min, 30 g/h above 90 min). It overrides the smallest of the first three when bonking would otherwise happen.

    The smallest of the first three is the prescription. The floor wins when it has to. Custom Mode bypasses the comparison and serves your stored capacity directly, for athletes who already know their number.

    Smallest wins. Floor protects.

    The four constraints

    Each of the four numbers does a specific job. What follows: what each one is doing and how PODIUM derives it.

    1. Research target

    The research target answers a single question: based on duration and effort, how much carbohydrate does the work actually demand? It comes from a 6-gate × 3-tier table built from the dose-response and substrate-utilization literature.

    The tiers collapse the standard 5-zone heart-rate model into three: Cruise (Zone 1), Push (Zones 2–3), and All-Out (Zones 4–5). Z4 and Z5 don't get more fuel than Z3 because absorption is transporter-limited; you can't deliver more by going harder.

    PODIUM's research target by duration and effort

    The grams per hour your body actually needs. The first of the three numbers PODIUM compares.

    Effort ↓ / Duration →
    < 30 min
    30–60 min
    60–90 min
    90–120 min
    2–3 hr
    3 hr+
    All-Out
    Z4–Z5

    Start Fueled

    No in-session fuel needed. Eat before you start.

    15g/h
    30g/h
    60g/h
    90g/h
    90g/h
    Push
    Z2–Z3
    30g/h
    60g/h
    60g/h
    90g/h
    Cruise
    Z1
    30g/h
    30g/h
    60g/h
    60g/h
    Read it like a topo map. The longer and harder you go, the more carbohydrate the work itself demands. This is one of the four numbers PODIUM compares; it's not always the one that wins.

    Two patterns to notice. Sub-30-minute workouts get zero in-session fuel regardless of effort. Your stored glycogen handles the work. The advice that matters there is to start the workout fueled (a meal a few hours out, or a small carb hit 15 minutes before). Above 90 minutes, the floor rises with intensity. A 3-hour Push effort needs 60 g/h; a 3-hour All-Out needs 90 g/h.

    Smith et al. (2013) tested 51 cyclists across 12 doses and found peak performance predicted around 78 g/h. Jeukendrup's 2014 personalized guidelines (30 g/h for 1–2h, 60 g/h for 2–3h, 90 g/h for >3h) sit underneath the values in the matrix above. The numbers aren't arbitrary; they reflect how much exogenous carbohydrate the work can actually use.

    2. Your capacity

    Your capacity is what your gut can actually absorb right now. It's a continuous number (in grams per hour), not a tier label. You set it during onboarding and PODIUM adjusts it as you gut-train.

    Capacity isn't fitness. A 200-pound cyclist with 12 years of riding can have lower capacity than a 130-pound runner with 18 months of deliberate fueling practice. The bottleneck is intestinal transporter density, not body size or aerobic engine. Jeukendrup's 1997 work on this is direct: untrained and trained cyclists across a wide range of body sizes show no difference in peak exogenous glucose oxidation. The number you can absorb is set by how much you've practiced fueling, full stop.

    If your capacity is below the research target for a session, capacity wins and the prescription drops to your level. That's the algorithm telling you the truth: you're not ready for race-pace fueling on this workout, and the path to higher capacity is gut training, not white-knuckling through GI distress.

    The engine handles capacity advancement automatically through the gut-training state machine: two consecutive qualifying sessions at your current rate with no logged moderate-or-severe GI distress, and you advance one step (+10 g/h). One bad session resets the streak counter. You don't decide you've gut-trained; your sessions decide for you.

    3. Sport ceiling

    The sport ceiling is the upper bound. Untrained, it's 90 g/h for both running and cycling. Once you've gut-trained, it lifts to 120 g/h.

    The ceiling matters for two reasons. First, it puts a guardrail on your capacity: even if you've set a high capacity in Custom Mode, the engine respects the ceiling unless you explicitly bypass it. Second, it sets the realistic upper bound for what gut training can achieve. The 120 g/h rate is where research shows diminishing returns; pushing past it is mostly performative.

    Running and cycling share the same ceiling. The historical "cyclists can absorb more" claim was about tolerance on the way up, not capacity at the ceiling. Cycling has lower GI symptom rates at equivalent intakes (no vertical impact on the gut), so cyclists tend to climb the ladder more comfortably. Same destination, different stairs.

    4. Safety floor

    The safety floor is the bonk-prevention override. It activates as a minimum whenever the smallest of the first three numbers would put you in danger of running out of fuel on a long session.

    The floor is gate-keyed by duration:

    • Below 60 min: no floor
    • 60–90 min: 20 g/h
    • 90 min to 3 hours: 30 g/h
    • Above 3 hours: 30 g/h at Cruise/Push, 40 g/h at All-Out

    The reason the floor exists: a beginner with conservative capacity (say, 25 g/h) doing a long easy ride could otherwise be prescribed below the threshold for exercise-induced hypoglycemia. The floor enforces a minimum that prevents that. Prins et al. (2025) showed even 10 g/h prevents hypoglycemia in glycogen-depleted athletes; the floor sets PODIUM's minimum well above that threshold for safety margin.

    When the floor fires, PODIUM tells you. The audit drawer surfaces it as the binding constraint with a clear explanation that the lower numbers couldn't take precedence because of bonk risk.

    Two special cases

    Custom Mode

    Custom Mode bypasses the constraint model. You set your capacity, PODIUM serves it directly with no comparison to research target or sport ceiling. The safety floor still applies on long sessions; everything else is your call.

    Use case: you've been fueling deliberately for years, you know your number, and you don't want the engine substituting research targets when your body is asking for something different. Custom Mode is the off-ramp.

    Fructose intolerance

    Fructose intolerance caps capacity at 60 g/h. The reason is mechanical: carbohydrate absorption normally uses two transporters working in parallel (SGLT1 for glucose, GLUT5 for fructose). With fructose intolerance, GLUT5 is unavailable, leaving SGLT1 to do all the work. SGLT1 saturates at around 60 g/h on its own, regardless of training.

    Gut training can't lift this ceiling. It's a hardware limit, not a capacity one. If you have fructose intolerance, the 60 g/h cap is your real upper bound, and PODIUM enforces it.

    A note on carb sources

    Below 60 g/h, source doesn't really matter. Gels, chews, honey, maple syrup, real food. Whatever sits well and gets carbs into your system works.

    Above 60 g/h, source matters. The glucose pathway (SGLT1) maxes out around 60 g/h on its own. To go higher, you recruit the second pathway (GLUT5) by including fructose, and the two transporters absorb in parallel. That's why high-intake products use a glucose-to-fructose ratio around 1:0.8.

    Maurten, SiS Beta Fuel, and several others are built this way. If you're going DIY at high volume, this is where it starts to matter. Below 60 g/h, don't overthink it.

    A note on sex-based adjustments

    PODIUM uses the same prescription model for everyone. Recent modeling (Lukasiewicz et al. 2024) suggests female athletes may need more exogenous carbohydrate, not less, especially at high-intensity racing efforts. The bigger real-world risk for female endurance athletes is underfueling, not overfueling.

    Full discussion at Fueling for Female Runners.

    Putting it together

    Three worked examples, one per binding constraint, so you can see the model in action.

    Example 1: research target wins

    A runner with capacity 60 g/h doing a 75-minute Zone 2 run.

    • · Research target: 30 g/h (Push, 60–90 min gate)
    • · Your capacity: 60 g/h
    • · Sport ceiling: 90 g/h
    • · Safety floor: 20 g/h (not binding)

    Smallest is research target → prescription is 30 g/h.

    Why: your body just doesn't need more for that duration and effort. Your gut could handle 60, but the work doesn't demand it.

    Example 2: capacity wins

    A beginner with capacity 40 g/h doing a 3-hour Zone 2 ride.

    • · Research target: 90 g/h (Push, >3 hr)
    • · Your capacity: 40 g/h
    • · Sport ceiling: 90 g/h
    • · Safety floor: 30 g/h (not binding)

    Smallest is capacity → prescription is 40 g/h.

    Why: your gut isn't ready for 90 yet. Path to higher capacity is gut training, not pushing through GI distress on a long ride.

    Example 3: safety floor overrides

    A new fueler with capacity 25 g/h doing a 3-hour Zone 2 long run.

    • · Research target: 90 g/h
    • · Your capacity: 25 g/h
    • · Sport ceiling: 90 g/h
    • · Safety floor: 30 g/h (Push, >3 hr)

    Smallest of the first three is 25, but 25 < 30 floor → floor fires → prescription is 30 g/h.

    Why: 25 g/h on a 3-hour easy run is bonk territory. The floor catches it. Mild GI discomfort is preferable to a blood-sugar crash at hour 2.

    That's the whole model. Three numbers compete. The smallest wins, unless the floor has to step in.

    This is what's running underneath every fueling plan PODIUM hands you. The Plan tab shows the prescription (your "Today carbs" number) and the audit drawer reveals which of the four constraints was binding for that session.

    App screenshot
    The Plan tab hands you the prescription. Tap [ ALGO AUDIT ] to see the math.
    App screenshot
    Audit drawer for a 75-min Zone 2 run, capacity 60 g/h. research_target=30, capacity=60, sport_ceiling=90, floor=20. min(30, 60, 90) = 30. Floor doesn't bind. Prescription = 30 g/h, binding = research target. Tap any constraint to see how the engine derived it.

    Or let PODIUM do the math

    The framework works on paper. It's also a lot to hold in your head when you're 90 minutes into a long run and your brain is running on fumes.

    That's the job PODIUM does. You set your sport, your capacity, and your race goal. PODIUM compares the four constraints in real time for every workout, surfaces the binding one in the audit drawer, and scripts your fuel timing on top with tactical audio cues during the session.

    No spreadsheets. No mid-run math. Just hit start.

    Frequently asked questions

    For most marathon runners at moderate-to-hard effort, the research-backed target is 60 to 90 g/h. PODIUM picks the smaller of three numbers for your specific session: what your duration and effort actually demand, what your gut can handle today, and the 90 g/h sport ceiling (or 120 g/h once you've gut-trained). A safety floor at 30 g/h kicks in on long sessions if the smallest number would put you in bonk territory.

    For runs under 30 minutes, no. Your liver and muscle glycogen handle the work. From 30 to 60 minutes the answer depends on intensity: easy efforts still don't require fuel, but all-out efforts get a small dose (around 15 g/h). Above 60 minutes, fueling becomes meaningful regardless of effort. The most important habit at any duration: start the workout fueled.

    If you finish your long runs at your current rate with no moderate or severe GI distress, your gut is signaling it's ready. PODIUM advances you automatically through gut training: two consecutive long sessions at your current rate without GI distress and the app moves you up one step (+10 g/h). If you'd rather build manually, add 10 g/h after two clean long runs, hold for at least a week, and reassess.

    Each leg gets its own prescription. The constraint model evaluates duration and effort for the active sport in real time, so the bike leg and the run leg can have different targets. Use transitions to top up carbs while your gut is still functional. Fueling is easier on the bike than at race-pace running.

    Sodium is a parallel calculation, not a function of your carb intake. PODIUM scales sodium with temperature on a five-tier curve and caps it at 1500 mg/h. For the full sodium logic, see Sodium Isn't Just for Cramps.

    Bring it home

    The "30 to 60 g/h" advice isn't bad. It's a starting point that most athletes never move past, and that costs them performance.

    Your actual number is more specific. Three constraints compete: what the work demands, what your gut handles, and the sport ceiling. The safety floor catches you on long sessions. Whichever is smallest is your prescription, and it changes from session to session because duration and effort change.

    Athlete A logs the run, eats 30 g/h, finishes strong. Athlete B logs the ride, eats 40 g/h, doesn't bonk, advances one step in the state machine. Two prescriptions, both right, both derived from the same four-constraint comparison. That's what the math is for.

    // FREE RESOURCE

    The First Marathon Fueling Protocol

    The exact fueling blueprint to execute your first 26.2 miles with zero guesswork.

    • Carb & sodium guidelines
    • Race week and race day fueling timeline
    • Gut training program
    Get Your Free Guide
    The First Marathon Fueling Protocol preview

    // KEEP READING

    Related Articles

    // Behind the App

    How PODIUM's Algorithm Works: What Happens When You Press Start

    PODIUM compares four constraints for every workout, picks the binding one, and scripts the timing. Here's how the math works under the hood.

    Read
    // Gut Training

    The Gut Training Protocol: How to Move from 30 to 90 g/h Without Wrecking Your Stomach

    Your gut is trainable, just like your legs. PODIUM walks you from 30 to 90 g/h over eight weeks of progressive practice, with advancement earned through qualifying sessions instead of scheduled.

    Read