0saas

Job ticket 747893 · consumer · locker room · no subscription

Fitbod prints no free plan. One equipment line was always enough.

Fitbod's own FAQ describes membership-only access at US$15.99 a month or US$95.99 a year for AI-suggested sessions. This job ticket hands the planning to a prompt you own: paste your equipment and your last session, and the locker room hangs the next honest workout — plus load plates that read your pasted log and stamp ADD, HOLD or BACK-OFF with the evidence. Your body data never leaves a file you control.

Fitbod is a trademark of its owner. This is an independent, unaffiliated comparison built on Fitbod's own published pricing material, linked below and re-read every thirty days.

Paste the equipment list, press hang the session, and the rack answers with one locker wall: warm-up, main movements with sets and rest, a finisher — every main row citing the gear on your list. — rendered in this browser

Source: noneRendered: 0Uploaded to 0saas: nothing

Sample data is illustrative, not a claim about Fitbod. Every Fitbod figure on this page comes from the linked pricing page, read 2026-09-27.

The prompt pack

Two prompts, each mapped one-to-one onto a Fitbod feature you are currently rationed on. Run them from this page with a free key, or copy them into any free chat model — the text is identical either way, and it is printed in full at the bottom of this section so it survives this site.

Loading the pack from tools.json… If this fails, the full prompt text is still readable below.

One-time unlocks only, never a subscription. If a price ever appears here it was read from Stripe in that request, not typed by hand. An unlock is client-side gating, not secure payment verification: it is stored in this browser and cannot prove payment to anyone else.

What Fitbod's own pricing page says

Read from fitbod.me/faqs/ on 2026-09-27. Fields we could not read are marked unconfirmed rather than filled in with a plausible number.

What Fitbod prices membership-only — read from fitbod.me/faqs on 2026-09-27 — vs this job ticket. — verified 2026-09-27
The jobFitbod (no free plan printed)This pageThis page + a free-tier model
Free planNone printed — membership-only per FAQTwo prompts, free on free-tier modelsundefined
Next-session planningUS$15.99 /month or US$95.99 /yearRuns from a pasted equipment list, US$0undefined
Load progression adviceInside the membership black boxADD / HOLD / BACK-OFF plates quoting your logundefined
Your historyLives in their accountA pasted log you keep and delete at willundefined

What this replaces, and what it does not

A displacement claim you cannot substantiate is a lie with good typography. This is the whole scope, including the parts where Fitbod wins.

Next-session planning from your gear

Warm-up, main block, finisher — sets, reps and rest, citing your equipment list

Load calibration from a pasted log

Per-lift verdicts with dated evidence, relative adjustments only

A training file you keep

Markdown and JSON downloads of every render

No saved history or streaks

Logs are re-pasted each time; nothing persists between visits

No medical guidance

Pain in a log triggers the BACK-OFF rule and a see-a-professional note, never diagnosis

No exercise video database

Movements are named text; form videos remain wherever you already watch them

The prompts, in full, as text

Copy these into any model. They are the product; the page around them is convenience. Each block is the exact system prompt the interactive runner sends, plus the user-message template.

Prompt 01 — 1. Next-session rack · fitbod-session-rack v1.0.0 · best ally: Groq Cloud — free tier · llama-3.3-70b-versatile

Replaces: The AI-suggested workout plan itself: one next session, built from your equipment and your last session, with sets, reps and rest printed on the locker door.

Why this model: Turning an equipment list and a last session into one balanced next session is constraint-following with variety pressure; a free 70B instruct model at mid temperature composes credible sessions without repeating yesterday's pattern. Fallback ally: OpenRouter — :free model variants.

System prompt (1506 chars):

You run the locker room of a no-nonsense gym: given the equipment a reader has and the session they last did, you hang exactly one next session on the wall as a set of locker doors — warm-up, the main movements with sets, reps and rest, and a finisher. You keep it honest: nothing the reader cannot lift, nothing they just trained hard, nothing requiring gear they did not list.

Return ONLY one JSON object. No markdown fences, no commentary, no preamble.

{
  "kicker": string (max 8 words),
  "title": string (max 8 words),
  "subhead": string (max 20 words),
  "items": [
    { "title": string (the movement name; body: sets x reps, load guidance in plain words (light / moderate / heavy vs what they last logged), rest seconds, and a one-breath cue for form), "tag": string (one of WARM-UP | MAIN | FINISHER | NOTE), "body": string }
  ],
  "notes": [ string (one short footnote per run-wide decision) ]
}

Hard rules:
1. Main block holds 3 to 5 movements; no muscle group appears in both the pasted last session and this main block at high load.
2. Every MAIN row cites one piece of equipment from the reader's list exactly as they wrote it.
3. Loads are stated relatively (e.g. one plate lighter than Friday), never as invented absolute numbers.
4. If the equipment list is empty, build a credible bodyweight session and say so in a NOTE item.
5. Warm-up and finisher are named movements with durations, not the word 'stretch'.
6. Keep every cue under ten words; this is a wall card, not a textbook.

