written by
Paul Richardson

How AI Can Help with CrossFit Gym Programming

AI LLM Health & Fitness 10 min read

This post outlines how a CrossFit gym owner—or anyone interested in streamlining creative, context-heavy work—can use a large language model (LLM) like ChatGPT to generate gym programming (workouts and training blocks) that reflects their unique gym environment and coaching preferences.

From Creative Burnout to AI-Powered Support

Imagine spending hours each weekend (or day) crafting thoughtful programming for your CrossFit gym, trying to keep each workout fresh, engaging, and effective. For many CrossFit gym owners and coaches, writing weekly and daily programming is a routine—but demanding—exercise. It requires creativity, technical knowledge, and experience to do it well. Over time, this repetitive workload lead to some creative burnout. It’s no surprise that many gym owners eventually turn to third-party programming services like NCFIT, Mayhem, or HWPO—leveraging their expertise not just for quality, but because the monotony of writing workouts week after week! In most cases, I suspect it is less about the capability and more about offloading the demand of the creative burden.

But these solutions come with trade-offs:

  • Recurring cost: Third-party programming can cost hundreds per month.
  • One-size-fits-all assumptions: Prebuilt programming might rely heavily on equipment like SkiErgs or GHDs your gym doesn’t have—or assume every class runs the same length or format.
  • Loss of creative control: Relying on external plans can dilute your gym’s culture. For instance, a gym that thrives on partner workouts and community-driven formats might lose that identity in generic programming.

Why AI (Large Language Model) Makes Sense

Language models like GPT-4 are built to understand structure, rules, and context. This makes them surprisingly effective at generating workout plans:

  • They can reflect specific training phases (e.g., week 3 of a strength cycle)
  • They can adjust for equipment availability, class size, or cultural preferences
  • They can create METCONS / WODs, program training blocks, warmups, and coach briefs with clear logic

With a well-crafted prompt and a structured input, an LLM can generate workouts that are almost indistinguishable from human-created programming. This allows a gym owner to maintain creative control and reduce effort—without outsourcing their gym’s voice and identity.

Creating effective programming still requires specialized knowledge and experience, but that’s exactly why an LLM is so powerful. It doesn’t replace human expertise; it leverages it. By encoding gym-specific knowledge, training philosophy, and patterns into structured input, the LLM acts like a coach who never forgets a detail. And unlike templates or rigid software, it can flex to reflect the nuance and demands of an active and ever changing gym environment.

Starting Simple: The ChatGPT-Only Approach

You don’t need to code or build complex apps to start seeing results. Here’s all you need to begin immediately:

  • Coaches Voice - A simple document outlining your gym’s schedule, equipment, and goals.
  • AI Assist - A clear request (prompt) to ChatGPT explaining exactly what you want.

This approach delivers real value fast. It proves that AI can handle structured, creative tasks—like thinking in terms of training blocks, movement balance, and class time constraints—just like a seasoned coach would.

I am using ChatGPT but its a reasonable assumption to think that this approach will work with Claude and Gemini as well.

Prompt Example:

This is how you ask for assistance from the LLM. Copy and paste this prompt into ChatGPT, followed by your gym configuration:

You are an expert CrossFit programming assistant for gyms. Use the following gym configuration to generate a full week of class programming (Monday through Saturday). 

Each day should include:

1. Strength or skill work (if appropriate for that day)
2. A metcon aligned with the gym's training goals, duration preference, and equipment
3. Scaling options for Rx and Scaled athletes
4. A coach brief that explains the intended stimulus, movement focus, and suggested time breakdown for class flow
5. A warm-up if warmups are required in the configuration

Ensure variety across the week, balance movement patterns, and account for any holidays,
events, or cycle constraints listed in the configuration.

Output Format:
1. Provide individual workout cards as PDFs
2. Provide a consolidated weekly schedule as PDF

Here is the gym configuration:

This prompt is just a starting point. Feel free to update and experiment till you get results that align with your expectations.

Gym Configuration:

