Li Shenron
Legend
Don't call for a roll until it matters. It doesn't matter what your players get on the dice at that point, they can't get a do over.
I prefer to make them roll when they think it matters. Most of the times failed stealth checks cause immediate consequences, but occasionally you may want to come up with some delayed consequences. By making the players roll when they say they want to be stealthy, I am giving away less information, compared to calling for a roll only when it matters (the extra information being, that now they know something must have made it matter).
Also I just don't allow a do-over. If you made noise while trying to be stealthy, I don't see how you could have another try...
One thing that IMHO really helps when dealing with many stealth situations, is turn-based exploration rules. More precisely, I am thinking of those situations where the PCs are trying to be stealthy for an extended amount of time against generic dangers (e.g. scouting ahead or navigating a dungeon), rather than a very specific instance (e.g. sneak past a specific guard, slowly open a specific door...). I am sorry they ended up not including turn-based exploration rules like the drafts they had during 5e playtest, because they really make sense. That kind of rule allows a PC to make a Stealth check that applies for a certain time window (such as 10 minutes or 1 hour), and therefore the DM doesn't need to worry about telling the players exactly when (or even if) their PC needed to make the check. Passive checks kind of cover that, but they are boring compared to having the players make the rolls.