UUID Generator — Examples
Walkthroughs: v4, 100 sorted v7 plus download, v1/v6, v5 from a domain and a name list, v3, custom namespace, NIL/Max, the decoder, and GUID format.
Back to overview: UUID Generator · Open the live tool: www.jpkc.com/tools/uuid/
This page shows the UUID Generator through concrete walkthroughs. The UUID values shown are examples — yours will differ every time (except for v5, v3, NIL, and Max). All examples assume the default Output format, Standard (lower case). Exactly how each version works is covered in the manual.
Example 1: Generate a single v4 UUID
Goal: quickly get a random identifier for a new record.
- The v4 Random tab is already active on load.
- Leave Number of UUIDs at
1. - Click Generate v4.
Result: the result field shows a random UUID such as f47ac10b-58cc-4372-a567-0e02b2c3d479. The Copy button (clipboard icon) puts it on the clipboard. Click Generate v4 again and you get a completely different UUID — v4 is purely random.
Example 2: 100 v7 UUIDs for a migration
Goal: generate a batch of time-sortable keys at once, for instance to give existing records new primary keys.
- Open the v7 Time-ordered tab.
- Set Number of UUIDs to
100(type it or pick it from the suggestion list). - Click Generate v7.
Result: the field fills with 100 UUIDs, one per line. Because v7 starts with a timestamp, the values all begin alike — and because the tool generates v7 monotonically, they keep rising strictly even within the same millisecond. An excerpt:
01a143a8-8563-76d8-9cfc-b51ef5d90936
01a143a8-8563-76d8-9cfc-b51f18345b11
01a143a8-8563-76d8-9cfc-b51f53fa61f1So the list is in exact creation order; sort it later as text or as bytes and you get the same order back. Copy grabs the whole block for pasting into, say, a SQL script. For larger quantities — the tool generates up to 10,000 in one go — Download as .txt is more convenient: you get the file uuids.txt with one UUID per line, ready to be read by an import script. Why v7 is kinder to database indexes than random v4 is explained in the tips.
Example 3: A v1 UUID without a MAC address
Goal: produce a classic time-based identifier and confirm that no hardware identifier is in it.
- Open the v6 / v1 Time-based tab.
- Switch Version to
v1(the default isv6). - Leave Number of UUIDs at
1. - Click Generate time-based.
Result: you get a v1 UUID such as fa5bd243-c934-11f1-94fc-15fc10ff10de — the 1 at the start of the third group is the version digit. The timestamp lives in the first three groups, while the trailing node part is random — so the tool does not expose your MAC address, unlike some classic v1 implementations. To double-check, paste the UUID into the Decode tab: its Node row ends in "(random — multicast bit set)".
Switch back to v6 and generate again a few seconds later, and you get the same fields in sortable order, for example 1f1c934f-d7a7-6c35-94fc-15fc10ff10de: the timestamp now leads with its most significant part, while clock sequence and node (94fc-15fc10ff10de) stay the same within one page load. For new projects, v6 or v7 is usually the better time-based choice; v1 is mainly useful when an existing system requires it.
Example 4: A deterministic v5 UUID from a domain
Goal: derive a stable, reproducible identifier from a domain name.
- Open the v5 / v3 Name-based tab.
- Leave Namespace at
DNS (6ba7b810-…)and Version atv5 (SHA-1)(both defaults). - In Names — one per line, enter
example.com. - Click Generate name-based.
Result: you always get the same UUID — for example.com in the DNS namespace that is cfbff0d1-9375-5685-968c-48ce8b15ae17. Generate it tomorrow or on another machine and you get exactly the same value. That is the whole point of v5: a reliable key you can recompute from the same name at any time, without having to store it.
Example 5: v5 with a custom namespace
Goal: derive UUIDs in a project-specific namespace, separate from the standard ones.
- On the v5 / v3 Name-based tab, set Namespace to
Custom UUID— the Custom namespace UUID field becomes active. - Enter a valid namespace UUID there, e.g. one previously generated with v4:
f47ac10b-58cc-4372-a567-0e02b2c3d479. The spelling is up to you —{F47AC10B-58CC-4372-A567-0E02B2C3D479}or the Base64 form9HrBC1jMQ3KlZw4CssPUeQwork just as well. - In Names — one per line, enter the value to derive, such as
user:42. - Click Generate name-based.
Result: you get the v5 UUID 1dea9f66-26ee-5097-ab44-c385564bfd05, specific to your project: the same name user:42 gives 3aba9c29-be14-59f6-9a99-8b0950ed2c3b in the DNS namespace — a completely different value. If the input cannot be read in any of the accepted spellings, the field turns red, and clicking Generate name-based ends with the message "Invalid namespace UUID.". Watch out for truncated values: exactly 22 characters from the Base64 alphabet (which includes digits, hex letters, and the hyphen) are read as a Base64 UUID — so a UUID cut down to 22 characters is not flagged red but silently used as a different namespace.
Example 6: Copy the NIL or Max UUID
Goal: quickly grab one of the two special values, 00000000-0000-0000-0000-000000000000 (NIL) or ffffffff-ffff-ffff-ffff-ffffffffffff (Max).
- NIL and Max sit permanently in the card footer.
- Click the small copy button right beside the value you want.
Result: the value is on the clipboard — in the currently selected Output format, so with Upper case you get FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF. The NIL UUID is handy when a schema requires a UUID but you deliberately want to express "none yet" — as a default value or a placeholder in tests, for instance. The Max UUID serves as an upper bound, say in a range query. Neither is "generated"; both are fixed constants.
Example 7: v5 UUIDs for a whole list of names
Goal: derive stable identifiers for several domains at once — without tripping over an invisible space.
-
Open the v5 / v3 Name-based tab with Namespace
DNS (6ba7b810-…)and Versionv5 (SHA-1). -
Paste the names into Names — one per line, one below the other — copied from a spreadsheet, for example:
example.com example.com example.org -
The yellow hint "Line 2 starts or ends with a space — it is part of the name and changes the UUID." appears below the field right away.
-
Click Generate name-based.
Result: three UUIDs, one per line, in the same order as the names. Line 1 is cfbff0d1-9375-5685-968c-48ce8b15ae17, as in example 4; line 2, because of its leading space, gives f9b4cfc7-837e-5845-b912-fd3a2e493071 — a completely different UUID. The tool uses every name exactly as entered, just like other libraries do. If both lines are meant to be the same domain, remove the space and generate again.
Example 8: A v3 UUID for a legacy system
Goal: feed a system that still computes name-based UUIDs as version 3 (MD5).
- Open the v5 / v3 Name-based tab with Namespace
DNS (6ba7b810-…). - Switch Version to
v3 (MD5). - In Names — one per line, enter
example.com. - Click Generate name-based.
Result: 9073926b-929f-31c2-abc9-fad77ae3e8eb — the 3 at the start of the third group marks the version. v3 is deterministic too: every standards-compliant implementation returns the same value for the same input. For new projects v5 remains the better choice; v3 is there for compatibility only.
Example 9: Decode a UUID from elsewhere
Goal: find out when a UUID from a log or a database was created.
- Open the Decode tab.
- Paste the values to inspect into the UUIDs field, one per line — for example
017f22e2-79b0-7cc3-98c4-dc0c0c07398fand{1EC9414C-232A-6B00-B3C8-9F6BDECED846}.
Result: a card per line appears as you paste. For the first one the decoder reports Version "7 — time-ordered (Unix ms)", Variant "RFC 9562 (10xx)", and Time (UTC) 2022-02-22T19:22:22.000Z, plus the same moment in your local time zone. The second — recognized despite braces and upper case — is a v6 UUID with the same timestamp; on top of that the decoder shows Clock sequence 13256 and, as Node, 9f:6b:de:ce:d8:46 (random — multicast bit set). A v4 UUID, by contrast, only reveals "122" random bits, and a v5 or v3 UUID the note that the name cannot be recovered.
Example 10: GUIDs in Microsoft format
Goal: output a list of UUIDs in curly braces for a Windows or .NET configuration, the usual GUID notation there.
- Generate 5 UUIDs on the v4 Random tab.
- In the card footer, set Output format to
{Braces} (Microsoft).
Result: the UUIDs you already generated switch to the new format instantly, e.g. {f47ac10b-58cc-4372-a567-0e02b2c3d479} — they are not regenerated. Note that Upper case and {Braces} (Microsoft) are separate options; the tool offers no combination of braces and upper case. The browser remembers the chosen format for your next visit, and it also applies to Copy, Download as .txt, and the NIL/Max buttons.
More on each version and option is in the manual, strategy and pitfalls in the tips & tricks. Jump straight in with the tool.