Generate and copy Nil/Empty UUIDs (all zeros) in multiple formats with our free online tool. Perfect for developers needing sentinel values, default states, or special case identifiers.
00000000-0000-0000-0000-000000000000
Important Note: The Nil UUID is a special UUID that consists of all zeros. It's often used as a sentinel value or default state in applications.
The Nil UUID is defined in RFC 4122 as a special case identifier
Ads help support this free tool
How many UUIDs? (max 1000)
A Nil UUID (also known as an Empty UUID) is a special form of Universally Unique Identifier where all 128 bits are set to zero. It's represented as 00000000-0000-0000-0000-000000000000 in its canonical textual representation. The Nil UUID is defined in RFC 4122 and serves as a special case identifier, often used to indicate the absence of a specific UUID value.
The Nil UUID serves specific purposes in software development:
The Nil UUID can be represented in multiple formats depending on your system requirements:
Format | Value | Common Usage |
---|---|---|
Standard | 00000000-0000-0000-0000-000000000000 | Most common format, used in most programming languages and databases |
Hex String | 0x00000000000000000000000000000000 | Typically used in low-level applications and some binary protocols |
Base64 | AAAAAAAAAAAAAAAAAAAAAA== | Used when UUIDs need to be efficiently encoded for transport or storage |
URN | urn:uuid:00000000-0000-0000-0000-000000000000 | Standard format for UUIDs in URIs and XML documents |
With Braces | {00000000-0000-0000-0000-000000000000} | Common in Microsoft systems and some programming environments |
The Nil UUID is a specific case defined in RFC 4122 with these characteristics:
Yes, the Nil UUID is explicitly defined in RFC 4122 as a special case of UUID. While it doesn't follow the normal rules for UUID version and variant bits, it's recognized as a valid special-purpose UUID by the specification.
While technically possible, it's not recommended to use the Nil UUID as a regular identifier. Its special status as 'all zeros' typically signifies an uninitialized or default state. Many systems and frameworks recognize and treat it specially, which might lead to unexpected behavior if used as a regular identifier.
The Nil UUID is not the same as a UUID version 0. UUID versions are indicated by specific bits in positions 48-51 of the UUID, but the Nil UUID has all bits set to zero, including the version bits. There is no officially defined 'version 0' in the UUID specification.
Yes, the Nil UUID has the same value (all zeros) across all programming languages and platforms. However, its string representation might vary slightly depending on the format used (standard, hex, with braces, etc.).
Most UUID libraries provide a function to check if a UUID is the Nil UUID. For example, in Java, you can use 'uuid.equals(UUID.fromString("00000000-0000-0000-0000-000000000000"))' or 'uuid.equals(new UUID(0, 0))'. In most cases, you can also simply check if all bits or bytes are zero.