Coin Flip

Flips a fair virtual coin, with a short spin animation, a running tally of heads and tails, and a history of your last twenty results. Useful for settling a decision, splitting teams, or demonstrating what randomness actually looks like.

Live demo · real result from this tool

Press Generate to create a result.

Processed on your device — nothing is uploaded.

How to use Coin Flip

  1. Decide which option is heads and which is tails before flipping.
  2. Press Flip Coin and wait for the spin to settle.
  3. Check the tally and the recent-results strip if you are flipping repeatedly.
  4. The history keeps the last twenty results; older ones drop off.
  5. The spin is animation only — the outcome is drawn when the animation ends, and holding the button down or flipping faster changes nothing.
  6. Works offline once the page has loaded.

The randomness is cryptographic, not Math.random

Each flip draws from crypto.getRandomValues, which is fed by the operating system’s entropy pool, rather than the ordinary pseudo-random generator built into JavaScript. For deciding who buys coffee the difference is academic; the reason to do it anyway is that a pseudo-random sequence is reproducible in principle from its seed, while this one is not predictable by anyone — including whoever wrote this page.

A real coin is not quite 50/50; this one is

Physical coin flips carry a small bias. Diaconis, Holmes and Montgomery showed in 2007 that a flipped coin tends to land on the same face it started on slightly more often than not, because it precesses rather than tumbling cleanly about a fixed axis. A 2023 study that recorded 350,757 flips by hand measured that same-side bias at about 50.8%. Spinning a coin on a table is far worse — the milled edge makes some coins land tails around 80% of the time. A virtual flip has no physics to be biased by.

Streaks are normal, and the counter will not even out

In twenty flips, a run of four identical results is more likely than not. Eight heads in a row has a probability of one in 256, which over an evening of flipping is unremarkable. The heads and tails tallies shown here will not converge on equality either: the expected proportion approaches half, but the expected gap between the two counts grows roughly with the square root of the number of flips. After a hundred flips a 57–43 split is ordinary. Nothing corrects a streak — each flip has no memory of the ones before it.

The honest use for a coin flip

Assign the options before you flip, then notice how you feel when the result lands. If you are disappointed, you already knew which one you wanted and the coin has told you something more useful than the answer it gave. For genuinely equivalent options, take the result and move on — the cost of deliberating further exceeds the difference between them.

Frequently asked questions

Is the coin flip fair?
Yes — heads and tails each have an exactly 50% chance, generated by your browser's secure random source.
Can I see past flips?
Yes, the history shows your recent flips and the running heads/tails tally.
Is this coin flip genuinely 50/50?
Yes. Every flip draws a fresh value from the browser's cryptographic random number generator and maps it to two equally sized outcomes. There is no weighting and no memory of previous flips — which, as it happens, makes it fairer than a real coin.
Can the outcome be predicted or influenced?
No. The values come from the operating system's entropy pool, not from a seed anyone can observe or reproduce. Pressing at a particular moment or flipping repeatedly does not shift the odds.
Why did I just get seven tails in a row?
Because that has a probability of about one in 128, and unlikely things happen constantly when you repeat a trial. A run like that is not evidence of bias, and it does not make heads more likely next time — believing it does is the gambler's fallacy.

Written by the ToolsRift team · Last updated

Pages are drafted with AI assistance and checked by automated tests. How we write and check pages.

Was this tool useful?

Report a problem

Start typing to search every tool.

↑ ↓ to moveEnter to openEsc to close