Ride essentials
Distance, elapsed time, current and average speed, elevation gain, descent, climbing, and mile or kilometer splits.
Simple Rides ยท In Beta
A focused GPS bicycle logger built around one primary action: Start Ride.
For users
For cyclists who want dependable recording and history without joining a fitness network. Start immediately, pause when needed, hold to finish, and keep or edit the suggested ride name.
Distance, elapsed time, current and average speed, elevation gain, descent, climbing, and mile or kilometer splits.
Temporary GPS gaps preserve the ride. Meaningful straight-line estimates are stored and disclosed instead of masquerading as normal samples.
The active ride is persisted, pause boundaries are respected, and reboot recovery retains timer state for continuation when the app is reopened.
Review ranges, totals, weighted average speed, charts, ride details, names, provenance, edits, and deletion.
Export CSV summaries or a complete versioned .simplerides backup. Restore validates first and keeps a last-known-good snapshot.
No ads, app Internet permission, cloud ride-history server, or always-on location permission. Core recording works offline.
No route planning, navigation, map tiles, social feed, coaching, calorie program, bike inventory, maintenance log, or sensor ecosystem. GPS points support calculations and recovery, but Simple Rides is not presented as a mapping app.
Current status: Version 0.6.6 closed-beta candidate. Request testing access or read the privacy policy.
For developers
Java 11 Android framework UI, local SQLite, and a foreground location service. The fused location provider is primary, with Android LocationManager fallback if fused startup fails.
The Start screen prepares location without recording. On Start, its stream overlaps with the service until the recorder accepts a first fix, avoiding an arbitrary accuracy gate.
GPS-health timing is persisted separately from route-point timing. Pause and GPS-gap boundaries are never bridged as ordinary travel; reconstructed segments retain estimated provenance.
A shared analyzer rejects poor vertical-accuracy samples, applies a five-sample median with endpoint preservation, and thresholds direction changes before accumulating gain/descent.
Active state survives process loss and reboot. SQLite migrations preserve existing rides; versioned backup/restore covers complete rides and GPS data, with pre-restore recovery.
GPS startup, delivery-gap, and raw/filtered elevation instrumentation remains in source behind a disabled beta switch. Product-facing gap recovery stays enabled.
Product preview
Current beta screenshots and screen recording.




