The body does not simply accept iron. It decides whether to let it in.
You have been taking the iron. Carefully. Consistently. Thoughtfully.
You moved it away from coffee. You added vitamin C. You switched formulations when the first one upset your stomach. You tolerated the constipation because you assumed there was a payoff waiting on the other side.
You waited three months.
You opened your labs.
Ferritin: 18. Ferritin: 21. Almost exactly where it started.
There is a very specific kind of frustration in that moment. Not dramatic. Not catastrophic. Just quiet and draining. You did what you were told. You were compliant. You were patient. And nothing shifted.
Iron deficiency is often framed as a simple input problem. If iron is low, add more iron. But ferritin does not rise simply because iron enters your mouth. It rises when iron is absorbed, transported, stored, and released appropriately. When the gut is functioning well. When stomach acid is adequate. When inflammatory signals are not interfering. When regulatory hormones are aligned.
Iron is powerful. The body handles it carefully. It gates it. It stores it. It withholds it during infection. It shifts it in response to inflammation. It protects itself from excess just as fiercely as it protects itself from deficiency.
So, when ferritin does not budge, it is rarely about effort.
It is almost always about physiology.
In this piece, we are going to slow down and look at the systems that govern iron status. Absorption at the enterocyte. The role of gastric acid. The impact of inflammation and hepcidin. The difference between true deficiency and functional sequestration.
Because sometimes a stagnant lab value is not a sign that you need a higher dose.
Sometimes it is a sign that the conversation needs to widen.
This is a long one, so here is what to expect:
Ferritin 101: what ferritin actually is, how to read a full iron panel, and why a single number can mislead
Ferritin Inside the Larger Iron System: the loop of absorption, transport, recycling, and storage
When Ferritin Misleads: hepcidin, inflammation, and how the body deliberately restricts iron flow
Iron Has to Get In First: gastric acid, heme vs. non-heme iron, and the chemistry of absorption
Once Iron Is Inside the Cell: ferroportin, regulated export, and why iron can enter the body without entering the blood
The Chemistry of the Meal: dietary inhibitors and enhancers that shape how much iron actually gets through
When the Gut Itself Changes the Terrain: blood loss, celiac disease, H. pylori, and structural barriers to absorption
Beyond the Gut: macrophage recycling, anemia of chronic disease, and the bigger regulatory picture
Putting the Pieces Together: a framework for understanding why ferritin stalls
Coming Back to the Labs: what to ask for, what to look at, and where to go from here
Ferritin 101: What Are We Actually Measuring?
Before we get into why iron is not moving, we need to talk about what ferritin actually is. Because it is one of the most commonly ordered labs in clinical practice, and one of the most commonly misread.
Ferritin is not circulating iron. It is a storage protein. A roughly spherical shell made of 24 subunits that holds iron in an inert, non-reactive form inside the cell. Think of it as a vault. And that vault exists for a very good reason.

