Random Password Generator
Generate strong, deterministically-seeded passwords. Pick length, character classes, and bulk-count. All client-side — passwords never leave the browser.
Result
General calculation reads
Amazon affiliateAs an Amazon Associate we may earn from qualifying purchases. This does not add cost for you.
How to use this calculator
- Pick a length. 16 is a good default for site logins; 24+ for master passwords or encryption keys.
- Toggle the character classes — keep all four on for maximum entropy unless the target site rejects symbols.
- Optional: enable "avoid look-alikes" if the password will be transcribed by eye.
- Pick any one of the candidates and put it in your password manager. Discard the others.
- Change the seed (or any other input) to refresh.
About this calculator
A good password manager generates passwords for you; this tool exists for the moments when you do not have one handy. Pick a length, the character classes you want, and how many candidates to generate. Output is deterministic on the seed — increment to refresh — so the tool itself can be reviewed for correctness (no surprise weak passwords because of some hidden RNG state). 16 random characters from the full pool gives ~104 bits, well above the NIST threshold for everything short of cryptographic keys.
How it works — the formula
pool = union(enabled_classes); entropy = length · log₂(|pool|)
for each password: seed mulberry32, guarantee one char per enabled class, fill to length, Fisher–Yates shuffleBrute-force resistance is dominated by the size of the character pool and the password length. Mixing classes only matters insofar as it increases the pool; the most-impactful single setting is length. Forcing one character from each enabled class loses a trivial amount of entropy but prevents the awkward "the random one came out all lowercase" edge case.
Worked examples
- Inputs:
- length=16, lower/upper/digit/symbol=yes
- Output:
- ~104.3 bits (pool 95)
- Inputs:
- length=20, symbol=no
- Output:
- ~119.0 bits (pool 62)
- Inputs:
- length=24, avoidAmbiguous=yes, all classes
- Output:
- ~155 bits (pool 88)
Limitations
- Deterministic — for true CSPRNG randomness use your password manager. This generator is reproducible by design (for review and education).
- No real-world dictionary check; entropy is an upper bound.
- Symbol set is the common printable-ASCII subset; if a site rejects specific symbols you may need to retry with different inputs.
Store generated passwords in a manager — do not memorise from a screenshot. The seed is NOT a secret, but the chosen password IS.
Frequently asked
Is this random enough for a production password?+
Why deterministic?+
How long should my password be?+
Does every password contain every class I picked?+
What is "avoid look-alikes"?+
Is the password sent to a server?+
Related calculators
More tools you might like
Hand-picked tools that pair well with this one — same audience, same intent.
Estimate password entropy in bits and the time an offline brute-force attacker would need at common cracking rates. Pure client-side — your password is never sent anywhere.
Convert numbers between hexadecimal, binary, octal, and decimal. Shows the bit pattern grouped by nibble + the two’s-complement representation for negative values.
Generate placeholder text — paragraphs, sentences, or words — in deterministic seeded form. Starts with the classic "Lorem ipsum dolor sit amet" opening.
Generate a responsive CSS clamp() value that scales smoothly between a minimum and maximum size across a viewport range.
Generate a harmonious color palette — complementary, analogous, triadic, tetradic, or monochromatic — from a base color.
Add a password to a PDF so only people with the password can open it — strong AES-256 encryption.