UUID Validator
Validates a UUID/GUID’s format and identifies its version (1-8) and variant from its standard bit layout.
This guide is not yet available in your language and is shown in English.
Tool guide
What this tool does
UUID Validator checks a UUID/GUID string against the standard 8-4-4-4-12 hexadecimal format, identifies its version (1 through 8, covering time-based, random, name-based and sortable UUIDs) and variant from its encoded bits, and offers lowercase, uppercase and hyphen-free representations.
A UUID packs its version and variant directly into specific bit positions within an otherwise seemingly random-looking 128-bit value, information that’s genuinely useful when debugging a system, since a version 4 (random) and a version 7 (sortable, timestamp-based) UUID serve very different purposes despite looking superficially similar.
This validator checks the standard 8-4-4-4-12 hyphenated hex format, extracts the version digit and variant bits, and explains what they mean, from the classic version 4 (random) and version 1 (time-based) through to the newer version 7 (Unix timestamp-ordered, increasingly used for sortable database keys).
How to use UUID Validator
- Enter the UUID.
- Review the Format, Version and Variant results.
- Use the Lowercase, Uppercase or Without hyphens outputs as needed for your use case.
- Check whether it’s a special reserved value (Nil or Max UUID).
Tips for better results
- Version 4 (random) is by far the most common UUID type generated by most libraries and tools by default, when you don’t see a clear reason to expect otherwise, it’s a reasonable first guess.
- Version 7, standardised more recently in RFC 9562, embeds a Unix timestamp in its leading bits, making UUIDs generated close together in time sort close together as strings too, useful for database primary keys where insert order matters.
- The special "Nil UUID" (all zeros) and "Max UUID" (all Fs) are reserved values with specific meanings in some systems, rather than regular identifiers, and are called out separately when detected.
- A UUID is case-insensitive by the standard, but some systems are stricter about expecting lowercase; the lowercase/uppercase outputs here cover both needs.
Common use cases
- Confirming a string is a correctly formatted UUID before using it as a database key or identifier.
- Identifying which version of UUID a system is generating, useful when debugging unexpected sort order or collision concerns.
- Converting a UUID between lowercase, uppercase and hyphen-free representations for different system requirements.
- Learning the difference between UUID versions and what each is actually designed for.
Common mistakes to avoid
- Assuming all UUIDs are randomly generated; several versions (1, 6, 7) are explicitly time-based and can leak information about when they were created, which matters if a UUID is ever treated as if it were opaque and unguessable.
- Confusing version and variant; the version identifies the generation scheme (random, time-based, etc.), while the variant identifies which overall UUID layout standard (RFC 4122 being by far the most common) the value follows.
- Rejecting a technically valid UUID just because it’s uppercase or missing hyphens in a different system’s representation; the standard itself treats UUIDs as case-insensitive, and the hyphen-free form is still the same underlying value.
Frequently asked questions
What’s the most common UUID version?
Version 4, which is entirely randomly generated, is the default produced by most programming language standard libraries and tools unless something specifically calls for a different version.
What makes UUID version 7 different?
It embeds a Unix timestamp in its leading bits (standardised in RFC 9562), so UUIDs generated close together in time also sort close together as plain strings, which is valuable for database primary keys where insertion order matters for performance.
Are UUIDs case-sensitive?
No, the standard treats UUIDs as case-insensitive; this tool provides both lowercase and uppercase representations since different systems sometimes expect one specific case.
What are the Nil and Max UUIDs?
The Nil UUID (all zeros) and Max UUID (all Fs) are reserved special values with specific meanings in some systems (such as representing "no value" or an upper sentinel bound), rather than regular randomly or deterministically generated identifiers.
Feedback & suggestions
Help us improve UUID Validator. We read every message.