User message template:

Build my next session. Equipment I have: {{equipment}} The session I last did (movements + how it felt): {{last_session}}

Variables:

  • {{equipment}} — Your equipment list (max 400 chars) sample data shipped with the tool
  • {{last_session}} — Your last session + how it felt (max 400 chars) sample data shipped with the tool

Output schema (the answer must match this exactly):

{ "type": "object", "required": [ "items" ], "properties": { "kicker": { "type": "string" }, "title": { "type": "string" }, "subhead": { "type": "string" }, "items": { "type": "array", "minItems": 1, "maxItems": 60 }, "notes": { "type": "array" } } }

Decoding: temperature 0.6 · max 1600 output tokens · responseMimeType application/json · budget ~600 in / ~900 out per session · cost per run: 1 request against Groq's free daily quota; the relay floor needs no key at all.

Prompt 02 — 2. Load calibration plate · fitbod-load-plate v1.0.0 · best ally: OpenRouter — :free model variants · openai/gpt-oss-120b

Replaces: The progression intelligence membership sells: reading your pasted workout log and telling you, per lift, whether to add weight, hold, or back off this week.

Why this model: Auditing a week of logged sessions for fatigue signals and load jumps is pattern-matching over semi-structured text; a free long-context model reads the whole week at once and emits a defensible per-lift verdict. Fallback ally: Groq Cloud — free tier.

System prompt (1356 chars):

You are the gym's load spotter. Read the pasted workout log, and for each recurring lift stamp a brass plate: ADD (go up), HOLD (repeat), or BACK-OFF (reduce), each with the logged evidence that forced the call. A plate without evidence never hangs.

Return ONLY one JSON object. No markdown fences, no commentary, no preamble.

{
  "kicker": string (max 8 words),
  "title": string (max 8 words),
  "subhead": string (max 20 words),
  "items": [
    { "title": string (the lift name as logged; body: the verdict reason in <= 12 words citing the log (dates, reps achieved vs target, reported soreness or failed sets), then the suggested change in relative terms), "tag": string (one of ADD | HOLD | BACK-OFF), "body": string }
  ],
  "notes": [ string (one short footnote per run-wide decision) ]
}

Hard rules:
1. One item per distinct lift; lifts logged once get a HOLD with 'insufficient log' as the reason — never invent history.
2. ADD requires the logged reps to meet or beat the stated target on the most recent date.
3. BACK-OFF is mandatory when the log reports joint pain or two consecutive missed targets; say which rule fired.
4. Never prescribe absolute kilograms or percentages; adjustments are relative (slightly up, same, one notch down).
5. Quote the log's dates; a verdict without a date is decorative.
6. Write in the log's own language.

User message template:

Calibrate this week's loads from my log. Rules I train by (targets): {{targets}} My workout log: {{log}}

Variables:

  • {{targets}} — Your rep targets (max 300 chars) sample data shipped with the tool
  • {{log}} — Your workout log (paste) (max 4000 chars) sample data shipped with the tool

Output schema (the answer must match this exactly):

{ "type": "object", "required": [ "items" ], "properties": { "kicker": { "type": "string" }, "title": { "type": "string" }, "subhead": { "type": "string" }, "items": { "type": "array", "minItems": 1, "maxItems": 60 }, "notes": { "type": "array" } } }

Decoding: temperature 0.2 · max 1400 output tokens · responseMimeType application/json · budget ~900 in / ~700 out for a week of logs · cost per run: 1 request against the free OpenRouter daily pool; the relay floor needs no key at all.

Questions worth asking before you cancel

Why is Fitbod's price hidden in a FAQ?

We did not decide that. The dedicated /pricing path on their site redirects to a soft-404, so on 2026-09-27 the FAQ's billing answer was the live public price — and that is exactly what we quote, source linked.

Can a prompt really replace adaptive programming?

For the planning decision — what to do next, at what relative load — yes, because that decision reads from your equipment and your recent log in one shot. What a prompt cannot do is watch your bar speed or count your reps automatically; that part stays with you, pasted in your own words.

Where does my workout log go?

Nowhere. It travels in one request to the free ally model you choose, the render comes back, and the page keeps nothing — the downloads are yours, and clearing the tab clears the rest.

What is the brass plate stamp?

A readability device, not a gimmick: every verdict wears ADD, HOLD or BACK-OFF so a fast glance at the wall tells you the shape of the week before you read a single reason.

Nothing is loaded from X or LinkedIn until you click, and no share is counted, logged or reported back to us — the buttons are plain links to each network's own share page.

Next on the ledger