Colours on the fitness trend report

The colours on the Fitness Trend report have been changed to increase visibility for athletes with two or three years of activities loaded. For athletes with more years of data, or indeed for those with just one year, the display should be unchanged. Please get in touch if you have any thoughts about how the colours are working for you.

enhancements to fitness trend report

The Fitness Trends report has had a couple of enhancements. First, the colours are now easier to differentiate and the points showing actual fitness values behind the trend lines are more clearly visible. Second, a slider control has been added to the sidebar that enables you to choose the degree of smoothing for the trend lines. At the lowest level of Smoothing the trend lines follow the actual fitness values closely:

At the highest value of Smoothing a macro pattern of Fitness over the course of each year is plotted:

You can experiment with different values of Smoothing according to whether you want a general overall picture of your yearly Fitness trend (high smoothing) or a more detailed comparison of Fitness at each point of the year (low smoothing).

To compare the same day in different years numerically you can toggle the hover control that is represented by the two left-pointing bars icon at the upper right of the chart from its default value of Show closest data on hover to instead Compare data on hover:

When you do this and then hover over points on the chart you can directly compare the Fitness values for the same given day in every year:

The boxes that have a whole number for day_of_year show the actual Fitness value for that day whereas the boxes that have a fractional day_of_year show the corresponding trend value. For example, the screenshot shows that on day 179 in 2020 (blue box) the athlete had Fitness of 100 whereas in 2015 (red box) at the same time of the year the athlete’s Fitness was 81. In both cases the trend values were slightly below the actual values on that date.

Fitness trend analysis

There is a new Fitness Trend report on the Navigator that enables you to compare your fitness trajectory from year to year. Here’s what it looks like for someone with data going back to the start of 2015:

Each coloured line represents the fitness trend for a calendar year. The points behind the trend lines show actual unsmoothed Fitness values. For example, the yellow 2020 line on this chart shows that the athlete’s fitness throughout July and August was trending above all prior years except for 2018. Currently (mid September 2020, at the time of writing) the athlete’s trend fitness is at about the same level as in 2016 and 2019 and well above 2017 and 2018.

Zooming and hover tips are also available. Here, we zoom in on the same chart for the period around August and hover over the 2018 point near the start of the month:

Hovering on the trend lines rather than the points will show (non-integer) trend values rather than exact point values for an exact date.

The Irregularity report has been temporarily removed from the Navigator. A new and improved version of this important report will be re-introduced for users who have completed the Crickles survey in due course.

Timeline, lthr and ftp charts are now zoomable

The Navigator’s Timeline, LTHR and FTP tabs have been enhanced to operate similarly to Fit-Fat. By default, analysis for all of your available data is now shown and you can select a region of interest, such as the most recent time window, by dragging a rectangle over the desired area to select it. Double-clicking the chart then resets it to zoom back out and show all data.

If you have several years of data on Crickles and many activities, the Timeline tab in particular can initially look busy as this example shows:

However, it’s easy to select, say, just this year by drag/zooming to simplify the chart. Here’s how that same screen looks with only the 2020 portion selected:

Note also that there are now hover tips on this view showing the name you gave the activity together along with with key values:

The LTHR and FTP tabs also now operate similarly, defaulting to a view of the entire available date range with zoom and hover enabled, as this (unzoomed) example shows:

The lockdown in one chart

Using Crickles data we can get insights into how the lockdown has affected us and answer questions such as:

Did we do less outdoor cycling during the lockdown?
How much more time did we spend on the turbo trainer?
What else did we do more or less of?
Are we reverting to pre-lockdown behaviours yet?
Have changing patterns of exercise behaviour varied between countries?

Here’s a single chart that addresses all of these:

Each column represents a geographical zone – the UK, the EU except the UK, the US, and the rest of the world. Each row depicts an activity – outdoor cycling (Ride), indoor cycling (VirtualRide, including all turbo trainer rides), running and walking; there is also a row for all other activities. Each point shows the average hours over a month for which people in each region engaged in each activity. The blue line shows January to August last year and the pink line shows the same period this year.

Looking at the UK (the first column), we see that the amount of outdoor riding was down on last year in February, March and April but recovered to 2019 levels by May. On the other hand, the amount of indoor cycling has been markedly higher this year since February, especially in the period from April to June. We’re also doing more walking and more of other sports, the most significant of which are workouts and weight training.

The picture is broadly the same elsewhere but there are differences. Europeans were back cycling outdoors at or above 2019 levels by May and were only notably down on their 2019 levels in April. They took to their turbos with equal gusto but got off them a month or so earlier than we did. The majority of their large number of Other hours recorded in January 2020 are unsurprisingly accounted for by skiing,

