utilduck
Home · Developer · Password Generator

Password Generator

Customize length and character types, then generate a strong random password.

Strength
-
Strength-

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

  1. Choose which character types to include: uppercase letters, lowercase letters, numbers, and symbols.
  2. 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).
  3. Use crypto.getRandomValues(), the browser's cryptographically secure random number generator, to pick one random index into the pool for each character position.
  4. Repeat that random selection for the chosen password length to build the full string.
  5. 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

LengthCharacter typesPool sizePossible passwords
8Lowercase only262.1 x 10^11
8All 4 types883.6 x 10^15
12All 4 types882.2 x 10^23
16All 4 types881.3 x 10^31
20All 4 types887.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