Free with a MASK account
UUID Generator
Generate version 4 UUIDs from your browser's cryptographic randomness.
Runs entirely in your browser — what you enter is never sent to MASK. Your account records that you used this tool, along with how many items you produced — never what you entered.
Your UUID
Generate a batch
Between 1 and 1,000.
A version 4 UUID is 122 random bits dressed up in a fixed 36-character shape. Six bits are spoken for — four say “version 4” and two mark the RFC 4122 variant — which is why the third group always starts with a 4 and the fourth group always starts with 8, 9, a or b.
Because the randomness comes from the browser’s cryptographic generator rather than from a clock or a counter, these values reveal nothing about when or where they were made. That also means they do not sort in any useful order: if you need identifiers that sort by time, reach for a version 7 UUID instead.
Questions
- Do you use Math.random?
- No. Every value comes from crypto.randomUUID(), or — on older browsers that lack it — from crypto.getRandomValues(), with the version and variant bits set by hand. If a browser offers neither, the tool says so and generates nothing rather than quietly falling back to a predictable source.
- Do the UUIDs I generate here reach your servers?
- No. Every value is produced by your own browser's crypto API and the values themselves are never sent to MASK, so a UUID you use as a secret has been seen only by you. It does talk to MASK for two things, neither of which carries a UUID: to check whether you are signed in, and to record on your account that you used this tool and how many values you produced. Reload the page and the UUIDs are gone.
- Can two version 4 UUIDs collide?
- In principle yes, in practice no: 122 of the 128 bits are random, so you would need to generate billions per second for decades before a collision became likely. Version 4 is fine as a primary key or a request ID; it is not a substitute for a uniqueness constraint.
- Why would I want it uppercase, or without hyphens?
- The RFC prints lowercase with hyphens, and that is the default here. Uppercase turns up in .NET and in some database exports; the bare 32-character form is common in URLs, file names and columns typed as CHAR(32). All three describe the same 128 bits — compare them case-insensitively.
- Is this a version 1 or version 7 UUID?
- Neither — these are version 4, which is pure randomness and carries no timestamp and no MAC address. If you need identifiers that sort by creation time, you want version 7, which this tool does not generate.