Privacy-first ID generators

Generate UUIDs, NanoIDs, ULIDs and more — entirely in your browser. No analytics on your IDs, no server round-trip, no logging.

UUID v4

Random, 128-bit

UUID v7

Time-ordered, sortable

UUID v5 / v3

Namespace + name (SHA-1 / MD5)

UUID v6

Reordered v1, time-sortable

NanoID

Short, URL-safe, configurable

ULID

Lexicographically sortable

Generating IDs in distributed systems

The big-picture guide — Snowflake, UUID v4 and v7, ULID, and KSUID, with a decision framework for new projects.

UUID versions explained

Side-by-side comparison of v1 through v8 — what they are, when to use them, and what to avoid.

UUID v7 in .NET: the byte-order pitfall

Why Guid.ToByteArray() silently breaks v7's sequential ordering, and how to fix it.

UUID v7 in PostgreSQL: a practical guide

How to generate v7 UUIDs, storage and index characteristics, and the gotchas to watch for as primary keys.

UUID vs auto-increment primary keys

A practical decision guide — performance, privacy, distributed generation, and when to use each.

NanoID vs UUID

Size, encoding, ecosystem support — and the cases where each format is the right choice.

How to choose a format

The generators here cover three broad families, and picking the right one is mostly a question of what you need the identifier to do.

Random identifiers — UUID v4 and NanoID — are unguessable and carry no embedded information, which makes them the right choice for public tokens, share links, and anywhere a value shouldn't reveal when or in what order it was created.

Time-ordered identifiers — UUID v7, UUID v6, and ULID — sort by creation time, so they work well as database primary keys without fragmenting a B-tree index the way random values do.

Name-based identifiers — UUID v5 and v3 — are deterministic: the same namespace and name always produce the same UUID, which is useful for stable IDs derived from data you already have. Each format is explained in depth on its own page and compared in UUID versions explained.

FAQ

Is my data sent anywhere?
No. Every generator runs in your browser via WebAssembly — including any inputs you provide to the namespace-based generators. Nothing about the IDs you generate leaves your device. You can verify by opening DevTools and watching the network panel: no requests are made during generation.
Do these tools work offline?
Yes. After your first visit, the site installs a service worker that caches the app shell and the .NET runtime, so every generator works without an internet connection. You can also install the site as a Progressive Web App for one-click access from your taskbar or home screen.
Which ID type should I use?
Database primary keys: UUID v7 — sortable and ecosystem-standard. Unguessable public tokens: UUID v4. Deterministic IDs from existing data (URLs, keys): UUID v5. Short URL-friendly IDs: NanoID. Sortable IDs with a compact text form: ULID.
An unhandled error has occurred. Reload ×