What length actually buys you
Every character you add multiplies the number of possible passwords. With all four character types switched on, the pool is 94 characters, and each one contributes about 6.55 bits.
| Length | Entropy | Verdict |
|---|---|---|
| 8 | 52 bits | Weak by modern standards |
| 12 | 79 bits | Solid for most accounts |
| 16 | 105 bits | Strong |
| 20 | 131 bits | Beyond any foreseeable attack |
| 24 | 157 bits | Overkill, harmless |
Sixteen is the sensible default. It clears 100 bits, which puts it far outside brute-force range, and it still pastes cleanly into forms that have length limits.
Going past 20 adds nothing you will ever notice. The difference between 131 bits and 157 bits is academic when both are already unreachable.
The truncation trap
Here is a failure mode nobody warns you about, and it is silent.
Some systems take your 32-character password, tell you it saved, then quietly keep only the first 8 or 16 characters. You believe you have a very strong password. A fragment of it is what actually guards the account.
You find out by accident. If Xq7#mR2$vB9nK4pL logs you in, and so does Xq7#mR2$, you were truncated.
No way to spot it in advance. Which is one more argument for a password manager over memorising: if a site truncates, the manager still holds whatever it accepted and you lost nothing by trying a long one.
Sites that reject long passwords outright are at least being honest.
Symbols that cause trouble
Symbols are worth having on. A few of them break things in specific places.
Spaces get stripped by some forms, or trimmed off the ends, so a password that leans on a leading or trailing space can stop working. Quotes and backslashes sometimes upset older login pages that were built carelessly.
Keep symbols on anyway. If a site rejects your password and will not say why, just generate another one. Most sites have a character rule they never wrote down.
One thing to avoid: never fix a rejection by making the password shorter. Swap the symbols and keep the length.
Why ambiguous characters matter
Zero and capital O look almost the same in a lot of fonts, and so do the digit 1, lowercase l, and capital I.
Inside a password manager none of that matters. The thing gets pasted, never read.
It matters the moment a person copies it by hand. Reading a wifi password out loud to a guest. Typing one off a printed sheet. Entering it on a smart TV with an on-screen keyboard, one arrow key at a time, while everyone watches.
So: human reads it, drop those characters. Software handles it, leave them in and keep the bits.
Random means random
This tool uses crypto.getRandomValues, the browser secure generator, instead of Math.random.
That distinction is not pedantry. Math.random is built for speed, not secrecy. Its output is predictable. Watch enough values and an attacker can work out the internal state, then produce every "random" value it will give next. Fine for shuffling a playlist. Useless for a secret.
There is a second half to this. You cannot supply randomness yourself. A password you invented feels random but is not, because your choices follow patterns you cannot see. Take what the generator hands you, even when it looks ugly.
Frequently asked questions
What length should I choose?
Sixteen for most things. That is about 105 bits of entropy, well past any brute-force attack, and short enough to fit forms with length limits.
Are these passwords genuinely random?
Yes. They come from crypto.getRandomValues, the browser cryptographically secure generator, not the predictable Math.random.
Can you see the passwords I generate?
No. Generation happens in the page itself, and the password is never sent anywhere or stored.
A site rejected my password. What now?
Generate another rather than shortening this one. Sites often have unpublished rules about which symbols they accept, and length is the part you least want to give up.
Should I turn off ambiguous characters?
Only if a person has to read or retype the password. Inside a password manager it makes no difference and you keep more entropy by leaving them in.
Why does my long password sometimes not work?
Some systems silently truncate to 8 or 16 characters while telling you the full one was saved. A password manager protects you from this, since it stores whatever the site actually accepted.
Related: check a password you already use · random strings for API keys · generate UUIDs.