Yahoo! News provided a list of 15 foods and beverages that can stain teeth, including berries, coffee, tea, red wine, curry, hard candies, tomato sauce, cherry juice, soda, balsamic vinegar, beets, popsicles, sports drinks, grapes, and lemons. According to the article, coffee, tea, and red wine, for example, contain tannins that can contribute to staining and discoloration, and many of the items on the list are also acidic, which can erode the enamel on teeth.
You can minimize your teeth’s exposure to acidic foods. The acid will eat away at your teeth, otherwise, making it more susceptible to staining. Make sure you’re brushing twice a day, flossing daily, and using fluoride, which strengthens your teeth against those acid attacks.
Although use of over-the-counter “bleaching” products may help with staining, these products are coming under increased scrutiny by the FDA and should preferably be administered and supervised by a dentist.