About passwords
A strong password combines length with a variety of character types. Each added character type multiplies the number of possible combinations, making brute-force guessing harder. This tool uses your browser's built-in random number generator to create passwords that never leave your device.
How do I generate a strong random password?
To generate a strong password, pick a character pool (uppercase, lowercase, numbers, symbols), then use a cryptographically secure random number generator to pick one character from that pool per position, repeated for the chosen length. Example: with all four character types and length 16, this tool's pool is 88 characters, giving 88^16 (about 1.3 x 10^31) possible passwords.
Steps to generate and evaluate a random password
- Choose which character types to include: uppercase letters, lowercase letters, numbers, and symbols.
- Combine the selected types into a single character pool (for example, all four types together give this tool's 88-character pool: 26 uppercase + 26 lowercase + 10 digits + 26 symbols).
- Use crypto.getRandomValues(), the browser's cryptographically secure random number generator, to pick one random index into the pool for each character position.
- Repeat that random selection for the chosen password length to build the full string.
- Estimate strength from the pool size and length together: more character types and more length both multiply the total number of possible passwords.
Password search space formula
Possible passwords = (pool size) ^ (length)
- pool size = number of distinct characters available (26 for lowercase only, up to 88 with uppercase + lowercase + numbers + this tool's symbol set)
- length = number of characters in the password
Example search space by length and character types
| Length | Character types | Pool size | Possible passwords |
|---|
| 8 | Lowercase only | 26 | 2.1 x 10^11 |
| 8 | All 4 types | 88 | 3.6 x 10^15 |
| 12 | All 4 types | 88 | 2.2 x 10^23 |
| 16 | All 4 types | 88 | 1.3 x 10^31 |
| 20 | All 4 types | 88 | 7.8 x 10^38 |
Frequently asked questions
Is length or character variety more important for password strength?
Length matters more. NIST SP 800-63B specifically recommends prioritizing length over forced complexity rules, because each additional character multiplies the search space more than adding one more character type does — a longer password built from a passphrase of ordinary words can be stronger than a short one stuffed with symbols.
Does this tool send my generated password anywhere?
No. The password is generated and displayed entirely inside your browser using JavaScript's crypto.getRandomValues() — nothing is transmitted to a server, logged, or stored, so the password never leaves your device unless you copy and paste it elsewhere yourself.
Why does adding symbols make such a big difference to strength?
Strength scales exponentially with pool size, not linearly. Adding this tool's 26 symbols to a 62-character alphanumeric pool (26 uppercase + 26 lowercase + 10 digits) brings it to 88 characters, and because the exponent (length) stays the same, that larger base multiplies the total number of possible passwords many times over.
Should I reuse a strong generated password across multiple sites?
No. A password's strength only protects against guessing attacks; it does nothing to prevent damage if one site's database is breached and the same password is reused elsewhere. Use a unique password per site, ideally managed with a password manager.
This tool generates passwords entirely client-side using the Web Crypto API and estimates strength only from length and character-set size; it cannot check a password against known breach databases or detect predictable patterns like keyboard walks or dictionary words.
Sources: NIST SP 800-63B - Digital Identity Guidelines: Authentication and Lifecycle Management
Privacy and safety
- Runs in your browser — Everything you type is calculated on your own device. Your inputs are never sent to a utilduck server.
- Encrypted connection — Pages are served over HTTPS, so nobody on the network can read what you load.
- Not shared with third parties — Your inputs are not passed to analytics or advertising services.
- Nothing is stored — Results are not saved to any server, and there is no account to create.
Last updated: 2026-08-17