UUID Generator
Generate universally unique identifiers for databases, APIs, files and test data. Create random UUID v4 or time-ordered UUID v7 values — one or a thousand — in the format your system expects, then paste any UUID into the decoder to check that it is valid and see its version, variant and, for v1 and v7, the time it was created.
- Free to use
- No sign-up
- Runs in your browser
UUID generator and decoder
Validate or decode a UUID
Developer ID & Data Reference Pack
Printable UUID versions cheat sheet, database key strategy comparison, a test data planning workbook and an ID format checklist for APIs.
- UUID cheat sheet (PDF)
- Key strategy comparison (PDF)
- Test data planner (XLSX)
- API ID checklist (PDF, DOCX)
Formats: PDF, XLSX, DOCX. Instant download after payment (link valid 72 hours, up to 5 downloads). AI-assisted: the templates were drafted with AI help and reviewed and laid out before publishing.
$3.00 USD, one-time 4 files · about $0.75 each
- Instant download
- 7-day refund
- Secure checkout by Stripe
7-day money-back guarantee. Full refund within 7 days of purchase, even after you download.
Free sample: API ID Checklist (PDF, 63 KB)
Full refund within 7 days — see the refund policy and license.
Free printables
Single sheets you can print right now, no sign-up. The full pack adds every sheet in one download plus the editable files.
What a UUID is
A UUID (universally unique identifier), also called a GUID in Microsoft systems, is a 128-bit number used to identify something without asking a central authority for the next available ID. It is usually written as 32 hexadecimal digits in five groups separated by hyphens — 8-4-4-4-12 — for example 3f2c1a7e-9b4d-4c21-8e0f-5a6b7c8d9e0f. Because UUIDs are generated independently and the chance of two random ones matching is vanishingly small, different systems, devices and databases can create IDs at the same time without collisions.
UUID versions explained
| Version | How it is made | Typical use |
|---|---|---|
| v1 | Timestamp plus the machine’s MAC address | Legacy systems; reveals when and where it was made |
| v3 / v5 | Hash (MD5 / SHA-1) of a namespace and a name | Stable IDs derived from names, e.g. URLs |
| v4 | 122 random bits | The most common general-purpose UUID |
| v6 | Reordered v1 timestamp | Sortable replacement for v1 |
| v7 | 48-bit Unix millisecond timestamp plus random bits | Database keys that sort by creation time |
| v8 | Custom layout | Vendor-specific formats |
The current specification for UUIDs is RFC 9562 (2024), which replaced RFC 4122 and added versions 6, 7 and 8.
v4 or v7?
Use v4 when you simply need an unpredictable unique ID — session IDs, object names, correlation IDs in logs. Use v7 for database primary keys when you care about insert performance and ordering: because v7 values start with a timestamp, new rows land at the end of an index instead of at random positions, which reduces page splits and fragmentation in B-tree indexes, and the IDs sort roughly by creation time. Keep in mind that v7 reveals the approximate creation time to anyone who can see the ID.
How unique is unique?
A version 4 UUID has 122 random bits, giving about 5.3 × 10³⁶ possible values. To reach a one-in-a-billion chance of a single collision, you would need to generate roughly 100 trillion UUIDs. In practice, collisions come from bugs — reusing a seeded random generator, copying test data, or truncating IDs — not from chance. This generator uses the browser’s cryptographically secure random source.
Formats and storage
| Format | Example | Where you see it |
|---|---|---|
| Standard | 3f2c1a7e-9b4d-4c21-8e0f-5a6b7c8d9e0f | Most languages and APIs |
| Uppercase | 3F2C1A7E-9B4D-… | Some Windows tools |
| Braces | {3f2c1a7e-…} | Microsoft GUID notation |
| No hyphens | 3f2c1a7e9b4d4c218e0f5a6b7c8d9e0f | Compact storage, filenames |
| URN | urn:uuid:3f2c1a7e-… | XML, some standards |
In databases, store UUIDs in a native UUID type where available (PostgreSQL uuid, SQL Server uniqueidentifier) or as 16 bytes of binary, rather than as a 36-character string — it saves space and speeds up indexes.
Worked example
A developer needs 50 IDs for test fixtures and a primary key strategy for a new orders table. They generate 50 v4 UUIDs in standard format and download them as a text file for the fixtures. For the orders table they choose v7, so the IDs sort by creation time; pasting one into the decoder shows version 7, the RFC variant and a timestamp matching when it was generated.
Reading the version and variant
The version is the first digit of the third group: in xxxxxxxx-xxxx-4xxx-… the 4 means v4. The variant is shown by the first digit of the fourth group: 8, 9, a or b indicate the standard RFC layout used by almost all modern UUIDs. The decoder checks both and, for v1 and v7, converts the embedded timestamp to a date and time in UTC.
Generating UUIDs in code
Most platforms can create UUIDs directly: JavaScript has crypto.randomUUID() in browsers and Node.js; Python has uuid.uuid4() (and uuid.uuid7() in recent versions); PostgreSQL has gen_random_uuid(); Java has UUID.randomUUID(); and .NET has Guid.NewGuid(). Libraries in every major language add v7 support where the standard library does not yet include it. Use this page for quick one-off values, test fixtures and checking what a UUID contains.
Name-based UUIDs (v3 and v5)
Sometimes you want the same input to always produce the same UUID — for example, one stable ID for each URL or product code across systems. Version 5 does this by hashing a namespace UUID and a name with SHA-1 (version 3 uses MD5). The result looks random but is fully reproducible, so two systems that agree on the namespace get identical IDs without talking to each other. Prefer v5 over v3 for new work.
Security notes
- UUIDs are identifiers, not secrets — do not use them alone to protect access to private resources.
- v1 UUIDs can reveal the MAC address of the machine that created them.
- v7 UUIDs reveal creation time; avoid exposing them if timing is sensitive.
- For API keys and tokens, use a dedicated secure token generator with more entropy.
Privacy
UUIDs are generated and decoded in your browser; nothing is sent to a server or stored.
Frequently asked questions
What is a UUID?
A 128-bit identifier written as 32 hex digits in 8-4-4-4-12 groups, designed to be unique without central coordination.
Is a GUID the same as a UUID?
Yes; GUID is Microsoft’s name for the same format.
What is the difference between UUID v4 and v7?
v4 is fully random; v7 starts with a timestamp so values sort by creation time.
Can two UUIDs be the same?
In theory, but the probability for random v4 UUIDs is negligible when generated correctly.
How do I check if a UUID is valid?
Paste it into the decoder; it checks the format, version and variant.
Are generated UUIDs stored?
No, they are created in your browser only.




API ID Checklist Printable