I was dx'ed with B12 deficiency, long-standing, about 3 years ago. It was so bad I now have permanent nerve damage in my feet. Nothing to mess with! My B12 level was low-normal for over a decade -- I guess my doctor just figured since I was short it was fine, but that's not how it works. It then took a dive into nonexistent. Apparently, they are revising the B12 standards so my "low-normal" would now be abnormal.
FWIW, they first put me on B12 shots to get my levels back up quick. Then they put me on OTC cyanocobalamin, 5000 mg. This is the type that you find in most drug stores and super market shelves. But my B12 immediately did a nose-dive back to nothing, despite such a high dose, and symptoms came right back....
Turns out I have some genetic malabsorption issue, so I need methylcobalamin instead. I have this on auto-order from Amazon, as it's difficult to find off the shelf. I take 5000 mg daily. My symptoms are gone, except for the lingering nerve damage in my feet. I will be on 5000 mg the rest of my life. My B12 is too high now to measure, but the doctor says that is fine, and not to take less.
Incidentally, my iron levels throughout all of this have been just fine. I've never been anemic.