Strava

Turning seven usability findings into three shippable fixes

7 issues · 10 heuristics · 3 UX laws · 3 first-sprint fixes

A heuristic evaluation of Strava's Record an Activity flow, and the harder part - deciding which findings were worth a sprint and which were just true.

Independent evaluation of the public Strava iOS app. Not affiliated with Strava, and conducted with no access to its internal data, research or roadmap. The 'after' screens are my own mockups, not Strava designs.

Strava's Record an Activity flow is the highest-frequency action in the product and the one most exposed to context. People start a recording while standing at a trailhead, adjusting an armband, or leaving a gym - not sitting still and reading the screen. That context turns small interface decisions into real failures, which is why I picked this flow over onboarding, the social feed or segment discovery.

A heuristic evaluation will always produce findings. Deciding which ones deserve engineering time is the actual work, and that is what this is about.

Scope, and what this method cannot tell you

The evaluation covered the iOS app only, across four stages: entry from the home tab, pre-recording configuration, live recording, and the Save Activity form. Onboarding, the social feed, segment discovery, and subscription features were out of scope.

ASSUMED No user testing or quantitative data was collected. Every severity rating in this evaluation is expert judgement against established principles, not a measured failure rate. A heuristic evaluation tells you where a product violates a known principle. It cannot tell you how many users that violation actually costs.

I decided to state that limit up front rather than bury it, because it changes how the recommendations should be read. These are hypotheses about friction, prioritised by reasoning. The right next step for most of them is instrumentation or a test, not a direct ship.

What the walkthrough surfaced

Each screen was assessed twice - once holistically to understand the intended design, then systematically against Nielsen's ten usability heuristics and three UX laws.

Severity is defined by exposure, not by how annoying the problem feels. High means every user meets it on every recording session. Medium means it hits a specific moment or a subset of users. Low means it is real and minor. That rule is what lets the ranking survive someone disagreeing with my taste.

IssueHeuristic violatedUX lawImpact
Record button is low-contrast and off-brandConsistency and standardsJakob's LawHigh
No buffer between tapping Start and recordingError preventionFitts's LawHigh
Activity type selector is easy to overlookMatch between system and real worldJakob's LawHigh
Pre-recording sheet surfaces five options at onceAesthetic and minimalist designHick's LawMedium
Privacy controls scattered across the Save screenConsistency and standardsLaw of proximityMedium
Resume and Save sit at opposite ends of a long scrollUser control and freedomFitts's LawMedium
Add Route reads as disabled or secondaryVisibility of system statusHick's LawLow

Two findings are worth expanding, because they are the ones where the heuristic framing led somewhere a surface read would not have.

Fitts's Law cuts both ways on the Start button

The standard reading is that a large, central target is good design - it is fast to hit. That is true, and it is also exactly why accidental recordings happen. The same property that makes the button easy to hit deliberately makes it easy to hit by mistake, in a context where the phone is being handled rather than read.

The fix is not a smaller button. It is a three-second countdown with a visible cancel target, a pattern people already know from camera apps and interval timers. It preserves the speed and adds the intent signal.

Show the before or after version
Strava's pre-recording screen: a stats readout showing a zeroed timer, average speed, distance and elevation, with Ride, Start and Add Route buttons at the bottom.
A three-second buffer between intent and recording. The cancel target is the whole screen, so no accuracy is required to back out.

The cluttered sheet and the missed activity type are the same problem

Separately, they look like a density issue and a hierarchy issue. Together they form a causal chain: because the sheet surfaces five options at once, frequent users learn to ignore the whole sheet, and the activity type selector lives inside it. Users who have trained themselves past the clutter have also trained themselves past the one control that matters.

That is why progressive disclosure and elevating the activity type belong in the same change, not separate backlog items.

Show the before or after version
Strava's pre-recording bottom sheet showing five surfaces at once: the activity type and Start buttons, plus rows for Share live location, Route Alerts, Add a sensor and Settings.
Five visible options become two. Nothing is removed - the secondary controls sit one tap away, which is where they belong for a user who opened the app to start running.

How I sequenced the fixes

Seven findings is not a plan. I ranked them on expected user impact against implementation cost, and drew the line after three.

The first sprint is the countdown timer, an explicit activity type confirmation, and brand-consistent styling on the Record button. These three affect every user on every recording session, are mutually independent, require no architectural change, and carry low regression risk. They can ship together without coordination overhead.

The second group - progressive disclosure in the bottom sheet, consolidated privacy controls, and a sticky Resume and Save bar - all touch layout and information architecture on two specific screens. They are more invasive and more arguable, which makes them the right candidates for A/B testing against session-start speed and activity completion rate rather than shipping on judgement alone.

Show the before or after version
Strava's Save Activity screen: Resume sits in the top bar, Save Activity at the bottom of a long scroll, with Visibility and Mute Activity as separate scattered sections.
The two paired decisions sit next to each other, and the privacy settings become one thing to read rather than three.

Add Route stayed unranked. It is a real finding and a minor one, and saying so is more useful than padding a roadmap with it.

The recurring theme across the findings is that Strava's Record flow is well-built but optimised for the user who is already sitting still and paying attention. Nearly every issue appears at the moment the user is least able to read carefully - starting a workout, or ending one. That is the pattern worth fixing, not the seven items individually.

What I'd do differently

The evaluation would be stronger with even a small round of moderated testing on the pre-recording stage specifically, since that is where my confidence is lowest - I am inferring that users miss the activity type selector from its visual treatment, not observing it. If I were doing this inside a product team, I would also want the accidental-recording rate from analytics before committing to the countdown, since that single number would either justify the fix immediately or kill it.

I would also treat the mockups as what they are. They communicate the proposed change clearly enough, but they are illustrations rather than specifications - no states, no measurements, no edge cases. A real handoff needs the empty state, the error state, and what happens when the countdown is cancelled halfway.