Skip to content
epitometool

UUID generator

Generators

Generate v4 / v7 UUIDs in bulk with copy-to-clipboard.

Updated

ID type

Options

1 – 10 000

  • GGenerate
  • CCopy all
  • DDownload .txt

Decode a UUID

Paste any standard UUID to inspect its version, variant and timestamp.

All ids are generated locally using crypto.getRandomValues. v5 uses Web Crypto SHA-1. Nothing is uploaded.

Quick start

How to generate UUIDs

Pick a UUID version, how many you want, then copy or download — nothing leaves your browser.

  1. Step 1
    Pick a version

    Choose UUID v4 for random IDs, v7 for time-ordered DB primary keys, v5 for deterministic name-based IDs, or ULID / NanoID for shorter alternatives.

  2. Step 2
    Set how many and the format

    Generate up to 10 000 at a time. Tweak the output format (dashes / no-dashes / braces / uppercase / Base64) before generating.

  3. Step 3
    Copy or download

    Click Copy all to grab them as plain text, or download as .txt or .json for use in tests, seed data or CSV imports.

In-depth guide

Complete guide to UUIDs and sortable IDs

A UUID is a 128-bit identifier you can generate anywhere in the world and reasonably assume nobody else will ever produce the same one. This tool covers every standardized UUID version plus the two most popular modern alternatives — ULID and NanoID — all generated locally in your browser.

Which version should you pick?

  • v4 (random) — the safe default for one-off random IDs. 122 bits of entropy means collisions are astronomically unlikely.
  • v7 (RFC 9562) — best choice for database primary keys. The first 48 bits are a Unix millisecond timestamp, so rows insert in roughly time order and B-tree indexes stay tidy.
  • v1 (time + node) — legacy timestamp-based UUID. Use only when interoperating with systems that already emit v1; v7 is strictly better for new code.
  • v5 (SHA-1 namespace) — deterministic: the same (namespace, name) always produces the same UUID. Useful for turning URLs or DNS names into stable IDs.
  • Nil / Max — special sentinel values, mostly used in tests and as "not set" markers.

ULID and NanoID

UUIDs aren't the only game in town. Two non-RFC alternatives have become popular:

  • ULID — 26 characters of Crockford base32 (no I, L, O or U to avoid look-alikes). The first 10 chars are a millisecond timestamp, so ULIDs sort lexicographically by creation time.
  • NanoID — defaults to 21 URL-safe characters and lets you tune both the length and the alphabet. For 21 chars over the default 64-char alphabet, you need ~1 trillion IDs per second for 1 000 years to hit a 1% collision probability.

Decoding an existing UUID

Paste any UUID into the Decode panel and we extract:

  • The version (the high nibble of byte 7) and variant (the top bits of byte 9).
  • For v1 / v7: the creation timestamp, rendered as ISO 8601 UTC.
  • The canonical form — accepts dashed, dash-less and brace-wrapped input.

This is handy when you're staring at a UUID in a log line and want to know whether it carries a timestamp (v1 / v6 / v7), is purely random (v4) or was hashed from a name (v3 / v5).

Privacy and randomness

Computed locally. Open DevTools → Network and generate 10 000 UUIDs — zero requests fire. Every byte of randomness comes from your browser's CSPRNG (crypto.getRandomValues); v5's hash uses Web Crypto SHA-1 in the same process.

Because nothing is uploaded, the generator works offline once the page has loaded, leaves no server-side trace, and is safe for generating IDs that will later identify confidential data (licence keys, user IDs, draft tokens).

Frequently asked questions

Which UUID version should I use?

For database primary keys: v7 — it's time-ordered, so rows insert without index fragmentation while still being globally unique (per RFC 9562). For random tokens with no ordering needs: v4. For deterministic IDs based on a name (e.g. converting URLs to stable IDs): v5. Avoid v1 unless you specifically need the historic time-and-node layout.

Are these UUIDs cryptographically secure?

Yes. Every version pulls its randomness from the browser's CSPRNG via crypto.getRandomValues(), and v5 uses Web Crypto SHA-1. v4 has 122 bits of entropy, v7 has 74 bits of entropy plus a 48-bit timestamp.

Does this generator ever upload data?

No. Everything — including v5's hash computation — runs locally in your browser. You can verify with DevTools → Network: no requests fire during generation.

What's the difference between ULID and NanoID?

ULID is 26 chars of Crockford base32, sortable by time, and the timestamp is embedded. NanoID is shorter (default 21 chars), URL-safe, fully random, and lets you pick the alphabet. Use ULID when you need lexicographic ordering; NanoID when you want a short URL-friendly random token.

How many UUIDs can I generate at once?

Up to 10 000 per batch. There is no server-side rate limit because nothing is sent to a server. For larger sets, run multiple batches and concatenate the downloaded files.

Can I get UUIDs without dashes, or in uppercase?

Yes — pick a format under Options. We support standard (8-4-4-4-12 lowercase), no-dashes (32 hex chars), braces ({...}), uppercase and Base64-URL.

How do I extract the timestamp from a v7 UUID?

Paste it into the Decode panel. The first 48 bits of a v7 UUID encode a Unix millisecond timestamp, and we render it as ISO 8601 next to the version and variant.

Keep exploring

More tools you'll like

Hand-picked utilities that pair well with the one you're on — all free, client-side, and zero-signup.