[ENERGY]

Maintenance: The Number Everything Hangs Off

[Published 2026-08-27 · 930 words]

[THE SHORT ANSWER]

Maintenance is the number every other energy figure in Base is built on, and this screen is where it is derived, shown and audited. It reads top to bottom as one argument: what you actually burn, what surplus you set against it, what surplus you actually averaged, and where that energy can physically have gone. Nothing here is predicted from your body size unless there is not yet enough data to measure it — and when that is the case, the screen says so in as many words.

The measurement

weightChangeLb = trendWeight(today) - trendWeight(14 days ago)
energyBalance  = weightChangeLb * 3500 / 14        // kcal/day, signed
maintenance    = avgDailyIntake - energyBalance

Smoothed with an exponentially weighted moving average at an alpha of around 0.2, so one strange fortnight nudges the figure rather than yanking it.

Four rules make it trustworthy, and each exists because of a specific way the naive version goes wrong.

The window ends yesterday. Today's log is partial. Including it reports maintenance a couple of hundred calories low every morning.

Intake and weight are read over the same date range. Averaging intake over fourteen days and taking the weight delta over ten produces a plausible, wrong number.

Minimum ten logged days and eight weigh-ins. Below that the weight signal is not separable from water and glycogen noise.

Blank days are excluded and counted, never averaged as zero. A day you forgot to log is not a fasting day. Treating it as one corrupts the intake average catastrophically and always in the same direction.

The full method and its failure cases are in adaptive TDEE for hybrid athletes.

Why this matters more here than in a general fitness app

Every method that adds up your expenditure inherits the error of every estimate in the sum: the watch's active energy, the running economy assumption, your unknowable non-exercise movement.

Measuring the outcome sidesteps all of it. If Saturday's long run cost 1,400 calories, the scale knows — even if your watch said 900, even if you never opened the app that day, even if you have no idea what your running economy is.

For a hybrid athlete whose weekly expenditure swings by 500 calories a day between a running week and a non-running week, that property is not a nicety. It is the difference between a surplus that exists and one that does not.

The fallback, labelled

When the window has fewer than ten logged days or fewer than eight weigh-ins, the screen shows a Mifflin-St Jeor estimate from your height, weight, age and sex — and marks it estimated.

That labelling is the point. Running the same arithmetic on four data points and presenting the result identically to a well-supported one is how a user learns to distrust every number in the app. A number that says "I am a guess" is more useful than a number that hides it.

Committed maintenance

Alongside the live figure there is a committed one — the value you accepted at the last recalibration.

The two exist for different jobs. The live figure moves daily and is the honest current read. The committed figure is the basis for the adaptive series and the weekly recalibration, and it is what the daily target falls back to when the health store has nothing for the day.

Separating them means the daily target does not chase a number that is itself still settling.

Where the surplus goes

The section that changes how people set their surplus.

ceilingKcal  = leanCeilingLbsPerWk * 2500 / 7      // ~179 at 0.5 lb/wk
toLean       = min(surplus, ceilingKcal)
toFat        = surplus - toLean
leanLbsPerWk = toLean * 7 / 2500
fatLbsPerWk  = toFat  * 7 / 3500

A pound of lean tissue is far cheaper than a pound of fat because it is mostly water. Muscle can only be built so fast, so surplus past the ceiling has nowhere to go but fat.

At a 0.5 lb/week ceiling the whole lean-gain budget is 179 kcal a day. A +500 surplus puts 321 kcal a day somewhere it cannot help — 0.64 lb of fat a week, ten pounds over a sixteen-week block, bought at the price of a cut afterwards that will take back some of what you built.

This is a model of where energy can go, not a measurement of where it went. The trend on the scale is what tests it, and the screen puts them next to each other for exactly that reason. The calculator runs it on your own numbers.

Averaged surplus

The mean of logged days over the last seven and fourteen, minus maintenance.

Shown next to the surplus you set, because those are different numbers and the second one determines what happens to your body. A screen that only echoed your intention would be decoration.

Below five logged days it reports nothing rather than a number built on three days, for the same reason as everywhere else in the app.

Eat-back, and why it was retired

Worth documenting because the reasoning generalises.

Base used to credit 90% of the excess over a thirty-day median of active energy, above a 150 kcal threshold. It almost never fired — and the reason is instructive. That "sedentary baseline" was the median of all days, training days included, so it was inflated by exactly the exercise it existed to pay back.

Active calories now count toward the target as they are measured, with no threshold and no discount. Crediting a bonus on top would count the same walk twice.

The generalisable lesson: a baseline computed over a population that includes the thing you are trying to detect cannot detect it.

What to do next

The weekly check-in is where this number turns into a decision, and the dashboard is where it turns into today's target.

Questions

How does Base measure maintenance calories?

Over a trailing fourteen-day window ending yesterday, it takes the change in trend weight, converts it to a daily energy balance at 3,500 kcal per pound, and subtracts that from average logged intake over the same range. The result is smoothed with an exponentially weighted moving average so a single odd fortnight nudges it rather than yanking it.

Why does the window end yesterday?

Because today's food log is partial by definition. Including it drags the intake average down and reports maintenance a couple of hundred calories low every morning — and worst at breakfast, which is exactly when someone checks.

What happens if I have not logged enough?

Below ten logged days and eight weigh-ins in the window, Base does not compute the measurement at all. It falls back to a Mifflin-St Jeor estimate and labels it as estimated, rather than running the same arithmetic on four data points and presenting the result identically.

Why is my maintenance going up during a bulk?

Because more mass costs more energy, and because non-exercise movement often rises when energy is plentiful. A maintenance figure that rises during a surplus is confirmation the plan is working, not a problem to solve.

What does where it goes mean?

A pound of lean tissue costs roughly 2,500 kcal against 3,500 for fat, and muscle can only be built so fast. The screen splits your surplus into the part that fits inside your lean-gain ceiling and the part that has nowhere to go but fat, expressed in pounds per week so the cost is concrete.

[KEEP READING]