Iron pills can cause teeth staining, especially if they are chewed instead of swallowed whole. The iron can react with the saliva in the mouth, causing a black or grayish stain on the teeth.