Generate a random password with full charset control (uppercase, lowercase, digits, symbols), optional exclusion of ambiguous look-alikes, batch count, and an optional required snippet at the start. You can also switch to a memorable pronounceable mode that fills with capitalized dictionary words. Everything runs locally in the browser; nothing is sent to a server.
How it works
Character-set switches build the alphabet used for random fill. When enabled, the generator guarantees at least one character from each selected set (when length allows) and samples the rest with crypto.getRandomValues. If you provide a required snippet, it is inserted first (spaces become underscores). When "easy to pronounce" is enabled, the tool fills remaining length with randomly chosen, capitalized words (3–22 characters) from an embedded word list, then pads with the selected charset. Number-encoding swaps letters for look-alike characters (a→@, e→3, i→1, o→0, u→v) on the snippet and words when that switch is on.
When to use it
- Creating strong random passwords with explicit symbol/digit requirements
- Generating several candidate passwords at once to pick one
- Building a password that must embed a specific name or word as a memory aid
- Preferring pronounceable passphrases for accounts you type often
Limitations
Number-encoding is a well-known substitution and adds little real entropy—it helps memorability, not security. The embedded word list is finite; someone familiar with it can narrow word choices. For highly sensitive accounts, prefer a long fully random string managed by a password manager.
Example
Length 16, all charsets on, symbols on, exclude ambiguous off, count 1 → a mixed string such as K7m@Qp2!xL9vRw3n. With pronounceable mode and snippet "cat", you might get C@tBr1efX9qTz2.