Features
Everything Octane does, in the app's own words.
Every line below is one the app writes. Where it can't measure something, it says so — and this page says so too.
Today
One decision, in one of eight words.
The top of Today: a label, one sentence naming what sat outside your usual range, a confidence word, and the signals behind it.


- TRAIN AS PLANNED
- Nothing measured this morning is outside your usual range.
- PROCEED WITH CAUTION
- Sleep sits outside your usual range; the session stands as planned.
- REDUCE INTENSITY
- Resting HR and HRV sit outside your usual range; today asks for less.
- SHORTEN
- HRV sits outside your usual range; today asks for less.
- RECOVERY DAY
- Sleep, resting HR and your check-in sit outside your usual range; today asks for less.
- REST DAY
- A rest day on the plan — nothing to decide; tomorrow's session is the next read.
- SESSION COMPLETE
- Today's session is on the record; the read follows below.
- NO PLAN
- No session is planned today; set one and Octane weighs it in the morning.
Under TRAIN AS PLANNED the headline is “Nothing flagging — run it as planned”; under PROCEED WITH CAUTION it is “Run it as planned, with today's signals in view”.
When nothing was measured
- “No recovery signals were measured this morning; this recommendation rests on the plan and your training load.”
Most mornings a wearable has nothing to say. Octane says so, rather than reading a green light into silence.
- 3 of 4 recovery signals measured
- Baselines still forming
- No session recorded yet
- Morning check-in on file
- Recovery data from today
Confidence is a word, never a percentage — High, Moderate or Low — with the five things it could see listed underneath.
How do you feel?
Great, Normal, Off or Sick — and a flag if there is one to raise: fatigue, poor sleep, stress, soreness, pain, tightness, congestion, illness, GI issues. Thirty seconds, once a morning, on the same card as the decision.
Your own read, beside the measurements. It informs today's decision; it never diagnoses.
Seven rows behind every recommendation — Sleep · Resting HR · HRV · Breathing rate · Training load · Conditions · Fuel. A missing signal is named — “Not measured”, “No baseline yet”, “Not logged yesterday” — never zeroed.
Then it's yours. Follow itKeep planMy ownOn the record before you train. Octane reads the session when it syncs.
Training advice only ever suggests doing less, never more.


Before you train
What's still outstanding, and by when.
Up to four lines under the decision, each a number from your own targets and your own log. When nothing is outstanding, it says so.
Before you train
- 126 g carbs before the start
- 110 oz to your water target
- 2 doses not logged today
- 30-second check-in
Empty state: “Nothing outstanding right now.” The doses line is a count. It never carries an amount, a unit or a compound.
Tonight
- 120 g carbs of today's target still to come — tomorrow is a hard day
- Aim for 8h 15m tonight
One window at a time
The same line sits at the top of the Add sheet:
- Pre-run fuel · 46 / 70 g carbs · by 7:00
- After your session · 12 / 40 g carbs · 26 g protein
- Tomorrow: Long Run • 16mi · 249 / 375 g carbs today
Read against the clock, not the day — nothing logged at 9am is early, not low.
Tomorrow
- Carbs today carry into tomorrow's session.
- Set a start time for a pre-run fuel window.
- Sleep is tonight's training.
- Final recommendation pending morning recovery.
How big tomorrow is reads as HIGH, MODERATE or LOW against your own recent weeks — never a number invented for the occasion.


After your session
How you ran, what it cost — and when you stopped short, it says so.
Every run is read against your own comparable runs of the same distance and type, with the heat divided out. Two axes, one headline.


Your run, read Stronger
- You covered 5.3% more ground per heartbeat than your typical 5-7 mi intervals run, with the heat divided out.
- Negative split — your second half was 14 sec/mi faster than the first. That is how to run a strong session.
- Your heart rate dropped 32 bpm in the first minute after — faster than your usual 28, a good recovery sign.
- Executed to plan — 100% of the planned distance.
Compared to your own past runs of this distance. It describes what the session showed — never why.
Octane does not estimate training stimulus.
There is no load number anywhere in Octane. The stimulus line says so in words rather than inventing one.
Executed as modified — you followed the recommendation and ran 60% of the planned distance.
No grades. A reduction you were advised to make reads as the recommendation working.
How did it feel?
Easy, As expected, Hard or Very hard — and anything to flag: pain, tightness, illness, fatigue, GI issues. Your word sits beside the numbers on the ledger.


