Training analysis
Two variables changed on the same Monday. Only one left a readable signal in the power files, and the reason it can be pinned on that one is mechanism, not timing.
On Monday 17 August I changed two things at once. I gave a pint of blood, and I fitted a saddle that puts me further forward on the bike.
The blood was deliberate. My August panel came back with a hematocrit of 60%, up from 49.6 in April. Past roughly 55% the extra red cells stop buying you oxygen and start making your heart work harder to push thicker blood around. Donating is the simplest way to bring that number down.
Then I asked Claude to go through my Strava files and tell me whether either change actually made me faster. Not a look at average speed, which tells you almost nothing on its own. I wanted power, heart rate, wind and temperature pulled apart properly, this week against a matched week before the changes.
What follows is the whole answer, including the parts that did not work. I am publishing it because the method is the useful bit. Most riders change two things at once, look at their average speed, and decide it worked. Here is what happens when you check.
Same speed at slightly lower power, and a meaningfully lower heart rate. Every method tested moved the same way. Three rides, so treat it as a strong lead rather than a settled fact.
Fitted drag came out 3.5% lower, but day-to-day scatter inside the old block alone was 16%. The saddle went on the same day as the donation, so more training rides will never fix this. It needs a controlled test.
The headline
Two solo rides from 4 and 6 August against three from 18, 19 and 20 August. Group rides are left out, because stops and drafting wreck the relationship between power and speed.
| Metric | 4 + 6 Aug | 18-20 Aug | Change |
|---|---|---|---|
| Average speed | 21.67 mph | 21.68 mph | +0.0% |
| Average power | 227.8 W | 219.5 W | −3.6% |
| Average heart rate | 144.7 bpm | 140.1 bpm | −4.6 bpm |
| Cadence | 82.6 rpm | 83.8 rpm | +1.5% |
| Efficiency factor (W ÷ HR) | 1.574 | 1.567 | −0.4% |
| HR cost per watt, steady laps 200-300 W | 0.634 | 0.597 | −5.8% |
| Aerobic decoupling (Pw:Hr) | +4.5% | +2.2% | better |
| Ride temperature | 26.1 °C | 23.7 °C | −2.4 °C |
Swipe the table sideways to see every column.
Look at the gap between those two efficiency measures. Whole-ride watts per beat says nothing changed. Restrict it to steady laps in a matched 200 to 300 watt band, where the workout structure stops interfering, and heart-rate cost drops 5.8%. At 250 watts that is about 9 beats per minute less. Only 1.3 of those beats come from the cooler weather.
The measurement
Each bar is one ride. Shorter means the heart did less work for the same power, so shorter is better.
Temperature-corrected heart-rate cost per watt, from steady laps in the 200-300 W band only. The scale starts at 0.565 rather than zero so the differences are visible. 16 August was the last ride before both changes.
Two of the three rides after the change sit clearly below everything before them. 19 August lands in the middle of the old range, which is why this reads as a strong lead rather than proof. Run the same comparison through a heart-rate-against-power regression instead of a matched band and the trend is cleaner still: heart rate at 250 W goes 150.8, then 149.0, then 146.8, then 141.3 across the four rides spanning the donation.
An exact permutation test across the five comparable days returns p = 0.20. With three rides in the new block, no honest test clears the bar. What carries weight is that every method tried, whole-ride, matched-band, regression and decoupling, moved the same direction. That consistency is worth more than any single number, and it is still not the same as proof.
Untangling the two
The saddle and the pint both landed on Monday 17 August, so they are perfectly confounded in time. There is no week where one changed and the other did not, which means no amount of extra riding will separate them. Timing is a dead end.
Mechanism is not. The two changes work through different physics and show up in different measurements. A position change is mechanical: it changes how much speed a given watt buys. A viscosity change is physiological: it changes how many heartbeats a given watt costs. So the question becomes which of those two channels actually moved.
Whole-ride speed at power+1.29%
Matched-segment index−0.43%
Fitted CdA, steady laps+1.18%
Three estimates straddling zero across a 1.6-point spread. That is what no effect looks like when the wind is loud.
Matched-band HR per watt−5.8%
HR at 250 W, regression−9.2 bpm
Aerobic decoupling+4.5 → +2.2%
Every clean estimate lands on the same side of zero and none of them straddles it. Whole-ride efficiency factor is excluded because block structure contaminates it.
The improvement sits entirely in the channel the blood acts on. The channel the saddle acts on is indistinguishable from wind. That is not proof, and a forward position can nudge heart rate a little through hip angle and breathing mechanics. But a 9-beat shift is far bigger than position usually buys, and it turned up in exactly the measurement viscosity should move.
The last ride before both changes is the cleanest baseline in the set: one day out, old saddle, old blood. Its heart-rate cost per watt was 0.628, sitting squarely inside the old range. Its fitted drag came out 0.305, the lowest number in the whole six-ride sample, on the old saddle. Read that one carefully, because a 10 to 14 mph wind biases a cube-law drag fit downward. It is not evidence the old saddle was faster. It is evidence the method cannot tell saddles apart.
One small thing does confirm the position change is physically there. Cadence moved from 82.6 to 83.8 rpm, up 1.5%. Rotating forward around the bottom bracket usually nudges cadence up. Right direction, far too small to test anything, but it says the fit change is real rather than imagined.
Why this was predictable
For most athletes a pint costs performance for two to four weeks. The August panel says this was a different situation.
| Marker | 6 Aug draw | Rollfast range | Read |
|---|---|---|---|
| Hematocrit | 60.0% | 45-59 | Out of range |
| Hemoglobin | 18.9 g/dL | 15-20 | In range |
| Red blood cell count | 6.52 ×10⁶/µL | 5.0-8.0 | In range |
| Ferritin | 151 ng/mL | - | Iron not a limiter |
Past roughly 55% hematocrit the oxygen-delivery curve flattens and viscosity starts charging the heart more than the extra cells return. At 60% that tax is being paid on every ride. Taking out about 500 mL drops it roughly three points, so the number now sits near 57%. Still high, but off the worst part of the curve. Plasma volume refills within 24 to 72 hours while red cell mass stays down, and that is exactly the window these three rides fall in.
The usual donation penalty comes from cutting into oxygen-carrying capacity you actually needed, and it bites hardest when iron stores are thin. Ferritin at 151 and hemoglobin still at 18.9 means neither applies here. Less cardiac work per unit of blood flow, with oxygen delivery essentially intact, is the mechanism. A lower heart rate at matched power is its fingerprint.
The saddle
A saddle that moves you forward should show up as lower aerodynamic drag. Drag area was fitted against speed, gradient and rolling resistance across every steady lap of 180 seconds or longer, which is the cleanest read available without a dedicated test.
| Ride | Steady laps | Fitted CdA | Block |
|---|---|---|---|
| 4 Aug | 15 | 0.355 | Before |
| 6 Aug | 16 | 0.302 | Before |
| 18 Aug | 10 | 0.328 | After |
| 19 Aug | 15 | 0.299 | After |
| 20 Aug | 9 | 0.325 | After |
Look at the two old rides. 4 August fits at 0.355 and 6 August at 0.302. That is a 16% swing on the same bike, the same body, two days apart. It is wind direction relative to the route, and it is three times bigger than the effect a new saddle would produce. The block difference works out to 0.6 standard errors, when you need about 2.0 to claim anything real.
There is one matched pair worth staring at. On the 146-to-Greenhouse segment the numbers were 325 W at 158.6 bpm on 4 August, and 325 W at 158.8 bpm on 18 August. Identical power, identical heart rate, and 3.8% faster. That is what a genuine aero gain looks like. It is also one segment on one day with no wind measurement along that heading, so it is a hint, not a result.
The instinct is to collect a few more weeks of rides and run it again. That will not work. Both changes happened on Monday 17 August, so every future ride carries both of them together, and the wind noise stays exactly as big as it is now. The only route to an answer is to break the pairing by hand: refit the old saddle for one controlled test while the blood stays where it is.
The gap
| Duration | Best 3-9 Aug | Best 17-20 Aug | % of 400 W anchor |
|---|---|---|---|
| 5 seconds | 685 W | 452 W | - |
| 1 minute | 412 W | 372 W | 93% |
| 5 minutes | 340 W | 330 W | 83% |
| 20 minutes | 282 W | 270 W | 68% |
| 60 minutes | 256 W | 252 W | 63% |
Every peak is down, and almost none of it means anything. The best 20-minute effort this week sat at 68% of anchor, which is Tempo, well under the 78% where Threshold starts. These are not maximal efforts. They are whatever the workout asked for. The block two weeks ago prescribed 30-second efforts at 470 to 516 W; this week asked for 20-second efforts near 400 W. That accounts for the entire short-duration drop.
So the honest statement is narrow and specific: the same speed is coming at less cardiovascular strain. Whether the ceiling went up, down or nowhere is untested, because nothing has been near it since the donation.
What would settle it
This is the only test that can separate the saddle from the pint, because it breaks the same-day pairing by hand. Pick a flat 3 to 5 km stretch and ride it four times in each direction at a fixed 240 W, same kit, same bottles, low-wind morning. Averaging the paired directions cancels the wind that is currently destroying the drag estimate. Run it on the new saddle, refit the old one, run it again the same morning. The blood is identical across both halves, so anything that moves is position. Two hours, and the question is closed.
A 20-minute maximal or a proper VO₂ ramp, around day 10 to 14 after donating. That is when plasma volume has fully restored and red cell mass is at its lowest, so it is the worst-case read. If the ceiling holds there, the viscosity trade is working.
Recheck hematocrit in four to six weeks, alongside the potassium 5.5 the audit flagged for confirmation. If it has drifted back toward 60, donating becomes a standing part of the protocol rather than a one-off.
More optimised, yes, on the one axis the data can actually measure. The heart is doing less work for the same road speed, the effect is bigger than the weather can explain, and the blood chemistry gives a clean mechanism for why. Both changes landing on the same Monday means timing can never assign the credit, but the gain showed up in the heart-rate channel and not the speed channel, which points at the pint. What cannot be claimed yet is that any of it made me faster. Nothing this week went hard enough to find out, and the saddle needs its own controlled morning.
Rollfast Coaching · Training analysis
Sources: Strava power, heart-rate and temperature streams · myWindsock air-speed reports · August 2026 Longevity Audit
Speed · Strength · Longevity