How the coin flip is decided
Each flip uses crypto.getRandomValues to choose heads or tails with equal probability. The animation is visual feedback; the result is selected before the coin stops.
A coin flip simulator returns heads or tails with equal probability on every press. Each flip is independent — the previous results do not change the odds of the next one — and the outcome is decided by a single call to crypto.getRandomValues before the animation plays. That means the spin you see on screen is purely visual feedback: the coin cannot be made to land differently by clicking faster or stopping it earlier. Running totals for heads, tails, and overall flips appear next to the coin so you can track a streak or a small experiment.
Use it for the calls a real coin would be perfect for if there were one handy: who serves first, who picks the movie, who takes the last slice, which way to walk when the map is ambiguous. It is also a small classroom probability prop — flip the coin twenty times in a row and watch the heads-tails counter drift toward fifty-fifty without ever landing exactly there. That single live counter is often more memorable than a static slide about the law of large numbers.
The page is intentionally fast and quiet. No sign-in, no ads in the way of the result, no list of recent flips to manage. Just a coin, a button, and three counters. If the call you are making turns out to need a tie-breaker after a few flips, the running heads-tails total is right there.