When the run stops early
CAME IN SHORT AT 2.8 OF 4.5 MI
“Stopped at 2.8 mi of a planned 4.5 mi.”
“The run ended before the planned total; the readings above are of the run that was done, not of the plan.”
A run that stopped has no second half to have run faster, so the split and fade reads are withheld rather than reported.
Why did you stop?
Pro · Session readAsked only when the read found the run cut short, and answered in your words — nine of them:
- Legs / fatigue
- Pain or a niggle
- Stomach
- Heat
- Ran out of time
- Gear or route
- Felt off
- Planned cutback
- Something else
Why you stopped is yours to say. Octane never guesses it.
The morning after
The morning after yesterday's 16.0 mi run, everything measured sits in your usual range.
The morning after yesterday's 16.0 mi run, resting heart rate is +6 bpm against your baseline.
Two facts in sequence, against your own baseline — it describes the morning, never the cause.
Yesterday you followed the recommendation and ran 16.0 mi — this morning's response is in your usual range.
The week, on the record
- 5 recommendations · 3 answered · followed 2
- 28.4 of 32.0 planned miles run.
- Reads: 2 stronger · 1 in line · 1 below.
- Mornings after: 3 in range · 1 elevated cost.
- The week ahead: Long Run • 16mi on Thu Sep 11 is the one worth protecting.
Sunday evening, written from the ledger — no model involved. The two Pro lines are the reads and the mornings after.
Push
Your run has been read
16.0 mi — stronger than your own long runs. The read is on Today.
Fuel
Logging that knows what you usually eat, and what tomorrow asks.
Calories, carbs, protein, fat, fibre, sodium and water against targets that know what day it is — logged in a tap or two, under one line that says what the next session needs and by when.

Photo
One shot, itemised, every estimate editable. A nutrition label is read as one item, the serving as printed.
Scan
A barcode you've logged before offers your usual serving — “Your usual serving, from 6 earlier logs.”
Describe
Say it or type it. Your own log answers first; the model only when it has to.
Quick add
A number and a slot. “Counts toward today. Not offered as a usual food later.”
Suggested, from your own log
Foods you've logged in this slot before, one tap to add, captioned in words and never with a number: “Usually around this time” · “Often at breakfast”. Repeat a past breakfast with Add all. Undo is one tap — “Banana added · 105 kcal · 1 g protein”.
New account: “Log a few meals and Octane will start learning what you usually eat.”
Describe
“My normal breakfast”, “same as yesterday” and “log a PB&J” are answered from your own log. Anything else is worked out by the model, and you check it before it is logged.
From your own log — no model involved.
Speech is turned into text on this phone. The recording never leaves it.
“Same shake but blueberries instead of banana” changes the one thing you named. Your other items are carried over as you logged them, not re-estimated.




Search leads with your own history, then generics, then brands; a quantity in the query — “2 bananas” — is carried into the portion. Pick several and add them together.
Targets that know what day it is
A long-run day and a rest day are not the same day. Set a target for each kind of training day and Octane resolves the right one for the date. Ten meal slots, including pre-run, during and post-run.
What the session asks
Pre- and post-run windows are bands from the literature, not a measurement of you — and with no bodyweight on file, no gram figure is shown at all.
Water against a target, with a 3pm nudge only if you're behind: “42 of 110 oz so far — there's afternoon left to close the gap.”
AI estimates are approximate. Edit anything that looks wrong.
Insights
Octane learns patterns. It doesn't invent causes.
Fifteen rules, each a fact about your own log, each carrying the count it stands on and a confidence word — never a probability.


