AnyTool
Your files never leave your device. All processing happens locally in your browser.

How do I generate a UUID online?

Open AnyTool UUID Generator, pick a version (v4 random by default, or v7, v1, v5, nil or max) and a UUID is created instantly using your browser’s crypto-secure randomness. Choose uppercase, hyphenless, brace-wrapped or urn:uuid: formatting, bulk-generate up to 1,000 with copy-all and .txt download, or paste any UUID into the validator to detect its version, variant and timestamp. Everything runs in your browser — nothing is uploaded.

  • RFC 9562 versions: v4 (random), v7 (time-sortable), v1, v5 (name-based), nil & max
  • Crypto-secure randomness (crypto.randomUUID / getRandomValues) — never Math.random
  • Format options: uppercase, no hyphens, braces {…}, urn:uuid: prefix
  • Bulk-generate up to 1,000 · copy-all · download .txt
  • Validate & decode any UUID — version, variant and embedded timestamp · 100% client-side

What is

UUID (Universally Unique Identifier)

A UUID is a 128-bit identifier, written as 32 hexadecimal digits in an 8-4-4-4-12 pattern, designed to be unique without a central authority. RFC 9562 (the 2024 revision of RFC 4122) defines several versions: v4 is fully random, v7 embeds a millisecond timestamp so values sort by creation time, v1 is timestamp-and-node based, and v5 is deterministically derived from a namespace and a name using SHA-1.

Generators

Related terms

GUIDRFC 9562UUID v7Namespace UUIDULID

Frequently Asked Questions

v4 is fully random; v7 starts with a millisecond timestamp so the IDs sort by when they were created, which indexes far better in databases.

UUID v4 fills 122 of its 128 bits with random data, so two v4 UUIDs have no relationship and collision odds are negligible — but they have no order, which makes them poor database primary keys because inserts land randomly in the index. UUID v7, introduced in RFC 9562, puts a 48-bit Unix millisecond timestamp at the front followed by random bits, so newer IDs are always larger than older ones and sort chronologically. That locality makes v7 the recommended choice for new database keys, at the cost of revealing roughly when each ID was created.

Use v7 for new database keys, v4 when you just need a random ID, and v5 when you need the same ID every time from a name.

The short decision tree for 2026 is: pick v7 if your stack supports it and you want sortable identifiers — it is ideal for primary keys. Fall back to v4 when you simply need an unpredictable, one-off random identifier and order does not matter. Choose v5 (name-based) when you need a deterministic ID derived from a namespace plus a name, so the same input always maps to the same UUID. v1 still exists for legacy systems; the nil and max UUIDs are special sentinel values.

No. Every UUID is generated locally in your browser with crypto-secure randomness and is never uploaded, logged or stored.

AnyTool UUID Generator runs entirely in your browser. Random UUIDs use the Web Crypto API — crypto.randomUUID or crypto.getRandomValues — and name-based v5 UUIDs are hashed with crypto.subtle SHA-1, all on your device. Nothing you generate is transmitted, saved or tracked, and the page keeps working offline after the first load. To protect privacy, v1 UUIDs here use a random node rather than your real network MAC address.

Not guaranteed, but the chance of a v4 collision is so astronomically small it is treated as effectively zero.

UUIDs are not coordinated by a central authority, so uniqueness is probabilistic rather than guaranteed. A v4 UUID has 122 random bits, giving about 5.3 × 10^36 possibilities; you would need to generate billions of UUIDs per second for many years before a single collision became likely, so in practice they are treated as unique. v7 inherits the same large random space while adding a timestamp. Name-based v5 UUIDs are intentionally not unique — the same namespace and name always produce the same UUID, which is exactly their purpose.

Detailed Explanation

Methodology

UUID Versions and How They Are Built

AnyTool UUID Generator implements the versions defined in RFC 9562 (the May 2024 revision of RFC 4122), all in the browser. Version 4 fills 122 bits with cryptographically-secure random data — produced by crypto.randomUUID when available, otherwise crypto.getRandomValues — and sets the version and variant bits exactly as the spec requires. Version 7 places a 48-bit Unix millisecond timestamp at the front followed by random bits, so the identifiers sort by creation time and index well as database keys. Version 1 is timestamp-based but uses a random node and clock sequence rather than a real network MAC address. Version 5 derives a deterministic UUID from a namespace UUID plus a name using a SHA-1 hash via crypto.subtle, and the nil and max UUIDs provide the all-zero and all-one sentinel values.

  • RFC 9562 versions supported: v4, v7, v1, v5, plus nil and max
  • v4 uses crypto.randomUUID / getRandomValues — 122 random bits
  • v7 prepends a 48-bit Unix-ms timestamp so IDs sort chronologically
  • v1 uses a random node, never the machine’s real MAC address
  • v5 is a SHA-1 hash of namespace + name (deterministic) via crypto.subtle
Technical Details

Formatting, Bulk Output and Validation

Generated UUIDs are produced in the canonical 8-4-4-4-12 lower-case form and can then be transformed without leaving the browser: upper-case the hex digits, strip the hyphens, wrap the value in braces in Microsoft GUID style, or add the urn:uuid: prefix from RFC 9562. The bulk panel generates up to 1,000 identifiers at once with copy-all and .txt download, and for v5 it suffixes the name with the row index so each value is distinct yet reproducible. A validator accepts any UUID — tolerating braces, a urn:uuid: prefix, missing hyphens or mixed case — and decodes it to report whether it is valid, which version and variant it carries, and, for v1 and v7, the timestamp embedded in the identifier.

  • Format options: uppercase, no hyphens, braces {…}, urn:uuid: prefix
  • Bulk generate up to 1,000 with copy-all and .txt download
  • Validator detects version and variant and normalises casing
  • Decodes the embedded creation timestamp for v1 and v7 UUIDs
  • Accepts braces, urn:uuid:, hyphenless and mixed-case input
Privacy & Security

Privacy, Determinism and Version Trade-offs

Because all generation runs in the browser, no UUID is sent to a server, logged, or stored — closing the tab discards everything and the page works offline once cached. Each version has an honest trade-off the tool makes explicit: v4 is unordered, so it indexes poorly as a primary key; v7 is sortable but reveals roughly when each ID was created; v1 is timestamp-based, which is why this tool uses a random node rather than a real MAC so the IDs are not linkable to your machine; and v5 is deliberately deterministic, meaning the same namespace and name always yield the same UUID, so it must not be used where an unguessable one-off identifier is required.

UUID generation: in-browser (AnyTool) vs typical online generators
CapabilityAnyToolTypical online generators
Versionsv4, v7, v1, v5, nil, max (RFC 9562)Often v4 only
RandomnessWeb Crypto (crypto.randomUUID / getRandomValues)Sometimes Math.random / server-side
ProcessingRuns in your browserOften server-side
Time-sortable v7Yes, RFC 9562 compliantFrequently missing
Name-based v5Yes, DNS/URL/OID/X500 or custom namespaceRare
Format optionsUppercase, no-hyphens, braces, urn:uuid:Usually just one form
Validate / decodeVersion, variant and timestampOften none
Bulk generateUp to 1,000, copy-all / download .txtLimited or capped low
PrivacyNever uploaded, not stored, works offlineMay transmit or log

AnyTool generates every UUID locally with crypto-secure randomness and uploads nothing.