Reading your data · 14 October 2026

A trainer ride that arrived
as one long interval.

You rode a structured workout on a smart trainer in ERG mode: five reps at threshold, recoveries between them, the trainer holding each target to the watt. The power trace is cleaner than anything you record outdoors. Then the ride syncs from the trainer app and arrives as a single interval, the length of the whole ride. Interval analysis has one row to show you, and it is the average of everything.

The structure is still there. It is in the power trace, second by second; it just never made it into the interval list. This article is about getting it back out, and about where that stops working.

Why it happens

Intervals.icu finds intervals in a ride from the structure it has for it. A ride recorded by a trainer app and synced on often arrives without that structure, as one manually added interval covering the whole ride. Nothing is wrong with the data. What is missing is the boundaries.

Finding the reps in the power trace

A rep on a trainer is a stretch where power holds near one level, with a change to another level at each end. Finding those stretches sounds easy, and two things make it harder. A five-second surge or a dropped reading in the middle of a rep should not split it in two. And the moments when power ramps from one target to the next belong to neither rep, so they should not drag either one's average. IntervalSync finds steady efforts this way:

For each block it reports its start, end and duration, so the blocks tile the ride without gaps, and its average, minimum and maximum power, heart rate, cadence, and drift from the first half to the second. Those figures are measured over the block's settled middle: the ramp into and out of it is left out, and how many seconds were left out is reported. If a short surge or a dropout was absorbed into a block, its highest and lowest readings are reported beside it, so no extreme in the file goes unmentioned. Up to 60 blocks come back from one ride.

The shortest block and the 12% can both be changed when you ask: a shorter minimum to see 20-second sprints as blocks of their own, a tighter tolerance to split two efforts only a few percent apart.

Ask
Analyse [activity]. It synced from a trainer app as one interval — find the actual efforts in the power trace and give me each rep's duration, average power, heart rate, cadence, and how much I drifted across it.

What it cannot do

Once the reps are back, the questions that need them work again, among them the others on the same page: following one rep across weeks, or checking whether heart rate drifted at a steady power.


More questions the data can answer · Decoupling and block length · All articles · Connect your training