UUID parser — version, variant, timestamp
Paste a UUID and inspect its version (v1–v8 / Nil / Max), variant (RFC 9562 / Microsoft / legacy NCS), canonical / compact / braced / URN forms, integer (BigInt), and raw bytes — all at once. UUID v1 and v6 expose the embedded timestamp + node MAC, and UUID v7 reveals the Unix epoch ms used as the prefix. Braces, whitespace, the urn:uuid: prefix, and mixed case are normalized automatically. Nothing leaves the browser.
How to use
Paste a UUID and the page parses it instantly. Canonical, hyphen-less, braced ({}), and urn:uuid: forms are all accepted; case and surrounding whitespace are normalized automatically. Two top-of-page badges show version (v1–v8 / Nil / Max) and variant (RFC / Microsoft / NCS / reserved). Alternate forms (canonical, uppercase, hyphen-less, braced, URN, integer) sit in a copyable table. For v1/v6 you also get the node MAC and the embedded timestamp + clock_seq; for v7 the Unix epoch milliseconds embedded in the upper 48 bits are extracted. The Sample button cycles through v4 / v1 / v7 / Nil examples.
FAQ
- Is the UUID I paste sent anywhere?
- No. Parsing, timestamp decoding, and MAC extraction all happen inside your browser.
- Can I recover the original name from a v3 or v5 UUID?
- No. v3 (MD5) and v5 (SHA-1) are one-way hashes — the input name is not mathematically reversible. Only the version and namespace can be identified.
- Is the MAC inside a v1 UUID always a real hardware MAC?
- If the first byte of the node has the multicast bit set, it indicates a randomly generated node rather than a true hardware MAC. A unicast (cleared multicast bit) value may be a real MAC. Modern libuuid / uuidgen typically choose a random node.
- Will it accept braced or whitespaced GUIDs?
- Yes. The classic Microsoft `{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}` form, an `urn:uuid:` prefix, and interspersed whitespace / tabs / newlines are all stripped automatically.
- What are Nil and Max UUIDs?
- Nil is the all-zero UUID (00000000-0000-0000-0000-000000000000), conventionally used as the 'unassigned' marker. Max is all-ones (ffffffff-ffff-ffff-ffff-ffffffffffff), used as a sentinel upper bound. Both are formally defined by RFC 9562.
- Any versions that aren't fully supported?
- v2 (DCE Security) has a non-standard timestamp layout, so the embedded clock isn't decoded. All other versions 1–8 are identified, and timestamp-bearing forms (v1, v6, v7) display ISO 8601, Unix epoch ms, and a relative time.
Related tools
UUID generator — v4 / v7 batch generation
Generate UUID v4 (random) or UUID v7 (timestamp-prefixed) in batches of 1–100. Backed by crypto.getRandomValues and runs entirely in your browser.
JWT decode — inspect header & payload
Paste a JWT and break it down into Header / Payload / Signature. Numeric claims like exp / iat / nbf are translated into human-readable timestamps. No signature verification — purely for inspection. Runs entirely in your browser.
Hash generator — SHA-1 / 256 / 384 / 512
Generate SHA-1, SHA-256, SHA-384, and SHA-512 digests from text in parallel. Powered by the Web Crypto API and runs entirely in your browser.
Base32 / Base58 encode & decode
Convert text to and from Base32 (RFC 4648 / TOTP 2FA secrets) and Base58 (Bitcoin addresses). Switch the variant (Base32 / Base58) and direction (encode / decode). UTF-8 byte based, so Japanese and emoji round-trip. Runs entirely in your browser.