Home › Fun & Games › Secret Santa Generator

Secret Santa Generator

Enter the names, block couples or anyone else from drawing each other, and get a private reveal link for every participant, with your budget, date and message on it. No sign-up and no server: each match is stored inside its own link.

Exclusions (who must not draw whom)
    Event details (shown on every reveal card, optional)
    Advertisement

    How to use the Secret Santa Generator

    1. Type the participants, one name per line (names must be unique).
    2. Add exclusions: choose two people and press Add exclusion; keep Both ways ticked for couples.
    3. Fill in the event details if you like: event name, budget, date and a message.
    4. Press Generate draw. Each participant gets a private link.
    5. Send each link to its owner by chat or email. They open it and press Reveal my match.

    How the Secret Santa draw works

    A valid Secret Santa draw is a derangement: a random order in which nobody ends up with their own name. This tool builds it with a randomized search that respects every exclusion: it starts with the people who have the fewest allowed matches, tries receivers in a secure random order and backtracks if it reaches a dead end. Because it searches every option, it only reports "impossible" when no valid draw exists.

    Group sizePossible draws (no one draws themselves)
    3 people2
    4 people9
    5 people44
    6 people265
    8 people14,833
    10 people1,334,961

    With 3 people both possible draws are a single circle, so Avoid pairs drawing each other only matters from 4 people up. Each exclusion removes some of these possibilities, which is why small groups with many exclusions can become impossible.

    Step by step for organizers

    1. Collect names and agree on a budget and an exchange date.
    2. Add exclusions for couples, families or people who already buy for each other.
    3. Generate the draw and send each person their own link in a private message.
    4. Ask everyone to keep their link: they can open it again any time to check their match.

    Gift exchange ideas and etiquette

    • Set a clear budget (for example $20 or $25) so nobody feels awkward.
    • Use the message for rules: wrapping, a theme (books, handmade, local), or a wish-list link.
    • Keep it secret until the exchange, then let everyone guess their Santa.
    • Remote teams can ship gifts to each other or exchange digital gift cards.

    Splitting a big group first? Use the Random Team Generator, or decide who opens the first gift with the Picker Wheel.

    Frequently asked questions

    How do the private links work without a server?

    The match (giver, receiver and the event details) is written into the part of the link after the # sign, in a lightly scrambled form. That part is never sent to the web server: when a participant opens the link, this page reads it in their browser and shows a card with a Reveal my match button.

    Can the organizer see who has whom?

    Only if they want to. Links are listed by participant with the match hidden, so an organizer who also takes part can send the links without spoiling the surprise. Show all matches reveals everything after a confirmation.

    Is the link encryption secure?

    No, it is obfuscation, not encryption: the names are not readable in the link, but a technically skilled person could decode it. It is meant to stop accidental peeking. Send each person only their own link.

    How do exclusions work?

    An exclusion stops one person from drawing another. With Both ways ticked (best for couples or housemates), neither can draw the other. The draw is a random derangement: everybody gives exactly one gift, receives exactly one gift and never draws themselves or an excluded person.

    What if the exclusions make a draw impossible?

    If someone is blocked from everyone, or the exclusions leave no valid arrangement, you get a message instead of a wrong result. Remove an exclusion or add participants and try again.

    What if I need to redo the draw?

    Press Generate draw again and send the new links. Old links still show the old match, so tell everyone to use only the newest link. Changing the names list clears the current draw.

    Is anything saved?

    The organizer's names, exclusions, details and last draw are kept in this browser's local storage so you can come back and copy links again. Nothing is uploaded.

    Related tools