Reviewed editorial for this tool is not available in the requested language yet, so the English version is shown. This route should remain out of search indexes until a human-reviewed translation is published.
Secure browser-local randomizer
Random pair generator with constraints
Pair classmates, practice partners, reviewers, or activity participants while preserving every entered row. Constraints use stable row references, so identical display names are never merged.
Tool controls
Set the options, then generate a result.
How it works
- Enter 2–100 participants, one per line.
- Optionally define locked and excluded pairs; allow one bye for an odd total.
- The solver randomizes eligible choices, validates every constraint, and returns all pairs or a clear impossibility error.
Worked example
With two people named Sam, reference them as Sam and Sam #2 in constraints. Both remain separate entries in the generated result.
Limits and checks
- Each participant may appear in only one locked pair.
- A pair cannot be both locked and excluded, and unknown references are rejected.
- Some combinations have no solution; the tool reports this instead of relaxing a rule or dropping a person.
Privacy
Your entries and results stay in this browser tab. This tool does not put them in the URL, browser storage, analytics events, or a server request. Regular site analytics may still load without receiving these values.
Frequently asked questions
- Are duplicate names removed?
- No. Every non-empty input line gets its own internal ID. Numbered references let constraints identify repeated names.
- Who receives the bye?
- When enabled, every unpaired eligible participant is considered in randomized order until a valid full pairing is found.
- Do my entries leave this device?
- No tool value is sent, stored, logged, or placed in the URL. Closing or refreshing the tab clears the current work. Regular site analytics may still load without receiving the values.
- What makes the selection random?
- The tool uses the browser's Web Crypto getRandomValues source and unbiased integer selection. Filters and constraints change the eligible set, not the chance among remaining valid choices.