UUID v1 Generator (RFC 4122, Batch)

Generate time-based UUID v1 identifiers in your browser. Private by design—nothing leaves your device.

Controls

Ready.
Browsers can’t access your MAC. Random node is recommended.

Output

Tip: Press Ctrl/Cmd + Enter to regenerate with the same settings.

Legend (hyphenated view):
XXXXXXXX = time_low
XXXX = time_mid
1XXX = time_hi_and_version (version = 1)
XX XX = clock_seq (variant in high bits)
XXXXXXXXXXXX = node (MAC or random with multicast bit)

Understanding UUID v1

A UUID (Universally Unique Identifier) is a 128-bit value used to label data, objects, and events in a way that is practically guaranteed to be unique across machines and time. UUID version 1 is the original time-based format defined by RFC 4122. Instead of pure randomness, it combines a timestamp measured in 100-nanosecond intervals since 15 Oct 1582, a 14-bit clock sequence, and a 48-bit node identifier to avoid collisions when many identifiers are created close together.

How a UUID v1 is structured

A v1 has the familiar pattern xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, but its fields carry meaning:

  • time_low (32 bits) – the low part of the 60-bit timestamp.
  • time_mid (16 bits) – the middle part of the timestamp.
  • time_hi_and_version (16 bits) – upper timestamp bits, with the high nibble set to 1 to mark version 1.
  • clock_seq_hi_and_reserved + clock_seq_low (16 bits total) – a 14-bit sequence that changes when time moves backwards or when multiple UUIDs are generated in the same tick; the top two bits are the RFC 4122 variant (10xx).
  • node (48 bits) – traditionally a MAC address; in modern privacy-preserving generators it’s a random 48-bit value.

Why choose UUID v1?

  • Temporal ordering: Because the timestamp dominates the high-order bits, v1 UUIDs generally sort in creation order. This can be helpful for logs, event streams, and database keys that benefit from write locality.
  • Excellent uniqueness: With ~60 bits of time precision plus clock sequence and node, the collision probability is vanishingly small even at very high generation rates.
  • Interoperability: v1 is widely supported across languages, databases, and analytics tools, making it a safe choice for heterogeneous systems.

Privacy & implementation notes

Early UUID v1 implementations embedded the machine’s MAC address. That leaks hardware identity, so modern generators—like this tool—use a random node and set the IEEE “multicast/non-IEEE” bit on the first node octet to signal that it is not a real MAC. The result keeps the layout and sortability benefits without exposing device identifiers.

Another practical detail is monotonicity. If multiple UUIDs are created within the same millisecond, a well-behaved generator will increment the 100-ns tick value (or adjust the clock sequence) to ensure the timestamp portion never goes backwards. This tool does exactly that, producing stable, strictly increasing v1 values during bursts.

v1 vs v4 vs v7 (at a glance)

  • v1 (time-based): Sorts by time; lightweight and widely compatible; uses clock sequence and node.
  • v4 (random): Pure randomness (good privacy, no ordering); great for tokens and one-offs.
  • v7 (time-ordered, Unix-epoch): Combines millisecond time with randomness; designed for modern storage engines. Not all stacks support it yet.

Choose v1 when you want predictable ordering and proven interoperability, v4 for simplicity and maximum unpredictability, and v7 if you need time-ordered IDs with a Unix-epoch base in newer systems.

Explore more tools