There is a quick way to see if your natural stone benchtop needs a new coat of sealer. Just put some water on your stone top and see what happens. If the water puddles up on top of the stone then your sealer is still doing its job. If the water penetrates into the stone then a new coat of sealer should be applied to prevent staining.
The time between resealing completely depends on what type of stone you have and how the stone benchtop is used. Some porous stone may need resealing every three months and some other stones may last years without needing a new coat of sealer.