Illustration of character set checkboxes for lowercase, uppercase, digits, and symbols producing a random string

Random String Generator

Pick a length and character set, then generate. Runs entirely in your browser using a cryptographically secure random source.


ℹ️ How this works
  • Uses crypto.getRandomValues() (a cryptographically secure random source, not Math.random()) with the same rejection-sampling technique as the NanoID Generator, so every character in the pool is equally likely regardless of pool size.
  • "Exclude ambiguous" removes characters that are easy to misread or mistype: 0/O and 1/l/I.
  • Runs entirely client-side — nothing here is ever sent anywhere. The JSON API below is a separate, opt-in endpoint for scripts.
💻 Show API usage example (cURL)
curl -sS "https://devops.majbase.com/random-string-generator/api?length=16&symbols=true&count=5"

Returns {"values": [...]}, or {"error": "..."}. Optional flags: lowercase, uppercase, digits (default true), symbols, exclude_ambiguous (default false), and count (default 1, max 100).