Research shows that vitamin B12 has a half-life of 6 days in the blood, meaning it will be six days before the administered amount gets excreted from your body. Since vitamin B12 shots are directly placed in the blood, they bypass the digestive system, which allows them to last longer within the body.