Dillon Hickey riding a bike for the wahoo fitness case study

Wahoo Fitness Onboarding & Migration System

A first-party import system for Wahoo's Fitness ecosystem, designed to remove the friction of switching fitness platforms and reframe Wahoo's paid tier as coaching insight rather than gated data.

Problem

Fitness ecosystems make it easy to accumulate years of training data, but nearly impossible to bring it along when you switch platforms, a cost users rarely consider until they're already locked in. That same blind spot resurfaces when free insights move behind a paywall, asking users to pay without a clear sense of what they're actually gaining.

Solution

Wahoo can become that missing bridge: a guided, first-party import that pulls a user's history from competing ecosystems, turns the export wait into onboarding time, and resolves duplicates so their history arrives clean. Once that history is visible, the paid tier is introduced as coaching built on top of it (not access to it) turning migration itself into the moment Wahoo earns a subscriber.

Current State & Findings

Manually testing Wahoo's existing import flow surfaced two failure points, both confirmed firsthand.

Moving history from a competing platform into Wahoo today means exporting, transferring, and uploading one file at a time, repeated for every activity. Duplicate uploads report success without ever appearing in the app. Exported files carry no readable names, making batch identification effectively impossible.

existing onboarding flow documenting failure points and edge cases

No competitor offers historical backfill beyond forward sync. Not Strava, not Polar, not even Wahoo's own newly-integrated COROS partnership. The gap is real and is simply unbuilt.

Plus, can you tell what file is what in the current experience here?

confusing file structure for users trying to import files into wahoo app

Proposed Flow

A first-party import path replaces the manual cycle: users select their provider, request an export, and return to a Wahoo app that's already put the wait to use.

The system solves both halves of the problem at once. On migration, history arrives in bulk, duplicates resolve automatically, and the export wait becomes onboarding time instead of dead time. On the paywall, coaching is introduced only once history is visible, tied to insight rather than access. Both solve the same failure: making value legible at the moment a user has to decide.

refined onboarding flow chart resulting in happier users and potential subscription upsell opportunities

Screen Updates

existing onboarding interstitial screen

Existing

updated onboarding interstitial screen to allow for bulk import of fitness history

Update

Title no longer overlaps the back button. Background extended to add room for a second action without crowding the hardware shot. New button offers training history import at its natural point in the flow.

training history provider selection
training history exporting, leaving the wahoo app for alternate provider data export
Example of garmin bulk data export

User is navigated to their browser, asked to sign into their selected provider, and immediately brought to the data export option to bulk export activity files.

improved home screen on wahoo app waiting for data export from alternative providers
option to upload a zip file for bulk import of activities

Two dismissible cards fill the waiting period with something useful: one toward the athlete profile, one flagging where to return once the export lands. The upload screen splits by file type rather than a single generic picker, a direct response to the unlabeled, hard-to-distinguish filenames alternative provider exports produce.

confirming file importing into the wahoo app
files actively importing into the wahoo app
duplicate file handling on bulk import
successful file importing toast notification

Users are guided through the import, shown live progress, and asked to make one bulk decision when duplicates are found, not reviewed file by file. Wahoo's existing app reports success on a duplicate upload but never surfaces the file, confirmed during testing.

Coaching upsell entrypoing
wahoo coaching insights subscription opportunity
wahoo coaching insights paywall for unsubscribed users

A whistle icon marks cards with more to explain: tapped, it synthesizes Load, AC/TP trend, and mental check-in data, not just the number already on screen. Non-subscribers see the same insight, partially legible, before the ask, and existing metrics stay free. A new revenue layer, built on interpretation rather than access.

The complete flow, start to finish

part 1 of improved wahoo onboarding with bulk import
part 2 of improved wahoo onboarding with bulk import

Why This Matters

A system that lowers the cost of switching into Wahoo's ecosystem while opening coaching as an additional layer of revenue beyond hardware.

Converts willingness into action

Fitness hardware buyers already switch brands more readily than the industry assumes. The barrier isn't the desire to switch ecosystems for a quality upgrade, it's the friction of starting over.

Builds trust before asking for subscription

Coaching introduced only after a user's own history is visible, following Polar's model rather than Garmin or Strava’s, which have proved a poor experience.

Role

Product design and UX research, including competitive analysis, interaction and visual design within an existing system, and prototyping.

(914) 255-7392

