workouts · food · weigh-ins · notes — one log

A fitness log that takes one sentence.

Tell Claude, ChatGPT or the chat built into the app what you lifted and what you ate. It writes the log, checks it against the program you wrote in plain prose, and reads it back when you ask. Your Apple Watch fills in the days you never mentioned.

$15/mo — pay by the year ($150) and two months are free · 14-day free trial, cancel any time.
One subscription covers every Parsons product — not just this one.
no formsno food databaseno streakbackdate anything
parsons · fitnesswhat actually gets stored
saidwritten
yousquats 235×8×4, RDLs 190×10×3, dead bugs. 50 min.
log ▸workoutsquat 235×8×4 · rdl 190×10×3 · dead bugs · 50 min
youchicken bowl, rice, guac — big one
log ▸food~720 kcal · 52p / 78c / 22f · estimated, correctable
youwhat did I bench last time?
recall ▸exercise: "bench"Aug 15 — 185×5×3 · you noted "left side lagging"
nothing written · reads are metered but never capped
The pain, named

You didn't quit. You ran out of five minutes.

Nobody abandons a tracking app because they stopped caring about their body. They abandon it because logging one ordinary Tuesday costs more time than the Tuesday was worth — and because doing the whole job properly takes two apps and two subscriptions.

Here is that Tuesday, itemised.

one ordinary Tuesday · logged the old way
open the app0:04
search "chicken"0:11
34 results · 6 say "chicken breast"0:19
is that one raw or cooked?0:31
serving: 1 cup / 100 g / 1 breast?0:44
save0:47
× 4 meals3:08
switch apps3:14
squats — set 1 · 2 · 3 · 44:52
RDLs — set 1 · 2 · 35:40
total, one day5:40
the stack people recommend2 apps
MyFitnessPal Premium + Hevy Pro$22.98+/mo
the same Tuesday, said out loud
“squats 235×8×4, RDLs 190×10×3, 50 min — and a chicken bowl with rice and guac for lunch, big one”
one sentence · two entries0:09
“5–10 minutes just entering food that I ate.”the friction budget for a meal is one sentence
“A search for ‘banana’ returns dozens of entries with different calorie values.”the crowdsourced database is the thing buyers trust least
“So I need two subscriptions?”the honest answer from the category is yes
The turn

There is no logging screen.

Everything on that receipt is the cost of an app that first has to get you to open it. Fitness has no field to fill in, because the thing writing your log is the assistant you were already talking to. The web console exists — it is a real product, with its own AI chat built in — but you never have to open it.

log food
squats 235×8×4, RDLs 190×10×3, 50 min
this is the entire input surface
  • no tab bar
  • no plus button
  • no serving-size picker
  • no macro rings
  • no daily goal to miss
  • no streak to break

Every rival is an app you have to open, so every rival's retention engine is a streak. Fitness is not an app you open — it is six tools inside the assistant you already talk to. Which is exactly why it can afford to have no streak at all, exactly one nudge when you go quiet, and total silence after 35 days.

  • Their voice feature is an input method that ends in their schema, in their app, in a session they had to get you to start.
  • Ours ends in the same thread where you ask “am I on program this week?” — and the answer comes from one call that reads your program alongside your numbers.
and this exists too, for when you'd rather look at it
fitness.parsons.ai/app — log CRUD, day view, program editor, full-text search, built-in chat, live usage-vs-cap readout.
The mechanism

Six tools. One writes. One reads.

There is no clever routing here and that is the point. log is the only tool that writes an entry — the health feed later on is the same write path, not a second one. recall is the only tool that reads one — and it answers everything in a single call, which is why “am I on program?” is a question at all rather than four screens you compare yourself.

