Method & limits · reviewed 29 July 2026
How the coin flipper chooses a face and records the session.
The logical result and the visual motion are separate. That prevents a dropped animation frame, WebGL fallback or early overlay close from changing heads into tails.
The random bit
For each flip, the tool requests one unsigned 32-bit value from crypto.getRandomValues when that browser API exists, then reads its lowest bit: 0 is heads and 1 is tails. Each of those bit values occupies exactly half the 32-bit range. If the API is unavailable, the compatibility path combines the current time with Math.random; that fallback is less suitable for security-sensitive use.
The animation does not decide the result
A separate random seed controls the visual arc, rotation and bounce. WebGL is preferred for the cinematic path. If WebGL is unavailable, fails to start or loses its context, a DOM/CSS physics fallback displays the same already-selected face. Reduced-motion mode uses a shorter transition while preserving the result.
Calls, batches and history
A call only compares your choice with the generated face; it cannot influence the bit. Batch mode generates between 1 and 100 independent bits and reports the counts plus the last flip. The visible list keeps the latest 20 receipts in memory. Export CSV writes those current receipts to a local download. Reset or reload clears the session.
Why a streak is not automatically suspicious
The probability of five specified heads in a row is 1 in 32, so such a streak appears naturally over repeated use. A fair source promises equal probability per independent flip, not a perfectly alternating display or an exact 50/50 split in every small batch.
Worked decision protocol
- Write the two outcomes before touching the button.
- Assign heads and tails unambiguously.
- Choose one flip unless the protocol explicitly requires a batch.
- Read or export the receipt before changing the rule.
Privacy and network boundary
The choice, counts and history run in the current browser tab. The tool has no account, shared result store or flip-upload API. The page separately requests Google Fonts; that request is unrelated to the result generator. A CSV is created only when you press Export CSV.
Verification record
On 29 July 2026, automated Chromium checks passed for forced heads and tails, batches, calls, counters, history, reset, CSV export, repeated flips, early overlay closure, reduced motion, keyboard Escape, copy behavior, WebGL failure and context-loss fallbacks, deterministic visual seeds, mobile overflow and both final coin faces in the WebGL path. These are software tests, not gambling certification or an audit of your browser’s random-number implementation.
Maintenance and corrections
The tool is maintained by Steve T.. Report a result, export or accessibility problem through the Pink Banana Tools contact page, including the browser, chosen options and visible receipt.
Open the coin flipper or browse coin flip examples.