Skip to content
AgileLogics

Password Generator

Generates a random password from a configurable set of uppercase, lowercase, digit, and symbol characters, using the Web Crypto API's cryptographically secure random number generator.

How it works

Adjust the length and character sets below, then click Generate. Click again for another one.

What makes a password strong?

A strong password is long and truly random. Length matters most: every extra character multiplies the number of possible passwords an attacker has to try. Randomness matters because attackers don't guess letter by letter; they start with leaked password lists, dictionary words and common patterns like Summer2026!, which crack in seconds no matter how many character types they contain.

This generator creates passwords where every character is chosen independently and uniformly at random using your browser's cryptographically secure random number generator (crypto.getRandomValues), so there's no pattern to exploit.

How to use the generator

  1. Set the Length slider (8 to 64 characters; 16 is the default).
  2. Choose which character sets to include: uppercase, lowercase, numbers and symbols.
  3. Click Generate, then copy the password straight into your password manager.

If you turn every set off, the generator falls back to using all of them rather than producing an empty password.

How strong is a generated password?

Password strength is measured in bits of entropy: each bit doubles the number of guesses needed. With all four sets enabled there are 76 possible characters, so each character adds about 6.2 bits.

Length Entropy (all sets) Average time to brute-force*
8 characters ~50 bits about 1.5 hours
12 characters ~75 bits about 5,900 years
16 characters (default) ~100 bits about 200 billion years
20 characters ~125 bits longer than the universe has existed, many times over

*Assumes an attacker making 100 billion guesses per second, which is realistic for a GPU cluster attacking a leaked database protected by a fast, unsalted hash. Websites that hash passwords properly (bcrypt, scrypt, Argon2) slow this down by many orders of magnitude.

Removing character sets lowers the entropy per character: lowercase only gives 4.7 bits per character, and letters plus numbers give about 5.95. You can make up for it with length. A 20-character lowercase password (~94 bits) is roughly as strong as a 15-character password using every set.

What the current guidelines recommend

The U.S. National Institute of Standards and Technology's digital identity guidelines, NIST SP 800-63B, are the standard most security teams follow. The current version:

  • requires passwords used as the only authentication factor to be at least 15 characters (8 when combined with multi-factor authentication),
  • says sites should accept passwords of at least 64 characters,
  • advises against composition rules like "must contain a symbol", since long random passwords make them unnecessary,
  • advises against forced periodic changes, unless there's evidence a password was compromised.

Tips for using generated passwords

  • Use a different password for every account. Reused passwords are the main way one data breach turns into many. That's only practical with a password manager, which is also where generated passwords belong.
  • Turn on multi-factor authentication wherever it's offered, especially for email, which can be used to reset everything else.
  • Check an existing password with the password strength checker. It runs in your browser too.

Need a random identifier rather than a password? The UUID generator creates random version 4 UUIDs, and the hash generator computes SHA-256, SHA-384 and SHA-512 checksums.

Last updated

Frequently asked questions

Is this password generator cryptographically secure?
Yes. It uses the Web Crypto API's crypto.getRandomValues(), the browser's cryptographically secure random number generator, not Math.random(), which is predictable and unsuitable for passwords.
Are generated passwords saved or sent anywhere?
No. The password is generated by JavaScript in your browser and is never sent to a server, logged, or stored. Once you close the page it only exists where you saved it, ideally in a password manager.
How long should my password be?
For an account protected only by a password, use at least 15 characters, the minimum NIST's current guidelines require for single-factor passwords. The default of 16 random characters from all four character sets gives about 100 bits of entropy, which is far beyond what brute force can reach.
Why doesn't my password contain a symbol even though symbols are enabled?
Each character is drawn at random from all enabled sets combined, so a short password can miss one set by chance. With all sets enabled, a 16-character password has about a 4% chance of containing no symbol, and an 8-character one about 20%. Generate again if a site requires one.
Which symbols does it use?
The 14 symbols ! @