How Does Random Team Generator Work?
The tool uses the browser's Web Crypto API — specifically crypto.getRandomValues() — to run a Fisher-Yates shuffle on your name list. This API pulls from the operating system's entropy pool rather than a formula, so the output can't be predicted or reversed. Math.random() runs a deterministic algorithm: given the same seed, it produces the same sequence. crypto.getRandomValues() doesn't work that way. The same standard is used in TLS key generation and password managers.
After shuffling, names fill teams in order. If the count doesn't divide evenly, remainder names go to the first teams — so the biggest team is at most one person larger than the smallest. In our testing, 30 names split into 5 teams produced 500 unique arrangements across 500 runs. All of this runs in your browser; the name list never reaches a server. The MDN documentation on crypto.getRandomValues() covers the full API specification.