Dev Toolbox · Windows 10 and 11
UUID and GUID generator
Make one random UUID or a thousand of them, one per line, ready to paste into a database seed, a test fixture or a config file. They are version 4 UUIDs from a cryptographic random source, made on your PC.
How to generate UUIDs
- 1
Open the UUID generator
In Octoolo's Dev Toolbox, pick UUID generator from the Make group. Five fresh UUIDs are already waiting.
- 2
Set how many
Type a number from 1 to 1,000 into How many.
- 3
Choose the format
Switch off Hyphens for 32 plain hex digits, and switch on Uppercase for the capitals many Windows tools show.
- 4
Copy them
Press Copy to take the whole list, one UUID per line. Generate makes a new batch.
Anatomy of a version 4 UUID
A UUID is 128 bits, written as 32 hexadecimal digits in five groups of 8-4-4-4-12, which makes 36 characters with the hyphens. In a version 4 UUID, almost all of it is random:
- The version. The first digit of the third group is always 4. That is how you recognize a v4 UUID at a glance.
- The variant. The first digit of the fourth group is always 8, 9, a or b, marking the standard UUID layout.
- Everything else, 122 bits, comes from the random generator.
So f47ac10b-58cc-4372-a567-0e02b2c3d479 is a valid v4 UUID: a 4 opens the third group, an a opens the fourth. Octoolo's come from a cryptographically secure generator, the kind used for encryption keys, not from a clock or your network card as version 1 UUIDs do. They reveal nothing about when or where they were made.
Can two UUIDs ever collide?
In theory, yes. In practice, it is not worth a thought. With 122 random bits there are a 37-digit number of possible v4 UUIDs. By the birthday math, you would have to make around 2.7 quintillion of them before the chance of even one duplicate reached 50%. At a billion a second, that takes about 86 years.
That only holds when the random source is good. The duplicate IDs that do turn up in real systems come from poor generators: a non-cryptographic random function seeded with the same value on many machines, a cloned virtual machine replaying its state, or code that assembles "UUIDs" by hand. A UUID from a proper source, as here, is safe to use as an ID no other system will produce.
UUID or GUID, and which format to paste
GUID is Microsoft's name for the same 128-bit identifier. .NET's Guid.NewGuid(), SQL Server's NEWID() and PowerShell's New-Guid all make version 4 values like these. The formats differ by habit, not meaning:
| Where | Usual form |
|---|---|
| Most APIs, PostgreSQL's uuid type, JavaScript | Lowercase with hyphens |
| Windows registry, COM, older Visual Studio project files | Uppercase with hyphens, inside { } |
| Compact keys, file names, some URLs | 32 hex digits, no hyphens |
Octoolo makes the first and third forms directly, and the second with Uppercase on; add the braces yourself where they are needed. The standard treats hex digits as case-insensitive, so well-behaved parsers accept either case.
In a URL, the form without hyphens saves four characters. Some systems shorten an ID further by writing its 16 bytes in base64url, which takes 22 characters; Octoolo does not make that form.
Using v4 UUIDs as keys
Random UUIDs make good public IDs: they do not give away how many orders or users you have, and records created on different servers or offline devices never clash. As primary keys in a large table they have one cost: new rows land at random places in the index instead of at the end, which means more page splits and cache misses than a sequential key. Many teams accept that. Others choose version 7, defined in RFC 9562 in 2024, which starts with a timestamp so new keys sort in order.
This generator makes v4 only. For test data, seed scripts, idempotency keys, correlation IDs and anything else that just has to be unique, that is what you want. Need a value that is also secret, such as an API key? Use the password generator with a long length instead: a UUID is an identifier, and it tends to get logged and shared like one.
Questions, answered
How many UUIDs can I make at once?
From 1 to 1,000 per batch, one per line. Press Generate for another batch as often as you like.
Are these UUIDs really random?
Yes. They come from a cryptographically secure random generator through crypto.randomUUID, the standard function web engines provide for exactly this.
Can I make a version 1, 5 or 7 UUID?
No, only version 4. Versions 1 and 7 build in a timestamp and version 5 is derived from a name, so they suit other jobs; most uses only need v4.
Could the same UUID come up twice in one batch?
Not in any realistic sense. Each one carries 122 fresh random bits, and among a thousand of them the odds of a repeat are smaller than one in a million trillion trillion.
Should I store UUIDs as text or as binary?
Use the database's own type where there is one, such as uuid in PostgreSQL or uniqueidentifier in SQL Server: both store 16 bytes and show the familiar text form. Elsewhere, a BINARY(16) column takes less than half the space of the 36-character text, at the cost of being unreadable in a plain query; MySQL 8 has UUID_TO_BIN() and BIN_TO_UUID() to convert.
How do I make a GUID in PowerShell?
Run New-Guid, or [guid]::NewGuid() for the bare value. Visual Studio has a Create GUID tool as well. Octoolo is quicker when you need hundreds at once in a particular format.
UUID generator, and 16 more apps.
Download for Windows7 days free, then from $3.99 a month for all 17 apps. Windows 10 and 11.