TrainingDojo
Tutorials6 min read

TrainingPeaks CSV Import Guide: Upload Your Entire Training Plan in 5 Minutes

Stop manually entering workouts one-by-one. This step-by-step guide shows you how to import an entire training plan to TrainingPeaks in minutes using CSV files.

TrainingDojo Team

You've just generated the perfect 12-week training plan. Now comes the tedious part: manually entering 84 workouts into TrainingPeaks, one at a time, copying and pasting descriptions, setting TSS values, and double-checking dates. It takes hours—and it's mind-numbing.

There's a better way: CSV bulk import. Upload your entire training plan in under 5 minutes. Here's the complete, step-by-step guide to importing workouts to TrainingPeaks using CSV files.

Why Use CSV Import Instead of Manual Entry?

Let's break down the time savings:

  • Manual entry: 2-3 minutes per workout × 84 workouts = 168-252 minutes (3-4 hours)
  • CSV import: 5 minutes to format + 2 minutes to upload = 7 minutes total

That's a 95% time reduction. Plus, CSV import eliminates human error—no more typos in workout descriptions or wrong dates.

What You'll Need

Before starting, gather these items:

  1. TrainingPeaks account (free or premium)
  2. TrainingPeaks API access token (we'll show you how to get this)
  3. Your training plan in CSV format (we'll cover the correct format)
  4. 5 minutes of uninterrupted time

Step 1: Get Your TrainingPeaks API Token

TrainingPeaks uses a "bearer token" for API authentication. Here's how to get yours:

  1. Log in to TrainingPeaks on your desktop browser
  2. Navigate to Settings → API Access (or go directly to trainingpeaks.com/api)
  3. Click "Generate New Token"
  4. Copy the token (it looks like a long string of random characters)
  5. Save it somewhere secure—you'll need it every time you import workouts

Security note: Your API token is like a password. Don't share it publicly or post it online. Tools like TrainingDojo store it only in your browser's local storage—it never leaves your computer except when communicating directly with TrainingPeaks.

Step 2: Find Your Athlete ID

Your athlete ID is a unique number TrainingPeaks assigns to your account. Finding it is easy:

  1. Log in to TrainingPeaks
  2. Click on your Calendar
  3. Look at the URL: https://trainingpeaks.com/athlete/calendar/123456
  4. The number at the end is your athlete ID

Alternatively, you can use the TrainingPeaks API validation endpoint with your token, which will return your user ID automatically.

Step 3: Format Your Training Plan as CSV

TrainingPeaks expects specific data fields for workout imports. Here's the required CSV structure:

Required Columns

day,sport,subtype,title,duration_minutes,tss,description,phase

Column Definitions:

  • day: Day number (1, 2, 3, etc.) - relative to plan start date
  • sport: Activity type (e.g., "Bike", "Run", "Swim")
  • subtype: Workout category (e.g., "Endurance", "Tempo", "Interval")
  • title: Workout name (appears in calendar)
  • duration_minutes: Planned workout duration in minutes
  • tss: Training Stress Score (leave blank if unsure)
  • description: Detailed workout instructions
  • phase: Training phase (e.g., "Base", "Build", "Peak")

Example CSV Format

day,sport,subtype,title,duration_minutes,tss,description,phase
1,Bike,Endurance,Base Ride - Zone 2,90,65,90min easy Zone 2 endurance. Focus on smooth pedaling and staying in heart rate zone. Cadence 85-95rpm.,Base
2,Run,Recovery,Easy Recovery Run,30,20,30min easy jog at conversational pace. Zone 1-2 heart rate only.,Base
3,Bike,Tempo,Tempo Intervals,75,85,15min warmup + 3x10min @ Zone 3 (tempo) with 5min recovery between intervals + 10min cooldown.,Build
4,Swim,Technique,Swim Drills,45,35,800m warmup + 8x100m (odds: catch-up drill / evens: fingertip drag) + 400m cooldown.,Base

Step 4: Import Your CSV to TrainingPeaks

Now for the easy part—the actual import. You have two options:

Use TrainingDojo's Free CSV Importer

  1. Go to trainingdojo.app
  2. Enter your TrainingPeaks API token and athlete ID
  3. Upload your CSV file
  4. Select your plan start date
  5. Preview workouts to verify dates and details
  6. Click "Upload to TrainingPeaks"
  7. Watch as your entire plan uploads in seconds

Why use TrainingDojo? Our tool handles date calculations, sport mapping, and rate limiting automatically. It's free to use and requires no technical knowledge.

Step 5: Verify Your Upload

After importing, always verify in TrainingPeaks:

  1. Check that workouts appear on correct dates
  2. Verify sport types are correct (Bike/Run/Swim/etc.)
  3. Confirm TSS values match your plan
  4. Read a few descriptions to ensure text imported correctly
  5. Look for any missing or duplicate workouts

If something looks wrong, you can bulk-delete the uploaded workouts and try again. Always test with a small subset first (like 1 week) before importing entire training blocks.

Common CSV Import Issues (And Fixes)

Issue #1: "Invalid Sport Type" Error

Cause: Sport names don't match TrainingPeaks' expected values
Fix: Use exact sport names: "Bike", "Run", "Swim", "Walk", "Other"

Issue #2: Workouts Appear on Wrong Dates

Cause: Timezone misalignment or incorrect day numbering
Fix: Ensure day numbers are consecutive (1, 2, 3...) and start date is correct

Issue #3: TSS Values Missing

Cause: Blank TSS field in CSV
Fix: Leave TSS field empty (TrainingPeaks will calculate from duration/intensity) or manually calculate: Duration (hours) × Intensity Factor² × 100

Issue #4: API Token Expired

Cause: TrainingPeaks tokens can expire after extended periods
Fix: Regenerate a new token from TrainingPeaks settings

The Bottom Line

CSV import transforms training plan management from a multi-hour slog into a 5-minute task. Whether you're importing AI-generated plans, coach-created programs, or your own custom training blocks, the CSV method is faster, more accurate, and less frustrating than manual entry.

Stop wasting hours clicking through TrainingPeaks' workout builder. Upload your entire season in minutes and get back to what matters: actually training.

Ready to try it? Head to TrainingDojo's free CSV importer and upload your first plan in under 5 minutes. No credit card required.

Ready to Build Your Training Plan?

Generate a personalized, science-backed training plan in minutes with AI. Free to start.

TrainingPeaks CSV Import Guide: Upload Your Entire Training Plan in 5 Minutes | TrainingDojo