UUID Generator
v1, v4 and v7, one or ten thousand
Cryptographically random v4, time-ordered v7, or classic v1 — in bulk, in the case and format you need.
UUID Generator
Runs in your browser · nothing uploaded01 — How to use UUID Generator
02 — Getting good results
03 — Questions
v4 UUIDs are generated with crypto.getRandomValues(), the browser’s cryptographically secure random source — the same one used for key generation. They are not seeded from the clock or from Math.random().
No. The whole generator runs in your tab. There is no server to send anything to, and no request is made when you generate.
v4 is entirely random. v7 puts a millisecond timestamp in the first 48 bits and fills the rest with randomness, so v7 IDs sort by creation order while staying unguessable.
Ten thousand is the interface limit, chosen so the page stays responsive. For larger volumes, generate them in your own runtime — every language has a UUID library.
04 — More about UUID Generator
What a UUID actually is
A UUID is a 128-bit value, written as 32 hexadecimal digits in five dash-separated groups. Its purpose is to let separate systems mint identifiers independently, without coordinating, and still never collide. That property is what makes UUIDs the default key type for distributed systems, offline-first apps, and any database that has to merge records created in more than one place.
Choosing between the versions
v1 derives from the current time and the generating machine’s MAC address — predictable and identifying, which is usually a drawback. v4 is 122 random bits, the right default when you want an opaque identifier. v7, standardised in RFC 9562, is the modern choice for database primary keys: a leading timestamp gives you rough sort order and index locality, while the trailing randomness keeps IDs unguessable.
Why sort order matters for keys
Databases store primary-key indexes as balanced trees. Insert fully random keys and every write lands in an arbitrary leaf, scattering pages across the disk and forcing constant rebalancing. Time-ordered keys append near the right edge of the tree instead, which keeps recent data in the same pages and measurably improves write throughput on large tables.
Formatting and storage
The canonical form is lowercase with dashes. Some systems prefer the 32-character form with dashes removed, and PostgreSQL has a native uuid type that stores the value as 16 raw bytes regardless of how you write it. Store the canonical form unless you have a measured reason not to, and convert at the boundary.
61 more tools
where this came from.
Same shell, same shortcuts, same promise: nothing leaves your browser.