Vitamine B12 komt alleen voor in dierlijke producten, zoals melk, eieren, vlees, vis en kaas. Je loopt dus een grotere kans om een vitamine B12 tekort op te lopen als je geen dierlijke producten eet. Veganisten die geen vitamine B12-tabletten slikken, kunnen daarom een vitamine B12-tekort oplopen.
Als je een ziekte hebt aan je maag, een (gedeeltelijke) verwijdering van je maag hebt ondergaan of als je te weinig maagzuur aanmaakt, kan het zijn dat je te weinig vitamine B12 kunt opnemen die leiden tot een tekort. Te weinig opname van vitamine B12 is ook mogelijk als je maagzuurremmers gebruikt.
Mensen (vaak ouderen) met een tekort aan het maageiwit ‘Intrinsic Factor’ kunnen te weinig vitamine B12 opnemen in hun darmen. Intrinsic Factor heb je nodig om vitamine B12 in je dunne darm te kunnen opnemen. Ook wanneer je ontstekingen hebt in je dunne darm, of wanneer een deel van je darm operatief is verwijderd, kun je vitamine B12 minder goed opnemen. Dit kan bijvoorbeeld het geval zijn bij mensen met de ziekte van Crohn.
Het geneesmiddel metformine, dat vaak gebruikt wordt bij diabetes, de opname van vitamine B12 remmen. Als je lichaam antistoffen aanmaakt tegen vitamine B12, wordt de opname ook geremd.
Een toegenomen uitscheiding van vitamine B12 door je nieren, bijvoorbeeld als je veel alcohol drinkt of bepaalde medicijnen slikt, kan ook zorgen voor een vitamine B12-tekort.
Ten slotte zijn er ook aanwijzingen dat een vitamine B12-tekort een erfelijke component heeft.