TodayTools

UUID and ULID generator

Orders, users and files that never clash as your project grows.

PrivateNo uploadsRuns in your browser

Donate
Kind

Fully random. The one most apps use.

Output format

    Decode a UUID or ULID

    Special values: nil 00000000-0000-0000-0000-000000000000 and max ffffffff-ffff-ffff-ffff-ffffffffffff.

    A team meeting around a table with laptops

    For new records

    A unique tag for every item.

    Stock day. Mani tags every new box in the system.

    BeforeNumbers that clash

    With sdevFresh tags that never repeat

    • Two colleagues checking orders on a phone

      No mix-ups

      No two items ever share a tag.

    • A delivery man walking up to a house

      Delivered

      Each parcel reaches the right door.

    How to generate a UUID

    1. Pick a kind

      v4 for random IDs, v7 or ULID for sortable keys, v5 for an ID derived from a name, Nano ID for short URL-safe strings. A fresh result appears as soon as you switch.

    2. Set the count and format

      Generate up to 1,000 at once. Choose upper case, no hyphens, braces or the urn: prefix, and take the list as plain lines, a JSON array, CSV or SQL values.

    3. Copy or decode

      Click the big result or press Copy; Ctrl+C with nothing selected copies the whole list. Paste any UUID or ULID into the decoder to see its version, variant and timestamp.

    Good to know

    • v7 and ULID put the time first, so a database index stays in insert order and B-tree pages do not fragment the way they do with v4.
    • Within one millisecond the tool keeps v7 and ULID values increasing, so a batch of 1,000 still sorts in the order it was made.
    • No hyphens gives the 32-character form some databases store; braces give the registry style Windows uses; urn:uuid: is the form RFC 9562 defines for URIs.
    • v1 here uses a random node with the multicast bit set, as the RFC allows, so your network card's MAC address is never in the ID.
    • Nano ID with the default 21-character URL-safe alphabet has about 126 bits, the same order as a UUID, in a shorter string.
    • Nothing leaves your browser; every ID comes from crypto.getRandomValues or a hash computed locally.

    Where people use it

    • IDs for test data

      Make hundreds of IDs at once and copy them as lines, CSV, JSON or SQL.

    • Sortable IDs for a database

      Use v7 or ULID so new rows sort by time.

    • Same input, same ID

      v5 makes the same ID every time from a name, handy for links and imports.

    • When was this ID made?

      Paste a UUID or ULID to see its version and the time inside it.

    • Need a password or key?

      For secrets, use the password and key maker instead.

      Strong password generator

    Why this one

    It makes every common ID type and also reads them back, showing the version and the time hidden inside.

    • v1, v4, v5, v7, ULID and Nano ID on one page.
    • Bulk lists in one click.
    • Built-in decoder for any UUID or ULID.
    • Runs in your browser.

    What you can change

    • Kind of ID
    • How many
    • Namespace for v5
    • Nano ID length and letters
    • Output as lines, CSV, JSON or SQL

    People find this page by searching

    • uuid generator
    • guid generator
    • uuid v4 generator
    • uuid v7 generator
    • ulid generator
    • nanoid generator
    • bulk uuid generator
    • uuid decoder
    • generate uuid online
    Cite this tool
    • APA
      sdev.in. (n.d.). UUID and ULID generator, v4, v7 and bulk [Web tool]. https://www.sdev.in/tools/uuid-generator
    • MLA
      "UUID and ULID generator, v4, v7 and bulk." sdev.in, https://www.sdev.in/tools/uuid-generator.
    • Chicago
      sdev.in. "UUID and ULID generator, v4, v7 and bulk." https://www.sdev.in/tools/uuid-generator.
    • BibTeX
      @misc{sdev-uuid-generator,
        title = {UUID and ULID generator, v4, v7 and bulk},
        author = {{sdev.in}},
        howpublished = {\url{https://www.sdev.in/tools/uuid-generator}},
        note = {Web tool}
      }

    Questions people ask

    UUID v4 or v7: which should I use?

    v7 for database keys and anything you sort or index: it starts with the time, so new rows land at the end of the index and stay in creation order. v4 is fully random; use it when the ID must not leak when it was made. Both are 128 bits and work anywhere a UUID is accepted.

    What is a ULID?

    A 26-character, URL-safe ID that also starts with a timestamp and sorts by time, written in Crockford base32 with no hyphens. It holds the same 128 bits as a UUID v7; many libraries convert between the two.

    Are the IDs really unique?

    v4 has 122 random bits, so the chance of two colliding is far below one in a trillion even after billions of IDs. v7 and ULID pair a millisecond timestamp with 74 or 80 random bits and stay ordered within the same millisecond. Everything comes from crypto.getRandomValues.

    When would I use v5 or v3?

    When the same input must always give the same ID, such as a UUID for a domain name, a URL or a product code. v5 hashes the namespace and the name with SHA-1; v3 uses MD5. Pick v5 unless a system requires v3.

    Can I see when a UUID was made?

    For v1, v6, v7 and ULID, yes: paste it into the decoder and the timestamp is shown. v4, v3 and v5 carry no time.

    Donate