Route
Route
Key data
- Distance
- 37.2km
- Moving time
- 1:11 h
- total 1:11:00
- Elevation
- 0m
- Avg speed
- 31.4km/h
- max 34.9 km/h
- Avg power
- 181W
- 2.30 W/kg · max 240 W
- Normalized Power
- 198W
- 2.52 W/kg
- Avg heart rate
- 157bpm
- max 173 bpm
- Avg cadence
- 90rpm
- Calories
- 808kcal
- 770 kJ of work
- Training Stress
- 86TSS
- FTP 232 W · IF 0.85
- Relative Effort
- 132
Streams
Power, heart rate, cadence, speed & elevation · one hover for all – the map follows
Time in power zones
FTP on ride date 232 W · raw sampling (gaps >10 s excluded)
- Z1Active recovery · ≤ 128 W23%16 min
- Z2Endurance · 129–174 W21%15 min
- Z3Tempo · 175–209 W0%0 min
- Z4Threshold · 210–244 W56%40 min
- Z5VO2max · 245–278 W0%0 min
- Z6Anaerobic · 279–348 W0%0 min
- Z7Neuromuscular · ≥ 349 W0%0 min
Time in HR zones
HR zones on ride date · raw sampling (gaps >10 s excluded)
- Z1Recovery · ≤ 123 bpm1%1 min
- Z2Endurance · 124–141 bpm21%15 min
- Z3Tempo · 142–155 bpm22%16 min
- Z4Threshold · 156–167 bpm5%4 min
- Z5Maximum · ≥ 168 bpm51%36 min
Power curve
This ride vs. bests 2024 and all-time
This ride – 1 min: 227 W · 2.89 W/kg, 5 min: 226 W · 2.88 W/kg, 20 min: 225 W · 2.86 W/kg
Performance analysis
- Intensity Factor
- 0.85
- NP ÷ FTP
- Variability Index
- 1.10
- NP ÷ avg power – 1.0 = very steady
- Efficiency Factor
- 1.26
- NP ÷ avg heart rate – rises with a better base
- Perceived exertion
- –
Aerobic decoupling (Pa:HR)
+5.3 %Okay – keep building the base
Fueling for this ride
During: 60 g carbs/h – gel, bar or sports drink
Drink: 500–750 ml/h
After: ~30 g protein + 70–90 g carbs within 1–2 h
Laps
5 laps
| 1 | Warm-up | 7.05 km | 14:59 | 28.2 | 135 | 140 | 145 | 90 | 0 |
| 2 | Threshold 1 | 11.50 km | 19:59 | 34.5 | 225 | 169 | 173 | 90 | 0 |
| 3 | Recovery | 3.11 km | 6:59 | 26.7 | 116 | 141 | 169 | 90 | 0 |
| 4 | Threshold 2 | 11.46 km | 19:59 | 34.4 | 223 | 170 | 173 | 90 | 0 |
| 5 | Cool-down | 4.00 km | 8:59 | 26.7 | 116 | 143 | 171 | 90 | 0 |
Notes & raw data
Description
No description on Strava.
All data
Show raw data
{
"id": "demo-0023",
"name": "Threshold 2×20",
"sport_type": "Ride",
"start_date": "2024-04-13T16:20:00Z",
"start_date_local": "2024-04-13T18:20:00",
"trainer": true,
"distance": 37162.6,
"moving_time": 4260,
"elapsed_time": 4260,
"total_elevation_gain": 0,
"average_watts": 180.7,
"average_heartrate": 156.9,
"metrics": {
"source": "streams",
"power_distribution": {
"version": 1,
"method": "right-sample-dt-0-10s",
"samples": [
[
110,
85
],
[
115,
583
],
[
120,
280
],
[
125,
32
],
[
130,
223
],
[
135,
489
],
[
140,
158
],
[
145,
9
],
[
205,
3
],
[
210,
49
],
[
215,
265
],
[
220,
679
],
[
225,
744
],
[
230,
509
],
[
235,
129
],
[
240,
22
]
]
},
"power_curve": {
"1": 240,
"5": 233,
"10": 231,
"15": 229,
"20": 229,
"30": 228,
"60": 227,
"120": 226,
"180": 226,
"300": 226,
"480": 225,
"600": 225,
"900": 225,
"1200": 225,
"1800": 199,
"2700": 207,
"3600": 192
},
"decoupling_pct": 5.3,
"hr_distribution": {
"version": 1,
"method": "right-sample-dt-0-10s",
"samples": [
[
72,
1
],
[
75,
1
],
[
76,
1
],
[
78,
1
],
[
80,
1
],
[
82,
1
],
[
84,
1
],
[
86,
1
],
[
87,
1
],
[
89,
1
],
[
91,
1
],
[
92,
1
],
[
94,
1
],
[
95,
1
],
[
96,
1
],
[
98,
1
],
[
100,
1
],
[
101,
1
],
[
102,
1
],
[
103,
1
],
[
105,
1
],
[
106,
1
],
[
107,
1
],
[
109,
2
],
[
111,
1
],
[
112,
1
],
[
113,
1
],
[
114,
1
],
[
115,
1
],
[
116,
1
],
[
118,
1
],
[
119,
2
],
[
120,
1
],
[
121,
3
],
[
122,
1
],
[
123,
1
],
[
124,
2
],
[
125,
1
],
[
126,
3
],
[
127,
2
],
[
128,
3
],
[
129,
1
],
[
130,
4
],
[
131,
3
],
[
132,
4
],
[
133,
3
],
[
134,
2
],
[
135,
3
],
[
136,
6
],
[
137,
9
],
[
138,
83
],
[
139,
219
],
[
140,
237
],
[
141,
307
],
[
142,
397
],
[
143,
311
],
[
144,
89
],
[
145,
34
],
[
146,
10
],
[
147,
16
],
[
148,
12
],
[
149,
6
],
[
150,
14
],
[
151,
10
],
[
152,
10
],
[
153,
5
],
[
154,
8
],
[
155,
10
],
[
156,
10
],
[
157,
9
],
[
158,
9
],
[
159,
10
],
[
160,
9
],
[
161,
12
],
[
162,
8
],
[
163,
12
],
[
164,
10
],
[
165,
12
],
[
166,
39
],
[
167,
86
],
[
168,
203
],
[
169,
449
],
[
170,
751
],
[
171,
567
],
[
172,
184
],
[
173,
15
]
]
},
"hr_curve": {
"60": 172,
"300": 171,
"1200": 170,
"3600": 160
},
"metric_sources": {
"np": "streams",
"variability_index": "np+summary",
"efficiency_factor": "np+summary"
},
"np": 198,
"variability_index": 1.096,
"efficiency_factor": 1.262
},
"type": "Ride",
"workout_type": null,
"timezone": "(GMT+02:00) Europe/Paris",
"utc_offset": 7200,
"strava_url": "https://www.strava.com/activities/demo-0023",
"commute": false,
"manual": false,
"private": false,
"visibility": "everyone",
"flagged": false,
"gear_id": "bdemo4",
"gear_name": "Indoor Trainer",
"device_name": "Smart trainer",
"elev_high": null,
"elev_low": null,
"average_speed": 8.724,
"max_speed": 9.69,
"device_watts": true,
"weighted_average_watts": 198,
"max_watts": 240,
"kilojoules": 769.9,
"has_heartrate": true,
"max_heartrate": 173,
"average_cadence": 90,
"average_temp": null,
"suffer_score": 132,
"calories": 808,
"perceived_exertion": null,
"kudos_count": 1,
"comment_count": 0,
"athlete_count": 1,
"photo_count": 0,
"achievement_count": 0,
"pr_count": 0,
"start_latlng": null,
"end_latlng": null,
"location_city": null,
"location_country": null,
"geo": null,
"summary_polyline": null,
"laps": [
{
"name": "Warm-up",
"lap_index": 1,
"split": 1,
"start_date_local": "2024-04-13T18:20:00",
"elapsed_time": 899,
"moving_time": 899,
"distance": 7053.7,
"total_elevation_gain": 0,
"average_speed": 7.846,
"max_speed": 7.91,
"average_cadence": 90.1,
"average_watts": 134.5,
"device_watts": true,
"average_heartrate": 139.8,
"max_heartrate": 145,
"start_index": 0,
"end_index": 899
},
{
"name": "Threshold 1",
"lap_index": 2,
"split": 2,
"start_date_local": "2024-04-13T18:35:00",
"elapsed_time": 1199,
"moving_time": 1199,
"distance": 11504.1,
"total_elevation_gain": 0,
"average_speed": 9.595,
"max_speed": 9.69,
"average_cadence": 90,
"average_watts": 224.9,
"device_watts": true,
"average_heartrate": 168.9,
"max_heartrate": 173,
"start_index": 900,
"end_index": 2099
},
{
"name": "Recovery",
"lap_index": 3,
"split": 3,
"start_date_local": "2024-04-13T18:55:00",
"elapsed_time": 419,
"moving_time": 419,
"distance": 3111.2,
"total_elevation_gain": 0,
"average_speed": 7.425,
"max_speed": 9.26,
"average_cadence": 90,
"average_watts": 116.3,
"device_watts": true,
"average_heartrate": 141.1,
"max_heartrate": 169,
"start_index": 2100,
"end_index": 2519
},
{
"name": "Threshold 2",
"lap_index": 4,
"split": 4,
"start_date_local": "2024-04-13T19:02:00",
"elapsed_time": 1199,
"moving_time": 1199,
"distance": 11461.9,
"total_elevation_gain": 0,
"average_speed": 9.56,
"max_speed": 9.66,
"average_cadence": 90,
"average_watts": 222.9,
"device_watts": true,
"average_heartrate": 169.5,
"max_heartrate": 173,
"start_index": 2520,
"end_index": 3719
},
{
"name": "Cool-down",
"lap_index": 5,
"split": 5,
"start_date_local": "2024-04-13T19:22:00",
"elapsed_time": 539,
"moving_time": 539,
"distance": 3997.2,
"total_elevation_gain": 0,
"average_speed": 7.416,
"max_speed": 9.27,
"average_cadence": 89.9,
"average_watts": 116,
"device_watts": true,
"average_heartrate": 142.6,
"max_heartrate": 171,
"start_index": 3720,
"end_index": 4259
}
],
"splits_metric": [],
"segment_efforts": [],
"best_efforts": [],
"streams": "/streams/demo-0023.json",
"external_id": null,
"synced": {
"summary": "2024-04-13T18:31:00.000Z",
"detail": "2024-04-13T18:31:00.000Z",
"streams": "2024-04-13T18:31:00.000Z"
}
}