- Speed per heartbeat
- Heart-rate drift
- Weekly volume
- Fuel before hard days
- Protein against your target
- Water against your target
- What Octane can and cannot see
- Building your baseline
- Long-run fadePro
- Key sessions against the planPro
- Hard sessions cut shortPro
- Goal-pace workPro
- Fuel for the next hard sessionPro
- Recovery baselinePro
- The morning after, by session typePro
“6 long runs over 90 days · two windows agree · baseline still provisional” — Counts only. When the two halves of the window disagree, the card says so.
Until there is enough data, a count
- “7 of 10 runs with heart rate toward a speed-per-heartbeat trend.”
- “12 of 17 measured mornings in 28 toward a trusted resting-heart-rate baseline.”
A new account doesn't get made-up insights. It gets a count toward a named floor: “Nothing here is a conclusion yet. Octane says so rather than guessing.”
Ten facts about you
Your easy-run heart rate, your efficiency by distance, where your long runs fade, your weekly norm, your training days, your carbs before hard days, your resting HR, HRV and sleep baselines, and the morning after a long run — each with a floor, and “3 of 8 easy runs” until it is met.
An insight can offer to move a target
Carbohydrates, protein, water or calories — scoped to a day or a day type, revertible, history never rewritten, protein never lowered, and the Stack never touched.
Your protein target stays where you set it.
Goal pace and the race
Goal-pace sessions, weather divided out, read as faster than, at, or slower than goal pace — never a finish projection. The race-equivalent line is a range from measured efforts, and it says what it is:
An equivalence, not a race-day forecast.
Patterns in your own training, not a diagnosis. Plenty of things move these numbers besides fitness.
Population physiology, not a measurement of you — a range to plan by.
Stack
See your stack in context.
Supplements, medications, peptides, GLP-1s — logged as you state them, on the same timeline as your training, sleep and food.
Doses as stated: “5 g · Oral · Daily”. How you're feeling, with a severity from 1 to 5, backdatable. Injection-site rotation, a checklist on Today, and adherence kept honestly: “18 of 21 expected doses.”
Creatine · 5 g · Daily
Pro · Response analysisBefore and after
28 days before · 20 days on
- Weight
- +1.4 lb · 156.6 lb → 158.0 lb · 20 vs 15 readings
- Lean mass
- +1.2 lb · 137.3 lb → 138.4 lb
- Resting HR
- 0 bpm · 47 bpm → 47 bpm
- HRV
- +2 ms · 67 ms → 69 ms
- Sleep
- +1 min · 453 min → 454 min
Why these numbers may mean nothing
- You have been on this 20 days. Most changes need longer than that to separate from normal variation.
This describes what was measured alongside this entry in your stack. It cannot show that it caused any of it.
What you've reported · Adherence 89%
On Today
- Creatine — logged
- Magnesium — not logged today
- Vitamin D — 1 of 2 logged
The doses line is a count. It never carries an amount, a unit or a compound.
On a GLP-1, the monitor restates what is already logged — weight, protein, strength sessions, how you feel — and never states that a compound did any of it.

Octane records what you tell it you take — it never recommends, calculates or adjusts a dose. Talk to your doctor or prescriber before starting, stopping or changing anything.
Season · Pro
A season on the calendar. The morning still decides the day.
Set the race and the weeks you have; Octane lays out the blocks, the weeks and the sessions.
- The planner decides what is on the calendar. The daily decision decides how it is run — and may only ever reduce it, never add to it.
- Road races from 5K to marathon, and HYROX — that configuration is marked provisional in the code, and the season says so.
- Same inputs, same season: the plan is deterministic, and its inputs are stamped onto it.
Already on a Runna plan? Octane reads it as before. A season is something you generate, never something that replaces your plan unasked.

Integrations
Don't replace your apps. Make them work together.
Runna builds your plan. Garmin records what happened. Oura sees your recovery. Apple Health carries what your phone and Watch know. Octane understands them together — with your nutrition, conditions and stack.
Runna
Your plan, from the private calendar link you paste in the app. No other account needed.
Garmin
Workouts, laps and heart rate, as your watch recorded them.
Oura
Sleep, HRV and resting heart rate, each morning.
Apple Health
Workouts and sleep from your iPhone or Apple Watch. The grant lives on your phone.
Octane
Nutrition, check-ins and your stack, logged here.
Octane reads from these. Nothing is written back to them.


When two sources report the same thing, Octane says which one it read.
“Resting heart rate: Oura and Garmin both reported — Octane read Oura.”
Your plan stays in Runna. Your workouts stay on your watch. Octane keeps its own copy of what it read, and you can delete it any time. Disconnecting a device is not a deletion request — what Octane already read stays until you delete it.
Train with the full picture.
One of the first 500.
Limited to 500 · TestFlight first · iPhone, iOS 18+