This is a dated count of flip events reported to cointoss.uk after a documented data-validation change. It describes activity recorded by the site's API, not verified people, independently observed tosses, or a scientific test of randomness.
The snapshot
The query covers events from , the declared research cutoff, through the last included event at . The first event in that interval was recorded on 28 August at 10:42:02.249 UTC.
| Reported result | Events | Share |
|---|---|---|
| Heads | 685 | 49.28% |
| Tails | 705 | 50.72% |
| Total | 1,390 | 100% |
In a 1,390-event sample, an even split would be 695 of each result. The recorded heads count is 10 below that reference and tails is 10 above it: a 20-event gap between the two sides, or 1.44 percentage points. That is an observed difference in this sample, not evidence that the generator is either fair or unfair.
Modes with larger counts
The table shows modes with at least 100 recorded events. The remaining 93 events were 58 best-of-three, 25 football, and 10 cricket tosses. These mode counts describe the selected tool, not separate tests of the random generator.
| Mode | Events | Heads | Tails |
|---|---|---|---|
| Classic | 1,051 | 520 (49.48%) | 531 (50.52%) |
| Custom labels | 246 | 122 (49.59%) | 124 (50.41%) |
How results are generated and counted
The standard toss modes obtain a 32-bit value with the browser's Web Crypto crypto.getRandomValues() API and map its parity to one of two outcomes. The set of 32-bit values is evenly divisible by two. This describes the implementation; it does not authenticate each result reported to the server.
The API accepts an integer side of 0 or 1, an allowlisted mode, and either an allowlisted coin preset or no preset. It rejects unknown fields, malformed JSON, and request bodies over 1,024 bytes. The research query also filters to valid sides and allowlisted modes. A validation check of this snapshot found no invalid sides, modes, or presets.
Reproduce the aggregate from D1
SELECT mode,
COUNT(*) AS events,
SUM(CASE WHEN side = 0 THEN 1 ELSE 0 END) AS heads,
SUM(CASE WHEN side = 1 THEN 1 ELSE 0 END) AS tails
FROM flip_events
WHERE ts >= 1787844386000
AND ts <= 1791990858864
AND side IN (0, 1)
AND mode IN (
'classic', 'bestof3', 'custom', 'football', 'cricket',
'wc2026', 'markets_sp500_bull', 'markets_sp500_bear',
'markets_nasdaq_bull', 'markets_nasdaq_bear'
)
GROUP BY mode
ORDER BY events DESC;
Timestamps are Unix milliseconds. Summing the returned mode rows gives 1,390 events, 685 heads, and 705 tails. The query reads only the event table after the cutoff; it does not read the separate seeded public-counter baseline.
What this sample cannot tell us
- Events are client-reported. A request can be repeated or fabricated; this dataset cannot prove that each event followed a genuine browser toss.
- There are no accounts or unique-person identifiers in the research dataset. One person may contribute many events, so the count is not a visitor or audience count.
- The counts cannot show satisfaction, intent, or why someone used a particular mode.
- A finite sample cannot prove fairness or predict future results. This is descriptive site activity, not an independently controlled experiment.
The seeded counter is separate
The public worldwide counter began from a declared seeded baseline of 104,500. That starting figure is not observed activity. It is stored separately from flip events and is not included in this sample or the query above.
Data handling
The site stores event result, mode, selected coin preset, and timestamp without an account identity. The API may use an IP address temporarily for rate limiting; IP addresses are not part of this research table. Individual flip-event rows are retained for up to 90 days and then purged by a daily task. This published aggregate is retained as a dated summary; no raw event rows are published. See the Privacy page for the site's data practices.
This is the first snapshot in the site's documented reporting series. Later reports should use a new, explicitly dated window and disclose any change to collection or validation.