write path
you say it→ log→ raw sentence stored+ the model's extraction stored beside it
Both layers are kept. The raw text is the ground truth; the extraction is editable, so correcting a number never rewrites what you actually said.
read path
you ask→ recall→ one call
program
your prose doc, read every time
days
kcal, protein, workouts, kcal burned, weight — plus steps, active kcal and sleep on watch days
entries
the matching entries themselves
totals
all-time totals by kind
all four return together — that is one call, not four screens
the same question, in a tracking app
open app→ tab: diary→ tab: exercise→ tab: progress→ tab: settings
Four screens, four taps, and still no answer to “am I on program this week?” — because no screen holds your program and your week at the same time.
the whole surface, and it is the whole surface logthe only write recallthe only read amendedit or delete update_programyour prose doc feed_settingsthe watch feed digest_settingsthe Sunday email
Your program

Write it the way you'd say it to a training partner.

One markdown document, up to 10,000 characters. Rotation, add-ons, daily items, calorie and protein targets, goal weight, injuries. No schemas, no goal tables, no dropdowns — because the thing reading it is a model, and a model can read “no overhead press until the left shoulder stops clicking.”

Every answer you get is checked against this document. Change it by talking; update_program replaces it whole.

None of those forty controls has a field for a shoulder that clicks.
update_program
program.md · yours, in your words
Push / pull / legs, 4× a week — Tue Thu Sat Sun.
Left shoulder: no overhead press until it
stops clicking. Face pulls every session,
no exceptions.
Goal 178 lb by November. Protein floor 170 g.
If I miss Saturday, legs moves to Sunday and
Sunday's off.
markdown · freeform412 / 10,000
“Saturday's shot. What now?”
Legs moves to Sunday, and Sunday's off — that's your rule, not mine. Face pulls either way.
There is no adaptive algorithm underneath this and we won't pretend there is. The program is prose; the model is the comparison engine.
One stream

Food and lifting were never two problems.

The stack people are told to run is a lifting app plus a nutrition app. The sharpest product in the category recently made that official by shipping its nutrition and workout apps as two separate products at $11.99/mo each — MacroFactor’s published list price on monthly billing, checked August 2026.

Fitness keeps one stream with one read path — which is the only reason a sentence like “my protein's been under 140 on every leg day this month” is answerable at all.

nutrition app
chicken bowl, rice, guac
weighed 178.2 lb
two eggs, oats, shake
the sets that day — not here
its own subscription
entries · one table, four kindsfitness
workoutsquat 235×8×4 · rdl 190×10×3 · 50 min
foodchicken bowl, rice, guac — ~720 kcal
weightweighed 178.2 lb
noteleft shoulder quiet all session
workoutWatch: Functional Strength Training, 47 min
foodtwo eggs, oats, protein shake — 41 g protein
One entries table. One recall. Full-text search across all of it.
lifting app
squat 235×8×4
Watch: 47 min strength
left shoulder quiet
the protein that day — not here
its own subscription

Cut it in half and the question “was my protein low on leg days?” has no home on either side of the line.

The health feed · shipped, not coming

A day you never mentioned is still in the log.

Ask your AI to set up the health feed. feed_settings mints a key, hands you the endpoint, and walks you through Health Auto Export on your iPhone — one conversation, no Parsons app required. After that, Apple Watch workouts become real log entries, and steps, active energy, basal energy, sleep and weigh-ins land as day metrics. Units convert on the way in: kJ to kcal, kg to lb, hours to minutes.

Saturday · nothing typed all daysource: feed
06:41steps 8,214
09:12workoutFunctional Strength Training · 47 min · 388 kcal → logged as an entry
13:05active kcal512 kcal
19:03weight178.2 lb — converted from 80.8 kg
23:58sleep6 h 51 m 411 min
zero conversations · zero taps
how was Saturday? You moved 8,214 steps and did 47 minutes of strength work, 388 kcal. No food logged that day. You weighed in at 178.2 — down 1.4 from four weeks ago. Slept 6 h 51 m.
step 1
Ask your AI to turn on the health feed. It calls feed_settings(create_key: true).
step 2
You get a key like fik_…, shown once — only a SHA-256 of it is ever stored — plus the endpoint and the Bearer header.
step 3
Paste it into Health Auto Export as a REST automation. Call feed_settings with no arguments any time to see connection state, last delivery, and days-with-data in the last 7.
the same watch workout arrives twice rejected · hk-a3f19c… A uniqueness constraint on (project, user, idempotency_key) means re-reading your Health data can never double-log a week.

