Free developer tools

UUID Generator.

Random v4, time-ordered v7 and more — up to 1,000 at once, formatted your way, generated entirely in your browser.

Developed and hosted in the EU
UUID Generator
v4 · v7 · v1 · bulk export
Runs entirely in your browser
Version

UUIDs are generated with the Web Crypto API on your device — nothing is requested from or sent to a server.

What is a UUID?

A UUID (universally unique identifier) is a 128-bit value, written as 36 characters of hexadecimal in five groups — like 550e8400-e29b-41d4-a716-446655440000. UUIDs let independent systems create identifiers without coordinating with each other or a central authority. The current standard is RFC 9562 (2024), which replaced RFC 4122 and added the modern versions 6, 7 and 8.

Which version does what

  • v4 — random. 122 random bits; the default choice for opaque identifiers.
  • v7 — time-ordered. Millisecond timestamp + randomness; sortable, index-friendly, the modern pick for database keys.
  • v1 — timestamp + node. The 1990s original; this generator uses a random node instead of your MAC address.
  • v3 / v5 — name-based. Deterministic: the same namespace + name always hashes to the same UUID.

v4 or v7 for primary keys?

Random v4 keys insert at random positions across a B-tree index — at scale this causes page splits, write amplification, and poor cache locality. v7 keys are time-ordered, so new rows append near each other, giving you UUID uniqueness with nearly sequential insert performance. The trade-off: a v7 key reveals when its row was created. If that timing is sensitive, stay with v4.

UUID, GUID — any difference?

None in substance: GUID is Microsoft's name for a UUID. The visual differences are convention — Windows tooling and .NET often print GUIDs in uppercase and wrap them in braces, like {550E8400-E29B-41D4-A716-446655440000}. Use the uppercase and braces options above to produce that format; RFC 9562 itself specifies lowercase without braces.

UUIDs in your code

JavaScript
built-in since Node 19 / all modern browsers
// v4 — built in
const id = crypto.randomUUID();

// v7 — e.g. with the uuid package
import { v7 as uuidv7 } from "uuid";
const sortable = uuidv7();
PostgreSQL
v4 built-in · v7 from PG 18
-- v4, built in since PostgreSQL 13
SELECT gen_random_uuid();

-- v7, built in since PostgreSQL 18
SELECT uuidv7();

Frequently asked questions

How unique is a UUID really?
A version 4 UUID has 122 random bits — about 5.3 × 10³⁶ possible values. You would need to generate a billion UUIDs per second for roughly 86 years to reach a 50% chance of a single collision. For practical purposes, UUIDs from a cryptographically secure random source are unique.
What is the difference between UUID v4 and v7?
v4 is fully random; v7 starts with a 48-bit millisecond timestamp followed by random bits. That makes v7 UUIDs sortable by creation time and much friendlier to database indexes: new rows land next to each other in a B-tree instead of at random positions. For database primary keys, prefer v7; for opaque identifiers, v4 is fine.
Which UUID version should I use for database primary keys?
Version 7. Random v4 keys scatter inserts across the whole index, causing page splits and cache misses at scale. v7 keys are time-ordered, so inserts are nearly sequential — the main historical argument against UUID primary keys disappears. Note that v7 exposes the row's creation time; if that is sensitive, use v4.
Is a UUID the same as a GUID?
Yes. GUID (globally unique identifier) is simply Microsoft's name for a UUID. Microsoft tooling often displays GUIDs in uppercase or wrapped in braces — the braces and uppercase options here produce exactly that format.
Are UUIDs generated here cryptographically secure?
The random bits come from the Web Crypto API, a cryptographically secure generator, and everything runs locally in your browser. But remember: UUIDs are identifiers, not secrets. Do not use a UUID as a password, session token, or API key — use a proper random secret for those.
Does version 1 leak my MAC address?
Classic v1 UUIDs embed the network card's MAC address, which can identify a machine. This generator follows the RFC's privacy option and uses a random node ID instead — so the v1 UUIDs here contain a timestamp but no hardware identifier.
What are version 3 and version 5 UUIDs?
They are name-based: hashing a namespace plus a name (like a domain or URL) always yields the same UUID — useful for deterministic IDs. v5 uses SHA-1 and is preferred over the MD5-based v3. This page focuses on generated (random/time-based) UUIDs.
Can I use UUIDs in URLs?
Yes — UUIDs contain only hexadecimal digits and hyphens, which are URL-safe. Keep them lowercase for consistency: RFC 9562 specifies lowercase output.

Free tools from a European software company.

  • Runs in your browser
  • Made & hosted in the EU
  • No account needed