Your Apple Health data — on your terms

Own your workout data.

Export Apple Health and Apple Watch workouts as GPX, TCX, CSV, JSON, and PDF. Analyze, archive, migrate, or share your workout history — without subscriptions or cloud services.

Fully localNo account, no sync service, no required backend.
Coach-grade analyticsZones, drift, splits, and signal quality.
Share anywhereAirDrop, Files, Mail, Messages, or any share target.
Workout Exporter showing an interactive dual-axis heart rate and pace chart for a run
8export formats
30+analytics metrics
100%on device
$4.99one-time, no subscription

What the app does

Browse your workouts, analyze them with coach-grade metrics, and export clean, usable files — including AI-ready summaries and PDF reports.

Browse recorded workouts

Lists recent HealthKit workouts on iPhone with activity type, date, duration, and distance — from 40+ activity types including running, cycling, and swimming.

Analyze like a coach

Heart-rate zones, cardiac drift, splits, percentiles, target-band occupancy, behavioral segments, and signal quality — computed on device.

Export in eight formats

JSON, GPX, TCX, two CSV layouts, a single-page PDF report, plus AI Training Summary and AI Model JSON for large language models.

AI training summaries

Package a session into Markdown or compact JSON built for ChatGPT and Claude, so you can ask an LLM to review a workout like a coach.

Track progress over time

Visualize duration, distance, average speed, and energy trends per workout type. Filter by preset periods or a custom date range.

Polished PDF reports

Generate single-page PDF reports for an individual workout or a whole training period — with route map, charts, and stats.

iOS 18 or later Physical iPhone required for real HealthKit data Apple Watch workouts supported through HealthKit One-time purchase, no subscription

Eight export formats

Pick the format for what you do next — analysis, platform import, archiving, a printable report, or AI coaching.

JSON

Full raw data

Lossless HealthKit dump — metadata, route points, events, and per-type samples. Best for Python, notebooks, and archiving.

GPX

Route + heart rate

GPX 1.1 with heart-rate track extensions. Loads into mapping tools and most fitness platforms.

TCX

Training platforms

Structured workout with route, HR, power, and cadence. Imports into Strava, Garmin Connect, TrainingPeaks, and Golden Cheetah.

CSV

Summary

Workout metadata, coverage, and per-sample-type statistics in a tidy four-column layout for spreadsheets.

CSV

Samples

All raw time-series samples — heart rate, pace, power, cadence, altitude — flattened to rows for custom analysis.

PDF

Workout report

A single-page printable report with route map, summary cards, metric charts (with HR median & P90), and a sample stats table.

Markdown

AI Training Summary

Dense, human-readable analysis built to paste into ChatGPT or Claude for coaching feedback on a session.

JSON

AI Model JSON

A compact, schema-versioned JSON with a piecewise HR curve and structured metrics — purpose-built for LLM APIs.

Per-workout PDF report with route map, average pace and heart rate cards, HR and pace charts, and a sample statistics table

Coach-grade analytics, on device

Every analytic is computed locally from your HealthKit samples and folded into the AI and PDF exports.

Heart-rate zones

Three models — percent-max HR, Karvonen (with resting HR), and Friel (with lactate threshold). Time and percentage per zone.

HR percentiles

Time-weighted p25, p50 (median), p75, p90, and p95 for a true distribution, not just min/avg/max.

Cardiac drift

First-half vs second-half HR, and pace-to-HR decoupling when pace is available — the classic aerobic durability check.

Splits

Per kilometer or mile, with pace normalized to /km plus optional per-split heart rate and elevation gain/loss.

Target-band occupancy

Time in, above, and below your prescribed HR band — with excursion episode counts and longest streaks.

Signal quality

Heart-rate coverage percentage, dropout count, and longest gap, so you know how much to trust the numbers.

Behavioral segmentation

Automatic warmup, steady, surge, recovery-walk, and cooldown labeling for runs and walks.

Recovery effectiveness

How well heart rate recovers during walk breaks — start-vs-end HR per recovery segment.

Assessments

Plain-language, rule-based callouts on drift, occupancy, recovery, and ceiling violations against your intent.

Built for AI coaching

Two exports turn a workout into something a large language model can reason about. Generated on device — you decide where they go.

