Text & dev
UUID Generator
Generate random version 4 UUIDs — universally unique identifiers — one at a time or in bulk up to fifty at once. A UUID is a 128-bit value written as 36 characters in the familiar 8-4-4-4-12 pattern, like 3f29c1e8-7a4b-4c2d-9e10-6b5a8d2f1c34. Developers use them for database primary keys, distributed system identifiers, file names, idempotency keys and anywhere two independent machines must mint IDs without coordinating. Because version 4 UUIDs are filled almost entirely with random bits, collisions are effectively impossible in practice. This generator uses the browser's built-in crypto.randomUUID(), which draws from a cryptographically secure random source, so the values are suitable for production use. Toggle uppercase or strip the hyphens to match your schema, then copy a single ID or all of them at once. Generation happens locally — nothing is sent anywhere.
Options
Click Generate to create UUIDs.
Version 4 (random) UUIDs from crypto.randomUUID(). One per line; copy all grabs every value.
How the UUID generator works
Each click calls crypto.randomUUID() once per requested ID. That method returns a standards-compliant version 4 UUID as a lowercase, hyphenated string, generated from the platform's cryptographically secure random number generator. The tool then applies your formatting choices — converting to uppercase and/or removing hyphens — and lists the results one per line so they are easy to copy into code, a database seed or a spreadsheet.
Anatomy of a v4 UUID
xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx the 4 marks version 4; y is one of 8, 9, a or b (the variant)122 of the 128 bits are random, giving roughly 5.3 × 10³⁶ possible values — collisions are practically impossible.
Notes & assumptions
- Count is clamped to the 1–50 range; out-of-range values snap back to the nearest limit.
- Uppercase and hyphen toggles are cosmetic — the underlying value is unchanged.
- Each Generate click produces fresh, independent UUIDs.
Frequently asked questions
What is a version 4 UUID?
A version 4 UUID is a 128-bit identifier whose bits are almost entirely random, apart from a few fixed bits that mark it as "version 4, variant 1." It is written as 32 hexadecimal digits in five hyphen-separated groups (8-4-4-4-12). Because it is generated from randomness rather than from a machine address or timestamp, it reveals nothing about where or when it was created and can be produced offline.
Are these UUIDs truly unique?
For all practical purposes, yes. A version 4 UUID has 122 random bits, which means about 5.3 × 10³⁶ possible values. You would need to generate billions of UUIDs per second for centuries before a collision became likely. Combined with a secure random source like crypto.randomUUID(), that makes accidental duplicates so improbable that real systems treat v4 UUIDs as unique without checking.
Should I uppercase or remove the hyphens?
That depends on your system. The canonical form is lowercase with hyphens, and most databases and libraries accept that directly. Some legacy systems, URLs or storage keys prefer uppercase or a compact 32-character form with no hyphens. The toggles here let you match whatever your schema expects, but remember the value is the same UUID either way — only its text representation changes.
Can I generate UUIDs for production use?
Yes. crypto.randomUUID() uses a cryptographically secure random number generator, so the values are suitable for database keys, idempotency tokens and distributed identifiers. They are not, however, secret tokens by themselves — a UUID is an identifier, not a password. If you need an unguessable secret, use a dedicated secure-token or password generator with sufficient length.
Are the UUIDs generated on a server?
No. Every UUID is created locally in your browser by the native Web Crypto API, with no network requests at all. The values are never sent to a server, stored or logged, so you can generate as many as you need privately. Reload or close the tab and the generated list is gone — nothing is retained.