UUID Generator

Generate v1, v4, v5 or v7 identifiers in bulk: sortable, random, or name-based.

Your data is processed entirely in your browser and is never uploaded.

Tool workspace

version
count
format
case
OUTPUT

$ uuidgen --version 7 --count 1000

Pick a version and a count, then Generate. v7 batches come out already sorted; v5 turns a name into the same id every time.

THE FOUR VERSIONS

Not all UUIDs are random

v4

Version 4 — Random

122 bits of cryptographic randomness. The default for opaque identifiers.

randomcrypto.getRandomValues
v7

Version 7 — Time-ordered

A 48-bit Unix-ms prefix plus randomness. Sorts chronologically — ideal as a database key.

time-orderedsortablemonotonic
v1

Version 1 — Time-based

Timestamp + clock sequence + node. Time-derived, but its bytes don't sort as strings.

time-basednot lex-sorted
v5

Version 5 — Name-based (SHA-1)

A deterministic hash of a namespace + name. Same input always yields the same UUID.

name-basedsha-1deterministic

Version 3 (name-based, MD5) is intentionally not offered: MD5 isn't available in Web Crypto, and a hand-rolled copy would risk silent corruption. v5 is its correct successor.

HOW IT WORKS

Generate UUIDs in three steps

Pick a version

Choose v1, v4, v5, or v7 depending on whether you need time-based, random, namespaced, or sortable identifiers.

Set the batch

Choose how many to generate, plus the output format, case, and separator for the list.

Generate & export

Click Generate. V7 batches come out already sorted, then copy or download the entire list.

Docs · Generate

Not all UUIDs are random

A UUID is a 128-bit identifier, and the version you pick decides how those bits are made. v4 is fully random, the default for opaque ids. v7 is time-ordered: it puts the most significant time bits at the front, so batches come out already sorted and inserts stay sequential. v1 is also time-based but stores the low time bits first, so its string order doesn't follow time. v5 is deterministic. The same namespace + name always hashes to the same id, on any machine. This tool generates all four in your browser using the platform's cryptographic RNG (and SHA-1 for v5), with your choice of format (hyphen, compact, braces, urn) and case, in bulk up to 5000 per batch.

Things to know

v7 batches come out sorted

Because v7 leads with the most-significant time bits, a batch is already in time order. the tool confirms it's monotonic. That's what makes v7 the pick for primary keys you'll always insert in order.

v1 isn't lex-sorted

v1 stores the low 32 bits of the timestamp first, so string order doesn't follow time. That limitation is exactly what v7 was designed to fix.

v5 is deterministic

The same namespace + name always hashes to the same UUID, on any machine. Generating a batch appends an index to the name so you get distinct ids.

v5 · namespace DNS · name example.com
v3 is intentionally not offered

v3 uses MD5, which isn't available in Web Crypto; a hand-rolled copy would risk silent corruption. v5 (SHA-1) is its correct successor.

Try these

Opaque ids
v4 · count 5 · hyphen · lower

v4 is fully random, the default for anything that just needs to be unique.

Sortable keys
v7 · count 1000 · hyphen · lower

v7 batches come out already time-ordered and monotonic.

Stable name-based ids
v5 · namespace DNS · name example.com

Same namespace + name always yields the same identifier.

pair this withUse them in mock data → Fake JSON Generator·Format the result → JSON Formatter

FAQ

Quick answers

Which version should I use?

For an opaque id, v4. For a primary key you'll sort or insert in order, v7. Its time prefix keeps inserts sequential. For a stable id derived from a name (a URL, a DNS name), v5.

Are these generated on a server?

No. Every UUID is produced in your browser using the platform's cryptographic RNG (and SHA-1 for v5). Nothing you generate is transmitted or stored.

Why aren't v1 UUIDs sortable as strings?

v1 stores the low 32 bits of the timestamp first, so the string order doesn't follow time. That limitation is exactly what v7 was designed to fix. It puts the most-significant time bits at the front.

What does "deterministic" mean for v5?

The same namespace + name always hashes to the same UUID, on any machine. Generating a batch appends an index to the name so you get distinct ids; remove the index logic and you'd get the same id repeated.

What does a UUID look like?

A UUID looks like 550e8400-e29b-41d4-a716-446655440000: 32 hex digits in 8-4-4-4-12, 36 characters with hyphens. The 13th digit is the version, so a 4 marks v4 and a 7 marks v7. See UUID Format and Examples for v1, v4, v5 and v7 samples.

Is UUID v7 better than v4?

For database primary keys and any ID where chronological order matters, yes: v7 sorts by creation time and inserts sequentially. For opaque public tokens where you do not want time visible, stick to v4.

Can UUIDs collide?

Yes, but a v4 collision needs about 2.71 quintillion IDs for 50% chance. Use a cryptographic RNG. See Can Two UUIDs Ever Be the Same.

How do I generate a UUID in Python or JavaScript?

Python: uuid.uuid4(). JavaScript: crypto.randomUUID() in the browser or Buffer in Node. See How to Generate a UUID.