Remember tobacco is of course one of the worst offenders.
Keep a watch on the colour of your food. Cut down on tea, coffee or red wine. If you are a tea drinker – You can tell from its colour that it's high in chromogens, and it's very acidic. Together, these factors help turn white teeth yellow over time. Tea causes teeth to stain much worse than coffee. Iced tea or brewed tea -- it doesn't matter. Frequency does.
Red wine can be good for your health, but not ideal for your bright smile. It's very acidic, it has lots of tannins, and -- as its deep purple colour suggests -- it's high in chromogens, which land on your teeth and sticks to them.
People who drink cola beware as your teeth will turn yellow over time. That's because soda is very acidic, and dark cola contains chromogens. Clear-soda drinkers also may get duller teeth because lemon-lime flavours contain acids, which make teeth prone to stains from other foods.
When you do consume such foods and beverages, you can mitigate their effects in several ways. Drink tea or coffee with a little milk. Or drink iced tea or iced coffee through a straw. The same goes for fruit juices, sports drinks, and soda and other carbonated beverages—use a straw whenever possible. This ensures there is limited exposure of your teeth to these staining beverages.
Avoid or at least try to eat rarely excessive amount of ketchup as certain foods can change the colour of your teeth. These foods include soy sauce, ketchup and almost all acidic foods and drinks like lemons, candies, sodas, etc.
Eat more nuts, whole grains, fruits and vegetables rich in fibre and drink a lot of water. Many freshly squeezed citrus fruits contain concentrated fruit acids which can be harmful for your enamel, especially if you have sensitive teeth. Try to brush your teeth or rinse your mouth after you eat these fruits.
Opt for darker varieties of chocolate as this is less dangerous for your teeth because it contains huge amounts of cacao beans, which helps to fight bacteria. The higher the concentration of cacao beans in the chocolate, the better it is for your teeth.
Hard cheese is a good friend of white teeth as this is rich in calcium and is good not only for your teeth, but also for the whole body.
Spicy foods can be great for your teeth as spices encourage the production of saliva which helps wash out the leftover food in your mouth. Saliva also contains special substances that naturally fight bacteria in the mouth.
Growing Older also contributes to the yellowing of teeth. The enamel (the hard, white outer layer of your teeth) wears thin, allowing the underlying (yellow) dentine to show through. This is why our teeth appear more yellow as we age.
We advise you to chew sugarless gum to help neutralize the acids in the mouth. High-fiber foods can help lower the acid level as well; foods such as beans or spinach and other leafy greens help generate more saliva in the mouth and can “scrub” the teeth clean.
Gargle after every meal thoroughly with water. Avoid brushing your teeth too hard, to not scrub off the enamel. The enamel of your teeth softens by the acidic environment in your mouth after eating, so it's better to wait for at least 30 minutes (after your meals) before brushing your teeth. Brush your teeth gently after every meal or at least twice a day for two minutes, using short circular motions to protect your enamel. Don't forget to reach between your teeth and also brush your tongue for 30 seconds. Finish by rinsing with water or mouthwash.
For extrinsic staining get your tooth cleaned regularly by your dentist, a scaling and polishes takes about 20 minutes and does a superb job of helping maintain a happy, healthy mouth.