← Back to blogGet Vitra — €19

Why your Strava workouts are missing from your Oura data

Written by Pedro Thomaz · 5 MIN READ ·

You link Strava to Oura, your Saturday ride appears in the app, and then it is nowhere in your export — or in any third-party tool you connect. This is not a sync bug and not something a better app can fix. Workouts imported from another service live on one side of a wall that the public API does not cross.

On this page

What the API actually returns

Oura's API exposes what the ring recorded: sleep, readiness, activity, heart rate, temperature, and workouts the ring itself detected or you logged inside the Oura app. Sessions that arrived from a connected service — Strava, Polar, Apple Health, Garmin via an integration — are shown to you in the app but are not part of what the API hands out.

The gap is easy to confirm on your own data. Count the workouts in your Oura app for a given month, then count what a connected tool receives. If a chunk of your rides came in from Strava, the second number is smaller, and no amount of re-syncing changes it.

Why it works this way

Most likely for the ordinary reason: an imported session is another company's record, and re-exporting it through a public API means redistributing data you agreed to share with Oura, not with everyone Oura talks to. Whatever the reasoning, the practical position is stable and has been for years, so it is worth planning around rather than waiting out.

What it means for any tool you connect

Anything reading your Oura data through the API — a dashboard, a spreadsheet, a desktop app, a coach's platform — sees the same partial picture. If it shows you a weekly training load, that load is missing your imported sessions. If it correlates recovery against training, the correlation is computed on the subset the API returned.

The failure mode to watch for is silence. A tool that quietly presents an incomplete week as a complete one is worse than one that shows you the hole, because you will act on it: an app that cannot see Saturday's four-hour ride will tell you Sunday's low readiness is a mystery.

What you can do about it

Three things help. Log the sessions that matter directly in the Oura app rather than relying on the import, if the ring did not detect them itself — a manually added workout is Oura's own record and does come through. Keep your training history where it was recorded, in Strava or your watch's platform, and treat your ring data as the recovery half of the picture rather than the whole of it. And when a tool tells you something about training load, check whether it says where the sessions came from.

How Vitra deals with it

Vitra reads the Oura API, so it has exactly the same ceiling — there is no version of this where a third-party app sees more than the API returns. What Vitra does is refuse to paper over it: workouts it did not receive are not silently averaged away, and it does not present a training-load figure as if it were complete when the underlying week is not.

It is a small thing that decides a large one. An app that pretends its data is total is an app you should not believe the next time it tells you to rest.

Frequently asked questions

Why are my Strava workouts not in my Oura export?
Workouts imported into Oura from a connected service are visible in the Oura app but are not returned by the public API, which is what exports and third-party tools read. It is not a sync failure and re-syncing does not recover them — the sessions were another platform's records to begin with.
Can a third-party app get my imported workouts from Oura?
No. Every third-party tool reads the same public API, so none of them can see sessions the API does not return. If an app appears to show them, it is reading them from the original source — Strava or Apple Health — rather than from Oura.
How do I make sure a workout counts in my Oura data?
Log it in the Oura app itself, or let the ring detect it, rather than relying on an import from another service. Sessions recorded or entered on the Oura side are part of Oura's own data and do come through the API.
Share
About the author
Pedro Thomaz

Pedro Thomaz builds Vitra, a desktop app that reads Oura data against your own baseline instead of a population average. He has worn a ring daily for years and reads these same numbers every morning — which is where most of what is written here comes from. Vitra is not a medical device and nothing on this blog is medical advice.

Try Vitra with your Oura Ring

Local AI on your Mac or PC. One-time purchase, 7-day trial, no Vitra subscription.

Download Vitra →