Health Auto Export is a third-party iPhone app — App Store list price $2.99 one-time for Basic, and $24.99 one-time (or $6.99 a year) for the Premium tier that does the unattended background sync, checked August 2026. It works, but it is not "just works", and we would rather say that here than have you find out on day two. The Parsons companion app that removes this step is spec'd and not built — what is coming is the app, not the sync. Android Health Connect needs that native app, so there is no Android path yet.

Reading it back

One question. One call. Everything it needs.

Pick a question. All four panels return at once — because recall is one call, and sequencing them would be a lie about how it works. The default window is the last 14 days; ask for more and it widens.

recall(exercise: "bench")
program
Read every time. Protein floor 170 g; no overhead press while the shoulder clicks.
days
Per-day rollups for the window — kcal in, protein, workouts, kcal burned, weight. Watch days add steps, active kcal and sleep.
entries
Aug 15 — bench 185×5×3, noted “left side lagging”. Matched in the raw text and in the extraction.
totals
All-time totals by kind: workouts, food, weigh-ins, notes.

Last-performance lookup by exercise, day rollups, and FTS5 full-text search over the entire log are all the same tool. Asking is metered and never capped — the meter in the pricing section stays at zero no matter how many of these you fire.

Corrections

The log is editable on purpose.

Backdate an entry to when it actually happened — occurred_at takes a UTC offset, so “yesterday's 6:30 session” lands on yesterday without you doing timezone arithmetic. Change the text, the kind, the extraction, or the time. Nothing is append-only, because a log you can't correct is a log you stop trusting.

Deleting is deliberately one step harder. amend will not destroy an entry on a single call — it quotes the entry back at you and waits for an explicit confirm: true.

amend · occurred_at · confirm
before
Aug 19bench 3×8 @ 185
that was 3×5, not 3×8
after — same row, rewritten in place
Aug 19bench 3×8 3×5 @ 185 · volume recalculated
same row · same timestamp · nothing below it moved
✕ refused · confirmation required
Deleting the entry from Aug 19: “bench 3×5 @ 185, felt easy”. This cannot be undone. Call amend again with confirm: true if that is what you meant.

And when you do want it gone for good: account deletion purges all five tables — entries, programs, feed days, ingest keys and digest state — through the platform's deletion orchestrator. Not a soft flag.

The Sunday email

One email a week. Then, if you go quiet, one nudge. Then nothing.

Any Sunday there was a week to score, you get a recap: gym days and what you did, average calories and protein a day, average steps from your watch, weight and the 30-day change. The numbers are in the subject line, so it is useful before you open it.

If the log goes quiet you get exactly one gentle nudge for that quiet spell — not one a day. Past 35 days we stop entirely and leave you alone. One email per person, not one per project. Turn it off by telling your AI: digest_settings.

The on/off switch is owned by the notifications service, not stored here — so your preference and the send gate can never disagree.
42 days from your last entrythis is the entire notification policy
day 0last entry one nudgethat's all you get, for this whole quiet spell day 35we stop entirely

Most products animate toward a crescendo here. This one runs out in grey, on purpose. There is no code anywhere in Fitness that counts consecutive days — no streak to break, and nothing that gets louder the longer you're away.

Four ways in

Four ways in. Not one of them is a Parsons app you install.

Two of them need no setup at all and run in a browser. Only the watch route involves your phone, and it uses a third-party app we name rather than hide.

01

Your own AI

Claude, ChatGPT or Cursor. The console's connect card carries step-by-step instructions for all three. Your account gets one connection that carries every personal Parsons tool — Fitness included.

