Secret Santa Generator (with Exclusions)

Generate assignments with exclusions (NG pairs) and groups. Reveal recipients one by one to reduce accidental leaks.

All processing happens locally in your browser. Names and assignments are not sent to any server.

Share URL contains settings only by default (no names/assignments).

Other languages: en | ja | es

Why this Secret Santa generator?

How to use (3 steps)

  1. Paste participants (one per line).
  2. Add exclusions / groups if needed.
  3. Generate, then reveal each giver’s recipient.

Create assignments fast

Secret Santa tool

Paste names, add constraints, and generate a one-to-one assignment.

Formats: Alice,Bob / Alice -> Bob / tab-separated. Mutual is recommended.

Advanced options

Example: Eve+Frank means they won’t be assigned to each other (when “avoid same group” is ON).

Seeded mode is for reproducibility. It is not intended for cryptographic secrecy.

Result

Reveal (recommended)

Select a giver and reveal their recipient. This reduces accidental leaks compared to showing all pairs at once.

All assignments (collapsed)
Giver Receiver
Reverse view (receiver → giver)
Receiver Giver
Share / Advanced URL

Advanced URLs can include names/constraints only if you explicitly enable them (privacy warning).

FAQ

How do I use it?
Paste participants, add exclusions/groups if needed, click Generate, then reveal recipients one by one.
What is an exclusion (NG pair)?
An exclusion is a forbidden pairing (e.g., couples). The generator will not assign those pairs.
What are groups?
Groups let you avoid giving within the same household/team (A+B+C per line).
Why can’t it find a solution?
Constraints may be too strict. Relax exclusions/groups, add more participants, or turn off “avoid 2-cycles”.
What is seeded mode?
Seeded mode is for reproducible results with the same seed. It is not intended for cryptographic security.
Are names stored or uploaded?
No. Everything runs locally in your browser. Share URLs are settings-only by default.