Everything I read on training for an ultra agrees nutrition matters. From there it splits two ways: either the advice stays vague ("fuel early, fuel often," nod and move on), or it gets specific and you're suddenly buried in carb targets and sodium charts with no idea how to turn any of it into your own plan. Either way, you end up building it yourself, and that's when you discover it isn't one piece of advice, it's three numbers, all moving at different rates, with a stomach that gets a vote on each one.
Here's the simplified version, plus what I'm actually doing about it.
The Three Numbers
Strip away the brand names and the marketing, and long-run fueling comes down to three rates, all measured per hour.
Carbs per hour. Glycogen starts running low around ninety minutes in, which is when replacing it starts to matter. The specific gram targets later in this piece are calibrated for runs past two hours.
Sodium per hour. You lose it in sweat, and losing too much without replacing it is how cramping and, in bad cases, hyponatremia show up.
Fluid per hour. Driven by your sweat rate, which depends on heat, humidity, and pace, and which almost nobody actually measures.
Most plans get built first and checked against the actual numbers later, if at all. This piece goes number by number instead: the actual target first, then what's being carried to hit it, for carbs, sodium, and fluid in turn. Then the parts no amount of math solves on its own: how the gut holds up at real distance, and what happens once liquid fueling stops being enough.
Carbs Per Hour
Jason Koop's Training Essentials for Ultrarunning (reviewed here) gives two separate carb targets that matter here. One is 60 to 84 grams per hour once the run itself passes the two-hour mark, working up toward the higher end with gut training. The other is a full pre-race carb-loading curve, starting hours before the run with a bigger meal and stepping down to a smaller top-off as the start gets closer. The ninety-minute window below is the last rung on that ladder, not the whole ladder, it's just the only rung I'm actually using right now.
Pre-run eating has one job: top off glycogen before the run starts pulling from it. By the time you're ninety minutes into effort, you're already drawing on stores this meal is meant to extend.
For me, the pre-run target gets met with an English muffin, almond butter, and a banana, eaten about ninety minutes before the start, water sipped in between. It adds up to around 55 grams of carbs, near the top of Koop's pre-race range. Fat and fiber both slow digestion, and a slow-digesting meal is exactly what you don't want competing with the run forty minutes in, so the choice is deliberate: keep it low fat, low fiber, every time.
During the run, the target is the harder one to hit: 60 to 84 grams of carbs per hour for any effort past the two-hour mark. Current carry to hit it: one 500ml bottle of Tailwind (50g of carbs), sipped steadily through the run instead of finished early, plus enough Maurten gels to get two per hour. For a run right around two hours, about 15 miles at current long-run pace, that lands at roughly 75 grams an hour, inside Koop's range. Push past that without adding more Tailwind or gels, and the rate drifts down toward the low 60s instead of holding at 75.
Sodium Per Hour
Koop's number for sodium isn't actually stated per hour, it's 600 to 800mg per 32 ounces of fluid. It works as the hourly target here because 32oz is roughly what a long run asks you to drink in an hour anyway, so the two numbers move together.
During the run, sodium isn't a separate decision, it's baked into the same Tailwind bottle covering carbs: about 620mg per 500ml. Spread that across the full 1000ml actually being consumed (the Tailwind bottle plus the plain water bottle) and it works out to roughly 585mg per 32oz, just under the floor of Koop's range, a small gap but a real one.
After the run, sodium becomes a different job. LMNT handles replenishment, no carbs, just electrolytes once the work is done. Small thing, but it's the difference between feeling fine for the rest of the day and not.
One thing to test: swapping the plain water bottle for something with sodium in it, LMNT during the run instead of just after, would push that number toward the middle of the range without touching the carb math at all, since LMNT carries no carbs. That's a test for an actual long run, not a change to make on a whim.
Fluid Per Hour
Koop's target for runs over two hours is 16 to 32 ounces per hour, and unlike the carb and sodium numbers, it's not really a fixed target. It's driven by sweat rate, which moves with heat, humidity, and pace, which is exactly why it's the one number I haven't pinned down yet.
Right now I'm carrying two 500ml bottles, the Tailwind and the plain water, about 34oz total, and drinking steadily through both over the course of the run. That's a volume, not a rate. It gets fluid in the right neighborhood without confirming it's actually correct, because I don't yet know what my own sweat rate is asking for.
That changed this week. Heat finally showed up, so I ran the actual test: weigh in, run, weigh out, fluid tracked. 147 lbs before a 9.4 mile run in 1 hour 8 minutes, 84°F with 76% humidity (a heat index around 92°F, not exactly mild), no fluid consumed during the run. 143.1 lbs after.
3.9 lbs of weight lost works out to roughly 62 ounces of sweat over 68 minutes, call it 55 ounces an hour. That's well above Koop's 16 to 32oz/hr range, more than I expected, and a real gap between what I'm currently carrying (34oz total in the vest) and what one hot, humid hour is actually asking for.
Worth saying plainly: this wasn't a mild test that August will simply blow past. 84°F and 76% humidity is already demanding. August could push the number higher still, but the bigger story here isn't "wait for worse conditions," it's that the vest is already short on capacity for a day like this one.
The aid station chart settles part of this. Stations sit 4.5 to 9.6 miles apart, with the longest stretch, Wolf Ridge to Sand Spring, also the hardest: 9.6 miles and 2,280 feet of climbing. That's the gap the fluid math actually has to survive, and at a pace nothing like the flat 8:00/mile training runs this whole piece is built on, so the real time on that stretch is still an open question.
Two things worth testing now, not settling on yet. First, leaning on the aid stations themselves to close most of the gap rather than trying to carry a full hour's worth solo between every stop. Second, a third 500ml bottle in the vest, pushing capacity from 34oz toward something closer to what the harder stretches actually demand. Training runs without aid stations will keep underestimating what's possible until both ideas get tested for real, not just reasoned through on paper.
What's Still Unresolved
Not everything in the fueling plan resolves into a clean number.
The real unknown isn't the math, it's whether the gut actually cooperates with it over real distance. Two hours of training data doesn't tell you what 75 grams an hour feels like at mile 28 with a marathon's worth of climbing behind you. Koop has a simple tool for checking consumption after the fact: the Wrapper Test, collect every wrapper after a long run and tally it against target. His note in the book is that most runners come in significantly under target once they actually count, not because the plan was wrong, but because appetite and stomach tolerance erode the longer the effort goes. At some point liquid calories stop sounding good, and that's usually where things quietly fall apart. Koop's fix is the Bull's-Eye strategy: 3 to 5 proven foods covering real food, engineered food, something sweet, something savory, something salty. The engineered half is already built here (Tailwind, Maurten), but the real food is the blank spot. Testing actual aid-station-style food, bars, fruit, a peanut butter and jelly sandwich, maybe a turkey wrap, on a long run before race day is still ahead.
Bottom Line
Three numbers, three different stories. Carbs are mid-range, 75 grams an hour against a 60 to 84 gram target, no correction needed there for now. Sodium sits just under the floor, 585mg per 32oz against a 600 to 800mg target, a small gap with a clear next test. Fluid is the one that actually surprised me: 55 ounces an hour measured on a hot day, well above Koop's 16 to 32oz target range, and well above what the vest currently carries. Aid stations and a possible third bottle are the plan for closing that gap. The remaining work is the one thing numbers don't settle on their own: whether the gut holds up at real distance, not just a two-hour training run.
If you're building your own plan: get a target for each of the three rates first, then check what you're actually carrying against it, not what you think you're carrying. Test the upper end of your tolerance, including real food, well before race day forces the question.
The Numbers, All in One Place
One coincidence worth flagging: Koop's pre-race carb-loading table is built around a 145lb (66kg) runner, and that happens to be my exact weight, so that table applies with zero scaling. Long training runs are currently happening around an 8:00/mile pace, useful context for effort and heat, though that's flat-Ohio training pace, not race pace. Grindstone's climbing will slow that down considerably come September. Koop's during-run targets for carbs, sodium, and fluid are presented as flat ranges in the book, without an explicit weight- or pace-scaled table like the pre-race carb-loading chart, so they're applied the same way regardless of pace.
Number | Koop's Target | Current |
|---|---|---|
Carbs, pre-run (1-2 hrs before) | 33-66g | ~55g |
Carbs, during run | 60-84g/hr | ~75g/hr |
Sodium | 600-800mg per 32oz fluid | ~585mg per 32oz |
Fluid | 16-32oz/hr | ~55oz/hr, measured at 84°F/76% humidity |
145 lbs, training long runs at roughly 8:00/mile, around 15 miles for a typical two-hour effort.
What's In My Vest Right Now
1x 500ml bottle, Tailwind (2 scoops)
1x 500ml bottle, plain water
Maurten Gel 100, enough for two per hour
LMNT, post-run only