one connection · minted for you at sign-in GET YOURS
02

The chat that's already in it

The console ships its own AI chat — conversation history, searchable, with suggestion cards and a command palette. Nothing to connect. If you have never heard of MCP, this is your whole answer.

▸ suggestion
“log yesterday's session”
▸ suggestion
“how's my protein this week?”
⌘K · command palette
03

Your watch

Health Auto Export — a third-party iPhone app you buy once — posts to your ingest endpoint on a schedule. No conversation involved: the log fills itself.

method
POST
header
Authorization: Bearer fik_…
limits
4 MB · 60 req / 300 s
per delivery
up to 50 workouts
04

The console itself

Log CRUD, the day view, the program editor, full-text search — and a live usage-vs-cap readout, read off the very same fence the writes use.

log entries this month1,344 / 6,000
a plan meter you can see is itself a trust device
The honest part

Everything it does. And a list of what it won't.

Every one of these is a real absence, not a roadmap tease. If one of them is the thing you actually need, you should know it here and not in week two. The right-hand column is what happens instead, and it is not an apology.

No streak

not hidden, not off by default — nothing in the product counts consecutive days

instead

Days since your last workout, gym days this week, and the all-time weight trend. Numbers you asked for, not a score you can break.

No food database to search

nobody else's “banana” entry is involved

instead

You say it in words, the model estimates the calories and macros, and if it is off you correct it and it redoes the math. The raw sentence is kept either way.

No barcode scanner

and no plans for one

instead

Say the food. If gram-level precision and micronutrient depth matter more to you than speed, Cronometer is genuinely better at that and we would rather say so here.

No native iPhone or Android app

spec'd, not built, no date

instead

The console is a web app that works on a phone, and your watch already feeds the log through Health Auto Export today. The app that removes that third-party step is what's coming.

No Android Health Connect

it needs the native app first

instead

iPhone works now. Android users can log by talking exactly like everyone else — they just don't get the automatic feed yet.

No adaptive targets, no algorithm

the program is prose, not a model

instead

You write the targets. The AI compares your log against them and tells you the truth. Nothing silently moves your numbers because a formula decided you were plateauing.

No PR badge on a dashboard

there is no PR detector

instead

Ask, and it compares today's set against your last performance of that exercise. That lookup is real. A chip on a screen would not have been.

No Strava, Garmin, Whoop, Oura or Fitbit connectors

Strava's API bans AI operation outright

instead

Apple Health via Health Auto Export is the integration, and it is the only one. Anything that writes into Apple Health arrives with it — but we are not going to show you a wall of logos we don't talk to.

Side by side

Including the rows where we lose.

A table that only flatters the seller reads as a lie, so three of these rows are losses, the price row is one we no longer win, and all of them are printed at the same weight as the wins.

  Parsons Fitness MyFitnessPal Premium Cronometer Gold MacroFactor Hevy Pro
Monthly price $15 $150 a year · not the cheapest cell in this row$19.99$10.99$11.99 per app$2.99–$3.99
Food and lifting in one product yesfood onlyfood onlytwo separate appslifting only
Program written as freeform prose yes ≤10,000 charsnononotemplated routines
Driven from your own Claude / ChatGPT yes six MCP toolsnononono
Verified food database noyesyes best in classyes—
Barcode scanner noyesyesyes—
Native offline app not yetyesyesyesyes
Streak / habit pressure none — not computedyesyesyesyes
Apple Watch fills the log unattended yes via Health Auto Exportyesyesyesyes
Other products on the same bill every Parsons productnononono
Separate projects at no extra cost unlimitednononono

Rival monthly list prices as published by each vendor, checked 22 August 2026. MyFitnessPal Premium $19.99/mo is the App Store list price — myfitnesspal.com/premium itself currently leads with Premium+ at $24.99/mo and Premium at $79.99/yr. Cronometer Gold is $10.99/mo ($59.99/yr). MacroFactor is $11.99/mo for each of its two apps, with an $89.99/yr bundle that covers both. Hevy Pro runs two monthly SKUs, $2.99 and $3.99 ($23.99/yr). Ours is $15/mo, or $150 a year. They change; check before you switch.

