Skip to content
FormLens

Switching from Hevy or Strong to FormLens: Import Your Workout History

7 min read

Switching apps shouldn't mean starting your training log from zero. FormLens imports workout CSV files exported from Hevy and Strong — your workouts, exercises and sets — when the file is in a layout it reads, and exports your own history whenever you want it. Here's how to check your file and move your history across, what comes with it, how exercise names are matched, and what stays behind.

Step 1: export your history

Both apps can export your workout history as a CSV file — a plain spreadsheet with one row per set. Export it on your iPhone and save it to the Files app (iCloud Drive or On My iPhone).

  • From Strong: open Strong's settings and choose Export Strong Data, as Strong's help centre (opens in a new tab) describes.
  • From Hevy: use the data export in Hevy's settings to export your workouts as a CSV file.

Menus change between app versions, so if you can't find the option, search that app's help pages for “export”. Keep the original file until you've checked the import. Then open it in Files or a spreadsheet app and look at its first row, the column names. FormLens reads two layouts:

  • Hevy, in kilograms: columns such as exercise_title, set_type and weight_kg. A Hevy account set to pounds — and some older exports — writes weight_lbs and distance_miles instead, and FormLens doesn't read that file.
  • Strong, separated by commas: names without units — Date, Workout Name, Duration, Exercise Name, Set Order, Weight, Reps. Some Strong exports use semicolons, which FormLens doesn't recognise, or put the unit in the name, such as Weight (kg), which it doesn't read as a weight.

Step 2: import it into FormLens

  1. Open FormLens, go to the Profile tab and tap the settings icon in the top-right corner.
  2. Under Your Data, tap Import Workouts (Hevy/Strong CSV) and pick the file.
  3. FormLens reads the file and tells you how many workouts it found. Workouts at the same time as one already in your log are skipped.
  4. From Hevy, tap Import. From Strong, tap Import — weights in kg or Import — weights in lbs, whichever unit your Strong app shows.
  5. A last message tells you how many workouts came in.

Strong files: pick the unit your Strong app shows

Strong's Weight and Distance columns don't name a unit, so FormLens asks. The choice covers the whole file: pick lbs and weights are converted from pounds and distances from miles; pick kg and they're read as kilograms and kilometres. A Hevy file names its unit in weight_kg, so FormLens doesn't ask. Weights are stored in kilograms — a 135 lb set comes in as 61.23 kg — and shown in kg or lbs, whichever you train in.

If a file lives in iCloud and hasn't finished downloading, FormLens says so — try again in a moment. A file in any other layout isn't recognised, and the message asks for a Hevy or Strong export; if yours came from one of them, compare its first row with Step 1.

What comes across

What FormLens reads from each file
In FormLensFrom HevyFrom Strong
Workout title and notestitle, descriptionWorkout Name, Workout Notes
Date and timestart_time, end_timeDate, with Duration for the end time
Exercise and its noteexercise_title, exercise_notesExercise Name, Notes
Supersetssuperset_idNot in the file
Set typeset_typeSet Order (a W, F or D letter)
Weightweight_kg (not weight_lbs)Weight (kg or lbs, as you choose)
Reps and RPEreps, rpeReps, RPE
Distance and timedistance_km (not distance_miles), duration_secondsDistance (km or miles, with the same choice), Seconds

Sets keep their type. Hevy's file names it; Strong's marks a non-working set with a letter in the Set Order column — W for a warm-up, F for failure, D for a drop set — and numbered sets come in as working sets. Every imported set is marked as completed, and a workout without a title gets one from its exercises.

How exercise names are matched

Each exercise name in the file goes through three checks, in order:

  1. The four barbell lifts. Names like Squat (Barbell), Back Squat, Bench Press (Barbell), Flat Bench Press, Deadlift (Barbell), Conventional Deadlift, Overhead Press (Barbell), Shoulder Press and Military Press become FormLens's own Squat, Bench Press, Deadlift and Overhead Press — so imported sets continue the same history as the ones you log in the app.
  2. An exact library match. A name that matches an exercise in FormLens's library, ignoring capitals and extra spaces, becomes that exercise.
  3. Everything else comes in under the name in your file, as your own exercise.

