How this Secret Santa generator works
Secret Santa is a gift-exchange tradition where everyone in a group is secretly matched with one other person to buy a gift for. The tricky part is making the draw fair: it has to be random, and nobody should pull their own name out of the hat. This generator does both in one click.
When you click Draw names, the tool reads your list, removes blanks and duplicates, and randomly shuffles the participants. It then turns the shuffled order into a circular chain — the first person gives to the second, the second to the third, and so on, with the last person giving back to the first. Because the chain links each person to a different position, the result is always a derangement: an arrangement with no one matched to themselves.
Reference note: the shuffle uses crypto.getRandomValues for cryptographically strong randomness when your browser supports it, falling back to Math.random only if it does not. Your list never leaves your device.
What you can run with it
| Group size | Works? | Notes |
|---|---|---|
| 1–2 people | No | A valid no-self-match draw needs at least 3 participants. |
| 3–10 people | Yes | Ideal for families, friends and small teams. |
| 11+ people | Yes | Office and large-group exchanges work the same way. |
Frequently asked questions
- What is Secret Santa?
- Secret Santa is a group gift-exchange game where everyone is secretly assigned one other person to buy a gift for. Each participant gives one gift and receives one gift, and the giver is usually kept secret until the gifts are opened.
- How does this Secret Santa generator work?
- Enter your participants' names — one per line or separated by commas — then click Draw names. The tool randomly shuffles the list and builds a circular chain of assignments so everyone gives one gift and receives one.
- Can someone draw their own name?
- No. The generator produces a derangement — an arrangement with no fixed points — so it is impossible for anyone to be assigned to give a gift to themselves.
- How many people do I need for Secret Santa?
- You need at least three unique participants. With three or more people there is always a valid assignment in which no one draws their own name.
- Is the draw random and fair?
- Yes. The shuffle uses your browser's cryptographically secure random generator (crypto.getRandomValues) when available, falling back to the standard random function only if it is not.
- Is my list of names saved anywhere?
- No. Everything runs locally in your browser. Your names are never uploaded, stored, or sent to any server — refresh the page and the list is gone.