A ferritin protein cage cut open to reveal a rust-orange iron core, rendered against black.
The Journal
Science 6 min read

Why low ferritin drains you when sleep is good

Wondering why your ferritin is low but sleep is good and you're still tired? Low iron stores sap energy before anemia shows. The thresholds and what to do.

Prithvish Baidya Prithvish Baidya Co-founder, Depth

Your Oura ring says you slept 7h42m last night, recovery 88, deep and REM both inside the band it wants. By the ring’s account you should feel rebuilt. You feel like you’re moving through water. Somewhere in your last blood draw, if you ever ran it, your ferritin sits at 18 ng/mL, low in the band but not flagged. The sleep score and the ferritin are answering two different questions, and your ring can only see one of them.

The confusion is reasonable. Every signal you can watch on your wrist says the recovery system is working: duration good, stages in range, heart rate calm overnight. The body filing the complaint disagrees, and you have no instrument pointed at the thing that’s actually short. The tiredness may not be a sleep problem at all.

What ferritin actually measures (and why low ferritin saps energy)

Ferritin is the protein that stores iron. The ferritin level in your blood is a proxy for how much iron you have banked, not how much is moving through your red cells right now. Think of it as the reading on the fuel tank, not the flow through the engine.

Iron isn’t only for hemoglobin. It runs your mitochondria. The electron-transport chain, the assembly line inside every cell that turns fuel into ATP, is built around iron: iron-sulfur clusters and heme proteins are the parts that pass electrons down the line. Drain the tank and that line slows.

Energy production drops at the cellular level long before your red-cell counts move an inch. The tank runs down, the engine starves, and the first thing you notice is that you have nothing to spend.

This is why you can be exhausted with a full night of deep sleep behind you. The fatigue isn’t coming from a bad night. The cells are short on the metal that burns the fuel.

Iron is one cause of fatigue, not the only one. Thyroid, B12, glucose swings, and plain accumulated sleep debt all land in the same place. Low ferritin earns its spot on the list because it’s common, it’s testable, and it’s fixable.

Low ferritin but normal hemoglobin: iron deficiency without anemia

Hemoglobin and ferritin measure different things. Hemoglobin is the iron in circulation today, packed into your red cells and carrying oxygen this minute. Ferritin is the reserve in the tank. When iron runs short, the body protects the flow through the engine first, so ferritin falls early and hemoglobin holds normal until late. Your CBC can look untouched while the stores behind it are nearly empty.

That state has a name, and it’s earned now: iron deficiency without anemia. Empty stores, normal complete blood count, real symptoms. A hemoglobin-only check waves it straight through. It’s the iron version of the gap a “normal” panel leaves for every slow-drifting marker — the result clears the flag while the thing that matters keeps sliding.

The evidence here is real and worth right-sizing. In Verdon et al. (BMJ, 2003), non-anemic women with unexplained fatigue and ferritin under 50 ng/mL who took oral iron reported less fatigue than those on placebo, with the effect concentrated in the lowest-ferritin subgroup. Vaucher et al. (CMAJ, 2012) found the same direction: iron cut fatigue in non-anemic iron-deficient women. The honest read is modest, not miraculous. Not everyone responds, the response clusters in the people who started lowest, and a result from a trial population is a starting hypothesis for you, not a promise.

What counts as low: ferritin thresholds and the gap below ‘normal’

Here are the numbers. Lab reference ranges often start as low as 10 to 15 ng/mL, so a ferritin of 12 clears the flag and prints without comment. The functional-shortfall conversation lives well above that floor. Around 30 ng/mL is the most-cited cutoff for iron deficiency; below it, depleted stores are likely. Several fatigue trials drew their line higher still, around 50 ng/mL.

So a ferritin of 22 passes the lab and still sits in the range where your stores are functionally low. This is the optimal-versus-normal split applied to iron: clearing the reference range is not the same as having enough. The lab’s job is to flag disease. Having enough iron to run your mitochondria comfortably is a different bar, and a higher one.

One confounder can flip the number entirely. Ferritin is an acute-phase reactant, which means inflammation pushes it up regardless of how much iron you actually have. A reading of 80 that looks comfortable can be a genuinely low value propped up by a smoldering hs-CRP. To read ferritin honestly you have to read it next to hs-CRP, and next to transferrin saturation, which shows how much iron is actually available for use. One number alone can lie in either direction.

Why your ferritin is low but your sleep is good

A sleep score grades the architecture of your night. It scores duration, the split across deep and REM and light, how many times you surfaced, your HRV, your resting heart rate. Every input is real and useful. None of them is iron. The score cannot see the metal your mitochondria run on, because nothing on your wrist samples your blood. Your watch can report a textbook night and your blood can show an empty tank, and both are telling the truth.

Put the two sources side by side and the split is obvious. Oura or Whoop says recovery is green: you slept, you recovered the night, the heart settled. Ferritin says the fuel system is starved. The watch sees the night; the blood sees the tank; the fatigue lives in the half the watch was never built to measure. Neither reading is wrong, and neither alone explains why you’re flat.

There’s one faint tell the wearable sometimes carries. When iron runs low, the heart compensates by moving more blood, which can nudge resting heart rate up a beat or two and pull HRV down. But that signal is nonspecific, it overlaps with a dozen other causes, and it’s easy to miss sitting underneath a green recovery grade. The reading that names the cause isn’t on the band. It’s in the blood.

What to do: test, contextualize, and when to act

  1. Test ferritin, not just a CBC. A standard panel and a normal hemoglobin do not rule out low stores. Ask for ferritin by name. It’s one of the markers that drift for years and rarely get ordered unless you request them.

  2. Read ferritin in context, not alone. Pair it with hs-CRP, to catch inflammation inflating the number, and with transferrin saturation, to confirm whether iron is actually available. Ferritin alone tells you the tank reading; the other two tell you whether the tank is genuinely low or just reading low.

  3. Know when to act and when to watch. Under about 30 ng/mL with fatigue is worth acting on. Between 30 and 50 with symptoms is a conversation, not an automatic prescription. Either way, chase the cause before reaching for a bottle: menstrual losses, low dietary intake, poor absorption, and GI bleeding are the usual ones, and the last is worth ruling out. Don’t self-dose iron blind. Too much carries its own harms, and you retest after a course to see if the number actually moved.

That same good sleep score is still true. It’s just answering a different question than the one your tiredness is asking. The night was fine; the tank may not be. Depth reads the marker your wearable can’t, lining ferritin up against your sleep, HRV, and resting heart rate. The blood and the band finally tell one story, and you stop guessing which half is short.

The intelligence layer
for your body.

Depth reads your bloodwork, your wearables, your whole body, continuously, and reasons across all of it to tell you what actually matters.

Get early access Free during early access