Matching is strict on purpose, so an import never merges two different exercises: dumbbell, Smith-machine and machine versions stay separate from the barbell lift, because their one-rep maxes differ, and so do Front Squat, Romanian Deadlift and other variations. The trade-off: a lift your old app spelled unusually arrives as a separate exercise under that spelling.

Importing twice, or switching gradually

FormLens skips every imported workout that overlaps one already in your log. Import the same file twice and the second time adds nothing; import a fresh export a few weeks later and only the new workouts come across — handy if you log in both apps for a while. If you logged a session in both apps, the FormLens one stays.

One exception: if Apple Health has already given FormLens an empty workout at that time — a strength session with no sets, say — the imported workout replaces it. After an import, FormLens recalculates your personal records from your whole history, imports included.

Exporting from FormLens

  1. In Settings → Your Data, tap Export Workouts (CSV).
  2. Save FormLens-workouts.csv to Files, AirDrop it, or send it wherever you keep backups.

The file holds every workout in your log, one row per set, in Hevy's kilogram layout: weights in kilograms, distances in kilometres, set types as normal, warmup, dropset or failure. The four barbell lifts and running keep their English names whatever language the app is in, and a workout with no sets, such as one from Apple Health, is a single row. FormLens can read its own export back, and any spreadsheet app can open it.

It's your training log, not your analyses: form scores aren't in the file, and your workout videos never leave your phone (privacy policy).

What doesn't come across

  • Files in another layout. A Hevy file in pounds or a Strong file separated by semicolons doesn't import at all, so check its first row before you import (Step 1).
  • Anything that isn't a workout. FormLens reads the workout rows only — not routines, templates, body measurements, progress photos or settings from your old app.
  • Form scores. Imported sets have no video, and only sets you film get a form score (what the score means). Film a set to get your first — here's how.
  • A repeated exercise within one workout. If an exercise appears twice in the same workout — bench, rows, then bench again — its sets are merged into one exercise, and the first note for it is the one kept.
  • Supersets from Strong. Strong's file doesn't include them; Hevy's does.
  • Rows with nothing to log. A row with no weight, reps, distance or time — Strong's rest-timer and note rows, say — is skipped, as is a row whose date FormLens can't read. If a file yields no workouts, the message says how many rows were skipped.

Switching checklist

  • Workout CSV exported from your old app and saved to Files
  • Its first row matches one of the two layouts in Step 1
  • From Strong: you know whether the app shows kg or lbs
  • Profile → settings → Your Data → Import Workouts
  • The number of workouts found looks right before you confirm
  • A few squat, bench and deadlift sessions spot-checked afterwards
  • The original file kept until you're happy with the result

FAQ

Do I need FormLens Pro to import or export?

No. Both are in Settings on the free plan too, and workout logging is unlimited on every plan. Pro is about form analysis: the free plan includes one full AI analysis a month.

FormLens says it can't read my file. Why?

FormLens reads a file by its column names, in the two layouts in Step 1 only. A Hevy file from an account set to pounds (weight_lbs) or a Strong file separated by semicolons gets that message too. A file from another app works only if it matches one of the two; FormLens's own export uses Hevy's.

I picked the wrong unit for my Strong file. What now?

The weights will be about 2.2 times too heavy or too light. There's no undo for an import, and importing again skips workouts that are still in your log, so delete the wrong ones from your history first. Easier: check which unit your Strong app shows before you tap Import.

Will my PRs come across?

Yes. After an import, FormLens recalculates your personal records from your whole history, imported workouts included. Barbell squats, bench presses, deadlifts and overhead presses join the same lifts you log in the app.

Why didn't every workout come across?

Usually because FormLens already had a workout at that time — imports skip overlaps so nothing is counted twice. Rows with nothing to log, or a date FormLens can't read, are skipped too.

Can I take my data back to Hevy or Strong later?

You can export your FormLens history any time as a CSV in Hevy's kilogram layout. Whether another app accepts that file is up to that app.

First published · Last updated · By FormLens