Ferritin structure
Free iron is dangerous.
In its unbound state, iron has the capacity to generate reactive oxygen species that directly damage DNA, proteins, and lipid membranes.
The body treats free iron the way you would treat a live wire on a wet floor.
Ferritin exists specifically to sequester that iron, to keep it contained, stable, and available for use without letting it cause oxidative harm. This is an active protection system. In animal studies, knocking out ferritin H entirely is lethal. That is how essential this protein is to survival.
But iron is not just sitting in storage waiting to be useful.
It is one of the most fundamentally important minerals in human physiology. Most of the body’s iron is incorporated into hemoglobin, where it enables the transport of oxygen to every tissue.
It is central to the electron transport chain, the process by which mitochondria convert oxygen into useable cellular energy. And it serves as a cofactor in enzymatic reactions that go well beyond oxygen handling, including the iron-dependent activity of ribonucleotide reductase, which is required for DNA synthesis and cell division. Iron is woven into the architecture of cellular life. That is why the body regulates it so tightly. It cannot afford to lose control of something this essential.
Overview of the multifaceted roles of iron in diverse organs and molecular processes.
The Architecture of the Vault
The 24 subunits that make up the ferritin shell come in two types: H (heavy) and L (light).
The H subunit carries ferroxidase activity, meaning it is the subunit responsible for converting reactive ferrous iron (Fe2+) into the more stable ferric form (Fe3+) so it can be safely deposited into the mineral core.
The L subunit supports long-term storage and mineralization.
The ratio between these two subunits shifts depending on the tissue. Heart and kidney ferritin tends to be H-rich, which makes sense in tissues with high metabolic activity and a greater need for rapid iron turnover. Liver and spleen ferritin leans L-rich, reflecting their role as longer-term storage depots. These ratios are also dynamic. They shift in inflammatory or infectious states, which means the behavior of ferritin itself changes depending on what the body is dealing with.
This distinction matters when we talk about what shows up on a blood test.
Most of the ferritin circulating in serum appears to be immunologically related to the L subunit. The precise source of serum ferritin has not been fully determined, but we know it correlates loosely with total body iron stores in healthy individuals. Loosely. Serum ferritin is an indirect marker. It reflects iron status rather than measuring what is sitting in your liver or your bone marrow. Its interpretation depends entirely on physiologic context.
Ferritin structure–function analysis.
When the Number “Lies”
And here is where the interpretation starts to get layered.
Ferritin is also an acute phase reactant, meaning it rises in response to inflammation, infection, and malignancy, independent of how much iron is actually in storage. This is the biology doing exactly what it was designed to do.
During inflammation, the body deliberately shifts iron handling.
It pulls iron out of circulation.
It withholds it from pathogens.
It sequesters it inside cells.
Ferritin levels rise because the body is actively locking iron away as part of its defense response, even when actual iron stores have not changed.
Which means a “normal” ferritin on a lab panel does not always mean iron stores are adequate. In the presence of chronic, low-grade inflammation, ferritin can sit at 60, 80, even 100, and still mask a functional deficiency underneath.
The number looks reassuring.
The physiology tells a different story. This is one of the most common misreadings in clinical practice, and one of the most consequential. A person can be functionally iron deficient with a ferritin that no one flags.
This is why ferritin alone is never the full picture.
Reading the Full Panel
To understand what is actually happening with iron, you need the surrounding context.
And that means looking at several markers together:
Serum iron tells you what is circulating in the blood right now, bound to its transport protein, transferrin. But serum iron is volatile. It fluctuates throughout the day, drops sharply during infection or inflammation, and can swing based on recent dietary intake. On its own, it is a snapshot with no anchor.
Transferrin is the protein that carries iron through the bloodstream. Think of it as the delivery truck. The body adjusts how many trucks it puts on the road depending on demand. When iron stores are genuinely low, transferrin production increases, the body building more trucks in an attempt to scavenge and deliver whatever iron it can find. This is why total iron-binding capacity (TIBC) rises in true iron deficiency.
Transferrin saturation tells you how much of that transport capacity is actually loaded. If you have plenty of trucks on the road but they are all running empty, that is low transferrin saturation. It means that even if iron exists somewhere in the body, it is not making it into circulation where it can be delivered to the tissues that need it. When saturation drops below 20%, it is generally considered a signal that iron supply to the bone marrow is inadequate, regardless of what ferritin says.
These are not interchangeable values. They are three different angles on the same system. Ferritin tells you about storage. Serum iron tells you about availability in the moment. Transferrin saturation tells you whether iron is actually making it to where it needs to go. And when they contradict each other, that is usually where the real clinical information lives.
A ferritin of 45 with a transferrin saturation of 15% is not reassuring. It is a flag.
A ferritin of 90 in someone with elevated CRP and persistent fatigue is not a closed case. It is a question.
So, when someone presents with low transferrin saturation, borderline ferritin, and symptoms that will not resolve, the question is not simply “is iron low.”
The question is whether the body is absorbing it, transporting it, and releasing it the way it should be.
Whether the system is open or whether something upstream has narrowed the gates.
That distinction changes everything about what comes next.
Ferritin Inside the Larger Iron System
To understand that context, we need to zoom out.
One of the most important things to know about iron is that the body has no real way to get rid of it. There is no excretion pathway. No deliberate dump valve. Which means that systemic iron balance is regulated almost entirely at one point: absorption. What the gut lets in is, for all practical purposes, what the body has to work with.
From there, iron is loaded onto a transport protein called transferrin and carried through the bloodstream to wherever it is needed most. The primary destination is the bone marrow, where it is built into hemoglobin for new red blood cells. Meanwhile, macrophages in the spleen and liver are constantly recycling iron from aging red blood cells, breaking down heme, liberating the iron, and either storing it as ferritin or sending it back into circulation.
Absorption of iron, transport, and the levels in the body. (ref. adapted from Jiten P Kothadia et al., 2016).
This is a loop.
Iron is absorbed, transported, used, recycled, stored, and redistributed.
Ferritin sits at the center of that buffering system, present at nearly every stage. It is a participant in iron metabolism, a readout with a role.
We are going to walk through each stage of this loop in detail over the next several sections. Starting with the gatekeepers: the proteins that decide whether iron enters circulation, the hormone that can shut the whole system down, and the chemistry that determines whether the iron you swallow ever reaches the other side of the intestinal wall.
When Ferritin Misleads
This is where one protein changes the entire picture.
Hepcidin is a small peptide, only 25 amino acids, produced primarily by hepatocytes in the liver. But its influence over iron metabolism is enormous. Hepcidin is the body’s master negative regulator of iron flow.
When hepcidin rises, it binds to ferroportin and triggers its internalization and degradation. Ferroportin disappears from the cell surface. Iron stops leaving the enterocyte. Iron stops leaving the macrophage. The gates close.
The IL‑6/Hepcidin/Ferroportin axis
This is a deliberate defense strategy.
During inflammation, infection, or malignancy, hepcidin production increases. The body pulls iron out of circulation and locks it away inside cells, reducing the amount of free iron available to pathogens or rapidly dividing malignant cells. Some researchers believe hepcidin evolved specifically for this purpose: to weaponize iron restriction as a form of host defense.
The clinical consequence is significant.
Ferritin rises, not because the body has more iron, but because iron is being sequestered intracellularly. Meanwhile, transferrin saturation drops. Iron delivery to the bone marrow slows. The person develops what is often called anemia of chronic disease, a state in which the body has iron but refuses to release it.
Again, as mentioned in the section speaking to lab amounts: A normal or even elevated ferritin does not always mean iron stores are adequate. In chronic, low-grade inflammatory states, ferritin can look reassuring while the body is functionally starving its own tissues of iron. The number on the lab report tells you what is stored. It tells you nothing about what is moving.
Once you see ferritin as part of an interconnected system of absorption, transport, storage, recycling, and immune signaling, a number that refuses to rise begins to look less like resistance and more like regulation.
Iron Has to Get in First
Before ferritin can rise, iron has to cross a membrane.
That membrane sits in the duodenum and proximal jejunum. Most dietary iron absorption happens there, inside the enterocytes that line the upper small intestine. And because humans have no active iron excretion system, this step is not optional. Everything downstream depends on what happens here.
A typical Western diet contains around 7 mg of iron per 1,000 kcal. Of that, only about 1 to 2 mg is absorbed daily. That discrepancy is not a failure. It is regulation. The body is selective about what it lets in.
Two Forms, Two Pathways
There are two forms of dietary iron, and they do not behave the same way.
Heme iron comes from hemoglobin and myoglobin in meat, seafood, and poultry. It is absorbed efficiently, typically between 15 and 35 percent, and its uptake is relatively resistant to interference from other dietary components. Heme iron accounts for only about 10 percent of total dietary iron intake, but it contributes a disproportionate share of what actually gets absorbed. It has its own transport pathway, and while that pathway is still not completely characterized, it operates somewhat independently of the mechanisms that govern non-heme iron.
Non-heme iron is the dominant form. It accounts for up to 90 percent of dietary iron and is found in plant foods, fortified grains, and supplements. It arrives in the gut primarily in the ferric state (Fe3+). And this is where the process becomes conditional.
At physiological pH, ferric iron is poorly soluble. In the presence of oxygen, it forms insoluble oxides that the intestinal lining cannot absorb. To get into the body, non-heme iron must first be reduced to the ferrous form (Fe2+).
This conversion happens at the brush border of the enterocyte, facilitated by enzymes like duodenal cytochrome B (Dcytb).
Gastric acid plays a central role here. The low pH environment in the stomach and proximal duodenum is what keeps ferric iron soluble long enough for that reduction to occur. When gastric acid production is impaired, the chemistry shifts before transport even begins. Iron remains in its insoluble form.
It passes through the gut without being absorbed.
This is not theoretical. Proton pump inhibitors such as omeprazole significantly reduce non-heme iron absorption. So does hypochlorhydria from any cause: autoimmune gastritis, chronic inflammation, aging, or long-term acid suppression. For someone already sitting at the margin of adequate iron status, this single variable can be the difference between a ferritin that slowly climbs and one that does not move at all.
Once ferric iron is reduced to its ferrous form, it crosses the apical membrane of the enterocyte through DMT1. Expression of both DMT1 and Dcytb increases when iron status is low. The body is trying. It upregulates the machinery. It reaches for more.
But even after iron enters the enterocyte, absorption is not guaranteed.
Once Iron Is Inside the Cell
Entry into the enterocyte is only the first regulatory checkpoint. Once inside the cell, iron enters a shared intracellular pool regardless of whether it came from heme or non-heme sources.
From there, it faces two possible fates:
it can be stored locally as ferritin,
or it can be exported into circulation.
Apoferritin, the iron-free form of the storage protein, has intrinsic catalytic activity. It oxidizes ferrous iron (Fe2+) to ferric iron (Fe3+) and incorporates it into the ferritin mineral core as ferrihydrite. This stabilizes the iron and buffers it against participating in reactive oxidative chemistry. Storage at this stage is protective.
Export, however, depends entirely on ferroportin. Ferroportin is the only known cellular iron efflux transporter. If it is present and functional, ferrous iron exits the enterocyte across the basolateral membrane. It is then oxidized by copper-dependent ferroxidases, hephaestin at the intestinal membrane and ceruloplasmin in plasma, before binding transferrin for safe transport through circulation.
If ferroportin is unavailable, iron does not leave the cell.
This is where we can look more closely at how hepcidin actually works. We introduced it earlier as the signal that restricts iron flow during inflammation. Here is the mechanism. Hepcidin is a small peptide, only 25 amino acids, produced primarily by hepatocytes in the liver.
When hepcidin levels are elevated, it binds directly to ferroportin and triggers its internalization and degradation. Ferroportin is physically removed from the cell surface. Iron that entered the enterocyte stays trapped inside it. Because enterocytes have a short lifespan, turning over every few days, that stored iron is ultimately lost when the cell is shed into the intestinal lumen.
Think about what that means. Iron was ingested. It was reduced to the right chemical form. It crossed the apical membrane. It made it into the cell. And then it was locked inside, held until the cell died and was discarded. The failure happened at the level of regulated export, after absorption had already occurred.
This distinction is essential when we are talking about ferritin that will not rise despite supplementation. The supplement may be entering the body. It may not be entering the blood.
Biology of ferroportin and postulated pathobiology of Ferroportin Disease (FD).
The Chemistry of the Meal
Iron absorption does not happen in a vacuum. It happens in the middle of a complex chemical environment, surrounded by everything else you ate.
Once non-heme iron has been reduced and solubilized in the intestinal lumen, it interacts continuously with other dietary compounds. Some of those compounds help iron reach the enterocyte. Others bind it, chelate it, or convert it into forms the body cannot use. The difference between adequate absorption and negligible absorption can come down to what was on the plate.
Main enhancers and inhibitors of iron bioavailability.
What Pulls Iron Away
Phytates and polyphenols are among the most potent inhibitors of non-heme iron absorption.
Phytate is abundant in whole grains, legumes, nuts, and seeds. It binds iron in the gut and forms insoluble complexes that pass through without being absorbed. The effect is dose-dependent, which means even modest amounts of phytate in a meal can measurably reduce iron uptake. This is not an argument against eating whole grains. It is an argument for understanding that the iron content listed on a nutrition label does not reflect what your body actually takes in.
Polyphenols work through a similar mechanism, chelating iron in the lumen and pulling it out of play. They are found in tea, coffee, cocoa, red wine, and a wide range of plant foods. Clinical data shows that consuming polyphenol-rich beverages with iron-containing meals can reduce absorption substantially, in some cases by more than half.
This is why the advice to separate iron supplements from coffee and tea is not trivial. It is grounded in chemistry.
Calcium occupies a slightly different position. Unlike phytates and polyphenols, which primarily affect non-heme iron, calcium appears to inhibit both heme and non-heme iron absorption. The mechanism is thought to involve interference at the level of the enterocyte itself rather than in the lumen.
Short-term studies show clear reductions in absorption when calcium and iron are consumed together, although there is some evidence that the body adapts over time and partially compensates during long-term exposure.
Still, for someone actively trying to rebuild iron stores, co-ingesting calcium and iron is working against themselves.
Proteins also modify absorption in ways that are not always intuitive. Meat proteins enhance iron uptake, but egg proteins and certain soy fractions have been shown to inhibit it, likely through peptide-mediated changes in luminal iron solubility. Not all protein sources behave the same way when it comes to iron.
What Helps Iron Get Through
Ascorbic acid is the most well-established dietary enhancer of non-heme iron absorption. It works by keeping iron in its reduced ferrous state and forming soluble chelates that remain stable even as the pH rises further down the intestinal tract. The effect is dose-dependent and requires co-ingestion with the iron source.
Note: Adding vitamin C to a meal does not retroactively improve iron absorption from something eaten hours earlier. Timing matters.
Vitamin A and C influence on iron absorption
Animal tissue exerts an additional enhancing effect that goes beyond its own heme iron content. This is sometimes called the “meat factor.” When meat or fish is included in a meal alongside plant-based iron sources, non-heme iron absorption increases significantly, even in the presence of phytates.
The exact mechanism is still being investigated, but it likely involves specific peptides released during digestion that facilitate iron transport at the mucosal surface.
None of this means that dietary modification alone will fix a stalled ferritin. But it does mean that for someone supplementing iron without seeing results, the context of that supplementation matters.
What you take iron with, what you take it near, and how your gut processes the meal around it all shape how much of that iron actually reaches the other side of the enterocyte.
