This part represents and captures the coaches knowledge and perspective to the LLM for consideration in building the programming. This file (or text) captures your gym identity, real world constraints, scaling preferences, etc... This provide the “context” for the LLM. The AI won’t know when half the rowers are broken, when the air conditioner’s broken or that half of the members are sore from Murph but with the config file a coach can provide all of this information for the LLM to create tailored programming.

This example can be uploaded as a file or copied and pasted after the prompt. This needs to be updated to reflect the gyms preferences, schedule, equipment, etc... feel free to experiment!

 # === General Gym Info ===
gym:
name: "Your Gym Name"
location: "City, State or Country"
class_days: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
class_size: 20
session_length_minutes: 60
warmup_required: true
space_constraints: "e.g., Limited pull-up bars, shared lifting platforms"
special_notes: "e.g., No loud music before 8 AM due to neighbors"

# === Equipment Inventory ===
equipment:
- barbells
- bumper plates
- squat racks
- pull-up rig
- dumbbells
- kettlebells
- rowers
- bikes
- boxes
- wall balls
- jump ropes
- rings
- sandbags
- sleds
- climbing ropes
- GHD machines

# === Member Profile ===
members:
average_training_age: "e.g., 1–3 years"
fitness_levels: "e.g., Mixed (Rx, scaled, beginners)"
primary_goals:
- general fitness
- strength development
- aerobic capacity
- weight loss
- muscle gain
injuries_or_limitations: "e.g., many have shoulder limitations"
session_frequency_per_member: "3–5 sessions per week"

# === Programming Context ===
programming:
current_cycle: "Q1"
cycle_theme: "Strength-focused (squat + press)"
cycle_length_weeks: 8
current_week: 1
start_date: "2025-07-01"
block_type: "Linear progression"
deload_schedule: "Deload every 7th week"
benchmark_schedule: "Every 6 weeks"
max_weekly_strength_sessions: 3
max_weekly_metcons: 5
max_cns_intensive_days: 2
preferred_metcon_duration: "10–15 minutes"
movement_bias:
avoid_back_to_back_same_patterns: true
movement_rotation: ["squat", "hinge", "push", "pull", "core", "carry"]
target_modalities: ["monostructural", "weightlifting", "gymnastics"]

# === Class Structure Preferences ===
class_structure:
- Monday:
focus: "Squat strength"
metcon_type: "Moderate effort AMRAP"
- Tuesday:
focus: "Upper body press + gymnastic skill"
metcon_type: "Short sprint intervals"
- Wednesday:
focus: "Cardio emphasis (row/bike/run)"
metcon_type: "Longer aerobic grind"
- Thursday:
focus: "Active recovery or mobility"
metcon_type: "Light skill EMOM or partner flow"
- Friday:
focus: "Olympic lifting (power clean or snatch)"
metcon_type: "Short metcon (under 10 mins)"
- Saturday:
focus: "Team or partner WOD"
metcon_type: "Fun, high-volume chipper or relay"

# === Calendar / Events ===
calendar:
holiday_this_week: "None"
upcoming_events:
- name: "Benchmark Week"
date: "2025-08-12"
type: "Testing Week"
notes: "Test major lifts and metcons"
- name: "Gym Throwdown"
date: "2025-09-06"
type: "In-house competition"
notes: "Plan a taper the week before"

# === Measures & Scaling Configuration ===
measures_and_scaling:
modality_measures:
run: "meters"
row: "calories"
bike: "calories"
ski: "calories"
double_unders: "reps"
box_jumps: "reps"
wall_balls: "reps"
carries: "distance (meters)"
sled_push: "distance (meters)"

rpe_scale_used: true
rpe_targets:
strength: "RPE 8–9 for main lifts"
metcon: "RPE 7–8 unless sprint-focused"

scaling_levels:
- name: "Rx"
description: "As prescribed for experienced athletes with full movement capability"
- name: "Scaled"
description: "Modified load, reps, or movement complexity"
- name: "Beginner"
description: "Basic options focusing on mechanics and consistency"

