How to Export Zwift ZWO Workouts Without Rebuilding Them Manually
TrainingDojo can now export Zwift-ready `.zwo` files for compatible bike and run structured workouts. Here's how to use ZWO files without creating extra work.
ZWO files are useful because they make structured bike and run workouts portable. TrainingDojo can now generate Zwift-ready .zwo files from the same structured workout builder used for TrainingPeaks upload. The catch is that a workout file still solves one session at a time.
That distinction matters. If you just need one indoor interval workout in your library, ZWO is fine. If you need a whole 10-week block on your calendar, ZWO alone is usually not enough.
When ZWO Is the Right Tool
ZWO makes sense when:
- You already have a clean library of structured cycling sessions
- You want a TrainingDojo-generated bike or run workout available inside Zwift
- You want to preserve exact interval steps and targets
- Your trainer workflow depends on ZWO-compatible sessions
- You only need to import a small number of workouts
Where ZWO Gets Annoying
ZWO becomes tedious when the problem stops being “load this workout” and becomes “build this season.”
Common pain points:
- You still need to decide where each workout lands on the calendar
- You may have running, strength, or recovery sessions that are not ZWO-based at all
- You often need to mix AI-generated plans, spreadsheets, and trainer files in the same block
- You end up with a good workout library but a messy schedule
The Practical Workflow
The cleanest workflow is usually to separate workout-file fidelity from calendar planning:
- Use TrainingDojo's structured builder to download a .zwo for key bike or run sessions
- Use a plan-level structure for the overall block, including non-bike days
- Push the full calendar plan to TrainingPeaks when you need dates, rest days, and mixed-sport context
For many athletes, that plan-level structure is where TrainingDojo becomes more useful than a file-by-file workflow.
Best Use Cases for TrainingDojo Alongside ZWO
- You have some ZWO workouts, but the rest of the plan is in a spreadsheet
- You generated the season plan with AI and want key bike or run sessions exported as ZWO
- You want the whole plan on TrainingPeaks without manually rebuilding each day
- You are coaching yourself across cycling plus running or strength, not just trainer workouts
A Better Way To Think About It
ZWO is a workout format. TrainingDojo is a workflow tool. Those are different layers.
If your bottleneck is “I need this exact 4x8-minute threshold session encoded correctly,” think in ZWO. If your bottleneck is “I need twelve weeks of actual training on my calendar,” think in terms of structured plan import.
Recommended Setup
- Use TrainingDojo's Zwift export where exact trainer or treadmill execution matters
- Keep the rest of the plan in a structured format you can review quickly
- Use TrainingDojo to place the broader block into TrainingPeaks
That gives you the best of both worlds: specific bike sessions where you need precision, and a full calendar that does not require hours of manual setup.
If You Are Starting From AI
Most athletes creating plans with ChatGPT or another AI should not start by asking for ZWO. Start by asking for the actual training plan, the phase structure, and the schedule. Once that is right, use TrainingDojo to structure the key sessions and export the compatible bike/run workouts as .zwo files.
That is usually faster and easier to maintain than trying to force the entire planning process into one workout-file format.
The Bottom Line
ZWO is useful, and TrainingDojo now makes it easier to create. If your real goal is getting a complete plan into TrainingPeaks, use ZWO selectively for Zwift execution and let TrainingDojo handle the calendar-level import problem too.