S
SoSimple.tools
Holiday gift exchange

Secret Santa Generator

Type the names, add any pairs who should not draw each other, and draw. Each person taps to see only their own match, so one device is enough for the whole group

Runs in your browser: what you enter stays on your device

Who is playing?

At least 3 and at most 100 different names

?Names must match the list above (capitals do not matter). Names that are not on the list are ignored.

One group per line. Separate the names with " - " or "/". Nobody in a line will draw anybody else in the same line, so a line can be a couple or a whole family.

Everyone gives to the next person and the last one gives to the first, so nobody can swap gifts with just one person

You get one link per person to send by WhatsApp or e-mail. Each link shows only that person’s match. Turn this off to pass one device around instead.

The budget and the date only go into the message you can copy for each person. Nothing is sent anywhere.

Result
6 people drawn. The result is hidden from you: send each person their own private link below.
People
6
Keep-apart groups
0
Valid draws without your rules
265
Alex
Sam
Jordan
Taylor
Casey
Riley

For fun and recreational use only. Each link carries its result in encoded form, not encrypted, so anyone who gets your link can read it: send each link only to its owner. SoSimple.tools stores nothing and sends no messages or e-mails; you send the links yourself and you are responsible for the group, the gifts and the exchange. Only add people who agreed to take part.

Share this tool

How to use it

  1. Type or paste the names, one per line or separated by commas.
  2. If some people should not draw each other (a couple, a family), write them in the keep-apart box, one group per line.
  3. Tick the single circle if you do not want anyone to swap gifts with just one person.
  4. Optionally add the budget and the date, then press Draw names.
  5. Pass the device around. Each person taps Reveal next to their own name, sees who they give to, and taps Hide before passing it on. Copy message gives you a ready text for each person.

Worked example

Six friends: Alex, Sam, Jordan, Taylor, Casey and Riley. Alex and Sam are a couple, so the keep-apart box says Alex - Sam. Nobody can draw themselves, and Alex and Sam cannot draw each other. A draw might give Alex → Taylor, Sam → Riley, Jordan → Alex, Taylor → Casey, Casey → Sam, Riley → Jordan. With no rules, six people have 265 valid ways to match; the single-circle option leaves 120 of them (5!). Press Draw again for a new one.

Methodology

Random but valid. The tool shuffles the list with the browser’s secure random generator (crypto.getRandomValues, with rejection sampling so no position is favored) and keeps the first shuffle where nobody draws themselves and nobody draws a person in their keep-apart group. Without rules about 37% of shuffles are valid, so this takes a few tries. With many rules and no luck after 3,000 shuffles, it searches for any valid arrangement instead. In single-circle mode it shuffles the order of the circle and checks the rules between neighbors.

What it guarantees Nobody draws themselves, nobody draws someone from their own keep-apart group, and in circle mode everybody is in one loop. The names never leave your browser: no account, no upload, no email is sent.
What it does not do In the pass-the-device mode it cannot hide the full list from the person who types the names. In Private links mode the list is hidden on screen, but each link carries its result in encoded, not encrypted, form, so it is meant for friendly groups. When many rules force the fallback search, the result is valid but not guaranteed to be an equally likely pick among all valid ones. It does not send messages by itself: you send the links.

Why Names Get Drawn Twice

The usual hat-draw problem is that someone pulls their own name and everyone starts again. The table shows how often a plain shuffle works for a group.

PeopleShufflesNobody draws themselvesChance
36233.3%
424937.5%
51204436.7%
672026536.8%
840,32014,83336.8%
103,628,8001,334,96136.8%
  1. Small groups fail more often. With 3 people only 2 of 6 shuffles work, a 33% chance, so a hat needs about three tries.
  2. From 5 people up it settles near 37%. The chance converges to 1 ÷ e, about 36.8%, whatever the group size.
  3. Two people swapping. A valid draw can still pair A→B and B→A. The single-circle option removes that: six people go from 265 valid draws to 120 circles.
  4. Every rule shrinks the pool. Keep-apart groups are checked on every shuffle, so very strict rules can leave no valid draw, and the tool says so instead of looping.

Counts are exact for the plain case; your keep-apart groups remove some of them.

Related tools

Frequently asked questions

How does the Secret Santa draw work? ▼

The tool shuffles the names with your browser’s secure random generator and keeps a shuffle where nobody draws themselves or anybody from their keep-apart group. Each person then reveals only their own match.

Can I stop couples or family from drawing each other? ▼

Yes. Write each couple or family on its own line in the keep-apart box, with " - " or "/" between the names. Nobody in a line will draw anybody else from the same line.

What does the single circle do? ▼

It arranges everyone in one loop where each person gives to the next, and the last gives to the first. That rules out two people giving to each other, and nobody is left out of the chain.

Can the organizer see who drew whom? ▼

Not if you keep Private links on, which is the default. The draw runs in your browser and the screen shows only a private link per person, never who drew whom. It is hidden on screen, not locked: a link carries its result in encoded form, and you hold the links to send them, so a technically minded organizer could decode them. It is meant for friendly groups, not for anything that needs real secrecy. With Private links off, whoever runs the draw can see the full list by ticking the show-everyone box or using Copy Result.

Is anything stored or sent? ▼

No. The draw runs in your browser, the names are not uploaded and nothing is saved when you close the page. In Private links mode you send the links yourself, with your own WhatsApp or e-mail app; SoSimple.tools sends no messages and keeps no copy.

What if someone forgets who they drew? ▼

With private links, they simply open their link again. With the pass-the-device mode, press Reveal next to their name again. If the page was closed or reloaded, the draw is lost and you need to draw again, so send the links or copy the messages before you close it.

Is this just for fun? ▼

Yes. The Secret Santa generator is for recreational use among friends, family or colleagues who agreed to take part. It only shuffles the names you type and gives you the result; it does not organize, guarantee or supervise the gift exchange, and SoSimple.tools is not responsible for the gifts, the delivery or how the group uses the links. Only add people who agreed to be on the list, and share each link only with its owner.