Blog

How to Count Calories on Night Shifts and Rotating Hours

Day So Far

The short answer

If you work nights or rotate shifts, stop judging yourself by the calendar day. Draw your day boundary at the time you wake up rather than at midnight, and read your intake as a rolling seven-day average instead of a set of daily totals — because on a night shift, midnight falls in the middle of your eating period and splits one day's food across two dates.

That single change fixes most of the chaos. The second thing to know is that short or badly-timed sleep tends to show up in your log as missing entries rather than as hunger you noticed, so when the scale stalls during a rough stretch of sleep, check your coverage before you conclude anything about your metabolism.

Why midnight wrecks a shift worker's numbers

Take a 20:00–08:00 shift. You get up at 17:00, eat at 18:00 before leaving, eat again around 01:00 in the canteen, pick at something at 05:00, then have a proper meal when you get home at 09:00 and go to bed.

A calendar day splits that in two. Monday gets the 18:00 meal only — maybe 700 kcal, and the app tells you you have 1,400 left. Tuesday gets the canteen meal, the 05:00 pick and the 09:00 meal on top of everything you eat during your actual Tuesday. Tuesday looks like a blow-out. Monday looks like restraint. Neither is true, and if you respond to the numbers you will eat more on Monday night and feel guilty on Tuesday.

Across a week of this you end up with totals that swing by 1,000 kcal or more between consecutive dates while your real intake barely moves. There is nothing to diagnose there. It is an accounting artefact.

Where to put the cut-off instead

Pick the boundary that puts one sleep in each unit:

Option one — waking time. Your day starts when you get up and ends when you go to bed, whatever the clock says. Everything in that stretch goes on one date. This is the most honest unit for most shift patterns because it matches how your appetite is actually organised: by hours awake, not by dates.

Option two — a fixed, unglamorous cut-off. Something like 14:00, if your sleep almost always covers it. Less perfect than waking time, but it needs no decisions.

In practice: on the 20:00–08:00 example above, log the 18:00 meal, the 01:00 canteen meal, the 05:00 snack and the 09:00 meal all against the same date, then start the next date when you wake in the afternoon. Day So Far lets you backdate an entry to any time, which is the whole mechanism — you are not fighting the app's idea of "today", you are just putting food where it happened.

One warning about rotation days. When you swap from nights to days, one unit will be short and one will be long. Don't fix it. Let it be odd and read the average.

Why a rolling average is the right unit

Bodies do not settle up at midnight. A deficit is a weekly quantity, and reading it weekly is normal practice even for people with ordinary schedules — the maths behind weekends is the same maths here, just with bigger swings.

So: look at your seven-day average calories and your seven-day average protein. If the average sits where you intended, the shape of the week does not matter much. If it drifts 300 kcal above, that is real, and it will be real whatever boundary you drew.

The practical gain is that a rolling average does not punish you for a 02:00 meal. You will eat in the small hours. That is not a failure of discipline, it is what being awake does.

How to compare a shift week against a normal week

Compare like with like, and compare at least two of each. One shift week against one off week tells you almost nothing, because weekly weight noise is larger than the difference you are looking for.

What to put side by side:

  • Average calories across each block.

  • Number of days with a complete log — this is the one that usually moves.

  • Average protein. Prepared food drops first when you are tired, and protein drops with it. If you are falling short, hitting a protein target without powder is mostly a matter of keeping two or three high-protein things in the house that need no cooking: skyr, cottage cheese, tinned fish, eggs.

  • Weight trend across each block, not single weigh-ins. Shift weeks come with different sleep, different fluid intake and different salt, and the scale reflects all of it before it reflects fat. Overnight jumps are routine.

If shift weeks average 250 kcal higher and have two fewer complete logs, you have found your answer and it is not mysterious.

The appetite half, without the biology lecture

Short or displaced sleep reliably does two things: it raises appetite, and it lowers the willingness to prepare food. The second is the one that costs you.

It does not usually feel like hunger. It feels like a perfectly reasonable decision — the garage sandwich instead of the thing in the fridge, the second flat white, the handful of whatever is in the break room at 04:00. Those are the items least likely to get logged, because they were not meals and you did not plan them.

Which is why the gap shows up as coverage rather than as high totals. A sausage roll is around 300 kcal; a flat white made with whole milk is around 150; a 50 g bag of crisps is around 260. Three unlogged items across a night is roughly 700 kcal that your average never sees. At a steady 200 kcal a day of missing entries over a fortnight, that is about 2,800 kcal — and since a kilogram of body fat holds about 7,700 kcal, roughly 0.35 kg of expected loss that simply does not arrive. The log says deficit. The scale says no.

Two defences, both boring. First, log before you eat rather than after: a planned 04:00 meal gets recorded, a remembered one often doesn't, and logging in advance also lets you see the number while you can still change it. Second, decide the night-shift meal before the shift, not during it. You are choosing on behalf of a more tired person.

Also check your drinks. Caffeine runs high on nights, and milk and syrups in multiple coffees add up quietly — drinks are easy to stop counting precisely because they are not food.

If the scale has stalled through a rough patch

Order of suspicion, and in this order:

  1. Coverage. How many days in the last fortnight have a log you would defend? If the answer is eight, that is your explanation and nothing else needs investigating.

  2. Boundary artefacts. Are some dates carrying two shifts' worth of food and others half of one? Your average may be fine even if your days look wild.

  3. Portion creep in the unmeasured things — oil, spreads, sauces, the stuff ladled rather than weighed.

  4. Only then your actual energy needs. Published figures from sources like USDA FoodData Central are decent averages, not measurements of you, and the same is true of any formula's estimate of what you burn. Day So Far works this out by comparing what you logged against what the scale did over a fortnight, which only functions if the fortnight is logged — on a patchy shift rota it will need more days, not fewer.

And be honest about the timescale. A stall of a week or two means very little on a rotating rota, because fluid shifts alone can hide a fortnight of progress; there is a reasonable threshold for when a stall starts to mean something, and irregular hours argue for the patient end of it.

The one-line version

Draw the day where you wake, read the week not the day, and treat missing entries — not willpower — as the thing that irregular hours actually break. Nothing here says that sorting out your sleep will make you lose weight by itself; it says that tired days are under-logged days, and an under-logged day is invisible rather than innocent.