How to use
- Set how many you want, up to 100.
- Pick a format: standard, uppercase, without dashes, or wrapped in braces.
- Click Generate for a fresh batch, or Copy all to take them.
- Paste any UUID into the checker at the bottom to validate it and read its version.
About UUIDs
A UUID is a 128-bit identifier designed to be unique without a central authority handing out numbers. That property is the whole point: two systems that have never communicated can each mint identifiers and safely merge their data later, because the chance of a collision is negligible.
Version 4 — the kind generated here — achieves this by being almost entirely random. Six of
the 128 bits are spent on the version and variant fields, which is why you see a fixed 4
after the second dash and one of 8, 9, a, b after the third. The remaining 122 bits
are pure randomness.
The quality of that randomness is the part worth caring about. Math.random() is a fast
pseudo-random generator whose output can be predicted from previous values; using it for
session tokens or password reset links is a real vulnerability. crypto.getRandomValues(),
which this tool uses, draws from the operating system’s cryptographic entropy pool and is
not predictable.
One practical caveat: v4 UUIDs have no ordering. Two generated a second apart sort no closer than two generated years apart, which is exactly what you do not want in a database index that inserts in key order. Version 7 puts a timestamp in the leading bits to restore that locality while keeping the uniqueness guarantee, and is the better default for new schemas with heavy write traffic.