Europeans – at least those on Crickles – do more running than Brits and increased their 2020 levels relative to 2019 in May and June. Our US cohort does even more running than the Europeans, and less cycling. Their indoor cycling levels were already higher than in 2019 from the start of the year – perhaps because Zwift and other indoor platforms have been well marketed in the US, where more extreme winter weather in much of the nation may be expected to generate a receptive home market. Other than that, the most marked change from last year in the US is an increase in walking and hiking in the Spring.

In the rest of the world the most conspicuous change this year has been a dramatic switch from outdoor to indoor cycling in April and May, with the momentum on indoor platforms persisting beyond that.

Overall, the chart seems to show that, at least for now, most people have reverted more or less fully to their former exercise behaviour, perhaps with more walking.

Seasonal report can now be analysed by Sport

The Seasonal tab enables you to see how much time you spend in each heart rate zone by Year/Quarter. The heart rate zones are estimated adaptively and change in line with your prevailing fitness. This report has been in place for a long time. What is new is that you can now break it down by Sport.

Sport defaults to TOTAL, and so long as this is selected the report is unchanged from how it has always been:

However you now pick a single sport from all of those that you have recorded on Strava for which you have heart rate data:

This will then show you the time that you’ve spent in each heart rate zone for that Sport. You may see that there are fewer Quarters showing if you only occasional engage in that sport or if you often don’t use a heart rate monitor for it.

This new feature gives you the ability to see the differences in the nature of your training effort across different sports. For example, you can isolate and compare Rides or Runs and ensure that the amount of Zone 1 time shown on the charts doesn’t include any time you spent doing Yoga or Walking.

(Note that this tab also still has controls to select a Date range and a Group but these have no effect on this report.)

CSS Factors

This is a new page in the Navigator that gives you a comparison of how your cumulative Cardiac Stress Score compares to that of your peers on Crickles. By default, the period over which the sum is taken is the last six weeks and your “peers” are those who are closest in age – both the period and the comparison group can be changed in the sidebar.

Here’s what it looks like:

The uppermost bar, labelled Total_CSS, shows where your summed Cardiac Stress Score ranks relative to peers. The midline represents the median value; values to the right are relatively higher and to the left are relatively lower. If you hover over one of the bars you can see your value alongside the highest and the lowest from your peers:

In this example, the athlete’s CSS is amongst the higher ones. The hover tip shows that at 4,217 it’s well above the median of 2,305 although far lower than the highest value of 7,715. You can see the exact distribution of the CSS values for all athletes in the peer group by looking at the Relative CSS tab. You can see which of your activities contribute most of the CSS from the Activities tab and the Timeline tab. If you do more than one type of sport, you can get a breakdown of the CSS total as well as insight into the hourly cardiac stress rate on the CSS by Sport tab.

The other three bars on the chart above show the relative levels of the factors that go to make up CSS, which are:

  1. The weighted average cardiac intensity for your activities over this period
  2. The number of activities that you’ve logged in the period
  3. The average duration of those activities.

In this example, you can see from the chart that the athlete has done many more activities than most peers, although the activities are, on average, shorter. The exercise intensity is just a shade higher than the peer average. In all cases, the hover tips show the relevant values, so, for example, the athlete’s average activity duration is 1.3 hours, which is below the median value of 1.5 hours and well below the maximum average value of just under 4 hours. (Duration actually captures moving time, not elapsed time.)

Lower values are coloured to be progressively more blue and higher values are progressively more red.

As with much of the analysis on Crickles, the purpose of this tab is to enable you to understand how your exercise load compares to that of other keen endurance athletes. In the absence of established levels for how much exercise might be “too much”, you can at least see whether you’re doing more or less than other people of a similar age, using a methodology that is consistent across different sports.

8 facts about Crickles

If you’re new to Crickles and maybe haven’t signed up yet this is for you.

  1. Crickles is free. Please repay us by completing our extremely short survey.
  2. We never give your data to advertisers or in any other way seek to make money from it.
  3. The main purpose of Crickles is to estimate the cardiac stress that you accrue from endurance sports. We summarise this in our Cardiac Stress Score and it gets rolled up into cumulative Fitness and Fatigue measures.
  4. There is no accepted medical consensus for determining how much exercise is too much. However, with Crickles you can accurately compare how much Cardiac Stress you’re accruing compared to other people of your age and gender. If you’re doing more than everyone else then that’s a lot, right?!
  5. Crickles is consistent. For example, if you exercise without a heart rate monitor or a power meter it won’t rate your exercise load as zero. Also, if you switch between using a heart rate monitor and a power meter you’ll generally get similar numbers. Also, as you get fitter and exercise at a lower heart rate for the same “effort”, Crickles will automatically detect this and recalibrate your Cardiac Stress Score adaptively.
  6. Crickles detects strap errors and some forms of irregularity in heart rate data. To continue to improve this, please complete our short survey if you haven’t done so already.
  7. We get data from your Strava account, once you’ve authorised us to do so. You’ll need your Strava ID, which is a number like 301194 – instructions for finding this are given here.
  8. The sign-up process is a bit more complicated than we’d like – we used to email you as soon as you signed up with some help on how to proceed but we can no longer get your email address from Strava. The procedure is given here.

