Generate V6 UUIDs
Pick how many and the format you want. Everything runs in your browser.
Your UUIDs
Copy one, copy them all, or download the list. The format options above apply to everything shown here.
What a UUID v6 is
Version 6 is version 1 with its timestamp put in the right order. v1 stores the low 32 bits of the time first, which is why consecutive v1 values do not sort. v6 stores the high bits first, then the middle, then the low 12 bits after the version nibble. Everything else, the clock sequence and the 48 bit node id, stays where it was. The result compares in creation order as text or bytes, which is what database indexes want.
RFC 9562 added v6 in 2024 alongside v7 and v8, specifically so systems built on v1 could get ordering without changing their data model.
v6 or v7
If you are not tied to v1, use v7. Both sort by time, but v7 uses a plain Unix millisecond timestamp that any language can read, and fills the rest with random bits. v6 keeps the 100 nanosecond Gregorian timestamp and the node id, which only matters if you already have v1 data or tooling that reads those fields. The RFC says as much: v6 for compatibility, v7 for new work.
How this generator makes them
The node id is random with the multicast bit set, since a browser cannot see your MAC address. The timestamp comes from your clock at 100 nanosecond resolution as far as the browser allows. Paste a value into the decoder to read the time back.
Anatomy of an example
1ef9f3b0-e5c2-6f1a-a1b2-0242ac120002
^^^^^^^^ ^^^^ ^^^ timestamp, high bits first
^ version 6
^^^^ variant plus clock sequence
^^^^^^^^^^^^ node id
Generate a v6 UUID in code
// JavaScript, uuid package
import { v6 as uuidv6, v1ToV6 } from "uuid";
const id = uuidv6();
// convert an existing v1 value, the timestamp is preserved
v1ToV6("e5c2f1a0-9f3b-11ef-a1b2-0242ac120002");
# Python 3.14+
import uuid
uuid.uuid6()
Frequently asked questions
Can I convert my existing v1 UUIDs to v6?
Yes, and it is lossless. The fields are the same, only their order changes, so a v1 value can be rewritten as v6 and back. The uuid package for JavaScript has v1ToV6 and v6ToV1 helpers.
Does v6 leak my MAC address like v1?
Only if the generator uses a real MAC. This page uses a random node id. Server side libraries usually offer the same choice.
Is v6 widely supported?
Less than v7. Python 3.14 and the JavaScript uuid package have it, most other ecosystems support v7 first. If you do not have a v1 legacy, skip v6.