How many watts was your workout?
WodWatts turns any workout into one number: average watts. Every rep becomes joules of work against gravity, and joules ÷ seconds = watts. Add it to your AI assistant, or try it right here first.
Use WodWatts in your AI assistant
Download the WodWatts skill and your assistant can score workouts, compare athletes, and design workouts to a watt target, right in the chat. Just describe the workout in plain words.
Want to see it work first? Try the calculator below ↓
Claude (claude.ai, desktop and mobile)
- Download wodwatts-skill.zip. Don't unzip it.
- In Claude, open Settings → Capabilities and turn on Code execution and file creation ("Create and edit files" in newer layouts).
- Go to Customize → Skills, click +, choose Create skill → Upload a skill, and select the zip. Toggle it on.
- Start any chat and ask about a workout. Claude loads WodWatts automatically when it's relevant.
Free, Pro, Max and Ultra plans can upload skills. Team and Enterprise users can too, unless their admin has turned user-created skills off. If the menus have moved, see Use skills in Claude.
Claude Code: unzip into your skills folder so the file sits at ~/.claude/skills/wodwatts/SKILL.md (or .claude/skills/ inside a project to share it with your team).
ChatGPT
Quick, one chat: attach SKILL.md and wodwatts.py to a new chat, paste the instructions below, then describe your workout.
Reusable, a custom GPT:
- Go to Explore GPTs → Create, then open the Configure tab.
- Name it WodWatts and paste the instructions below into Instructions.
- Under Knowledge, upload SKILL.md and wodwatts.py.
- Under Capabilities, turn on Code Interpreter & Data Analysis so it can run the exact calculator.
- Save. A ChatGPT Project works the same way: add both files and paste the instructions into the project's instructions.
Gemini
Quick, one chat: upload SKILL.md to a new chat, paste the instructions below, then describe your workout.
Reusable, a Gem:
- In Gemini, open Gems (in the side menu or Explore Gems) and choose New Gem.
- Name it WodWatts and paste the instructions below into Instructions.
- Under Knowledge, add SKILL.md and wodwatts.py.
- Save, then chat with your Gem. If it can't run the script, it uses the by-hand method in SKILL.md, which gives the same answers.
Copilot, Perplexity, Mistral, local models and others
- If it accepts files: attach SKILL.md to the chat (plus wodwatts.py if it can run Python) and paste the instructions below.
- If it has custom instructions, a system prompt, or a "space": paste the full contents of SKILL.md there. Every chat in that space will use WodWatts.
- If it only takes text: open SKILL.md, copy everything, and paste it at the top of your first message.
Developers: the script runs on its own with Python 3 and no dependencies. Try python3 wodwatts.py --list, python3 wodwatts.py workout.json, or python3 wodwatts.py --selftest. The workout format is documented in SKILL.md.
You are WodWatts. Score workouts in watts by following the method in the attached SKILL.md exactly. If you can run Python, use wodwatts.py from your files for the calculation; otherwise calculate by hand with the coefficient tables in SKILL.md. Ask for the athlete's height and body weight if they're missing, and report results in the layout SKILL.md describes.
I'm 5'10" and 180 lb. I did 21-15-9 thrusters at 95 lb and pull-ups in 4:42. How many watts was that, and how would it compare with a 2,000 m row in 7:45?
Score a workout right here
Not ready to install anything? Try the calculator before you add the skill. It uses the same method your assistant will, so you'll know exactly what you're getting.
How it works
Each rep's work is 9.81 × [M × (a·H + b) + L × (c·H + d)] joules, where H is height (m), M is body mass (kg), and L is load (kg). The coefficients come from average body-segment lengths (Drillis & Contini) and masses (Clauser et al., 1969) — for example, a pull-up lifts your whole body one arm-length (0.332 H), a thruster adds a full squat to a press.
Rowers and SkiErgs use the Concept2 pace or calorie formulas; machines that show watts use that number directly. Running is estimated from distance (≈1 J/kg/m of mechanical work) plus elevation gain.
Lowering, holding, isometric work and horizontal movement score zero, so heavy grinding work is under-credited relative to how it feels. Scores are most useful for comparing workouts and tracking the same athlete over time.
Reference: a 1.75 m, 68 kg athlete doing 21-15-9 thrusters (43 kg) and pull-ups in 5:00 scores ≈160 W; a 2 km row in 8:00 ≈203 W; a flat 5 km in 25:00 ≈227 W.