Workout Writer syntax cheatsheet

Use this page as your quick reference while you write.

Workout Writer is built around normal training language, not a weird mini programming language. Most of the time, if you write the session the way you would say it out loud, you're in good shape. These examples just show the patterns the app understands best.

What is the basic Workout Writer format?

Usually: one step per line, then plain language for goal and effort.

One step per line

Warmup 10 min Easy

4 x
3 min Threshold
2 min Easy

Cooldown 10 min Easy

Comments

Comments are great for reminders, context, or little notes to yourself. Anything after the # is a comment.

# Tuesday session

Warmup 10 min Easy
4 x 3 min Threshold, 2 min Easy # keep this controlled
Cooldown 10 min Easy

Time and distance goals

10 min Easy
45 sec Hard
2km Tempo
500m Easy

Repeat blocks

Just write how many repeats you want to do e.g. "4 x". Workout Writer also understands "reps", "sets", "times"

Empty lines above and below a block help distinguish it from others.

6 x
1 min Hard
1 min Easy
Four times
1 km Tempo
200m Easy

Bracketed repeats

If you want to, you can wrap blocks in square brackets.

4 x [
800m Tempo
400m Easy
]

Single-line intervals

This is the main exception to the one-step-per-line rule. If steps are separated with commas, Workout Writer can still parse them cleanly.

So this:

6 x 1 min Threshold, 100m Easy

Means the same thing as this:

6 x
1 min Threshold
100m Easy

Tags v explicit efforts

You can write sessions using reusable tags or specific numbers.

# Using tags
1km Tempo
100m at Easy pace

# Using explicit effort: pace 🏃‍♂️ / speed 🚴‍♀️
1km 4:30/km # 🏃‍♂️
100m 4:30/mile # 🏃‍♂️
5 miles @ 20mph # 🚴‍♀️
10km 25km/h # 🚴‍♀️

# Also, heart rate, power zones, cadence etc.
1km @ Z4 # ❤️
1km at 140bpm # ❤️
1 mile 300W # ⚡️
1km at PowerZone 4 # 🚴‍♀️ PZ4 or power 4 also ok
5km @ 180 SPM # Cadence - can use RPM for 🚴‍♀️

Ranges

Ranges are useful when you want a target band instead of a single number.

500m 4:30-5:00/km # Pace 🏃‍♂️
1 mile @ 5:00-5:30/mile # Pace 🏃🏾‍♀️
10km at 15-20 km/h # Speed 🚴‍♀️ 
10 min 120-150 bpm # ❤️
5 min 170-190 spm # Cadence - can use RPM for 🚴‍♀️
1 mile at 300-400W # ⚡️

Common quick fixes

FAQ

Do I need special syntax to write intervals?

No, in most cases, plain English is fine. The app is very flexible for it understands repeats, e.g. "Five times", "2 sets" or "8 x".

You can immediately see what the app is understanding from your text, so just try changing it and see what happens in the preview.

Can I write workouts with comments?

Yes. Add # comments for notes; comments are not sent to your watch.

If you use a comment as the very first line of the workout, then it will appear as the subtitle in the workout list. This is useful for adding context that's visible when looking through your workouts.

Need help?

If Workout Writer is not understanding workout text that you think it should, please let us know by contacting support.

Related docs