Help and FAQ
How to take your finished plan to the race: head unit, Zwift, race card, plus the questions people ask most.
Output files: which one should you use?
| File | What it is | Supported on | Recommendation |
| Course file course.fit | Course map + elevation + a power cue point per segment: when you reach the start of each segment, the head unit pops up that segment's level and power range | Garmin, Wahoo, Hammerhead Karoo, Bryton, Coros; any head unit that can import courses | First choice. Widest compatibility, use this on race day |
| Workout file bike.fit | Structured workout: steps through power targets by distance, and the head unit alerts you when you leave the range | Garmin, Wahoo, Hammerhead Karoo (most other brands cannot import workout files) | For riders who want the head unit to watch their power for them; can run alongside the course file (Garmin supports a course and a workout at the same time) |
| Zwift bike.zwo | Turns your race plan into a Zwift workout | Zwift (desktop) | Ride the race intensity once indoors before race day |
| Race card | One A4 sheet: distance, level, power range, gradient | Any printer | Backup that needs no battery: tape it to the top tube and it never crashes |
Course file course.fit: import guide by brand
Garmin (Edge series)
- Method 1 (wireless): on a computer, open connect.garmin.com → Training & Planning → Courses → import course.fit → save, then click Send to Device.
- Method 2 (USB): connect the head unit to your computer, copy the file into the Garmin/Courses folder, then restart the head unit.
- On the ride, go to Navigation → Courses, pick the course and start; segment cue points appear automatically at the right spots.
Wahoo(ELEMNT/ROAM/BOLT)
- In the ELEMNT app on your phone → Routes → the + in the top right → Import from File, select course.fit → after syncing it appears in the Routes list on the head unit.
- Cue points show up as on-screen notifications.
Hammerhead Karoo
- On a computer, open dashboard.hammerhead.io → Routes → Import Route to upload → sync to the Karoo.
Bryton/Coros/iGPSPORT
- Each brand's phone app can import .fit course files through its Routes / Navigation feature (Bryton Active, COROS App, iGPSPORT App).
- How segment cue points are displayed varies by brand; some models show only the route and not the cue text. In that case, pair it with the race card.
Chinese cue text (such as "穩定 218-236W") displays correctly on most recent models; if your head unit shows garbled characters, report it to your coach and we will provide an alphanumeric-only version.
Workout file bike.fit: guide by brand
This is a structured workout file: no map, it switches power targets segment by segment based on distance, and the head unit alerts you when you leave the range. Fewer brands support it:
Garmin (Edge series)
- Connect the head unit to your computer (USB), copy bike.fit into the Garmin/Workouts folder, then restart the head unit.
- On the head unit, go to Training → Workouts, select it and press start; it then cues you segment by segment.
- Race day recommendation: load both the course file (navigation) and the workout file (power targets); the Edge can run them together.
Wahoo (ELEMNT series)
- Connect the head unit to your computer (USB), copy bike.fit into the plans folder → it appears under Planned Workouts on the head unit.
Hammerhead Karoo
- dashboard.hammerhead.io → Workouts → Import, upload bike.fit → sync.
Bryton/Coros/iGPSPORT
- Most current models cannot import a workout .fit directly. Use the course file (with segment cues) or the race card instead.
Zwift .ZWO: indoor rehearsal before the race
- Zwift desktop: copy bike.zwo into the Documents/Zwift/Workouts/(your numeric ID) folder.
- Restart Zwift → Workouts menu → Custom Workouts, and find your race plan there.
- By default ERG mode locks the power for each segment; turn ERG off during the ride if you want to simulate real shifting.
- Segment durations are converted from approximate speeds. What matters is the order of intensities and how each segment feels, not the indoor distance.
Race card
- On the results page, click Race card (Print) → print from the browser → print it or save as PDF.
- Cut out the table and tape it to your top tube or stem. The target is a power range: stay inside it, no need to chase a single number.
CdA calibration ride: how to ride for the most accurate drag value
When you upload a FIT file to estimate CdA, file quality decides accuracy. Race files (the bike leg of a triathlon or a time trial) are naturally the best. If you have no race file, ride one session following the steps below; the quality comes close to a race file, and a coach can assign it to an athlete as a workout.
Calibration ride protocol (about 40 min)
- Location: find a flat stretch of 2–4 km (gradient <3%) with an even surface, little traffic and few traffic lights. Levee roads, long riverside straights and closed loops are all ideal.
- How to ride: hold your race position the whole time, cruise steadily (above 25 km/h, no power surges), and ride two passes in each direction: cover the same stretch both ways, the system pairs the opposing passes automatically, and gradient and wind errors cancel each other out.
- Do not: draft (drafting makes CdA read 30–50% too low), brake anywhere except the turnarounds, or cut corners (windows inside turns are dropped automatically, but fewer turns means more usable data).
- Equipment: exactly what you race with: helmet, wheels, clothing and bottle placement are all part of your drag.
- Sensors: zero-offset your power meter first; GPS, speed and elevation must all be recorded (trainer files do not work).
- Weather: a calm day is best. Some wind is fine, the system corrects with that day's hourly wind direction plus out-and-back pairing, but on a strong-wind day (>8 m/s) pick another day.
How to tell whether the result is trustworthy
- Check the range (IQR) attached to the result: a width within ±5% of the median means good quality. If it is too wide, ride the same protocol again, or upload 2–3 files from different days for a combined estimate.
- If the result says "N out-and-back window pairs matched", the out-and-back cancellation is working. That is the best-quality state.
- If a multi-file upload shows the warning "files differ too much", drop the file it names first.
CdA history: turn your drag into a long-term data asset
When you are logged in, every CdA estimate is saved automatically as a record (the CdA history page). Multiple records are weighted by window count × recency and converge on a value more stable than any single test. Key features:
- Batch upload: drag a whole batch of FIT files into the drop zone at the top of the page (up to 12 at a time); each file is estimated and stored automatically. Coaches can switch the athlete view first so the records are filed under that athlete.
- Confidence (%): how trustworthy each record is; only many windows with little scatter score high. Treat records below 50% as reference only. Hover to see how fine a CdA difference that record can resolve.
- Outlier and low-quality flags: hover over "⚠ Outlier" or "Low quality" to see the plain-language reason (drafting, wrong bike type, puncture drift, faulty elevation sensor...) and what to do about it.
- Name / setup / notes: click any row to expand it, then name it (e.g. new helmet test), tag it with a setup label (records with the same label are merged into an equipment comparison table with the 90K time difference), and add notes (which helmet, how the ride went).
- Deep analysis per record: in the expanded row, click Deep analysis. A plain-language summary card first tells you whether the record is trustworthy and which section is off; below it, the virtual elevation chart (parallel lines mean an accurate estimate) and the rolling CdA curve are there for advanced reading.
- One-click converged value: the estimator in the Console shows your historical converged value and applies it to the power plan with one click; the Coach console can write an athlete's converged value into their profile.
My routes: see how many seconds a change of equipment is worth first
My routes lets you save your own GPX routes (time trial courses, test segments) or save courses from the course library, then simulate finish times with different CdA values:
- Equipment simulation: same road, same watts, only the CdA changes (up to 6 scenarios, the first is filled with your historical converged value). Each scenario's finish time and time difference tells you directly how many seconds that helmet is worth.
- A/B testing advice: do one calibration ride per equipment setup (see the previous section) and compare their estimates here. If the difference is smaller than the sum of the two confidence bands, you cannot tell them apart yet and need more data.
- The simulation uses constant power, no wind, and includes slowing for turns. Absolute times will differ from real wind conditions, but the time difference between scenarios on the same route at the same power is a reliable estimate of the equipment difference.
Glossary
What the abbreviations in the Power · Intensity row of the results mean:
- NP (Normalized Power): converts your fluctuating actual output into an equivalent steady intensity. On a rolling course, NP is higher than average power.
- AP (Average Power): the average power over the whole bike leg.
- IF (Intensity Factor) = NP ÷ FTP: how hard the ride is relative to your ability. A full-distance (226 km) bike leg is typically 0.68–0.75.
- TSS (Training Stress Score): total load from intensity × time. The higher the number, the more it costs your body.
- VI (Variability Index) = NP ÷ AP: the closer to 1.00, the more evenly you rode. The goal of segment pacing is to buy the most time with the least variability.
FAQ
How accurate is the prediction?
Backtesting the physics engine on 60 real race files (nine athletes, 2019–2026, courses in 16+ countries; for each prediction the CdA is taken from that athlete's other races, never from the race itself, to avoid self-fitting): median error about 2% (exactly 2.20%, roughly 7 min over 180 km), a quarter of races within ±1%, 92% within ±5%, all between −7% and +6.3%, with a slight conservative bias overall (predictions tend to be a little slower than reality). Errors are larger in two situations: strong-wind days with no local weather station data (the wind cannot be modelled), and periods right after an athlete makes a big change to equipment or position (the CdA history has not converged yet). Keep uploading race files and your model gets more accurate. This is the accuracy of the model itself: your actual finish time also depends on race-day weather changes, how you feel that day, nutrition and technical sections. The real value of the plan is the relative allocation: where to push and where to ease, which is more reliable than the absolute time.
What is CdA? How different are the lookup table and the FIT estimate?
CdA = drag coefficient × frontal area, the biggest factor in flat-road speed. A lookup by position has roughly ±15% uncertainty; uploading a race FIT file with power and solving the physics backwards gets to about ±2% on a flat, low-wind race file. Files from windy races (such as Kona) may be further off, so the system attaches a range for you to judge.
Why does "segmented vs constant power" save 0 s on my course?
Because that course is flat. On flat roads, riding constant power start to finish is already the fastest way, and we will not fake a plan for you. The value of the plan there is the absolute target (how many watts to ride) and the segment cues, not segment-to-segment changes. On mountainous courses (such as Nice or Sanremo), segment pacing can save several minutes.
What is the difference between Aggressive and Conservative?
The target intensity (IF): Standard is the recommended value for that race format (for example 0.70 for full distance), Aggressive adds 0.03, Conservative subtracts 0.03. Aggressive saves several minutes on the bike, at the cost of more accumulated training stress when you dismount, so the early run is harder; Conservative is the opposite and saves your legs for the run. The six-level segment logic is identical across all three; only the overall intensity changes. If unsure, use Standard, or talk to your coach about which setting fits your running ability.
How are the six power levels defined?
From easiest to hardest: Light, Ease, Steady, Press, Dig, Stomp, assigned from each segment's gradient and wind; clear climbs and steep descents always get their own segment. Short steep ramps get a level you stand up and power over; on long climbs where that intensity cannot be sustained, the system automatically falls back to one you can hold to the top. The watts for each level are calculated from your FTP and that course, not fixed percentages.
How does wind affect the plan?
A headwind is like a climb: you are slower and each watt buys more time, so it is worth pressing; a tailwind is like a descent, the reverse. The system factors each segment's wind direction and strength into the level and power, so a flat headwind segment may be marked Press and a tailwind segment Ease. The rider icon in the top right of the chart shows wind direction and speed for the segment under your mouse (tap with a finger on mobile); the segment table lists the wind for each segment too.
Where does the weather data come from? Should I recalculate before the race?
Within 15 days of the race we use the hourly forecast (temperature, humidity and wind for the race window); earlier than that, the five-year average of observed weather for the same dates. Come back and recalculate 2–3 days before the race: the forecast is most accurate then, and you only need to download the files again.
What is segment granularity?
It controls the minimum length that rolling terrain is merged into one segment (1 / 2 / 3 km). Fewer segments are easier to remember, at the cost of a few theoretical seconds. Clear climbs and steep descents are not affected by granularity and always get their own segment.
What does the GPX upload need?
A track file with elevation (tick the elevation option when exporting from the organizer or a route platform). GPX elevation from online sources is often wrong in tunnels and on bridges; if you know the official total elevation gain, enter it in the "Official total elevation gain" field so the system can correct it, and the prediction gets much more accurate.
My race is not in the course library?
Upload that race's GPX directly and you get the full feature set. You are also welcome to report it to your coach and we will add it to the course library (with official data cross-checked).
Can I use it without logging in? What does an account store?
Guests can run the full calculation and download everything. When logged in, the system remembers your parameters (FTP, weight, position, CdA) and keeps every plan so you can download it again later. Sign-up requires an invite code (during the beta).
Still have a question? Report it to your coach and it will be added to this page.
AeroPacer · PaceScience Engine