Random pickers and generators

Tools for decisions that should be left to chance, and for schedules that should be fair. Each page explains how its result is made.

Last updated: September 29, 2026

In this section

Where the randomness comes from

All tools on this site ask your browser for random values through its cryptographic generator, the function crypto.getRandomValues. Browsers feed this generator with unpredictable data from the operating system. It is the generator that browsers provide for security purposes, and its results cannot be steered by this site.

The simple random function that many web pages use is not used anywhere on QR and Pick. An automatic test searches the program code for it before every release and fails if it appears.

Why a fair generator is not enough

The generator delivers numbers from 0 to 4,294,967,295. A tool needs a number from a much smaller range, for example 1 to 6. The obvious way is to divide and keep the remainder, but that is slightly unfair whenever the large range is not a multiple of the small one.

Think of a generator that delivers 0 to 7 and a die with the faces 1 to 6. With remainders, the values 6 and 7 would count as 1 and 2 again, so these two faces would come up twice as often as the others. The fair way is to throw the values 6 and 7 away and to draw again. The tools do exactly this with the large numbers. It is called rejection sampling.

Shuffling uses the Fisher-Yates method: go through the list from the end, and swap each entry with a randomly chosen entry from the part that is not yet fixed. Every possible order is then equally likely.

How the tools are tested

  • The rejection rule is tested with prepared values at the exact border between accepted and rejected numbers.
  • The distribution is tested with many thousands of draws and a chi-squared test with a fixed limit. A generator that favours a result fails the test.
  • Requests that cannot be fulfilled, such as eleven different numbers from 1 to 10, give a message that names the problem instead of a wrong result.

These tests check the program of this site. They are not an audit by an independent body, and the site keeps no record of any draw.

Sources

Frequently asked questions

Is this real randomness?
The values come from a generator that the browser seeds with unpredictable data from the operating system. It is built so that nobody can predict the next value from earlier ones. For classroom draws, games and passwords this is the appropriate source.
Can I repeat a draw with the same result?
No. The tools have no seed that could be entered, and no result is stored. If you need the result later, copy it or take a screenshot.
Can I use the tools for a prize draw?
The draw itself is fair, but the site cannot prove afterwards that a draw took place or what it showed. For a draw with prizes, check the rules that apply to you, draw in front of witnesses or record the screen, and keep the list of participants.
Why do I sometimes get the same result twice in a row?
Because every draw is independent. A die does not remember its last roll, and neither do the tools. With six possible results, a repeat happens in one of six draws on average. Where repeats are not wanted, use the option that excludes them.
Are my lists of names uploaded?
No. Lists are processed by your browser. They are saved on your device only if you tick the box for it, and one button deletes the saved copy.