Sự hấp thu không đầy đủ có thể xảy ra trong hội chứng loét mù (với tăng trưởng vi khuẩn) hoặc là nhiễm sán dây cá; trong những trường hợp này, vi khuẩn hoặc ký sinh trùng sử dụng vitamin B12 nên còn lượng ít để hấp thụ.