alternative · reviewed · reviewed 2026-09-24
Can AI build a running and cycling training log app like Strava?
YES, BUT
The short answer
Yes, but. AI can build a personal GPS training log replacing Strava ($11.99/mo or $79.99/yr) in a weekend project. The real hook of Strava, segment leaderboards and route heatmaps built from millions of athletes, can't be rebuilt by a solo app. Build it only if you want a private log, not competition against other users.
- Difficulty
- Advanced
- Build time
- 4–6 hours for a prototype, 12–16 hours for a daily-use version
- Build cost
- $0
- Ongoing cost
- $0
AI can handle
- GPS activity recording using the browser's Geolocation API, with pace, distance, and elevation stats
- Activity history stored in localStorage, filterable by activity type and date
- JSON and GPX export plus a Strava activity archive importer
The hard parts
- Segment leaderboards, KOM/QOM competition, and route heatmaps are built from millions of other athletes' data, impossible for a single-user build
- Browser-based GPS tracking is less accurate than a dedicated GPS watch, especially under tree cover or in dense cities
- iOS Safari and most mobile browsers suspend the Geolocation API when the screen locks or the tab loses focus, so recording can silently stop
Build this first
The sensible first version
- Start, pause, and stop a GPS-tracked activity
- Distance, pace, and elevation gain per activity
- Activity history with running and cycling filters
- Manual entry for treadmill or trainer sessions with no GPS
- JSON backup, restore, and a Strava archive importer
Ready to build
A starter prompt for this
Paste this into ChatGPT, Claude, or Cursor to get a working first version. It bakes in the scoping decisions above so you don't have to re-derive them.
Build a personal GPS running and cycling training log web app to replace Strava for my own use.
Tech rules:
- Plain HTML, CSS, and vanilla JavaScript in one file. No framework, build step, account, or server.
- Use the browser's Geolocation API (watchPosition) to record a GPS track during an activity.
- Store all data in localStorage under one key, with a version number.
Data model:
- Activity: id, type (run | ride | other), startedAt, endedAt, distanceMeters, elevationGainMeters, track [{lat, lng, timestamp}], manualEntry (boolean), notes.
Features:
- Start, pause, resume, and stop a GPS-tracked activity, showing live distance and elapsed time.
- Manual entry mode for activities with no GPS, like a treadmill run: type, distance, duration.
- Activity history list, filterable by type and date range.
- A detail view per activity showing distance, average pace, and elevation gain.
- A "keep screen awake" toggle using the Screen Wake Lock API where available, since a locked screen can stop GPS recording.
Edge cases the build must handle correctly:
1. If GPS accuracy is poor (large accuracy radius reported by the browser), flag the point as low-confidence instead of using it to inflate distance.
2. Pausing an activity stops distance accumulation until resumed, and shows paused time separately from moving time.
3. If the browser tab loses focus or the screen locks mid-activity, show a warning banner on return that recording may have gaps.
4. Forgetting to stop an activity: after 6 hours with no new GPS points, prompt to end it rather than recording indefinitely.
5. Manual entries never show a route map, since there's no GPS track.
6. Switching between run and ride mid-activity is not allowed; the type is set at start.
7. Elevation gain is smoothed to avoid inflated totals from noisy barometer readings, using a simple threshold filter.
Backup:
- One-click "Export JSON" (full activity data) and "Export GPX" (per-activity, for use in mapping tools).
- "Import JSON" restores after confirmation.
- "Import Strava archive" reads the activities.csv from a Strava data export and creates matching activity entries with type, date, and distance, without needing the GPX/FIT track files.
Layout:
- Mobile-first, large readable numbers for glancing at mid-activity, works at 375px wide.
Exclusions:
- No publishing, App Store submission, accounts, segment leaderboards, route heatmaps, social features, or fitness-trend analytics.
Write a short README explaining where the data lives, how to export and restore it, and that GPS recording may stop if the phone locks or the tab loses focus.
Keep it under 700 lines. This is a personal tool, not a product.
What is the short answer?
Yes, but. AI can build a personal GPS training log that records runs and rides, replacing the core of Strava’s subscription at $11.99 a month or $79.99 a year for logging purposes. It’s a real build, not a weekend toy, since browser-based GPS tracking takes real testing to get right.
The “but” is what you’re actually competing against. Strava’s free tier already gives unlimited GPS recording and basic stats. Its subscription mainly buys segment leaderboards, live segment racing, route comparison, and fitness-trend analytics, all built from millions of other athletes’ uploaded activities. A personal build can record your own runs well. It can never generate a leaderboard, because there’s no one else’s data to compare against.
| Option | Best for | Upfront cost | Ongoing cost | Main limitation |
|---|---|---|---|---|
| Build a rough prototype | People testing whether browser GPS tracking is accurate enough for their runs | $0 and 4–6 hours | $0 | Untested against real background-tracking and GPS-drift issues |
| Build a daily-use personal version | Solo athletes who want a private log without leaderboards or social features | $0 and 12–16 hours | $0 | No segment competition, route heatmaps, or fitness-trend analytics |
| Keep paying for Strava’s subscription | Athletes who use segment leaderboards, route building, or performance analytics | $0 | $11.99/mo or $79.99/yr | Free tier already covers basic recording; subscription is for the network features |
The ready-to-paste starter prompt at the end of this page builds the daily-use version.
What should the first version include?
The first version needs to record a GPS track reliably enough that you trust the distance and pace numbers before anything else matters.
- Start, pause, and stop a GPS-tracked activity
- Distance, pace, and elevation gain per activity
- Manual entry for non-GPS activities like treadmill runs
- Activity history filterable by type
- JSON backup, restore, and a Strava archive importer
- Deliberate exclusion: no segment leaderboards, route heatmaps, or social features. These require a network of other users a personal build will never have.
What can AI build reliably?
ChatGPT and Claude build the recording and stats layer reliably, since the Geolocation API and basic distance math are well-documented patterns.
Concrete things AI gets right:
- Recording a GPS track using watchPosition and calculating distance between points
- Pace and elevation stats computed from the recorded track
- Manual entry mode for activities with no GPS data
- Export buttons that download JSON and per-activity GPX files
- A Strava archive importer that reads the CSV summary of past activities
Where will AI need human help?
Background recording is the real trap. iOS Safari and most mobile browsers suspend or throttle GPS tracking when the screen locks or you switch apps, which Strava’s own platform notes confirm affects even bulk-exported data quality. Test a 30-minute run with the screen locked before trusting the app on a long ride.
GPS accuracy needs your own judgment. Tree cover, tunnels, and dense city blocks all cause drift that inflates distance. AI won’t catch this automatically; you’ll need to spot-check a few runs against a known route.
The decision only you can make is whether you actually use Strava’s segments and leaderboards to train, or just to record. If competition against other athletes motivates you, that’s a reason to keep Strava, not a missing feature to add later.
Privacy is simple for personal use. Your GPS tracks stay in your browser with no account, though a backup matters more here than most apps, since re-recording lost history is impossible.
Can I get my data out of Strava?
Yes. Request a full archive from account settings, delivered as a ZIP with an activities.csv summary plus a track file per activity, mostly gzipped FIT files. A single activity can also be exported as plain GPX. Export only works from the website, not the mobile app.
The trap: bulk-exported track files are mostly gzipped FIT, not plain GPX, so your build needs a FIT parser or a gunzip-and-convert step. Segment achievement data (KOM/QOM) reportedly isn’t included in the bulk export even though starred segments are [VERIFY]. Either way, the export hands back your raw GPS trace, not Strava’s server-side segment matching or fitness trend calculations, so none of that analysis carries over.
To move into your build, use the CSV summary with the starter prompt’s “Import Strava archive” feature, which reads type, date, and distance without needing the FIT files.
How long will it take and what will it cost?
Rough prototype: 4–6 hours and $0. Basic GPS recording, stats, and manual entry.
Dependable daily-use version: 12–16 hours, including background-recording testing, GPS accuracy handling, and a working Strava archive importer. Build it on a free AI plan, but expect this to take longer than most apps on this site.
Strava’s subscription costs $79.99 a year. A $20 AI month equals about 3 months of Strava. Budget the extra time against that, since this is one of the more involved personal builds here, not a quick weekend project.
These are estimates from reviewing the feature set, not measurements from a completed build.
Which AI tool or approach should I use?
Claude is a reasonable default for the initial build and for reasoning through GPS accuracy edge cases in the chat.
ChatGPT works equally well for generating the first version.
Cursor is genuinely useful once you’re debugging real GPS drift and background-tracking bugs against actual recorded runs, since that’s iterative work better done with a live file, not regenerating from scratch each time.
Lovable doesn’t add much here since the hard part is browser GPS behavior, not hosting or database setup.
What will I need to maintain?
More than most apps on this site, since GPS behavior can shift with browser updates.
Recurring work:
- Export a JSON backup after every long activity, since a lost session can’t be re-recorded
- Re-test background recording periodically, since browser GPS throttling policies change
- Re-open the app in the same browser; a different browser starts empty
Should I build it, buy it, or reduce scope?
Build it if you mainly want a private training log and don’t rely on segments, leaderboards, or route discovery.
Buy it if segment competition, route heatmaps, or fitness-trend analytics are part of how you train. Those depend on Strava’s network of other athletes, which a personal build structurally cannot replicate.
Reduce scope to your phone’s built-in fitness app if you only need distance and pace, without any history browsing or manual entry for non-GPS workouts.
Recommendation: build it if you’re recording for yourself and don’t care about leaderboards. Keep Strava’s subscription if segments and route comparison are part of your actual training motivation, since no personal build replaces that network. For strength training instead of cardio, see the workout tracker build, and if you want to log a training streak alongside your runs, pair this with the habit tracker build or a hydration log for race-day prep.
What if I wanted to ship this to other people?
Shipping this means building a real backend for segment matching, route heatmaps across users, and social features, a multi-year infrastructure project competing against an established platform. The personal GPS log above doesn’t scale into that; it’s a different kind of product entirely.
Starter build specification
- User: You, for your own use, recording personal runs and rides.
- Problem: Paying $79.99 a year for Strava’s segment and analytics features when you mainly want a private GPS log.
- Core workflow: Start recording, run or ride, stop, review distance and pace, browse history later.
- Required features: GPS recording with pause/resume, manual entry, activity history, distance and pace stats, GPX and JSON export.
- Deliberate exclusions: No segment leaderboards, no route heatmaps, no social features, no fitness-trend analytics.
- Data ownership: Stored in localStorage. Exported as JSON and per-activity GPX. Imported from JSON backups and a Strava archive CSV.
- Definition of done: You record a 20-minute activity with the screen locked partway through, and the app either completes the recording correctly or clearly flags the gap, with distance matching a known route within reasonable GPS accuracy.
For scoping help, read can AI build an app for me.
Sources and verification
- Strava pricing: $11.99/mo or $79.99/yr subscription; USD figure corroborated by third-party sources since the live page returned regional pricing during research [VERIFY].
- Exporting your data and bulk export (Strava support): archive contents, FIT track files, and web-only export.
- Subscription Pricing FAQ (Strava support): free vs. subscription feature breakdown.
This app was not built and tested for this page. The verdict is based on Strava’s own support documentation and a review of the feature set. Strava’s price was checked on September 24, 2026.
Reviewed on September 24, 2026.
Frequently asked questions
How much does Strava's subscription cost?
Strava's subscription costs $11.99 per month or $79.99 per year. A family plan runs $139.99 per year for 4 accounts [VERIFY]. The free tier covers unlimited GPS recording and basic stats.
Can I export my data from Strava?
Yes. Request a full archive from account settings, delivered as a ZIP with a CSV summary and mostly gzipped FIT track files per activity. A single activity can also be exported as plain GPX. Export is web-only, not from the mobile app.
Is there a free alternative to Strava?
Strava's own free tier already covers unlimited GPS recording, mapping, and basic stats. A self-built log is also free, but without segment leaderboards or route heatmaps from other users.
Can ChatGPT or Claude build a GPS training log?
Yes, for recording activities and basic stats using the browser's Geolocation API. Neither tool can recreate Strava's segment leaderboards, since those depend on data from millions of other athletes.
Should I build a training log or keep paying for Strava?
Keep paying if segment leaderboards, route comparison, or fitness-trend analytics matter to your training. Build your own if you just want a private record of your runs and rides without comparing against other users.