AI Training Summary — Markdown
# AI Training Summary — Running — Apr 14
## Context
- Activity: Running (outdoor)
- Duration: 1:15:11 · Distance: 6.16 km
- Goal: Aerobic Base · Target band: 130–150
## Heart Rate
- Avg 137 · Max 157 · Median 138
- p90 151 · Coverage 99.4%
## HR Zones (% max)
- Z2 41% · Z3 38% · Z4 16%
## Cardiac Drift
- PA:HR decoupling 4.8%
## Assessment
- Aerobic base session; drift in range
AI Model JSON — compact, schema-versioned
{
  "schema_version": "workout-ai-model-v1",
  "context": {
    "activity_type": "Running",
    "duration_seconds": 4511,
    "goal": "aerobic_base"
  },
  "raw_summary": {
    "avg_hr": 137, "max_hr": 157,
    "percentiles": { "p50": 138, "p90": 151 }
  },
  "signal_quality": {
    "hr_coverage_percent": 99.4,
    "dropout_count": 0
  },
  "heart_rate_curve": {
    "type": "piecewise_linear",
    "point_count": 42,
    "sample_count": 901
  }
}

Representative output. Exports are generated locally and never sent to any AI service by the app — you choose whether to share them.

Track progress & print reports

See training trends per workout type in the app, then export a polished single-page PDF for any period.

In-app progress tab with a duration trend chart and period selector
Running progress PDF report with summary cards, four trend charts, and a recent-workouts table

Browse workouts, inspect interactive charts and routes, then export or share in a tap.

Setup & first export

The only required setup is Health access. Once authorized, the app reads your workouts locally and prepares exports through the standard iOS share sheet.

1

Open the app

Launch Workout Exporter on your iPhone. It requests read-only Health access on first use.

2

Allow Health access

Enable workout and sample access in the iOS Health permission sheet so the app can load your sessions.

3

Pick a workout

Choose a session, review the summary and charts, then open the export menu and pick from eight formats.

4

Share the file

Use AirDrop, Save to Files, Mail, or paste an AI summary into ChatGPT or Claude.

Supported workouts & data

Exports reflect exactly what HealthKit recorded for each session.

40+ activity types

Running, walking, hiking, cycling, swimming, rowing, elliptical, strength, HIIT, yoga, and dozens of sports. Aerobic activities get the full analytics stack.

Metrics read

Heart rate, distance, active/basal energy, running & cycling power, speed, cadence, stride length, vertical oscillation, ground contact time, swimming strokes, and route (GPS).

Configurable inputs

Set max HR, resting HR, and lactate threshold for accurate zones; choose km or miles; add custom HR thresholds; capture per-export goal and target band.

Troubleshooting

Most issues come down to Health permissions, the iOS environment, or a workout that has no route or associated samples.

No workouts appear

Confirm read access in Settings > Health > Data Access & Devices, and that the workouts exist in Apple Health on that iPhone.

Export has no route

Some workout types have no GPS data. Indoor strength, yoga, and stationary sessions export without route points, which is expected.

Analytics look sparse

Zones need a max HR set in Settings; drift and splits need pace or distance; signal quality flags low HR coverage so you know why.

Does not work in Simulator

HealthKit workout queries are not useful in the iOS Simulator. Use a physical iPhone with real Health data.

Share sheet shows no destination

Scroll the share sheet, check AirDrop is enabled, or save the export to Files and move it from there.

Workout looks incomplete

Not every workout records every metric. The export reflects what HealthKit has, so some sample groups may be empty.

Support FAQ

What data is read, where files go, which devices are supported, and how privacy works.

Does the app upload my workout data to a server?

No. It works on device. Data only leaves your phone when you explicitly export and share a file. The AI exports are generated locally too — the app never sends anything to an AI service.

What are the AI exports for?

The AI Training Summary (Markdown) and AI Model JSON package a workout into a format built for large language models, so you can ask ChatGPT or Claude to analyze a session like a coach.

Is the app free?

No — it is a one-time purchase of $4.99, with no subscription and no in-app purchases.

Which export format should I use?

JSON for analysis and archiving, GPX for routes, TCX for fitness platforms, CSV for spreadsheets, PDF for a printable report, and the AI formats for LLM coaching.

Why do some workouts show fewer metrics?

HealthKit records different data by workout type, hardware, and sensors. The exporter only includes what exists for that session.

Privacy & data handling

The privacy story is simple: the app reads workout data to build exports and does not require an online account.

For the full legal version, see the Privacy Policy.