UUID Generator
Free UUID generator: create cryptographically secure version-4 (random) UUIDs online, one or up to 100 at a time, with an optional uppercase toggle. Runs in your browser.
Updated 2026-06-09 · Free · No sign-up · Runs privately in your browser
How a UUID is built
What is a UUID Generator?
A UUID generator creates universally unique identifiers — 128-bit values written as 36-character strings — that you can use as IDs without coordinating with any central server. This tool produces version-4 (random) UUIDs such as 3f2504e0-4f89-41d3-9a0c-0305e82c3301, one or up to 100 at a time, with an optional uppercase toggle. Every value is generated locally in your browser.
What does this tool do?
It mints fresh random UUIDs on demand. You pick a count from 1 to 100, optionally choose uppercase, and each click returns brand-new identifiers in the standard 8-4-4-4-12 layout. Because the values are random rather than derived from your name, time or machine, they reveal nothing about you and can be created offline. Copy a single UUID for a database key, or generate a batch to seed test data.
How does it work?
The tool calls the browser’s built-in crypto.randomUUID(), a cryptographically secure source, and falls back to a manual crypto.getRandomValues() routine where that function is unavailable. Both paths follow the version-4 specification exactly.
A v4 UUID is 36 characters: 32 hexadecimal digits arranged as 8-4-4-4-12 with four hyphens. Of the 128 bits, 6 are fixed to label the format and 122 are random. The fixed bits appear at two known positions:
xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
where each x is a random hex digit (0-9, a-f) and y is one of 8, 9, a or b. The structure is:
- The 13th hex digit is always
4. This is the version field, marking the identifier as version 4 (randomly generated). - The 17th hex digit (
y) is8,9,aorb. This is the variant field, identifying the standard RFC 4122 layout. - Every other digit is random. With 122 random bits, there are 2^122 possible values, so the chance of two generations matching is astronomically small — effectively zero for any realistic number of IDs.
Turning on uppercase simply transforms the hex letters a-f into A-F; it does not change the underlying value, only how it is displayed.
Examples
Each example follows the exact rules above: a fixed 4 in the version slot, a y of 8, 9, a or b in the variant slot, and random hex everywhere else. Because the bits are random per click, you will see different values each time — these illustrate the shape, not a fixed output.
Example 1 — a single lowercase UUID (count = 1):
- Click Generate with the count set to 1.
- The tool returns one 36-character string, for example
3f2504e0-4f89-41d3-9a0c-0305e82c3301. - Check the markers: the 13th digit is
4(version) and the 17th is9, which is a valid variant digit. The remaining 122 bits are random.
Example 2 — the same UUID in uppercase:
- Turn on the uppercase toggle, leaving count at 1.
- The hex letters become capitals:
3F2504E0-4F89-41D3-9A0C-0305E82C3301. - The value is identical to Example 1 — only the letter case differs. The version
4and variant digit are unchanged.
Example 3 — a batch of three (count = 3):
- Set the count to 3 and click Generate.
- The tool outputs three independent UUIDs, for example:
a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d7d9f0c2e-1a3b-4c5d-9e8f-2b4d6f8a0c1e0f1e2d3c-4b5a-4978-b6c5-d4e3f2a10987
- In all three, the 13th digit is
4and the 17th is one of8,9,aorb(here8,9,b). No two are the same, and across many generations a repeat is effectively impossible.
UUID structure reference
This table breaks the 36-character format into its five hyphen-separated groups, using 3f2504e0-4f89-41d3-9a0c-0305e82c3301 as the worked value. Counts are exact for every version-4 UUID.
| Group | Hex digits | In the example | What it holds |
|---|---|---|---|
| 1 | 8 | 3f2504e0 | Random bits |
| 2 | 4 | 4f89 | Random bits |
| 3 | 4 | 41d3 | First digit is the version 4, rest random |
| 4 | 4 | 9a0c | First digit is the variant (8/9/a/b), rest random |
| 5 | 12 | 0305e82c3301 | Random bits |
The two load-bearing positions are the start of group 3 (always 4) and the start of group 4 (always 8, 9, a or b); everything else is drawn from the secure random source. In total that is 32 hex digits plus 4 hyphens, which is why every UUID is exactly 36 characters long.
Common uses
Unique identifiers are everywhere in software and data work. Typical situations include:
- Backend developers using a UUID as a primary key so records can be created on multiple servers or offline clients without waiting for a database to hand out an auto-increment number.
- API and microservice authors generating correlation or request IDs to trace a single call as it hops between services and log lines.
- Frontend developers assigning stable
keyprops or DOM IDs to list items that have no natural identifier yet. - QA engineers and data folks seeding test fixtures with a batch of UUIDs so each row, file or message is guaranteed distinct.
- Designers and content teams naming asset files or feature-flag keys where a guaranteed-unique token avoids accidental clashes.
- Students learning how 128-bit identifiers work and why random IDs can be safely generated without a central authority.
Tips and common mistakes
A few details trip people up when working with UUIDs:
- A UUID is an identifier, not encryption. It hides no secret and protects nothing; it is simply a value chosen to be unique. Never treat a UUID as a password, token or proof of authorisation on its own.
- Random does not mean sequential. v4 UUIDs have no built-in order or timestamp, so they do not sort by creation time. If you need time-ordered IDs, that is a different scheme (such as v7), not version 4.
- Case does not change the value.
3f2504e0...and3F2504E0...are the same UUID. The uppercase toggle is purely cosmetic, so compare UUIDs case-insensitively to avoid false mismatches. - Watch stray whitespace. Copying a batch can pull in leading or trailing spaces or line breaks. Trim each value before storing it, or a
36-character column may reject a padded string. - Hyphens are part of the standard form. The dashes are not random data, but many systems also accept the 32-digit form with hyphens removed. Pick one representation and store it consistently.
- Do not hand-edit a UUID. Changing the
4or the variant digit produces a string that is no longer a valid v4 UUID, even though it still looks like one.
Limitations and notes
This tool generates version-4 (random) UUIDs only — it does not produce time-based v1, name-based v3/v5, or sortable v7 identifiers, and it does not validate or reformat UUIDs you paste in. The count is capped between 1 and 100 per click to keep generation instant; for larger volumes, generate in rounds. Collisions are not literally impossible, only so improbable across 2^122 values that you can treat them as unique for any real workload. Everything runs privately: the identifiers come from crypto.randomUUID() (or the crypto.getRandomValues() fallback) executing in your browser, so nothing is uploaded, logged or stored, and the generator keeps working offline once the page has loaded.
For more developer utilities, pair this with the hex to RGB converter and the case converter, or browse the full dev tools page.
Frequently asked questions
How do I generate a UUID with this tool?+
Pick how many you want (1 to 100), optionally switch on uppercase, then click Generate. Each click produces fresh random version-4 UUIDs you can copy.
What does a UUID look like, for example?+
A v4 UUID is 36 characters in the 8-4-4-4-12 pattern, such as 3f2504e0-4f89-41d3-9a0c-0305e82c3301, where the 13th hex digit is always 4.
What is the difference between a UUID and a GUID?+
None in practice. GUID is Microsoft's name for the same 128-bit identifier; this tool's v4 UUIDs are valid GUIDs and you can use them interchangeably.
Are these UUIDs random and unique?+
Yes. They are version 4 with 122 random bits from a cryptographically secure generator, so two values effectively never collide.
What do the 4 and the y digit mean in a UUID?+
The 13th hex digit is always 4 to mark version 4, and the 17th (the y) is 8, 9, a or b to mark the variant. The rest are random.
Can I generate UUIDs in uppercase?+
Yes. Turn on the uppercase toggle and the hex letters a-f become A-F, giving values like 3F2504E0-4F89-41D3-9A0C-0305E82C3301.
Is my data sent to a server?+
No. UUIDs are created in your browser with crypto.randomUUID(), so nothing is uploaded, logged or stored, and it works offline.
How many UUIDs can I create at once?+
Between 1 and 100 per click. Set the count, generate, and copy the whole list when you need a batch of identifiers.