UUID Inspector
A UUID is not an opaque blob. Four bits say which version it is, two or three more say which variant, and the time-based versions carry a readable timestamp. A validator that only checks the shape will happily accept a string whose version nibble says nine — which is not a version anybody has defined, and usually means the identifier was made up rather than generated.
What this generator does
Splits the identifier into its fields, reads the version and variant bits, and — for the versions that carry a timestamp — converts it into a date.
How to use this tool
- Paste a UUID, with or without braces, in any case.
- Read which version it is and what that version means.
- For versions 1, 6 and 7, the time inside it is written out.
- The variant is reported too, since a non-standard one is worth noticing.
Understanding the controls
- A UUID
- In any of the forms people paste: plain, in braces, as a URN, and in either case. It is tidied to lower case for the answer.
Worked examples
- 017f22e2-79b0-7cc3-98c4-dc0c0c07398f
- Version 7, the standard variant, and a timestamp of 2022-02-22T19:22:22.000Z pulled straight out of the first 48 bits — with the remaining 74 bits reported as random rather than treated as meaningful.
Common use cases
- Working out whether an identifier is random or time-based
- Reading the timestamp out of a version 7 identifier
- Checking that a UUID from a system is well-formed and a real version
- Understanding how many bits of a UUID are actually free
- Spotting a made-up identifier in test data
How this generator works
The fields are put back together into a string, which must match the one you pasted — if the parsing has gone wrong anywhere, the rebuilt string will not match. The version is then checked against the ones that actually exist, the variant against the standard layout, and any timestamp against a plausible range of dates.
Randomness and fairness
Nothing is random. The same identifier always reads the same way.
For how randomness is produced across the whole site, see how Generate Random works.
Limitations and good to know
- Reading a UUID says nothing about whether it identifies anything, only about how it was constructed.
- Versions 1 and 6 carry a node identifier which was historically a MAC address; it is not decoded here.
- A version 7 timestamp is only as truthful as the machine that made it.
- Versions 3 and 5 are hashes of a name, and the name cannot be recovered from them.
Privacy and your data
The identifier is read in your browser. Nothing you paste is transmitted or stored.
Frequently asked questions
- Can I tell when a UUID was created from any version?
- Only from versions 1, 6 and 7 — those embed an actual timestamp in defined bit positions. Version 4, by far the most common in everyday use, is 122 bits of pure randomness with no time information anywhere in it; versions 3 and 5 are hashes of a name and input, not a clock reading.
- What does it mean if the version nibble isn't 1-8?
- It means the string isn't a real UUID as any version currently defines it — versions run 1 through 8 (RFC 9562), so a nibble outside that range usually signals a value that was typed by hand, corrupted, or generated by something that doesn't actually implement the UUID spec, even if the rest of the string has the right shape.
Related generators
- UUID GeneratorAn RFC 4122 v4 UUID for development or testing use — cryptographically random, not sequential.
- Checksum and Hash CalculatorWorks out SHA-256, CRC-32, Adler-32 or FNV-1a for any text, checked against the published values.
- JWT DecoderReads the header and claims out of a JSON Web Token, explains the standard ones, and never pretends to have checked the signature.
- Damm Check Digit GeneratorAdds a check digit that catches every single mistyped digit and every swap of two neighbours, and proves it by trying them all.