UUID Generator

Generate random UUIDs (v4), validate UUIDs, and convert between formats

Generate UUID

Bulk Generate

Validate UUID

UUID Details

Generate or validate a UUID to see details

UUID Versions Reference

Version Description
v1 Timestamp + MAC address
v2 DCE Security (rarely used)
v3 MD5 hash of namespace + name
v4 Random (most common)
v5 SHA-1 hash of namespace + name
v7 Unix timestamp + random (new)

UUID Structure

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx
M = Version (1-5, 7)
N = Variant (8, 9, a, or b for RFC 4122)
x = Random hexadecimal digit

Total: 128 bits = 32 hex digits + 4 hyphens = 36 characters

What is a UUID?

A UUID (Universally Unique Identifier), also known as GUID (Globally Unique Identifier), is a 128-bit identifier designed to be unique across space and time. UUIDs are commonly used in databases, distributed systems, and software development to uniquely identify records without central coordination.

Version 4 UUIDs are the most commonly used type, generated using random or pseudo-random numbers. They have a very low probability of collision, making them suitable for most applications.

Frequently Asked Questions

What is the difference between UUID and GUID?

UUID and GUID are essentially the same thing. UUID is the standard term defined by RFC 4122, while GUID is Microsoft's implementation. Both refer to a 128-bit identifier formatted as 32 hexadecimal characters with hyphens.

Are UUIDs truly unique?

UUID v4 has approximately 5.3 x 10^36 possible values. The probability of generating two identical UUIDs is astronomically low (about 1 in 2^122). For practical purposes, they can be considered unique.

What do the different UUID versions mean?

UUID versions indicate how they're generated: v1 uses timestamp + MAC address, v3/v5 use namespace + name hashing (MD5/SHA-1), v4 is random, and v7 uses Unix timestamp + random. The version is encoded in the 13th character.

Should I use UUID v4 or v7?

UUID v4 is best for general use where ordering doesn't matter. UUID v7 is better for database primary keys because it's time-sortable, which improves index performance in B-tree databases.