Skip to main content
CaseSwitch

UUID Generator

Use the CaseSwitch UUID Generator to mint UUID version 4 identifiers in your browser. Values come from `crypto.randomUUID()` (CSPRNG-backed in modern browsers). Use them for keys and correlation IDs — not as passwords.

Written by the CaseSwitch editorial team. We maintain these tools in the browser so drafts, keys, and images stay on your device.

Last reviewed: 23 July 2026

Uses secure browser randomness when available. Nothing is sent to a server.

Examples

Sample output shape — single UUID v4 (lowercase)

Input

quantity: 1 · uppercase off

Output

(illustrative sample — regenerate for a real id)
f47ac10b-58cc-4372-a567-0e02b2c3d479

Sample output shape — uppercase

Input

quantity: 1 · uppercase on

Output

(illustrative sample)
F47AC10B-58CC-4372-A567-0E02B2C3D479

Sample output shape — batch of three

Input

quantity: 3

Output

(illustrative — three independent v4 values)
xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx

Format anatomy (not a live draw)

Input

RFC 4122 layout reminder

Output

8 hex - 4 hex - 4xxx (version nibble 4) - [89ab]xxx (variant) - 12 hex

Sample use — fixture id label

Input

Need a stable-looking example in docs

Output

Prefer a clearly fake docs UUID (e.g. TEST-NET-style narrative) or label samples as non-live, as above — do not imply one click always returns the same string.

How to use

  1. Set quantity if you need more than one UUID, and toggle Uppercase only if your consumer requires it.
  2. Generate and copy the line(s) you need.
  3. Paste into migrations, fixtures, or request headers — keep casing consistent across services.

What this tool is for

UUID v4 is a 128-bit random identifier in the familiar 8-4-4-4-12 hex layout with version and variant bits set per RFC 4122. Teams use it for database primary keys in distributed writes, request IDs, idempotency tokens, and local test fixtures when sequential integers would leak volume or require a central allocator.

How it works

Each click (or batch) calls `crypto.randomUUID()` once per value. Quantity defaults to five (up to 100). Uppercase optionally rewrites the hex letters. Collision risk is negligible for normal application volumes. This is not UUID v1 (MAC/timestamp) or v7 (time-ordered) unless another tool says so.

When to use it

Primary keys across services, correlating logs between front end and API, seeding fixtures in a demo database, and generating a local test resource id without hitting a server.

When not to use it

Passwords or API secrets you expect humans to type (use the Strong Password Generator). Sequential invoices when you need sortable time in the ID — consider ULID or UUIDv7 in your stack. Do not assume uniqueness if some other script used `Math.random` to fake a UUID.

How it compares to related tools

The Strong Password Generator is for login secrets. The Random Number Generator yields small integers or decimals, not 128-bit ids. The Random IP Address Generator produces dotted quads for network mocks, not opaque resource keys.

Common mistakes

Generating one UUID and using it as a global API key forever without rotation, uppercasing in one system and lowercasing in another so equality checks fail, and treating a UUID in a URL as authorization by itself.

UUID v4 versus other versions

Version 4 is random. Version 1 embeds timestamp and node information. Version 7 is time-ordered and better when you want index locality. CaseSwitch’s generator is v4 only via `crypto.randomUUID()`. Pick the version your datastore and ops conventions already standardize on.

Public IDs and authorization

A v4 UUID is hard to guess but not a secret. Put authorization on the resource. Do not treat “secret URL containing a UUID” as auth. Collision probability is negligible at ordinary volumes; uniqueness still depends on using a real CSPRNG, which modern browsers provide.

Frequently asked questions

Are these UUID v4?+

Yes. Each value comes from `crypto.randomUUID()`, which produces RFC 4122 version 4 UUIDs when the browser implements it correctly.

Is UUID v4 safe as a public resource id?+

It is not secret, but it is hard to guess. Still enforce authorization. Do not treat obscurity as access control.

Can I decode who generated this UUID?+

Not for v4. There is no timestamp or MAC in the random bits beyond the version and variant nibbles.

Do you store generated UUIDs?+

No. They exist only in the page until you copy or refresh.

Why uppercase?+

Some older systems compare UUIDs case-sensitively or display them in uppercase. Prefer one convention end-to-end.

Is this the same as crypto.getRandomValues?+

`crypto.randomUUID()` is the Web Crypto helper for v4 UUIDs; browsers implement it with the same CSPRNG family as `getRandomValues`.

Are these values cryptographically secure?+

Random generators use crypto.getRandomValues() in your browser for secure randomness where supported.

Related guides

Read our original articles on this topic.

Related tools