Here are some steps you can follow to remove stains from granite:
1. Mix a poultice paste of baking soda and water (for oil-based stains), or baking soda and peroxide (for others), until it forms a thick paste.
2. Spread the mixture over the spot, cover it with plastic wrap that you've poked a few holes in, and secure it with tape.
3. Let the poultice paste stand for 24 hours.
4. Pull off the plastic wrap and wipe away the poultice paste with a damp cloth.
5. Rinse the area with distilled water and dry it with a soft cloth.
For mild water stains, soap and water or Dawn and a toothbrush can work. For food or drink stains, a mix of bleach and water can help. For hard water stains, sprinkle baking soda over the hard water stain and spray warm water over the area to wet it. Use a soft brush to scrub the spot in a circular motion and then rinse the area with clean water .