How to Actually Track Your Bike's Mileage Per Part (Not Just Per Ride)
Strava and bike computers track your ride. They don't track your chain's mileage, your cassette's mileage, or what happens when you swap a wheel between bikes.
Ask any serious cyclist their total distance for the year and they'll answer down to the kilometer, pulled straight from Strava, Garmin, or whatever computer they use daily. Ask the same rider the exact current mileage on their chain, right now, and most go quiet.
That gap between the two numbers is the actual subject of this article, and it's the entire reason to track bike part mileage separately from ride distance rather than assuming one number tells you the other.
The gap: your ride computer tracks you, not your parts
A bike computer or Strava is built to answer "how far did I ride," and it does that specific job extremely well, down to the meter. It was never built to answer "how far has this specific chain traveled since I installed it," which is a genuinely different question requiring genuinely different underlying data.
A chain doesn't reset when your yearly Strava total resets on January 1st. It doesn't care about any single ride at all, only about its own cumulative distance since the day it was installed, and that's a number no ride-tracking app was ever designed to give you.
Why per-ride distance and per-part mileage are different problems
The moment you own more than one bike, swap a wheelset between them for a race or a different terrain, or replace a single part mid-season, per-ride distance and per-part mileage diverge completely. Total yearly distance stays a single clean number regardless of any of that.
Per-part mileage has to track each individual component's own installation date and accumulate only the specific rides where that part was actually mounted at the time, which a generic ride-tracking app has genuinely no concept of, since it only knows about the bike as a whole, not its individual components.
What manual tracking looks like, and why it quietly fails
The obvious workaround is a manual note: a notebook entry or a spreadsheet row reading "new chain installed, odometer at X km." This genuinely works, for a while, for a disciplined rider.
It quietly falls apart within a few months for a completely ordinary, human reason. It depends on remembering to update it every single time, on every bike, for every part, indefinitely, with zero room for a busy month or a forgotten entry. Most systems like this don't fail because they were bad ideas. They fail because they require perfect ongoing discipline forever, and life rarely cooperates with that for long.
What automatic per-part tracking actually requires
Doing this properly and automatically needs a system that knows which specific parts are currently mounted on which specific bike at any given moment, links every single ride to the bike it happened on, and correctly handles the genuinely tricky edge cases: a wheel moved between two bikes for a weekend, a part archived and replaced mid-year, a bike sold with some parts kept aside for a future build.
That's a meaningfully harder technical problem than simply summing ride distances together, which is exactly why nothing built into Strava or a bike computer solves it. The underlying data model required is fundamentally different from what a ride-tracking app was ever designed to store.
A simple test: do you know your chain's exact mileage right now?
Try to answer, without looking anything up or guessing, exactly how many kilometers your current chain is at, right now, today, on the bike you rode most recently. If you can't answer that with real confidence to within a few hundred kilometers, you're not alone. Almost nobody can, because almost nothing in common everyday use actually tracks it for you automatically.
Why this problem got harder, not easier, as gear got smarter
It's a little counterintuitive, but the rise of GPS bike computers and ride-tracking apps arguably made this specific gap more noticeable rather than less. Riders now have precise, granular data about pace, elevation, power, and total distance down to the meter, which makes the complete absence of equivalent data about their chain, cassette, or tires stand out more sharply by comparison. We got used to precise numbers everywhere else on the bike except the parts that actually wear out.
Can I approximate per-part mileage manually using my Strava yearly totals?
Only roughly, and only if you ride a single bike with no part swaps. The moment you own two bikes, swap a wheelset, or replace one part mid-season, a Strava yearly total stops mapping cleanly onto any individual component's real mileage. It's a reasonable rough proxy for a simple one-bike, no-swaps setup, but it breaks down exactly in the situations where accurate tracking matters most.
What data does an app actually need to solve this correctly?
At minimum: which parts are currently mounted on which bike, an install date or mileage baseline for each part, and every ride's distance linked to the specific bike it happened on. From those three inputs, per-part mileage can be calculated automatically and kept correct through swaps and replacements, which is a meaningfully different, more structured data model than a simple ride log.
What multi-bike households get wrong most often
Beyond the wheel-swap and part-swap scenarios already covered, multi-bike owners commonly run into a subtler version of the same problem: a chain or cassette bought as a spare, moved between bikes opportunistically depending on which one is being ridden that week.
That part effectively accumulates mileage across two bikes' worth of rides without any single number reflecting its true total. Without deliberately tracking that specific part's identity across the moves, its real wear becomes invisible to any system, manual or automatic, that only tracks mileage per bike rather than per physical part.
This is the most direct product-fit idea in this entire content series. Tiiks links every ride to the parts actually mounted on that bike at the time it happened, so chain mileage, cassette mileage, tire mileage, and everything else update automatically and correctly, wheel swaps and part replacements included, without a single manual log entry required from you.