A zero-dependency simulation engine built on vanilla web standards.
Designed to simulate physical tactile response on digital interfaces.
Ideal for probability education, unbiased decision making, or digital magic demonstrations.
A: In normal use, yes. The outcome is determined by JavaScript's Math.random() engine at the exact moment of execution. The 3D animation is then calculated dynamically to match this result. Note: a hidden demo mode (hold R) forces Heads, so results are not random while it is active.
A: No. All audio is synthesized in real-time using the Web Audio API. This ensures zero download latency and reduced bandwidth usage.
A: On supported mobile devices, the app triggers specific vibration patterns via the navigator.vibrate() API—rapid ticks for spinning, double-tap for success (Heads), and heavy thud for failure (Tails).
Flip a coin online with this free virtual coin toss. Tap the coin or the flip button, or press Space on your keyboard, and a 3D coin spins and lands on heads or tails, with sound synthesized in your browser and vibration feedback on supported phones. A live stats panel counts heads and tails and shows their percentages, so you can watch the results even out over many tosses; reset the stats any time to start fresh.
In normal use each outcome comes from JavaScript's Math.random(), giving an even chance of heads or tails. For transparency: the page includes a hidden demonstration "rig mode" (hold R) that forces Heads, so don't rely on it for decisions where someone else controls the keyboard.
A: In normal use each flip uses Math.random() with an equal chance of heads or tails. The page also has a hidden demo mode: holding R forces Heads, so flips made while R is held are not random.
A: Tap the coin or the flip button, or press Space on a keyboard.
A: Yes. Use RESET_MEMORY to clear the heads/tails counts and percentages.
Built by Madhav Suresh