Every once in a while I wander into the software/platform/apps realm for a post. I usually do so sparingly because this category of sports tech changes so quickly that any post I write quickly becomes out of date. That’s less so the case with new features (I.e. a new course on Zwift) as it is with training log platforms (such as Today’s Plan). A new course in Zwift is likely to more or less be the same a year from now, whereas training platforms change their user interfaces seemingly continuously.
Still, for those that have been watching the endurance sports platform space, you’ll know there’s really only a handful of serious/major players. The biggest in the room is of course Training Peaks, which tracks a gazillion sports (and is personally what I’ve been using for more than a decade). However, in the last 2-3 years we’ve seen some really compelling platforms come along. I profiled Xert last year, which is still cycling focused at this point. But Today’s Plan has really been the other biggie, which up until today has been cycling focused as well. That meant for runners or swimmers (and thus triathletes), that they were left with a non-complete picture of their training efforts.
Finally note that Today’s Plan is hardly new to the scene in cycling, where it’s used by Team Sky and Trek-Segafredo, as well as a few more that don’t officially note their usage. And Today’s Plan is also under the covers for Stage’s platform (though some portions Stages handles themselves). None of which means a pile of beans when it comes to swimming and running (except in the case of Froome perhaps). So let’s dig into things.
(Oh, first, a sidebar – this isn’t a review of Today’s Plan, nor intended to cover all the features, I’m just focusing on the new triathlon and app stuff here.)
So, I’m just going to dive right into it. Go big or go home. No futzing around with individual run sports or swimming and then building up to a multisport activity. Nope, I’m just gonna crack open an actual triathlon race from last month and see what happens. So, here we go – a race I’ve yet to write about – the Fremantle Triathlon.
Of course, I should note that like most other platforms you can sync inbound from Garmin Connect or have it automatically upload from Wahoo devices too (and to/from Zwift). Both of those connectivity tidbits have worked for along time. It can even upload weight scale data too (in fact, while I won’t touch on it here, their sensor-data driven pieces are among my favorite bits of the entire platform). You can also import your entire Training Peaks account in one shot. And I suspect once various entities finish getting their GDPR compliance in place before the end of next month, you’ll be able to do that for many other platforms too.
In any event, my race. Here’s it imported into the platform with my calendar in the background.
(Note: I had hoped to be able to share an activity link directly from you, but unlike other platforms you can’t do that here. There’s no concept of a ‘Public’ link. All links require an account to view, which is disappointing.)
Above you can see the color coded sections – blue for swim, grey for transition, yellow/orange for bike, and green for run. Each has the summary metrics you’d expect on the right, with the total activity metrics on the left. An overall map is viewable too. Nothing too unexpected here. For those curious, this was recorded on a Garmin FR935 (which is my current preference for racing and running).
If I click on an individual segment within that, I’ll get the stats as you’d expect. For example, here’s what it looks like when I crack open the swim:
You’ll see my overall time/duration/distance and stroke rate. I didn’t use an HRM-TRI on this swim, so the heart rate value you see is the typical entry optical HR value that Garmin records before not recording for the swim. Why I didn’t use the HRM-TRI is a sad story of trying to swap out the battery with a butter knife the night before the race…a story for another time.
I can click on the Peaks Profile tab to get what is essentially a mean/max graph for time duration over pace. You can see some of my faster surges for shorter distances here. Given I only swam a handful of times prior to this race this year, I’ll take it…slow swim and all. I make it up on the run.
I could also sort this by HR zone, but since I only have a single data point, we’ll save that tidbit for the bike.
Speaking of which, let’s dive into the cycling portion now. Note that above I showed you the ‘preview’ style page for the workout, but I can also click to expand it into a much larger and more detailed view. First, the preview, then followed by the expanded view.
And here’s the detailed version – the two images are from the same page, just scrolled down:
You can see the activity detailed view that I’ve got splits/laps down below (which was automatically doing it at 5 miles). Otherwise, there’s the HR detail that you’d expect. Interestingly you can see the HR essentially craps out for a few minutes in the middle there. Additionally, you can see how the power was missing for the first 7 minutes. The power is missing because I totally forgot to pair the FR935 to the power meters on that specific bike. I had it paired to power meters on another bike for recent rides. So I did the pairing mid-race.
That would impact things like my power curve chart, though not too much since like most triathletes I don’t tend to throw down big sprints in a non-drafting triathlon (draft-legal racing is different of course).
The Curve+ graph is cool though in that as I move my mouse over the max power graph, it’ll show me the exact section that power value was achieved across:
Now, there are some slight oddities here. For example, in the activity preview/summary tab, I get a ‘Time in Zone’, but I don’t see that in the activity detail. I suspect there may be a setting/option to configure that – but it’s not super obvious.
Whereas in the detailed view I get more metrics, like the Performance Index charts. In my case, I don’t have good long term data in here (I haven’t pulled in all my Training Peaks data yet), so the charts aren’t as vibrant as my training might be.
Of course, you can also pull open load as well. Note that metrics like TSS/NP/IF are trademarked by Training Peaks, so you won’t get precisely those. Instead, you’ll get TScore/Weighted Power/IFF. Same concepts, different names. Similarly, when it comes to load metrics you’ve got CTL/ATL/TSB available too.
On the running side, here’s your preview/summary page:
Note that in this case I did not have the Stryd data field enabled, thus that running power data isn’t present here. Though, Today’s Plan does support it natively. In fact, you can see the data fields in the lower right corner (amidst the scrollbar hell that’s occurring)
At the top you’ll notice where I can specify a Perceived Effort ranking, same goes for ‘Total Quality Rated’ and ‘Leg Quality Score’ next to it.
If we head back into the activity summary/preview page I can crack open the peaks profile to see my pace over time durations. Note, all of the metrics you see here are in Statute (aka minutes/mile, miles, Americana).
For the most part, I’ve shown you the majority of tabs, though not necessarily how everything ties together from an analytics standpoint. Largely because I don’t have a ton of super consistent runs and swims in here to make those numbers sing (I’ve largely been cycling as of late, because I’ve mostly been working on cycling products lately).
However, I did want to briefly call out the elevation graph, specifically the color-coding which correlates with the grade for the different sections. You can see I hovered over one section and the grade displays right there. Note this is from a different run.
I’m a sucker for seeing just how steep something was in graphs, as often-times a simple elevation plot doesn’t really translate the short-term pain as well as being able to show someone (read: my coach) a 9% grade was involved.
On the coaching front, the Today’s Plan platform was largely designed around an athlete/coach relationship – meaning that coaches have dashboards and such that allows them to see their athletes and all of these metrics (just as Training Peaks does). However, I’m not a coach, and my coach isn’t on Today’s Plan – so that’s something I’ll be skipping here.
However, for the triathlete, I think the single biggest advantage here over Training Peaks is that it shows my triathlon or multisport activities as a single cohesive activity. In the case of Training Peaks it splits these into individual sports, so you just end up with a pile of individually spliced activities – like below for the same race:
Another interesting tidbit is that you can get data about the battery of your power meter, the firmware, and in the case of Stages power meters, even the zero offset data. Check it out, this shows all the power meters I’ve paired to files I’ve uploaded to Today’s Plan. Note the operating time values are only for files that I’ve uploaded to the platform, which is basically just the last month, and then some brief time last spring
Now, only if Garmin would actually record the darn zero offset inside the files each time you do it. Something I’ve been begging for, for years. That would give coaches a fighting chance at knowing whether or not their athlete’s new record power values were real or likely just a bad power meter day.
As a side note, since my account isn’t really as pretty as an athlete with a super structured training plan, it won’t show all of the metrics in their expected glory. As such, the Today’s Plan folks used to screenshots to show me what that data looks like in a more structured setting. Below are those screenshots to get a better feel for things.
Again, not my data, but might be useful for those that are looking at the platform. Though realistically you can use their 7-day free trial, import all your data in bulk, and get roughly the same thing (unless you haven’t been pretty either, like me, in which case you’ll still be ugly too…I mean, your data.)
Garmin Connect IQ Apps:
Like many other platforms, Today’s Plan is rolling out Connect IQ apps. And like their competitors, the goal of Today’s Plan is mostly just to get your pre-planned/structured workouts from their platform to your device. Meaning, it’s just like the FedEx man, delivering your little workout page so that it can execute the workout just like any other workout. Once the app has completed the hand-off to the native workout piece, it removes itself from the equation.
Except, there are some notable differences here compared to some of the other platforms, mainly in that it can actually record metrics too.
But first, the downloading bit. You’ll install the Connect IQ app from the app store (it should be there shortly), which can then be accessed from the sport menu on your watch:
Next, it’ll require authentication via Garmin Connect Mobile. It only asks for this once, then it doesn’t ask for it again (in theory, on my beta version it does however).
At this point you’ll see the option to ‘Sync Workouts’, ‘View Workouts’, ‘Log Wellness’, ‘Log Weight’, or Preferences. Sync workouts will just pull down the structured workouts that you have on your calendar to your device. Whereas viewing the workouts allows you to take a peek at them.
Once a workout is synced to the device it’ll show up as an available workout via the normal Garmin menus, or you can execute it right away.
What you see above is mostly how things work with respect to other platforms as well. What’s different though is the logging of ‘Wellness metrics’ and ‘Sleep’. These metrics include ‘Diet’, ‘Mood’, and ‘Stress’, ‘Muscle Soreness’, ‘Fatigue’, and ‘Sleep Quality’.
All of which are shown on dashboards within the app that both you and your coach can see.
That’s cool, and I think a valid use of the watch to get those metrics into their platform. It’s something that I could see you doing briefly after a run or workout while walking out a cool-down or similar. Or just in the elevator or something. The only challenge with these metrics is that given the lack of touchscreen, some of these can be somewhat cumbersome, versus something like an Apple Watch would make these a bit cleaner.
One minor nuance to keep in mind is that Today’s Plan can’t remove workouts from your watch that have been deleted from your calendar. That’s because Garmin Connect IQ doesn’t have any method to allow an app to delete things like that, it’s a one-way entrance only. Thus, if you have a big shift in training, things could be messy on your watch for a bit of time. Not a huge deal, and applicable to Training Peaks too, but worthwhile noting.
Finally, I’m only going to mention this in passing, but the company has loaded in triathlon training plans into their larger training plan platform. These include plans by Jim Vance, which is notable because he wrote the book (literally) on running with power. Unfortunately, I don’t see any running power specific targets or goals in the plans themselves (the platform of course shows all that data.
The only downside to these plans as they’re somewhat strict in their implementation. It’s simply choosing one of the above options, and then a start date. That’s it. No options to customize the number of available days per see, nor the end (event) date), nor abilities (I suppose one could argue that the ‘Podium Plan’ implies a specific target level.
Once you’ve selected that starting date, I’ll import everything into your calendar as a structured workout. This does interestingly include little tidbits about the week ahead at the start of each week. The total schedule durations are shown on the left as well:
Here’s the detail of a specific workout as an example:
Now as I mentioned before, these plans are somewhat limited…but they are at least free. Which typically on Training Peaks or other platforms you’re looking at well over a $100 or more for a static training plan for an iron distance triathlon with this much detail. And in this case you’ve got a fairly well respective coach behind it.
Of course, I think there’s tremendous value in having a real-life coach, not so much because a coach tells you how precisely to workout, but actually when not to workout. Most endurance athletes tend to err on the side of overdoing it when it comes to training. Not recovering or tapering properly, or trying to train through being sick or injured. That’s where the value and insight of a coach can help re-arrange the larger schedule at hand to get you quickly on track.
Still, everyone’s situations are different, so pre-canned plans can still be tremendously useful.
With that, a quick (ok, it ended up being not so quick), look at the new features. As I said at the beginning, I think Today’s Plan is by far the most viable competitor to Training Peaks. They’ve been pouring tremendous resources into new features that make it more and more competitive every day. Obviously they lack the number of coaches that Training Peaks has, which for many coached athletes is the single driver to a platform. In my case, when I first started with my current coach, he was (and still is), on Training Peaks, and thus that’s where I ended up.
If I were a coach, I’d undoubtedly look to try out the various platforms and figure out the nuanced pitfalls of either platform and see which one works best. Of course, there are still other options out there – Final Surge being another that’s on the up and up recently. Which isn’t to say that I think all of the new platforms out there are great. In fact, a lot of them simply don’t hold a candle to the two TP’s (Training Peaks or Today’s Plan), nor to Xert and others. Far too many companies want to be in the platforms business, but fail to understand that training log platforms are without the most complex entity in the entire software and hardware sports tech business.
Everyone (especially coaches) has their 1% feature that if they don’t have they give up and move on to another platform. And as the that feature name implies, it’s likely only important to 1% of coaches, but for that coach it’s the most important thing in the world. Training log platforms have to ultimately fulfill those requests, as they eventually had up to 100% of features.
With that – thanks for reading!