UUID v6 Generator
Your new time-ordered ID is ready below. ClickTap Copy to use it, or Generate for a fresh one.
- Free, no sign-up
- Follows the official RFC 9562 standard
Need more? Make them in bulkGenerate UUID v6 in bulk
Make up to 10,000 UUID v6s at once and save them as a file. Three quick steps.
Enter a number from 1 to 10,000.
What is a UUID v6?
A UUID v6 is a UUID v1 with its time digits reordered, highest part first, so the IDs sort by the time they were made.
It holds the same fields as v1: a 60-bit count of 100-nanosecond steps since 15 October 1582, a clock sequence and a 48-bit node ID. Only the order of the time bits changes, which makes v6 easy to convert to and from v1.
RFC 9562 says v6 should use a random node ID rather than a MAC address, and this generator does. Every ID gets a fresh random node and clock sequence, so nothing about your device goes into it.
The standard also says to prefer UUID v7 where you can. Use v6 when you have v1 IDs, or tools built around them, and want time order.
What a UUID v6 looks like
Here is the ID you just made, split into its parts. ClickTap Generate above and watch it change.
- The time it was made, highest part first, so the IDs sort by time.
- The 6 means version 6. It is always in this spot.
- This digit is always 8, 9, a or b. It marks the standard layout.
- The clock sequence, a number that guards against repeats.
- The node ID. Here it is random with the multicast bit set, not your MAC address.
Its time part says it was made at the moment you opened this page.
When to use UUID v6
Good for
- Sortable keys in systems that already use v1
- Converting v1 IDs to a sortable form with the same time
- Tools that read the v1 time format but need ordered IDs
- Test data for code that parses or decodes v6
Make a UUID v6 in code
import { v6 } from 'uuid';
const id = v6();
console.log(id);Uses the uuid package from npm, version 10 or later. It uses a random node ID by default.
import uuid
id = uuid.uuid6()
print(id)Built in from Python 3.14. It uses your MAC address as the node unless you pass node=.
import com.fasterxml.uuid.Generators;
import java.util.UUID;
UUID id = Generators.timeBasedReorderedGenerator().generate();
System.out.println(id);Java has no built-in v6 generator. This uses the java-uuid-generator library (com.fasterxml.uuid).
import "github.com/google/uuid"
id, err := uuid.NewV6()
if err != nil {
panic(err)
}
fmt.Println(id)Uses the google/uuid package. It uses a hardware address for the node when it finds one.
UUID v6 vs other versions
Questions people ask
What is the difference between UUID v1 and v6?
They hold the same data. v6 puts the time highest part first, so the IDs sort by time. v1 puts the lowest part first, so they do not. See v1 vs v6 vs v7.
Does this UUID v6 contain my MAC address?
No. Each ID gets a random node ID with the multicast bit set, as RFC 9562 recommends. Some libraries still use the MAC address by default, so check yours.
Should I use UUID v6 or v7?
For new work, UUID v7. It uses plain Unix time, has more random bits and is more widely supported. v6 makes sense when you already work with v1.
Can I get the date back from a UUID v6?
Yes. The time is stored in the ID to a tenth of a microsecond. Paste it into the UUID decoder to see when it was made.
Can I convert a UUID v1 to a v6?
Yes. Reorder the time bits and change the version digit. The clock sequence and node can stay as they are. The npm uuid package has v1ToV6() and v6ToV1() for this.


