Low vitamin D usually comes down to one of a few common causes: not enough sun exposure, a diet low in vitamin D-rich foods, a health condition that blocks absorption, or simply getting older. Most people have more than one of these factors working against them at the same time, which is why vitamin D deficiency is so widespread. Here’s a closer look at each cause and how it affects your levels.
Your Skin Isn’t Making Enough
Your body produces most of its vitamin D when ultraviolet B rays from sunlight hit your skin. Anything that reduces that UV exposure cuts into your supply. Living at a northern latitude, working indoors during daylight hours, wearing clothing that covers most of your skin, or spending the winter months in a region with weak sunlight all limit production. Even cloud cover and air pollution filter out UV-B rays before they reach you.
Sunscreen plays a role too, though perhaps a smaller one than you’d expect. A 2025 meta-analysis of over 9,400 participants found that regular sunscreen use lowered blood vitamin D levels by about 2 ng/mL on average. That’s a modest reduction, not a dramatic one, but it can matter if your levels are already borderline. People with very limited sun exposure on top of consistent sunscreen use are the most likely to see an impact.
Darker Skin Needs More Sun Exposure
Melanin, the pigment that gives skin its color, acts as a natural sunblock. The more melanin your skin contains, the longer you need in the sun to produce the same amount of vitamin D as someone with lighter skin. Research comparing the lightest and darkest skin types found that melanin reduces vitamin D production efficiency by a factor of roughly 1.3 to 1.4. In practical terms, a person with very dark skin may need several times longer in the sun to generate the same vitamin D as someone who burns easily. This is one reason vitamin D deficiency rates are consistently higher among Black, South Asian, and Middle Eastern populations, especially those living in northern countries.
Aging Slows Production
Your skin becomes less efficient at making vitamin D as you age. The raw material your skin uses to produce vitamin D (a cholesterol compound stored in the outer skin layers) drops by about 50% between age 20 and 80. At the same time, your body breaks down the active form of vitamin D faster. This combination means an older adult standing in the same sunlight as a younger person will produce significantly less vitamin D. It’s one of the key reasons deficiency is especially common in people over 65.
Diet Alone Rarely Provides Enough
Very few foods naturally contain vitamin D. Fatty fish like salmon, mackerel, and sardines are the best dietary sources, but you’d need to eat them almost daily to come close to meeting your needs through food alone. Egg yolks, beef liver, and certain mushrooms exposed to UV light contain smaller amounts. Fortified milk, orange juice, and cereals help, but the amounts added are relatively modest.
Most adults need around 600 to 800 IU of vitamin D per day, and many experts argue the real requirement is higher. If you’re relying on diet without much sun exposure or a supplement, you’re almost certainly falling short.
Digestive Conditions That Block Absorption
Vitamin D is a fat-soluble vitamin, which means your gut absorbs it along with dietary fat in the small intestine. Any condition that damages or inflames the small intestine can interfere with this process. Crohn’s disease, ulcerative colitis, and celiac disease all reduce the gut’s ability to absorb vitamin D from food and supplements.
Gastric bypass surgery creates a similar problem through a different mechanism. Because the procedure reroutes food past a section of the small intestine where vitamin D is normally absorbed, people who’ve had this surgery often develop deficiency even when taking supplements. Cystic fibrosis, which affects the pancreas and reduces the digestive enzymes needed to break down fat, also impairs vitamin D uptake.
Body Fat Traps Vitamin D
Carrying excess body fat is one of the most common and underappreciated causes of low vitamin D. Vitamin D is fat-soluble, so it gets pulled into fat tissue and essentially stored there, reducing the amount that circulates in your blood. This isn’t a problem with production or absorption. Your body may be making or taking in plenty of vitamin D, but your fat cells are holding onto it.
The numbers are striking. In one study, obese individuals showed a 57% lower rise in blood vitamin D after the same UV exposure compared to non-obese individuals. BMI was also strongly and inversely correlated with vitamin D levels after both sun exposure and oral supplementation. This means people with higher body fat often need larger doses of supplemental vitamin D to reach the same blood levels as leaner individuals.
Kidney and Liver Disease
Your body doesn’t use vitamin D in the form it arrives. Vitamin D from sun exposure or food has to be converted first by the liver, then by the kidneys, into its active form. If either organ isn’t functioning well, this conversion stalls.
Chronic kidney disease is a particularly important cause. As kidney function declines, the kidneys produce less of the enzyme needed to activate vitamin D, and a hormone called FGF-23 (which rises sharply in kidney disease) further suppresses that enzyme. The result is that even if you have adequate vitamin D in storage, your body can’t convert enough of it into the form your cells actually use. People with advanced kidney disease almost universally have low active vitamin D levels and typically need a specialized form of the vitamin.
Medications That Deplete Vitamin D
Several common medications speed up the breakdown of vitamin D in your liver, lowering your blood levels over time. Anticonvulsants, particularly phenytoin (used for seizures), are well-documented offenders. They trigger liver enzymes that convert vitamin D into inactive byproducts, effectively clearing it from your system faster than normal.
Rifampin, an antibiotic used for tuberculosis and certain other infections, works through the same liver enzyme mechanism. Glucocorticoids (steroids like prednisone) also interfere with vitamin D metabolism. If you take any of these medications long-term, your vitamin D levels are worth monitoring, and you may need higher intake through supplements to compensate.
Multiple Factors Often Overlap
In most people, low vitamin D isn’t caused by a single factor. A typical scenario might look like this: you work indoors, live in a northern climate, have darker skin, carry some extra weight, and don’t eat much fish. Each of those factors shaves away at your vitamin D status, and together they can push your levels well into deficient territory. Understanding which factors apply to you helps explain not just why your levels are low, but how aggressively you might need to address them through sun exposure, diet, or supplementation.

