Encode and decode Base64, base64url and MIME with UTF-8-safe text for Arabic and emoji
UUID & ULID Generator
Generate UUID identifiers in versions 4, 7 (time-ordered), 5 and 3 plus ULID, up to 10,000 at once with a secure random source, and validate any UUID showing its version, variant and timestamp.
Workspace
Validate an identifier
How the result is calculated
v4: 16 bytes from crypto.getRandomValues with the version (0100) and variant (10) bits set per RFC 9562. v7: a millisecond timestamp in the first 48 bits then a 12-bit counter that preserves order within the same millisecond, plus random bits, so lexical order is creation order. v5/v3: a SHA-1 or MD5 hash of (namespace + UTF-8 name) with version and variant bits set, so the same name always gives the same identifier. ULID: 48 bits of time and 80 random bits in Crockford Base32, 26 characters. Validation reads the version from the 7th byte’s high nibble and the variant from the 9th byte, and extracts v1 and v7 timestamps.
FAQ
When should I use v7 instead of v4?
When storing the identifier as a database primary key; time ordering improves index locality compared with fully random values.
Can UUID v4 collide?
The collision probability is vanishingly small in practice (122 random bits), provided a good random source, which this tool uses.


