Password Generator — Free Online Tool on Toolpile

Pricing

Every tool you need, one place

PDF, Image, AI, Dev, and Business tools — free, private, no signup.

PDF

20

Image & Media

17

AI & Prompts

21

Text

13

Developer

26

Converters

6

SEO & Marketing

8

Generators

12

Productivity

7

Calculators

4

Business

9

Privacy & Security

5

Design

4

Content

5

Education

4

About Password Generator

A good password generator is the easy part; what people actually get wrong is the part before and after — how much entropy is enough, where to store the result, and what to do when a site rejects the characters you picked. Here's the working model, grounded in NIST SP 800-63B and 2024-era attacker economics.

How strong is 'strong'?

Password strength is measured in bits of entropy — log₂ of the number of possible passwords a generator could have produced. Each bit of entropy doubles the attacker's average time to brute-force you. NIST SP 800-63B considers ≥80 bits adequate for human-managed account secrets and ≥112 bits for system-to-system credentials. Common calibration: a 12-character random password from a 94-character printable-ASCII pool = ~79 bits; 16 characters from the same pool = ~105 bits; a 20-character password = ~131 bits.

Those numbers only apply if the password is uniformly random. 'P@ssw0rd1!' has 10 characters but maybe 20 bits of real entropy — every attacker's first-pass dictionary tries exactly that substitution. This is why the generator defaults to at-least 16 characters of genuine randomness; anything shorter is either human-memorable (and therefore weaker than its length suggests) or machine-stored (in which case length costs you nothing).

In 2024, consumer-grade hardware (single RTX 4090) runs ~200 billion SHA-256 guesses per second on an exposed hash. Against bcrypt/argon2 (the modern defaults for stored password hashes), that drops to thousands per second per GPU because the algorithms are deliberately slow. A 16-char random password survives essentially forever against bcrypt; a 12-char random password survives months against unsalted SHA-256 if the hash leaks. Always prefer longer + generator-produced over shorter + 'clever'.

Passwords vs passphrases

For anything you need to type (disk encryption, SSH key, password manager master password), a passphrase of 5-7 random words from a large wordlist (e.g., EFF's 7,776-word 'long' list) is usually stronger and more memorable than an equivalent-bit random string. Five words from a 7,776-word list = ~64 bits; six = ~77 bits; seven = ~90 bits. The famous xkcd 'correct horse battery staple' example is four words = ~51 bits — strong enough against online guessing, too weak for a leaked hash against modern offline attacks. Use six words or more if the passphrase is securing a vault.

For anything you don't need to remember (per-site passwords inside a password manager), random-character output from this generator is strictly better — more bits per character, no dictionary risk, trivial to copy. A healthy setup is one strong passphrase (vault master) + a password manager filling 20-char random strings everywhere else. The passphrase protects the vault; the random strings protect each individual account from credential-stuffing when a site leaks.

When sites reject your generated password

Some sites impose character-class rules that reduce the effective keyspace — 'must contain exactly one uppercase and one digit' shrinks the pool more than the rule adds. The generator's toggle options (include uppercase / digits / symbols) exist so you can match a rule's shape and still produce a uniformly-random member of that constrained set. Turning off symbols drops a 20-char password from ~131 bits to ~119 bits — still overkill for any real-world attacker.

A minority of legacy systems still cap password length at 8-16 characters or ban specific symbols (bank websites are the worst offenders, though this is improving). If you hit one, max out the length allowed, include every character class the site accepts, and prefer the password manager to type it — never shorten a password because you'd need to type it; that's what autofill is for.

How to use this generator
  1. Pick the length — 16 is the modern default for per-site passwords; go 20+ for anything high-value; 6+ EFF words for a typeable passphrase.
  2. Toggle character classes based on the site's rules. Leaving all four on (upper, lower, digits, symbols) gives the best bits-per-character.
  3. Click generate; the browser's Web Crypto API (crypto.getRandomValues) produces the result locally — no server involved.
  4. Copy with one click. The generator never logs, stores, or transmits what it produced — every character you see existed only in this tab's memory.
  5. Paste into your password manager first, then into the site. This preserves the exact string; manual retyping introduces typos you won't notice until login.
FAQ

Is the output actually random?

Yes — the generator uses crypto.getRandomValues() from the Web Crypto API, which is the browser's cryptographic random source (seeded by the OS CSPRNG). It's not Math.random() (which is predictable and unsafe for secrets). You could use this output as an encryption key.

Does Toolpile know what password I generated?

No. Generation happens entirely client-side inside your browser. The page issues zero network requests for this operation — you could disconnect from the internet after loading and it would still work. No analytics track the output; we don't even see the length or character classes you chose.

How long should a password be in 2026?

16 characters random for regular accounts (well over the 112-bit NIST threshold with a full character set). 20+ for password-manager master, crypto wallet seed protection, or anything that would be catastrophic to lose. 6+ random words if you need to type it. Longer never hurts; shorter than 12 is hard to defend against modern offline attacks if the hash leaks.

Should I change passwords every 90 days?

No — NIST explicitly retired that guidance in SP 800-63B (2017). Forced rotation leads to weaker passwords ('Spring2024!' → 'Summer2024!'). Change passwords only when: (a) a service reports a breach, (b) you suspect compromise, (c) you reused it and another site leaked it. Check haveibeenpwned.com if unsure.

What about 'pronounceable' or 'memorable' passwords?

For most per-site accounts, skip them and use random output + a password manager — no memorisation needed. If you need a typeable passphrase (vault master, disk encryption), use the EFF Diceware wordlist or similar random-word generation. 'Pronounceable' random strings sit in an awkward middle — weaker than random characters of the same length because vowel/consonant patterns reduce keyspace.

Can I use this for API keys or cryptographic secrets?

Yes — crypto.getRandomValues produces cryptographically secure output. Use 32+ characters for API keys, 64 characters for anything like a JWT signing secret. For machine-to-machine secrets, the symbol-rejecting quirks of consumer websites don't apply, so keep every character class on.

Why does the same settings sometimes produce similar-looking output?

Random output includes occasional patterns by design — repeated characters, short alphabetical runs, visually clustered letters. If your eyes find a pattern, that's selection bias, not weakness; the next generation will be statistically independent. Avoid the instinct to 'reroll until it looks random' — you're reducing entropy by filtering.

Related tools

Related tools

See all generators tools →
Looking for something else? Browse all 155 tools.