Draw fairness

Winners are picked by a deterministic, seeded algorithm, not by a person. The random seeds are sealed before entries close and revealed after the draw, the pool of entries is frozen and fingerprinted, and every drawn competition has a verification page where your browser reproduces the result in one click. You do not have to trust us, and this page explains why.

This page covers the draw mechanism. The wider set of player protections we operate, from the free entry route to self-exclusion, is set out on how we protect players.

How is a winner picked?

Two random seeds decide every draw, and both are fixed before anyone can see who has entered. The ticket-number seed is generated when the competition is created; the draw seed is generated the moment entries open. At that moment we publish a SHA-256 fingerprint of each seed on the competition page and lock the seeds so they cannot be changed. The seeds themselves stay sealed until the draw.

Every entry in a competition, paid or free postal, goes into a single numbered pool. When the draw runs, that pool is frozen: the entry ranges are written to a file with its own SHA-256 fingerprint, so it cannot be quietly changed afterwards. A published, deterministic algorithm then turns the draw seed into a winning ticket number. Deterministic means the same seed and the same pool always produce the same winner, which is what makes the result checkable. Nobody at NetCompetitions picks a number, and nobody can nudge the outcome without the published arithmetic failing to match.

What gets published after a draw?

Before the draw, from the moment entries open, the competition page shows the fingerprints of both seeds and the time each was sealed.

After the draw, the competition’s verification page publishes:

  • the draw seed that produced the result, which you can check against its published fingerprint;
  • the ticket-number seed used to shuffle ticket numbers (sealed until the draw so instant-win numbers cannot be targeted by purchase timing), likewise checkable against its fingerprint;
  • the frozen pool of entry ranges as a downloadable file, and its SHA-256 fingerprint;
  • a step-by-step derivation from seed to winning ticket, for every prize, and a one-click verifier that recomputes all of it in your browser.

Who owns which entry range is deliberately not published, because it is personal data and it is not needed to reproduce the winning numbers. The full record, including ownership, is retained unchanged for auditors.

How do I check a result myself?

  1. Find the competition on the past draws page and open it. Every drawn competition links to its own verification page.
  2. Press Verify this draw. Your browser downloads the frozen pool file, checks each seed against the fingerprint published before entries closed, and re-derives every winning ticket. Each check shows a tick or a cross.
  3. Type any ticket number into Check a ticket number to confirm it was in the pool the draw was made from.
  4. If you want certainty rather than reassurance, open “Show the exact algorithm”, download the published record and the reference script, and run the same checks on your own machine, or recompute the result in any programming language. The same inputs always give the same answer.

We do not publish entrants’ names. Your own ticket numbers are always visible under My Tickets, and the frozen, anonymised entry ranges for every draw are on its verification page.

Do draws always happen?

Yes. Once a competition opens, the draw takes place on the published date whether or not the tickets sell out. We never roll a draw forward until enough money is in, which is the industry practice people most distrust. If a competition sells 40 tickets, the prize is still awarded and the odds are simply better for the people who entered.

What if a winner cannot take the prize?

If a winner cannot be reached, fails verification or has deleted their account, the prize is not handed to someone of our choosing. It is drawn again by the same mechanism, on a new seed derived from the sealed one, from the entries that remain, and the verification page discloses every attempt and the reason for it: each redraw is shown with its own seed, its own frozen pool and its own derivation, not hidden behind the final result.

Who checks the checker?

The verifier that runs in your browser is a separate, public implementation written from the published algorithm text, and it deliberately shares no code with the program that ran the draw. You can read every line of it, and run the same file on your own machine. A bug or an alteration in either implementation would show up as a mismatch rather than passing silently; behind the scenes, every draw is also re-derived by a second checker the moment it runs, and a mismatch raises an alert.

If you check a result and something does not add up, tell us. Our complaints process, with its response commitments, is described on how we protect players.