Your training history belongs to you. One open, portable format that any app can read and write — losslessly, without platform lock-in. Convert your data out of any silo, or build your app on it natively.
Years of training live inside whichever apps you happened to log them in — the lifting
app’s schema, the watch’s activity files, the climbing app’s ticks, each with its own
exercise names and export quirks. Switching apps means losing history; building on top of
an app means building on an API that can change under you.
Try it now: upload a real Hevy, Strong, Apple Health, Strava, GPX,
TCX, FIT, Concept2, theCrag, or Fitbit (Google Takeout) export and watch it become portable
OpenBody JSON — parsed, converted, and downloadable entirely in your browser. Nothing
leaves your machine. No signup, no upload, no account. (The same
open-source library behind it maps ten formats and counting — see the
supported-formats matrix.)
The timing matters. Platforms keep tightening what third parties may do with your data —
Strava’s API restrictions being the most visible recent example — while the EU Data Act
phases in the other direction, requiring connected products to make user data accessible
(with design obligations applying to products placed on the market from September 2026).
Portable, well-specified formats are how those rights become usable in practice. (For how
OpenBody fits alongside peer formats, aggregators, and standards, see
Related projects & ecosystem.)
What OpenBody gives you
A lossless data model — both pillars
One format for telemetry (heart rate, sleep, GPS, body composition) andstructured training — and structured training means all of it: sets and
supersets, runs, rides and swims, holds and intervals, climbing sends, match and race
results, mobility and breathwork, planned vs performed. One scoring model spans a
barbell set and a marathon; the
coverage corpus
proves it on everything from Hyrox to kabaddi to freediving. Incumbent → OpenBody is
lossless by design: anything without a canonical home is preserved via namespaced
extensions or the opaque fallback. Nothing is dropped.
Canonical exercise identity
One app’s “Bench Press (Barbell)” and another’s “Barbell Bench Press” become the
same canonical movement: bench-press.barbell.flat. A curated, CC0
exercise registry of 800+ movements with structured facets and
crosswalks — and mappers resolve source names to canonical ids, falling back to a
lossless opaque string when they can’t.
Open & vendor-neutral
Fully open, not open-core: spec under OWFa 1.0, reference code Apache-2.0, registry
data CC0 — implementable by anyone, in any language, no strings attached. Stewarded by
Thabit Labs with intent to transfer to a neutral foundation as adoption warrants.
See Governance.
Start here — for your data
Convert your workout dataHevy, Strong, Apple Health, Strava, FIT, GPX, and more exports → portable OpenBody JSON, entirely in your browser. The fastest way to see what OpenBody is.
What you just gotJust converted your data? Here's what that openbody.json file actually is, in plain terms — and a few useful things you can do with it now.
Want to see the shape of the data itself? OpenBody in five minutes walks
through the whole core in seven real records — a measurement, a set, a run, a session, a
superset, planned vs performed, a climbing send.
Start here — for app builders
Build on OpenBodyAdopt OpenBody as your native data model: a proven schema, a CC0 exercise database of 800+ movements, and import from ten formats on day one.
Getting startedValidate and normalize records with the TypeScript reference implementation, then run the conformance vectors.
Mapping guidesReal incumbent → OpenBody mappings — Hevy, Strong, Strava, Apple Health, FIT, GPX, TCX, Fitbit, Concept2, theCrag — plus the outbound direction.
The exercise registryCanonical movement ids, facets, progression relationships, and per-app name crosswalks — CC0.
Built on a real standard
Tools are only as good as the format underneath them. OpenBody is a canonical data model
plus mapping semantics — defined independently of any serialization, with JSON (and a
published JSON Schema) as the primary, first-class binding, published conformance
profiles, and executable test vectors. Every claim above is specified, not improvised.
Read the standardThe rendered, canonical SPEC.md (v0.10.0) plus the JSON Schema and changelog.
ConceptsThe data model, the two pillars, exercise identity, and canonicalization — explained plainly.
ConformanceProfiles, the test vectors, and how to claim “OpenBody Compatible”.
RegistryThe CC0 registries: curated exercise ids/facets and measurement-type tokens.
“OpenBody” is a vendor-neutral standard stewarded by Thabit Labs. The steward is not the
brand on the wire. Specification: OWFa 1.0 · Reference code:
Apache-2.0 · Registry data: CC0. See
Licensing.