Why raw data, not a squeezed summary

Most fitness-to-AI tools decide in advance what's worth keeping. This one doesn't — here's why, and how to pick a time window that works instead.

The usual approach: a vendor decides for you

A typical fitness-summary tool picks a fixed set of fields — total distance, average pace, maybe a weekly summary — and discards the rest. That's a reasonable design if the goal is a dashboard widget. It's a bad fit if the goal is letting an AI actually reason about your training, because whatever question you ask next has to be answerable from whatever fields the vendor happened to keep. Ask about cadence drift, or how a specific interval's heart rate recovered, and a curated summary simply doesn't have the answer — it was never in there.

What this tool does instead

Converter (step 1) decodes each FIT, GPX, or TCX file's fullnative structure — every message, every field the SDK or parser can see — with nothing cherry-picked and no fixed schema everything gets squeezed into. CSV and JSON exports aren't interpreted at all; they're copied through byte-for-byte, because reinterpreting a spreadsheet risks silently dropping or mangling a column nobody thought to account for. There's no algorithm anywhere in this pipeline deciding a field is "not useful enough" to keep.

So what actually controls the size?

You do — by date range, in step 2. Since nothing is trimmed field-by-field, the only lever left is how much timeyou include. A single run is small. A full training year, decoded to full raw detail, can be genuinely enormous. That's deliberate: it's a much simpler mental model than trying to predict which fields an algorithm decided to keep, and it puts the one judgment call that actually matters — how much history is relevant to what you're about to ask — in your hands instead of a vendor's.

Picking a time window that fits your AI's context

Every AI chat has a limit on how much text it can hold in one conversation, and unlike a fixed-schema summary, raw decoded data doesn't compress itself to fit. A few practical starting points:

  • One specific question about one workout? Pick just that day. A single activity's full detail is almost always small enough to paste anywhere.
  • "How's my training been going lately?" A few weeks to a couple of months is usually plenty of signal without becoming unwieldy.
  • Looking for a long-term trend? Start narrower than you think you need, check the size estimate this tool shows before you generate, and widen the range only if the answer you get back is missing something.

No cross-file merging, on purpose

One more thing this tool deliberately doesn't do: reconcile or merge data across files. Each source file's decoded structure is kept exactly as it was extracted, with no attempt to match up, say, a Garmin activity and a Strava CSV row for the same run. Matching records across formats by filename, timestamp, or content is exactly the kind of task an AI is good at once it can see the raw data — building that logic into the conversion step would just be a second, hidden layer of decisions you didn't make.

Try it with your own export →