dillonhickey07@gmail.com

Dillon Hickey

Pierview Design Inc. © 2025 All Rights Reserved

Dillon Hickey riding a bike for the wahoo fitness case study

Wahoo Fitness Onboarding & Migration System

A first-party import system for Wahoo's Fitness ecosystem, designed to remove the friction of switching fitness platforms and reframe Wahoo's paid tier as coaching insight rather than gated data.

Problem

Fitness ecosystems make it easy to accumulate years of training data, but nearly impossible to bring it along when you switch platforms, a cost users rarely consider until they're already locked in. That same blind spot resurfaces when free insights move behind a paywall, asking users to pay without a clear sense of what they're actually gaining.

Solution

Wahoo can become that missing bridge: a guided, first-party import that pulls a user's history from competing ecosystems, turns the export wait into onboarding time, and resolves duplicates so their history arrives clean. Once that history is visible, the paid tier is introduced as coaching built on top of it (not access to it) turning migration itself into the moment Wahoo earns a subscriber.

Current State & Findings

Manually testing Wahoo's existing import flow surfaced two failure points, both confirmed firsthand.

Moving history from a competing platform into Wahoo today means exporting, transferring, and uploading one file at a time, repeated for every activity. Duplicate uploads report success without ever appearing in the app. Exported files carry no readable names, making batch identification effectively impossible.

existing onboarding flow documenting failure points and edge cases
confusing file structure for users trying to import files into wahoo app

No competitor offers historical backfill beyond forward sync. Not Strava, not Polar, not even Wahoo's own newly-integrated COROS partnership. The gap is real and is simply unbuilt.

Plus, can you tell what file is what in the current experience here?

Proposed Flow

A first-party import path replaces the manual cycle: users select their provider, request an export, and return to a Wahoo app that's already put the wait to use.

The system solves both halves of the problem at once. On migration, history arrives in bulk, duplicates resolve automatically, and the export wait becomes onboarding time instead of dead time. On the paywall, coaching is introduced only once history is visible, tied to insight rather than access. Both solve the same failure: making value legible at the moment a user has to decide.

refined onboarding flow chart resulting in happier users and potential subscription upsell opportunities

Screen Updates

existing onboarding interstitial screen

Existing

updated onboarding interstitial screen to allow for bulk import of fitness history

Update

Title no longer overlaps the back button. Background extended to add room for a second action without crowding the hardware shot. New button offers training history import at its natural point in the flow.

Basic troubleshooting flow for high level understanding
Basic troubleshooting flow for high level understanding

User is navigated to their browser, asked to sign into their selected provider, and immediately brought to the data export option to bulk export activity files.

Basic troubleshooting flow for high level understanding
improved home screen on wahoo app waiting for data export from alternative providers
option to upload a zip file for bulk import of activities
confirming file importing into the wahoo app
files actively importing into the wahoo app
duplicate file handling on bulk import
successful file importing toast notification

Users are guided through the import, shown live progress, and asked to make one bulk decision when duplicates are found, not reviewed file by file. Wahoo's existing app reports success on a duplicate upload but never surfaces the file, confirmed during testing.

Coaching upsell entrypoing
wahoo coaching insights subscription opportunity
wahoo coaching insights paywall for unsubscribed users

A whistle icon marks cards with more to explain: tapped, it synthesizes Load, AC/TP trend, and mental check-in data, not just the number already on screen. Non-subscribers see the same insight, partially legible, before the ask, and existing metrics stay free. A new revenue layer, built on interpretation rather than access.

The complete flow, start to finish

part 1 of improved wahoo onboarding with bulk import
part 2 of improved wahoo onboarding with bulk import

Why This Matters

A system that lowers the cost of switching into Wahoo's ecosystem while opening coaching as an additional layer of revenue beyond hardware.

Converts willingness into action

Fitness hardware buyers already switch brands more readily than the industry assumes. The barrier isn't the desire to switch ecosystems for a quality upgrade, it's the friction of starting over.

Builds trust before asking

for subscription

Coaching introduced only after a user's own history is visible, following Polar's model rather than Garmin or Strava’s, which have proved a poor experience.

Role

Product design and UX research, including competitive analysis, interaction and visual design within an existing system, and prototyping.

About

Work

(914) 255-7392

dillonhickey07@gmail.com

Dillon Hickey

Pierview Design Inc. © 2025 All Rights Reserved