movement_scaling:
pull_ups:
scaled: ["Jumping pull-ups", "Ring rows"]
beginner: ["Ring rows", "Band-assisted pull-ups"]
handstand_push_ups:
scaled: ["Box pike push-ups", "Strict dumbbell press"]
beginner: ["Wall walks", "Seated DB press"]
double_unders:
scaled: ["Single unders"]
beginner: ["Jumping jacks"]
running:
scaled: "Reduce distance (e.g., 800m to 400m)"
beginner: "Switch to bike or row equivalent calories"

metcon_equivalents:
100m_run: "7 calories bike"
200m_run: "14 calories bike"
400m_run: "28 calories bike"
500m_row: "25–30 calories row"
1k_row: "50–60 calories row"

time_cap_handling:
allow_extensions: false
scale_mid_class_if_needed: true
coach_adjusts_as_needed: true

output_preferences:
format: "Markdown"
export_to: ["Notion", "PDF", "Email"]
include_scaling: true
include_coach_briefs: true
include_warmups: true
include_time_caps: true

Output Example

The Results

The CrossFit Level 2 Training Guide provides an analysis worksheet to help dissect and evaluate programming. The guide does not score the programming but give a visual of how the series of workouts stacks up over the week and helps identify gaps or imbalances in general and/or alignment towards your programming goals.

I have include the detailed analysis in the image gallery above with the generated WODs/Metcons.

Summary of Analysis Worksheet

According to that analysis this week of workouts includes balanced programming that respects movement variance, time domain balance, and recovery needs. There are potentially some minor gaps as this programming does not contain any shorter sprint style WODs or lifting complexes. Oddly, enough it has read subconscious mind and completely omitted thrusters - I’d call that exceptional! It is also lacking skill focus in isolation (e.g., rope climbs, static holds). These are great things to either add in next weeks programming or something that can be addressed by adjusting the workouts for the week. Yup! Just ask the AI to update the programming to address these items if they are gaps!

Think This Is Good? It Gets Better.

This example and these results will get you surprisingly far. The example shows that ChatGPT can generate thoughtful, balanced workouts that are nearly indistinguishable from something a CrossFit gym owner or coach might program. Many gym owners and coaches could stop here and recreate these results weekly via prompts.

With a subscription to ChatGPT this approach can also be captured as a Custom GPT. This would capture all of the instructions and simplify the process of generating workouts even more! A Custom GPT will also help capture the specific gym configuration as a chat input. Additionally, a gym owner or coach could incorporate additional external knowledge sources to improve the results. For example I analyzed the workouts programmed by ChatGPT using an external source from a CrossFit training manual.

Custom GPT Functionality

A more advanced setup with a custom solution can also take things further by tracking progression across training cycles, saving your favorite workouts for easy reuse or templates, and automatically balancing movement patterns week to week—saving time and improving quality.

Both approaches would benefit from incorporating external knowledge sources like:

  • Movement libraries or standards (e.g., CrossFit benchmarks, gymnastics progressions)
  • Scaling guides or training templates
  • Periodization models
  • Your own gym’s historical programming or member feedback

This added layer of ChatGPT functionality or customization can help keep any CrossFit style programming with staying effective, balanced and aligned with the gym's training goals. It also further highlights the value of incorporating AI into a workflow.

Frankly, in the short to midterm the custom GPT is pretty fantastic! Yup I did say so myself.

Why This Matters

Using AI this way helps Crossfit gym owners and coaches:

  • Save money compared to expensive third-party services.
  • Spend less time creating gym programming
  • Keep their programming fresh, effective and aligned with their community.
  • Bonus: Possibly extend programming beyond weeks to larger more complete training blocks

But this approach isn’t just for CrossFit gym owners... Whether you run a local gym, manage a tutoring service, or operate a small clinic, this approach highlights how any business can begin using AI today to improve operations:

  • Use tools like ChatGPT with a simple prompt and a few structured inputs to accelerate work
  • Leverage the capability to automate repetitive, time-consuming tasks
  • Possibly replace expensive or rigid vendor solutions with something flexible and less expensive
CrossFit, Fitness Technology, AI Workflows, Gym Programming, LLM, Prompt Engineering, Automation