Cooked

· Usage · 5 min read

What a six-hour coding session does to your battery

An agent running all afternoon means plugged in, at 100%, and warm. That combination is the worst one there is for a lithium cell, and almost nobody notices it.

Somewhere in the last couple of years, the shape of a working day on a Mac changed. Sessions got longer, and the machine stopped idling between them. You kick off an agent, it runs for forty minutes. Tests go green, you start another. Somewhere in there you build, you run a container or two, and the fans have been on since lunch.

The laptop is plugged in the whole time, obviously. Nobody runs that on battery. And that is the part worth looking at, because plugged in during a long session is not a neutral state for the cell.

Two stresses, arriving together

A lithium-ion cell has two things it particularly dislikes, and a long session on mains power delivers both at once.

The first is sitting at a high state of charge. Full means the cell is at its highest voltage, and voltage is what drives the side reactions that quietly consume capacity: the protective layer on the anode thickens, the electrolyte breaks down a little, and some lithium stops being available to carry charge. None of it undoes itself.

The second is heat. Chemistry speeds up as temperature rises, and that applies to the reactions you don’t want as much as the ones you do. A compile, an export, a couple of VMs, an agent hammering the CPU for an hour: all of it warms the machine, and the battery is sitting right in the middle of it.

Separately, each one costs you a little. Together, they cost you considerably more than the sum. That is why the combination is worth a name: warm and full is the fastest way there is to age a cell.

More stress

Deep dischargeThe calm middleHigh voltage
0205080100%
The shape of it, not a measurement. Toward the top of the range the curve turns up hardest, and heat lifts the whole thing.

Why this particular habit hides so well

Cycle count is the number everyone watches, and a machine that lives on a charger burns through almost none of them. You can work like this for two years and see a cycle count that looks practically new.

The counter isn’t lying. It just isn’t measuring this. Calendar aging happens whether or not you cycle the battery, and it accelerates with voltage and temperature. A desk-bound Mac with 90 cycles and 84% health isn’t a contradiction. It is exactly what you would predict.

It is also why the damage arrives as a surprise. Nothing changes on a Tuesday. Then one day you unplug for a train, and the afternoon you used to get is now an hour and a half.

What macOS does about it, and where it stops

Optimized Battery Charging learns your routine and holds off on the last stretch until you need it. On Apple Silicon there is also a proper 80% limit. Both are good, and for a laptop that moves around they are often enough.

They run out in the same place, though. Optimized charging is a prediction, so it needs a routine to predict, and a machine that is plugged in at every hour of every day doesn’t give it one. And the built-in limit stops at 80%: you cannot go lower, and neither setting has anything to say about temperature.

That last part matters here more than anywhere else. On a machine that runs warm for hours at a time, temperature is the variable doing the most damage, and it is the one nothing on the Mac is watching.

What to actually change

  • Cap the charge. Staying plugged in is fine; staying at 100% is not. Somewhere around 80% removes the expensive part of the day without you noticing anything.
  • Watch the cell temperature, not the chassis. The number that matters is the one from the battery’s own sensor, and macOS shows it nowhere.
  • Pause charging when it runs hot. Charging a cell that is already warm stacks both stresses on top of each other, which is the one case worth actively avoiding.
  • Lift the limit deliberately, not by default. The night before a flight, charge to 100% and enjoy it. It is the other three hundred and sixty days that decide where you end up.

What we’d set for a machine that works plugged in

Limit
80%
Resting range
60–80%
Pause charging above
40 °C

The limit keeps the cell out of the top of the curve all day. The range underneath only matters when you unplug: come back at 71% and Cooked leaves it alone rather than topping you up to a round number. And the thermal pause is the one that earns its keep during a long session, because it is the only setting that reacts to what the machine is doing rather than to a percentage.

The honest limits of all this

Cooked doesn’t repair anything, and it can’t give back capacity that has already gone. Nothing can. A battery that has spent two years at 100% and 38 °C is where it is.

What a limit changes is the next two years. And the arithmetic is unusually favourable here, because you were not getting anything for that stress in the first place: the machine was on mains power the entire time. The charge you were protecting was never going to be used.

Which is the whole argument, really. Not that long sessions are bad for your Mac, they aren’t. Just that the battery has been paying for them, and it didn’t have to.

The free version of Cooked is the limit itself: anywhere from 20% to 100%, one percent at a time, active discharge to walk an already-full battery back down, and cell temperature in plain sight. Free forever, no account. The hot-cell pause and the history of hours spent at full charge are in Pro, €19 once.

Set your limit once. That’s the whole job.

Free forever, no account, no tracking. Apple Silicon (M1 or newer), macOS 13 Ventura or newer.