Calculate Needed Training Load?

There are easier ways to get optimised training done, and looking at the numbers can be too complicated, and unnecessary. A better way to do it, where I have seen progress in every cyclists I’ve given workouts to, and that have followed the plan (not 100% compliant, but at least >80%) have shown improvements in performance.

Over a 4 week period, aka traditional periodization, there would be an increase in either:

  • the workout duration at the same power, or
  • the power for the same duration.

If I see them struggling, based on RPE and Feel, I would dial back the intensity a few watts, or perhaps they need a longer recovery. Otherwise I encourage them to not use ERG mode and ride to feel. If they feel strong, go a little harder, eg. the 8m intervals, they can go at 95% if they feel sluggish or up to 105% if they’re feeling really strong.

Here’s view of one person’s calendar, taken at random (they’re moving into Base2 next week):

  • I try keep their ramp rate below 5, unless they are truly a good responder to fatigue.
  • You’ll see the week’s form shows green as I’m not worried about their day to day scores.
  • You’ll also notice the progression is focused on increases in weekly workouts.
    While I personally start on a Monday, because I train in the afternoon (weekdays) and morning (weekends), I try encourage them to have a reserve day. In this case, it’s a Friday. If work/life prevents them from following the plan, they have a day in reserve. If they want to add another ride, the rule is simple: keep it easy. The Free ride on Sunday is difficult (many times they want to race up the hill, because others are doing it, and they want to see how their performance is improving). That’s that the free ride is for… let them have fun, but keep the intensity lower than normal for the rest of the ride.

Hope this helps.

10 Likes

What happens in the next block?

The intensity goes up, and they start again at 3x8m and then 4x8m and finally 5x8m.
So if they were on 95% in base1, I’d push them up to 100% in base2, and 105% in base3.
The second breakthrough workout would be slightly different, and can be mixed up of they need it. The key is to ensure that workout has a progressive increase.

Group rides will always be 3 - 4 hours long, as the races are all 2.5 - 3.5 hours in duration. Each block during Base1-3 will be the same TSS in each block. If it’s a longer event some time in the future will the duration of long group rides increase for that event. In the Build and Taper weeks, the volume drops on these long rides (2.5 - 3 hours) and it’s more race-specific type riding (higher intensity, less duration; and a little more rest days too).

4 Likes

This came form Alan Couzens:

"It goes like this… (assuming default constants of 42/7)
Target CTL ramp rate = ~10 per month
Target TSB floor (i.e. where your Training Stress Balance will bottom out at the end of a 3 week loading period) ~= -20 TSB
Target daily TSS load = CTL+~30 per day.
Easy as 1,2,3!


