Everyday & games

Secret Santa draw

Draw who gives a gift to whom, with rules to keep couples or housemates from drawing each other.

Secret Santa draw
Esc to restore

Your inputs

Reveal the pairs privately: the table shows everyone’s draw at once.

3 to 200 distinct names.

Alice != Bob means Alice may not give to Bob. Alice <> Bob means neither may give to the other.

Run the tool when your settings are ready.

Your result

Your result will appear here.

Sensitive results stay in this page’s memory. Take care when copying or downloading them.

Your inputs stay in this browser. Nothing is uploaded or saved.

A clear answer. Here’s how.

Every person gives to exactly one other person and receives from exactly one, which is a derangement of the list. With no rules the tool shuffles the receivers and accepts a shuffle in which nobody draws themselves, so every valid draw is equally likely. Rules remove allowed pairs; if plain shuffles keep failing, a randomised bipartite matching finds a valid draw whenever one exists and says so when none does. Randomness comes from the browser’s cryptographic generator, and nothing is stored or sent. The result is displayed to everyone looking at the screen.