18+ only. Gambling can be addictive. National Responsible Gambling Programme 0800 006 008.

The method

How Fair Draw works

A random draw is only fair if nobody could choose the outcome and everybody can check it. Most pickers ask you to trust a screen recording. This one gives you a proof.

1. The randomness comes from a public beacon

drand is a network of independent organisations, including Cloudflare, EPFL, Kudelski Security and Protocol Labs, that publishes a fresh random value every three seconds. Each value is a cryptographic signature that the members make jointly over the round number. No single member can predict it or steer it, and anyone can verify it against the network's public key. The rounds are numbered and each one lands at a known second.

2. A draw is bound to a future round

When you set up a draw, the tool writes down the entries, how many winners, and which beacon round will decide it. That description is fingerprinted with SHA-256; the fingerprint is the commitment. The round has not landed yet, so its value does not exist anywhere, not on this site, not with BetTip, not with drand.

3. The round lands and the winners follow

When the round's value arrives, the tool reads it from two independent relays, checks they agree, and verifies the signature. Then the winners are derived by a fixed rule: a seed is made from the round's randomness and the commitment, that seed drives a shuffle of the entries, and the first positions of the shuffle are the winners in order. The rule uses rejection sampling, so every entry has exactly the same chance. The complete rule, with test vectors, is in the specification, and it is short enough to reimplement in an afternoon.

4. The proof travels in the link

The result link carries the draw description, the commitment, the beacon output and the winners, after the # in the address. That part of a link never reaches a server, so nothing is stored anywhere and nothing needs to be trusted. Whoever opens the link has their own browser redo every step: the fingerprint, the signature check under the beacon's public key, and the shuffle. If any character was altered, a check fails.

What a proof shows, and what it cannot

A proof shows that the winners follow, by a public rule, from a genuine random value produced at a known time. That rules out the tool, BetTip or drand steering the result.

It does not by itself show that the entry list was fixed before the value existed. In theory an organiser could run draws again and again until a friend won, each on a fresh round, and share only the last one. The answer is the commitment link: post it where entrants can see it before the round lands, and the result must carry the same commitment. Choose “At a set time” on the draw page to get one. For a quick pick between friends, the instant draw is enough and nobody needs the ceremony.

Nor can a proof vouch for the list itself. It is in the proof precisely so entrants can check they are on it.

What this tool never does

  • It never falls back to a local random number. If the beacon cannot be read, nothing is drawn.
  • It never stores your entries. Names live only in the links you make and choose to share.
  • It never asks for an account, an email address or a payment.

Who built it, and why

BetTip publishes lottery and UK49s results in South Africa, and checks every draw it prints against a second source. A fair way to pick winners is the same idea applied to giveaways. The code is open source, and the API and library let anyone build the same guarantee into their own tools.