A worked example…
Athlete’s current CTL (fitness) is 100 TSS/d and we want it to be 110 TSS/d by the end of the 4 week block.
We know that a TSB of -20 is a safe ‘bottom’ for this athlete.
So we plan the loading days for the 3 loading weeks (of the 4 week block) as 100 +~30 = ~130TSS/d.
Of course at the end of the block, the athlete will have a new CTL of 110 so loading days for the next block will need to be 140TSS/d… Finnegan begin again (until Finnegan runs out of time/life space :slight_smile:


So, what does the recovery week/recovery days look like?
Conveniently enough, 7 days at CTL-30 at the end of the block will bring the athlete back to a ‘neutral’ freshness of TSB ~ 0 ready to start the next block (for our athlete above, a TSS load during the recovery week of 100-30 = ~70TSS/d)
With a proven athlete or an athlete with a high constitution but lower than average response, it may be more like a 2,4,6 rule, i.e. ramp rate of 20, TSB floor of -40, daily loading of CTL+60. But athletes who can handle this sort of 5TSS/wk ramp over the long term are the exception rather than the rule.
Of course, this ‘flat loading’ process is as boring to the body as it sounds to the head. There is real benefit in implementing more variability in the load to avoid ‘training monotony’ - something that can significantly diminish the response than an athlete gets from a give training load, i.e. for an average load week of 100TSS/d, having some days at 150, others at 50 and maybe even a big day at 200 & (perish the thought :-), a true rest day of zero. I’ll talk about the advantages of that type of approach in a future post. But for now…
Train smart,"

Very easy.

Take TrainerRoad TSS RAMP RATE "
TSS = Previous week’s TSS + weekly work days *rr
Typically, a weekly ramp rate in the 6 TSS neighborhood (+/- 2 TSS) works well for most riders, so a weekly ramp rate of 15 TSS is not recommended but still useful for our needs here.

De https://support.trainerroad.com/hc/en-us/articles/202237810-Training-Stress-Ramp-Rate-and-Target-Ranges "

and apply to Alan’s scheme above and you have what you want.
It is easy do checkf it this is ok but entering the result as “target load” at Interval’s and cheking the number and fitness charts.

regards,

PS: sometimes you have to make some adjustments to the frequency (2,3 sets in a row ou separate) and duration (long ones does have impact). but the main spine remains.

2 Likes

I don’t disagree with what he has said. In fact, I train like he describes in the bold bit, just not 100TSS/day average (I don’t have the time).

For me, and the guys I coach, I feel it’s important to get the basics right first, which can be monotonous, then introduce the variability. If the person doesn’t enjoy the hard work, variability doesn’t make it any easier.

BTW, 700 TSS per week is about 14 hours per week average. Recovery weeks will be about 10h and max at about 18-20 hours. He’s probably describing someone capable of riding Cat 1-2.

1 Like

that was only an exemple.
you can do the math whit whatever ctl ramp / TSS avg you have int the moment.

Again from Alan: "…most folks can handle a ramp of 5-8 CTL per week. Perhaps it’s just me growing more and more cautious as the years pass, but I’ve found these numbers to be a little too aggressive over the long term among my sample of high performance (often working age group/‘high life stress’) athletes. I typically aim for a more conservative long term ramp of 3-5 CTL per week (or ~10-20 per 4 week block) as a good long term figure.

De https://www.alancouzens.com/blog/CTLramp.html "

I did a formula to address the proportionality of Alan’s exemple:

For a 3w load 1w rest block:

“Desired BLOCK CTL Gain”, I will call it CTLg . let’s say (in my case) 4
“Initial CTL block value”, I will call it CTL. i.g.:54
“Daily load TSS to add”, I will call it dlTSS
dlTSS= CTLg times 5
dlTSS=4 times 5=20
“Week Load TSS”, I will call it wlTSS
wlTSS=(CTL+dlTSS) times 7
wlTSS=(54+20) times 7=518
so, making 3 weeks of 518TSS will take you to -20/-30 TSB
than you have the rest week where:
“Daily rest TSS on rest week” , I will call it drTSS
rdTSS=CTLg times 3
rdTSS=4 times 3=12
“Week rest TSS”, I will call it wrTSS
wrTSS=(CTL-rdTSS) times 7
wrTSS=(54-12) times 7=294TSS
so making the 294 in the rest week will take you to the fresh TSB
theoretically you end up the 4w block with a CTL 58

all approximate numbers

From my spread sheet

1 Like

Forun editor is not accepting * . I’ll use “times” instead

In addition to the good advice from others, you may find this helpful:

Link to a post of a simple Google docs spreadsheet I made that leverages the intervals.icu API to output what I think you are after.

1 Like

I made a local copy of the spread sheet, entered athlete ID: and API Key: but nothing has happened.
also import data botton at “Daily Record” tab is inoperante.
Appreciate any help.

Tks

What device did you try this on? Unfortunately those buttons (and scripts) can not be triggered on mobile devices - a limitation of Google sheets.

Solution I found for mobile use was to initially set up on a computer, and then set up a regular time-based trigger to run the script that the button initiates.

1 Like

Regular notebook w11
Local copy using Excel

Running it in Excel is why it’s falling over. The script which calls the data from the API is Google Sheets specific, it will not run as an Excel macro.

3 Likes

Even using Google Sheets I’ve got an error message with no further details…

Tks

Can you click the “dispensar” / details dialog and share what that says?

There is some github code this calls to which you need to provide permissions for in order for the sheet to function / receive data from the intervals api. That’s the only thing that I can think of that might be causing a problem now without more info about the specific error you are getting.

1 Like

no further info in that…

thinking broadly :slight_smile:
Can’t it be due to date format or any other unit?
I live in Brazil.
date is DD/MM/YYYY
and the units are metric sistem.

Your sheet is view only and doesn’t allow to edit the red blocks, Athlete ID and API key.
Should those cells not be unprotected to allow the data to be changed?
The Import data button also is inactive.

1 Like

Hi Gerald, you should be able to take a copy and then put in that info in your own version. Probably not a good idea to be putting that personal intervals.icu account info in a widely shared Google doc!

Ah that’s tricky. When I’ve had that dialog the details/dispensar bit has provided a bit more info as to what went wrong. Hard for me to troubleshoot further since the version with my intervals.icu account details in works fine…

That shouldn’t be an issue - since I understand you are getting the issue with the API call rather than any subsequent calcs.

It has “kind of” worked.
Tab “intervals_activities-export” has been populated but all others don’t show anything.

tks,

1 Like