UUID v1 Generator
Your new time-based 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 v1 in bulk
Make up to 10,000 UUID v1s at once and save them as a file. Three quick steps.
Enter a number from 1 to 10,000.
What is a UUID v1?
A UUID v1 is a 36-character ID built from the time it was made and a node ID, which in the original design came from the network card of the computer.
The time is a 60-bit count of 100-nanosecond steps since 15 October 1582, the day the Gregorian calendar began. A 14-bit clock sequence guards against repeats if the clock jumps back, and the last 12 digits are the 48-bit node ID.
Older systems used the computer's MAC address as the node, so every ID showed which machine made it. This generator does not. It uses a random node ID with the multicast bit set, as RFC 9562 allows, so your MAC address is never used. Web pages cannot read it anyway.
Version 1 is now a legacy format. Its time digits are stored lowest part first, so v1 IDs do not sort by time. For new work, the standard recommends UUID v7.
What a UUID v1 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, split across three groups with the lowest part first.
- The 1 means version 1. 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 if the clock goes back.
- 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 v1
Good for
- Systems that already expect v1 IDs
- Cassandra timeuuid columns and other tools built on v1
- Matching the format of IDs from an older system
- Test data for code that parses or decodes v1
Pick something else when
- New database keys that sort by time: UUID v7
- You want the v1 fields but in time order: UUID v6
- The ID must not reveal when it was made: UUID v4
- Not sure which time-based version fits: v1 vs v6 vs v7
Make a UUID v1 in code
import { v1 } from 'uuid';
const id = v1();
console.log(id);Uses the uuid package from npm. It uses a random node ID by default.
import uuid
id = uuid.uuid1()
print(id)Built into Python. It uses your MAC address as the node unless you pass node=.
import com.fasterxml.uuid.Generators;
import java.util.UUID;
UUID id = Generators.timeBasedGenerator().generate();
System.out.println(id);Java has no built-in v1 generator. This uses the java-uuid-generator library (com.fasterxml.uuid).
import "github.com/google/uuid"
id, err := uuid.NewUUID()
if err != nil {
panic(err)
}
fmt.Println(id)NewUUID() makes a v1 with the google/uuid package. It uses a hardware address for the node when it finds one.
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
SELECT uuid_generate_v1mc();From the uuid-ossp extension. The mc version uses a random multicast node instead of the MAC address.
SELECT UUID();Built into MySQL. UUID() returns a version 1 UUID.
UUID v1 vs other versions
Questions people ask
Does this UUID v1 contain my MAC address?
No. This generator uses a random 48-bit node ID with the multicast bit set, as RFC 9562 allows. Web pages cannot read your MAC address anyway.
Can I get the date back from a UUID v1?
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.
Why do UUID v1s not sort by time?
The lowest part of the time comes first, so the digits that change fastest sit at the front. UUID v6 stores the same time highest part first, so it sorts.
Should I use UUID v1 for a new project?
Usually not. RFC 9562 recommends UUID v7 over v1 and v6 where you can. Use v1 when an existing system needs it.
Why does the time start in 1582?
That is when the Gregorian calendar began, on 15 October 1582. The v1 clock counts 100-nanosecond steps from then, and it has room until the year 5236.


