Password Generator
Cryptographically secure passwords via Web Crypto API — nothing leaves your browser.
Settings
Click "Generate Passwords"
Related Tools
// more about this tool
How the randomness works
This uses the Web Crypto API's crypto.getRandomValues() rather than Math.random(). That distinction matters: Math.random() is a fast, predictable pseudorandom generator meant for things like shuffling a list or picking an animation delay, not for anything security-sensitive, since its output can in some cases be predicted. Web Crypto's generator is designed for cryptographic use, which is what an actual password needs.
Choosing length and character sets
Toggle uppercase, lowercase, numbers, and symbols independently, and set the length. The strength indicator gives you a rough read on how resistant the result is to brute-force guessing, based on the size of the character pool and the length you picked. Longer beats more complex: a 20-character password using only lowercase letters is still harder to brute-force than an 8-character password using every character type.
What stays on your device
Generation happens entirely in your browser. Nothing you generate here is sent to a server, logged, or stored anywhere. That's true of every tool on this page, but it's worth saying explicitly for a password generator specifically.