Skip to content

Changelog

1.4.0 — 2026-09-07

Maps

  • The map is no longer locked to CyclOSM. Settings → Map layer now offers OpenStreetMap, OpenTopoMap and Esri satellite imagery alongside it, so a tile-server outage — CyclOSM was down for the best part of a week — is a one-tap workaround rather than a blank map.
  • Dark map tiles is now its own setting, with Auto, Off and On. Auto is the default and behaves exactly as before, using dark tiles whenever the app theme is dark; On gives you a dark map under a light theme, and Off keeps light tiles under a dark one. Satellite imagery is always shown as-is.
  • Four more layers unlock if you paste in your own free API key under Settings → Map layer → Map provider API keys: OpenCycleMap and Outdoors from Thunderforest, and Outdoors and Alidade Smooth from Stadia Maps. Alidade Smooth is the one layer with a genuine dark style of its own rather than a filtered light one. Keys are stored on your device and sent only to that provider.
  • The small map on a ride's page now carries its provider attribution, which it previously omitted.

Ride recording

  • If GPS stops delivering mid-ride, the Ride screen now says so. A red banner reads GPS OFF · NOT RECORDING when location services have been turned off, LOCATION BLOCKED · NOT RECORDING when the permission has been withdrawn, and GPS UNAVAILABLE · NOT RECORDING otherwise. Previously the timer carried on climbing with nothing being written, and there was no way to tell.
  • The banner carries Settings, which opens whichever Android screen actually applies — location settings, or Cycle Log's own permissions — and Retry, which rebuilds the connection to the GPS.
  • Cycle Log also retries on its own when you come back to the app, so turning location on in system settings is enough; you don't have to find the Retry button as well.
  • The ride keeps running throughout. Everything recorded up to that point is already saved, and the banner clears itself the moment a fix arrives — a provider hiccup no longer cuts a ride in two.

1.3.0 — 2026-08-17

Choosing your cycle

  • The cycle you're riding is now picked on the Ride tab: tap the cycle name at the top to choose the one the next ride records against, or to reassign a ride already in progress. Change cycle has left the ⋮ menu, which only ever appeared once a ride was recording.
  • The Home screen no longer has a Start Ride button. The cycle chips beside it filter the stats only, so a start button next to them read as "pick the cycle you're about to ride" — starting a ride and choosing its cycle both live on the Ride tab now.

Export

  • Exported GPX and FIT files now carry the same smoothed altitude profile the app's own elevation figures use. Apps that trust a file's elevation rather than recomputing it — Strava does — were adding up raw barometer noise and reporting far more climbing than the ride actually had; the totals now agree with what Cycle Log shows.
  • Cycle Log's own GPX keeps the raw altitude sample alongside the smoothed one, so re-importing a ride you exported still restores exactly what was recorded. (FIT has nowhere to put it, so a re-imported FIT export reads slightly low — GPX remains the lossless round-trip.)

1.2.0 — 2026-08-08

Strava

  • Strava limits how many people can connect to a new app until it approves a higher limit. When Cycle Log hits that limit, Settings → Strava now says so plainly instead of showing a raw error, and offers the workaround: share a ride as GPX or FIT and upload it yourself, with a link straight to strava.com/upload. The same explanation appears if an upload from a ride's page is refused.
  • The Strava section now mentions the manual-upload fallback up front, before you try to connect — a refusal happens on Strava's own page, which the app never hears about.

Small screens and landscape

  • The ride dashboard's large hero readout no longer crowds out the metric grid on short or high-density screens; it scales down to fit instead.
  • Metric tiles scale their label and value independently, so a long label no longer shrinks the number you're reading at speed.
  • In landscape, the side navigation keeps all five tabs reachable when they would otherwise not fit, and ride content stays clear of the gesture bar.
  • The ride screen hides its page arrows when the toolbar runs out of room rather than clipping them — swiping between pages still works — and long cycle names are shortened instead of clipped.
  • Settings → Display Units puts the Imperial/Metric buttons below their label, so the label is no longer squeezed to one letter per line on a narrow screen.
  • Point-of-interest names and coordinates on a ride's page are kept to one line instead of overflowing.

Changes

  • The Avg Speed tile no longer shows max speed as a secondary value. Add the separate Max Speed tile via Edit layout if you want both.

1.1.0 — 2026-07-27

Ride recording

  • Rides now keep recording with the screen off, the phone locked, or the app in the background — a notification shows while a ride is in progress. Previously recording stalled once the screen turned off.
  • New Settings → Battery entry shows whether Android's battery optimisation could cut a ride short, and opens the system screen where you can set Cycle Log to Unrestricted. Aggressive battery management is the most common reason a ride stops early.

Preferences

  • Keep Screen On now applies only while a ride is in progress. It previously kept the display awake everywhere in the app, including while browsing history or settings.

Fixes

  • Restoring from a backup no longer fails when the file picker offers more than one file.

1.0.0 — 2026-07-19

Initial release.

Ride recording

  • GPS ride recording with real-time speed, distance, elevation, and gradient
  • Barometer-assisted altitude with optional terrain-data calibration (device-dependent, GPS fallback)
  • Pause and resume, plus optional auto-pause
  • Recovery of rides interrupted by a crash or force-kill
  • Live map view during rides (CyclOSM cycling maps, with dark mode) and compass heading
  • Mark points of interest mid-ride; change cycle mid-ride
  • Customizable metric tiles and dashboard hero, including odometer, calories, clock, and battery

Cycles

  • Multiple cycle profiles with detailed fields (brand, model, type, weight, serial number, purchase info, retired date, and more)
  • Per-cycle log entries for service and maintenance history
  • Per-cycle stats and lifetime odometer

History & stats

  • Ride history with filtering (cycle, date range, hide commutes) and sorting
  • Ride detail with route map, elevation profile, and full metrics, including imported heart rate, cadence, and power
  • Home-screen stats for week, month, year, and all time, filterable by cycle

Import & export

  • GPX import and export — Cycle Log's own GPX round-trips losslessly
  • FIT file import (Garmin/Wahoo) and export
  • Bulk import from zip or multi-file selection with duplicate detection; share files from other apps straight into Cycle Log
  • Bulk export to a zip in GPX or FIT format
  • Local database backup and restore, with a configurable backup reminder

Strava

  • Connect with Strava and upload rides on request, with duplicate-upload protection and a link to the activity

Safety & preferences

  • Emergency contact check-in: a pre-filled SMS with your live location
  • Imperial and metric units, light/dark/system theme, keep-screen-on and ride display options