Skip to content

Password Generator

Generates a random password using your browser's cryptographically secure random number generator (crypto.getRandomValues) — never Math.random(). Your generated password never leaves your browser.

Options

20
Character types

Generated locally with your browser's secure random number generator. Your password never leaves your browser.

Password

Strength

Entropy

Rating

Based on entropy (randomness) — not a check against any particular website's password rules.

Common questions

Does this actually use a cryptographically secure random number generator?

Yes — every character is chosen using crypto.getRandomValues (the Web Crypto API's CSPRNG), never Math.random(). If a browser somehow lacks crypto.getRandomValues, this tool refuses to generate a password rather than silently falling back to a weaker source.

How is the "entropy" number calculated?

As length × log2(pool size) — the standard formula for how many equally-likely passwords exist when every character is drawn independently from the full pool. Turning on "Ensure at least one of each type" adds a small constraint that isn't reflected in this number, so the true entropy in that mode is very slightly lower than what's displayed — negligible at normal password lengths, but not literally exact.

What does "exclude ambiguous characters" remove, and does it apply to symbols too?

It removes 0, O, 1, l, and I from the letter and number pools — the character shapes people most often misread or mistype. It has no effect on symbols, since visual ambiguity isn't a meaningful concept there.