Three of those rows are losses, and the price row is no longer a win: at $15, Cronometer Gold, Hevy Pro and either half of MacroFactor are all cheaper than we are for the one job they each do. If a verified barcode database is the thing you actually need, Cronometer is the better buy — and we would rather you knew that here than found out in week two. The rows nothing on this table can answer are the last two: the same $15 also runs Money, Journal, Tracker, CRM and the rest, across unlimited projects, with nobody counting seats.

The part nobody else gives you

Unlimited projects. At no extra cost.

A project is a separate world: its own data, its own members, its own spend caps. Keep your own training log in one, run a business out of another, hand a client a third. Everywhere else this is a workspace upgrade or a per-seat line. Here it is the same $15.

Personal
your training log · your programmembers: youspend cap: your own
+$0.00
The gym
separate data · separate logmembers: you + 2spend cap: set per project
+$0.00
A client
separate data · separate logmembers: you + clientspend cap: set per project
+$0.00
one subscription · every project · every Parsons product $15.00 / mo

Because projects are free and unlimited, the Fitness entry allowance is counted account-wide rather than per project — a per-project tally would be no limit at all. That is the honest trade and it is stated in the pricing section below.

Pricing

Fifteen dollars a month. For every Parsons product.

Three of the four rivals in the comparison above don’t show a price on their own homepage at all. Here is ours, with the allowance attached — because a price without an allowance is a teaser, not a price. Monthly or yearly; the year costs exactly two months less.

Parsons Base
$15 / month
or $150 / year — two months free
fitness log entries included
6,000 / month
≈ 200 entries a day · counted account-wide · UTC monthly reset
  • All six tools — log, recall, amend, update_program, feed_settings, digest_settings
  • The health feed, the Sunday recap, the console and its built-in chat
  • Reads are never capped — ask as much as you like
  • Every other Parsons product on the same subscription
  • Unlimited projects
the same scale, both rowswhat actually counts against you
Writes$15 / month
6,000entries / month
Readsincluded
no capmetered, never fenced
Fire every question in this page's question bar a hundred times — every recall, every full-text search, every last-performance lookup — and that second bar stays exactly where it is. Only what you write counts.
  • Watch workouts count too. A workout that arrives from the health feed consumes the same allowance as one you typed. We would rather say that than have you discover it.
  • Going past 6,000 is not a dead end. Extra entries draw from your prepaid credits at roughly wholesale-plus-half — building stays free inside the allowance, and the bill starts when real usage does. No silent failure, no support ticket.
  • There is still a hard ceiling far above the allowance — an anti-abuse fuse, not an upsell. It refuses plainly, and the billing console carries an “ask us to raise it” path if you hit it honestly.
  • 14-day free trial on your first subscription. Checkout collects a card; cancel any time. Bill monthly, or by the year for the price of ten months — $150. There is no free tier, no per-seat charge and no enterprise tier.
kicker one

One subscription, every product

The same $15 that runs your fitness log runs Money, Journal, Tracker, CRM, Storage, Email, Scheduler, Domains and the rest of the platform. Not a bundle you upgrade into — the account is the subscription. Things that carry their own vendor cost — a domain name, a phone number, open-ended AI — are priced separately and shown before you buy them.

kicker two

Unlimited projects, free

Separate data, separate members, separate spend caps, no extra line on the bill. Everyone else calls a second workspace an upgrade.

kicker three

All of it reachable by AI

Every Parsons product ships MCP tools, so your assistant drives them, not just our web UI. Fitness ships six of them, plus whoami.