If you get stuck or confused or have any thoughts about Crickles, please get in touch through the Contact page or by email to

Analysis by Sport

A major advantage of Crickles is the consistency of the Cardiac Stress Score (CSS) across different types of sport or activity. If you don’t wear a heart rate monitor Crickles still gives you a meaningful CSS value – and not zero – that is consistent with the activities for which you did wear a heart rate monitor. For the most common types of activity (running and road cycling) when you don’t have a heart rate monitor Crickles now estimates CSS using a machine learning algorithm that tracks very nicely to the CSS you’d get if you did use a heart rate monitor.

Also, if when cycling you sometimes use a heart rate monitor, sometimes use a power meter and sometimes use both, the CSS values you get do not swing wildly according to how you were instrumented on each day.

This consistency is crucial for aggregating CSS over many activities, as shown on the front page of the Navigator. It is equally essential when calculating Fitness/Fatigue curves.

There is a new report called CSS by Sport that leverages this consistency in a new way. It looks like this:


The left hand chart breaks down your CSS by Sport, or activity type. The period over which this is summed is defined by the Date range in the side panel, which defaults to the past six weeks. You can change this to be any period for which Crickles has your activities.

The right hand chart shows the hourly rate at which you accrued CSS during activities over the same period.

In the example shown, the athlete incurs more CSS per hour when running than cycling but nonetheless generated a lot more CSS over the period while cycling due to the number of hours in the saddle. This is detailed in tooltips that appear when you hover over the bars. For example, hovering over the Run bar in the left hand chart shows this:


We see that there were nine runs in the period, the total CSS from these was 451 and that this comprised 10% of the athlete’s CSS in this period.

Hovering over the Run bar of the right hand chart shows this:

This shows that in the period while running the athlete was generating 83.5 units of CSS per hour and ran for 5.4 hours. Hovering over the Ride bar would show a lower hourly rate (actually 74.9) but a far higher number of hours (47.1).

The CSS by Sport report is (only) interesting as and when you engage in multiple different types of activity.

When you don’t want to wear a HR monitor… With improvements!

A distinctive feature of Crickles is that it will estimate your Cardiac Stress even when you’re exercising without monitoring your heart rate with a chest strap or sports watch. This is critical if you want to track your Fitness, Fatigue and Form since these are cumulative measures and if you leave out chunks of your exercise regime they’ll be wrong. Herein lies a weakness of  most  of the non-Crickles sites that claim to show you this. For example, when you can get it to work, Strava’s intensity metric (Relative Effort) has improved (and thus become a little more like the Crickles CSS) over the last couple of years since it replaced Strava’s Suffer Score. Although there is very little consistency between Relative Effort and Power, you can now at least combine them on Strava’s Fitness & Freshness chart. However, if you go for a swim during which you don’t measure your heart rate, or you do a run or a bike ride without a HR monitor or a power meter, then those activities have absolutely no impact on Strava’s fitness and fatigue curves.

Crickles does not have this flaw. Moreover our Cardiac Stress Score tracks as well to the standard Training Stress Score derived from a power meter as you would expect it to. For example, if you do a triathlon with no heart rate measurement on the swim, a power meter on the bike leg and a heart rate monitor on the run you’ll get a sensible Cardiac Stress Score for each leg of the event and they will feed into your Fit-Fat curves.

From this weekend, the estimation of cardiac stress when you have neither a heart rate monitor nor a power meter is significantly improved in Crickles. This has been achieved in two ways:

  1. For (non-virtual) bike rides and runs, we have a sophisticated new statistical model for estimating Intensity in the absence of heart rate data. You can now see this explicitly for each ride or run on the Activities tab of the Navigator in the Intensity column.
  2. For all other activities, the current model has been improved and re-calibrated using the very large amount of data that Crickles athletes have made available to us over time. Rather than giving an Intensity reading for each activity, this generates a Cardiac Stress Score for each activity. CSS for these activities is now shown on the Activities tab. It can also be inferred on the Timeline, where the y-axis position indicates CSS. You can also see the daily sum of CSS values in the hover tips on the Fit-Fat curves where it is called Stress Load.

Historical activities have all been re-calculated according to the improved model. If you always use a heart rate monitor you won’t notice any change. However, to the extent that non-measured activities make up a meaningful portion of your overall exercise load, you may notice. None of the metrics should be hugely different as the prior model wasn’t terrible! In my personal case, I’ve been doing swims and pilates regularly over the past several weeks alongside cycling and running with a heart rate monitor. I can see that the new model assigns a lower CSS to the swims and the pilates than the old one and so my Fitness and Fatigue levels are now marginally lower than they were before the change.

Please do get in touch if you have any comments.