UUID Versions Explained: v1, v4, v5, v7 and Which One to Use

What a UUID is, how the versions differ, whether collisions are a real risk, and why time-ordered UUIDv7 is friendlier to databases than random v4.

2026-09-26 · 2 min readTry the UUID Generator →

A UUID (universally unique identifier) is a 128-bit value used to identify things without a central authority handing out numbers. It's written as 32 hexadecimal digits in five groups, like 3f2b8c1e-9a4d-4c7e-8f01-2b6d5e7a9c10.

Reading a UUID

  • The layout is 8-4-4-4-12 hex digits.
  • The first digit of the third group is the version. In 3f2b8c1e-9a4d-4c7e-..., the 4 marks version 4.
  • The first digit of the fourth group encodes the variant (usually 8, 9, a, or b for standard UUIDs).

The main versions

  • v1: based on a timestamp and the machine's MAC address. Sortable-ish, but it can leak the machine and creation time.
  • v3 and v5: name-based; hash a namespace plus a name (v3 with MD5, v5 with SHA-1) to get the same UUID every time for the same input.
  • v4: random. The most common; 122 of its 128 bits are random.
  • v6 and v7: time-ordered versions standardized in RFC 9562 (2024). v7 puts a millisecond timestamp first followed by random bits.

Will two UUIDs ever collide?

With v4 there are 2^122, about 5.3 x 10^36, possible values. Even generating a billion UUIDs, the chance of any collision is on the order of 10^-19, so for practical purposes collisions are not a concern when a good random source is used.

Why v7 is nice for databases

Random v4 keys land all over a B-tree index, which causes page splits and poorer cache locality on large tables. Time-ordered UUIDs (v7) are roughly sequential, so inserts append near the end of the index, like an auto-increment key, while still being globally unique and generated without coordination.

Which should you use?

  • General unique IDs: v4 is simple and universally supported.
  • Primary keys in large databases: consider v7 for better index behavior.
  • Deterministic IDs from a name: v5.
  • Avoid v1 if you don't want to expose timing or machine details.

Frequently asked questions

+What is a UUID?

A 128-bit identifier written as 32 hex digits in the 8-4-4-4-12 format, designed to be unique without central coordination.

+Can two UUIDs be the same?

In theory yes, but with random v4 UUIDs the probability is so small it is negligible in practice.

+What is the difference between UUID v4 and v7?

v4 is entirely random. v7 begins with a timestamp, so values sort roughly by creation time, which is better for database indexes.

+Are UUIDs safe to use as security tokens?

Not by themselves. Use a cryptographically secure random token for secrets and proper access control for resources.

UUID Generator

Free, runs in your browser — nothing you enter is uploaded.

Open tool →

More guides