subscription · access to every product$15.00
fitness log entries · 6,000 included$0.00
reads, search, last-performance lookups$0.00
projects · unlimited$0.00
open-ended AI chat · prepaid wallet, provider cost × 1.5shown before you spend
what leaves your card this month$15.00
or the same year paid up front · two months free$150.00

“Is it worth $15?”

Do the comparison at the level you would actually buy at. One app in this category lists between $10.99 and $19.99 on its own, and the stack the category itself recommends — a nutrition app plus a lifting app — runs $13.98 to $23.98 a month depending which halves you pick, with the pairing people actually name, MyFitnessPal Premium plus Hevy Pro, at $22.98. So fifteen dollars is not a saving against the cheapest possible pair — it is about what the two halves cost anyway, bought as one log instead of two. What it adds is everything else on the same line of your statement: Money, Journal, Tracker, CRM, Storage, Email, Scheduler and Domains. Nothing here is charged per seat and a second project is not an upgrade — projects are unlimited and free, where everywhere else a second workspace is a second bill. And the genuinely expensive things — open-ended AI conversation, voice minutes — are prepaid, capped and in a different column where you can see them before you spend, so the subscription is access rather than a loss-leader with a metered bill hiding behind it. Anything with its own recurring vendor price, like a phone number, is a separate line you approve first. New accounts start with $2 of AI credit, which is enough to find out whether the chat is worth more.

Questions

The ones people actually ask first.

Answered with the mechanism, not with reassurance. Where the answer is “no”, it says no.

Do I have to weigh and measure everything?
No. “Chicken bowl, rice, guac — big one” is a complete entry. The model estimates the calories and macros; if it's off, correct it and it redoes the math. Weigh-ins are deliberately conservative: it wants a unit (178 lbs) or the verb (weighed 178), takes a bare number only when it's the only number in the sentence, and refuses anything outside 50–1,500 lb. It would rather ask than guess.
Do I need Claude or ChatGPT?
No. The console has AI chat built in with nothing to connect — that is the whole product for most people. If you do use Claude, ChatGPT or Cursor, the connect card in the console gives you your connection and the step-by-step for each one.
Does the AI cost extra?
All six Fitness tools are covered by the subscription. Open-ended chat draws from your shared Parsons AI wallet — prepaid, priced at provider cost × 1.5, and visible before you spend it. Heavy conversation is the only thing that ever adds up.
Does it see Apple Health?
Yes, today — through Health Auto Export on your iPhone, with no Parsons app needed. Watch workouts become log entries; steps, active and basal energy, sleep and weight become day metrics. Android has no automatic path yet.
What if I forget to log for two weeks?
You get one gentle nudge. Not fourteen. Past 35 days of silence the emails stop entirely. There is nothing to break and nothing to restart.
Will it double-log a watch workout I also mentioned?
No. Health-sourced entries carry an hk-… idempotency key and the database has a uniqueness constraint on (project, user, idempotency_key). The same workout cannot land twice, however many times your phone re-sends it.
Can I delete my data?
Yes, for real. Account deletion purges all five tables — entries, programs, feed days, ingest keys and digest state — through the platform's deletion orchestrator. Single entries need an explicit confirm: true so nothing goes on one careless call.
Is there a free plan?
No. 14 days free, then $15 a month. The trial runs through Stripe Checkout, so it takes a card, and you can cancel any time. We would rather charge for the product up front than paywall something you were already using.
Monthly or yearly?
Either. It is $15 a month or $150 a year. The yearly price is ten months’ money for twelve months’ access — check the arithmetic, it is exactly two months free. You pick the interval at checkout and you can switch later.

Fitness keeps a log and does arithmetic on it. It is not medical advice, it does not diagnose anything, and it is not a clinical record — talk to a doctor before making health or nutrition decisions.

Stop filling in forms.
Just say it.

Workouts, food, weigh-ins and notes — one log, in your words, checked against your program, topped up by your watch.

$15/mo or $150/yr · 14-day free trial, cancel any time · covers every Parsons product.