Dillon Hickey riding a bike for the wahoo fitness case study

Wahoo Fitness Onboarding & Migration System

A first-party import system for Wahoo's Fitness ecosystem, designed to remove the friction of switching fitness platforms and reframe Wahoo's paid tier as coaching insight rather than gated data.

Problem

Fitness ecosystems make it easy to accumulate years of training data, but nearly impossible to bring it along when you switch platforms, a cost users rarely consider until they're already locked in. That same blind spot resurfaces when free insights move behind a paywall, asking users to pay without a clear sense of what they're actually gaining.

Solution

Wahoo can become that missing bridge: a guided, first-party import that pulls a user's history from competing ecosystems, turns the export wait into onboarding time, and resolves duplicates so their history arrives clean. Once that history is visible, the paid tier is introduced as coaching built on top of it (not access to it) turning migration itself into the moment Wahoo earns a subscriber.

Current State & Findings

Manually testing Wahoo's existing import flow surfaced two failure points, both confirmed firsthand.

Moving history from a competing platform into Wahoo today means exporting, transferring, and uploading one file at a time, repeated for every activity. Duplicate uploads report success without ever appearing in the app. Exported files carry no readable names, making batch identification effectively impossible.

existing onboarding flow documenting failure points and edge cases
confusing file structure for users trying to import files into wahoo app

No competitor offers historical backfill beyond forward sync. Not Strava, not Polar, not even Wahoo's own newly-integrated COROS partnership. The gap is real and is simply unbuilt.

Plus, can you tell what file is what in the current experience here?

Proposed Flow

A first-party import path replaces the manual cycle: users select their provider, request an export, and return to a Wahoo app that's already put the wait to use.

The system solves both halves of the problem at once. On migration, history arrives in bulk, duplicates resolve automatically, and the export wait becomes onboarding time instead of dead time. On the paywall, coaching is introduced only once history is visible, tied to insight rather than access. Both solve the same failure: making value legible at the moment a user has to decide.

refined onboarding flow chart resulting in happier users and potential subscription upsell opportunities

Screen Updates

existing onboarding interstitial screen

Existing

updated onboarding interstitial screen to allow for bulk import of fitness history

Update

Title no longer overlaps the back button. Background extended to add room for a second action without crowding the hardware shot. New button offers training history import at its natural point in the flow.

training history provider selection
training history exporting, leaving the wahoo app for alternate provider data export

User is navigated to their browser, asked to sign into their selected provider, and immediately brought to the data export option to bulk export activity files.

Example of garmin bulk data export
improved home screen on wahoo app waiting for data export from alternative providers
option to upload a zip file for bulk import of activities

Two dismissible cards fill the waiting period with something useful: one toward the athlete profile, one flagging where to return once the export lands. The upload screen splits by file type rather than a single generic picker, a direct response to the unlabeled, hard-to-distinguish filenames alternative provider exports produce.

confirming file importing into the wahoo app
files actively importing into the wahoo app
duplicate file handling on bulk import
successful file importing toast notification

Users are guided through the import, shown live progress, and asked to make one bulk decision when duplicates are found, not reviewed file by file. Wahoo's existing app reports success on a duplicate upload but never surfaces the file, confirmed during testing.

Coaching upsell entrypoing
wahoo coaching insights subscription opportunity
wahoo coaching insights paywall for unsubscribed users

A whistle icon marks cards with more to explain: tapped, it synthesizes Load, AC/TP trend, and mental check-in data, not just the number already on screen. Non-subscribers see the same insight, partially legible, before the ask, and existing metrics stay free. A new revenue layer, built on interpretation rather than access.

The complete flow, start to finish

part 1 of improved wahoo onboarding with bulk import
part 2 of improved wahoo onboarding with bulk import

Why This Matters

A system that lowers the cost of switching into Wahoo's ecosystem while opening coaching as an additional layer of revenue beyond hardware.

Converts willingness into action

Fitness hardware buyers already switch brands more readily than the industry assumes. The barrier isn't the desire to switch ecosystems for a quality upgrade, it's the friction of starting over.

Builds trust before asking

for subscription

Coaching introduced only after a user's own history is visible, following Polar's model rather than Garmin or Strava’s, which have proved a poor experience.

Role

Product design and UX research, including competitive analysis, interaction and visual design within an existing system, and prototyping.