Free tool

UUID Generator

Generate and inspect UUIDs — v4, v7, v1, v6, and deterministic v3/v5 namespace IDs. Everything runs in your browser with the Web Crypto CSPRNG; nothing leaves the page.

Result
  • 13b891f3-e227-4a66-a1a3-453e1fe6c3aa
  • 7138fd2e-8cc3-4411-9757-51fb7a9922e1
  • 15f7a9a0-e1d6-4916-ac3b-be799192bbcc
  • c62c4f36-7e3b-4717-bb4e-d824eb170b6c
  • 244a1ba9-0fcc-40a0-a095-39ec5c852fa8

Deterministic — the same namespace and name always produce the same UUID.

Result
Version
Variant
Timestamp

Pick a version by what you need

Use v4 when you just need a unique random ID. Use v7 when that ID is also a database key and you want time-ordered inserts for better index locality. Use v5 when the ID must be reproducible from an input — the same name always maps to the same UUID.

Time-ordered IDs (v6 & v7)

Random v4 keys scatter across a B-tree index and hurt write performance at scale. v6 and v7 put the timestamp first so new rows append in order. v7 is the modern default: a plain Unix-millisecond timestamp plus random bits, sortable as plain text, with no node identifier to leak.

Everything runs in your browser

UUIDs are generated locally with the Web Crypto CSPRNG (crypto.getRandomValues) and the v3/v5 hashes are computed in-page — no value is ever sent to a server. That matters for the same reason Pug does: identifiers are sensitive, and you should own them.

Frequently asked questions

Which UUID version should I use?
For a random identifier, use v4 — 122 random bits, no coordination needed. If you store the ID as a primary key and want it to sort by creation time (better database index locality), use v7. Use v5 when you need the same input to always produce the same UUID (a deterministic ID derived from a name or URL).
What is the difference between v1, v6 and v7?
All three embed a timestamp. v1 is the original layout but is not sortable as text and leaks a node identifier. v6 reorders v1 so it sorts by time. v7 is the modern choice: a plain 48-bit Unix-millisecond timestamp plus random bits, lexicographically sortable and privacy-friendly.
Are these UUIDs safe to use? Where is the randomness from?
Yes. Generation runs entirely in your browser using the Web Crypto CSPRNG (crypto.getRandomValues) — nothing is sent to a server. The examples rendered before JavaScript loads are seeded (deterministic) placeholders and are replaced with crypto-random values on load.
What are v3 and v5 namespace UUIDs?
They are deterministic: UUID = hash(namespace + name). v3 uses MD5, v5 uses SHA-1 (v5 is preferred). The same namespace and name always yield the same UUID, which is useful for generating stable IDs from existing keys like a URL, domain, or email.
Why are v2 and v8 missing?
v2 (DCE Security) is effectively unused and underspecified for general generation, and v8 is reserved for custom/vendor formats with no canonical algorithm. Every version people actually generate — v1, v3, v4, v5, v6, v7, plus the Nil and Max UUIDs — is here.

Stable IDs, one timeline per user.

Pug stitches anonymous and identified IDs into a single profile — open-source product analytics with unified profiles. Self-host free under AGPL-3.0.