Random String Generator

Change length and character types — output updates automatically.

Very strong
Length: 20 0 B · 0.0 ms

Characters used

Change length and character types — output updates automatically.

Very strong
Length: 20 0 B · 0.0 ms

Characters used

Random String Generator

Create random strings for passwords, tokens, identifiers, and test data using Web Crypto getRandomValues—no uploads, no server. Choose alphanumeric, hex, numeric, Base64 URL-safe, or a custom alphabet; exclude ambiguous characters; control length, count, and separators; large jobs run in a Web Worker.

Random String Generator Use Cases

  • Generate password-reset tokens, invite codes, and one-time secrets locally
  • Create test fixtures with controlled length, charset, and multi-line batch output
  • Produce URL-safe Base64 alphabet strings for identifiers and opaque IDs
  • Build custom-alphabet strings for simulations, games, and constrained systems

Random String Generator FAQ

Is this suitable for passwords and API keys?

Strings use crypto.getRandomValues with unbiased sampling from your chosen alphabet. For passwords, prefer long length, a large alphabet, and your own secret management practices.

Why does it sometimes use a Web Worker?

Very large outputs or huge custom alphabets can block the UI thread. The tool offloads work above a size threshold so the page stays responsive.

What does “exclude ambiguous characters” do?

It removes characters that are easy to confuse visually (like 0/O, 1/l) from presets, helping humans copy values reliably.

Is my data sent to a server?

No. Generation runs entirely in your browser. Nothing is uploaded or logged by fmtly.