Skip to content
SimpleTools24

Online GUID Generator

Generate GUIDs (UUIDs) in the version you need: random v4, time-ordered v7, name-based v5 and v3, or legacy v1 and v6. Create one or up to 1,000 at a time, pick the format, and copy or download the results. Everything runs in your browser.

UUID version

Random. The usual default for general-purpose IDs.

1 to 1,000.

Output format

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx

Choose your options and press Generate. Identifiers are created in your browser.

Special values: Nil and Max UUID

Fixed values defined by RFC 9562, not randomly generated. Use them as “no value” or “end of range” markers.

00000000-0000-0000-0000-000000000000
ffffffff-ffff-ffff-ffff-ffffffffffff

What Is a GUID?

A GUID (Globally Unique Identifier) and a UUID (Universally Unique Identifier) are two names for the same idea: a 128-bit value used to identify something without asking a central authority for a number. The current standard, RFC 9562, defines UUIDs and notes they are “also known as GUIDs” (RFC 9562 (opens in a new tab)).

Written as text, a UUID is 32 hexadecimal digits in five groups, such as f81d4fae-7dec-11d0-a765-00a0c91e6bf6. Because any machine can create one independently with a tiny chance of clashing, UUIDs are useful wherever many systems create records at once: databases, APIs, distributed services, message queues and logs.

How to Generate a GUID Online

  1. Choose a UUID version. v4 is a sensible default; v7 if you want time ordering.
  2. Set how many identifiers you need, from 1 to 1,000.
  3. Pick the output format: case, style (hyphens, compact, braces or URN), quotes and separator.
  4. For v3 or v5, choose a namespace and enter one name per line.
  5. Select Generate.
  6. Copy a single value, copy everything, or download as TXT, CSV or JSON.

UUID Versions Explained

The version is the first digit of the third group (the M in xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx), and it tells you how the rest of the bits were made. These are the versions this generator supports, as defined in RFC 9562 (RFC 9562 §5 (opens in a new tab)):

Comparison of UUID versions
VersionHow it is generatedTime informationDeterministic?Common usesCaveats
v160-bit Gregorian timestamp (100 ns), clock sequence, node IDYes, embeddedNoLegacy systemsNode may be a MAC address in other tools; v7 preferred for new systems
v3MD5 hash of namespace + nameNoneYesStable IDs from namesRFC 9562 says use v5 where possible
v4122 random bitsNoneNoGeneral-purpose IDsRandom order makes database indexes less local
v5SHA-1 hash of namespace + nameNoneYesStable IDs from namesAnyone with the name and namespace can recompute it
v6v1 timestamp reordered most-significant firstYes, embeddedNoSortable upgrade path for v1 usersRFC 9562 recommends v7 unless v1 compatibility is needed
v748-bit Unix millisecond timestamp + random bitsYes, embeddedNoDatabase keys, logs, event IDsReveals creation time; ordering is not guaranteed across machines

Which should you choose?

  • v4 when you just need an ID with no meaning attached. See the dedicated random UUID v4 generator.
  • v7 for database keys and event IDs where rough time ordering helps. RFC 9562 recommends it over v1 and v6 for new systems. Try the UUID v7 generator, which shows each ID’s timestamp.
  • v5 (or v3 for compatibility) when the same input must always map to the same ID, such as turning URLs into stable keys.
  • v1/v6 only when integrating with systems that already use them. This tool fills the node field with random data, never your network card’s MAC address, as RFC 9562 recommends for privacy.

GUID vs UUID

The two terms describe the same 128-bit format. “UUID” comes from the open standards (originally the OSF DCE specification, then RFC 4122, now RFC 9562); “GUID” is Microsoft’s name, used throughout Windows, COM, .NET and SQL Server. Microsoft tools often display GUIDs in braces and uppercase, but that is presentation only. One real difference is binary storage: Microsoft’s COM layout stores the first three fields little-endian, which matters if you compare raw bytes across systems (RFC 9562 §4 (opens in a new tab)). Read the full guide to GUID vs UUID.

What Are GUIDs Used For?

  • Database primary keys that can be created by the application before inserting, or merged across databases.
  • API resource IDs that don’t reveal how many records exist, unlike sequential numbers.
  • Correlation IDs that follow a request through several services and log files.
  • Distributed systems where nodes must create IDs without coordinating.
  • Test fixtures and sample data, where the bulk and export options save time.
  • File and object names in storage buckets, uploads and caches.

An identifier is not a secret. RFC 9562 says UUIDs must not be used as security capabilities, meaning identifiers whose mere possession grants access (RFC 9562 §8 (opens in a new tab)). Microsoft likewise advises against using Guid.NewGuid() for cryptographic purposes (Microsoft Learn (opens in a new tab)). Always check permissions on the server, however hard an ID looks to guess.

How Unique Are UUIDs?

A version 4 UUID has 122 random bits, giving about 5.3 × 1036 possible values. Assuming a properly working random generator, the chance of any duplicate among one billion v4 UUIDs is roughly 1 in 1019 (using the standard birthday approximation, n² / 2123). That’s why collisions are a non-issue for most applications.

Other versions trade some randomness for structure. v7 has 74 random or counter bits per millisecond, which is still far more than most systems need. Name-based v3 and v5 are deliberately not random: the same namespace and name always produce the same UUID. Real-world collisions usually come from bugs, such as a badly seeded random generator or copied data, rather than chance. RFC 9562 advises weighing what a collision would cost in your application (RFC 9562 §6.7 (opens in a new tab)).

Generate a UUID in Code

Each example states which version it creates. Where a library is needed, it says so.

JavaScript and TypeScript

crypto.randomUUID() is built into modern browsers and Node.js and returns a version 4 UUID. In browsers it is only available in secure contexts such as HTTPS pages (MDN (opens in a new tab)). For other versions, the uuid package (opens in a new tab) (used by this tool) supports v1 to v7.

JavaScriptBuilt in, version 4
const id = crypto.randomUUID();
console.log(id); // e.g. 3b241101-e2bb-4255-8caf-4136c566a962
TypeScriptnpm install uuid, version 7
import { v7 as uuidv7 } from 'uuid';

const id: string = uuidv7();
console.log(id); // time-ordered, e.g. 0199a3c4-...

C# / .NET

Guid.NewGuid() creates a version 4 UUID (Microsoft Learn (opens in a new tab)); Guid.CreateVersion7(), added in .NET 9, creates a version 7 UUID (Microsoft Learn (opens in a new tab)).

C#Built in; CreateVersion7 needs .NET 9+
Guid id = Guid.NewGuid();             // version 4
Guid ordered = Guid.CreateVersion7(); // version 7 (.NET 9 or later)

Console.WriteLine(id);                // 8-4-4-4-12, lowercase
Console.WriteLine(id.ToString("N"));  // 32 digits, no hyphens
Console.WriteLine(id.ToString("B"));  // {braced}

Python

The standard-library uuid module covers versions 1, 3, 4 and 5; Python 3.14 added uuid6(), uuid7() and uuid8() (Python docs (opens in a new tab)). The documentation also notes that uuid1() may include the computer’s network address.

PythonStandard library
import uuid

print(uuid.uuid4())                                   # random, version 4
print(uuid.uuid5(uuid.NAMESPACE_DNS, "example.com"))  # name-based, version 5
# cfbff0d1-9375-5685-968c-48ce8b15ae17

print(uuid.uuid7())                                   # version 7, Python 3.14+

Java

UUID.randomUUID() returns a version 4 UUID. UUID.nameUUIDFromBytes() returns a version 3 UUID, but it hashes only the bytes you pass, with no namespace, so it won’t match namespace-based v3 values from other tools unless you prepend the namespace bytes yourself (Java SE docs (opens in a new tab)).

JavaBuilt in (tested on Java 21)
import java.util.UUID;

UUID id = UUID.randomUUID();
System.out.println(id + " version=" + id.version()); // version=4

SQL

Databases can generate UUIDs too. In PostgreSQL, gen_random_uuid() returns a version 4 UUID, and PostgreSQL 18 adds uuidv7() (PostgreSQL docs (opens in a new tab)). SQL Server’s NEWID() returns a uniqueidentifier. Generating in the database versus in application code is a design choice: the application can know the ID before inserting, while the database can keep ordering consistent across clients.

SQLDatabase-specific
-- PostgreSQL
SELECT gen_random_uuid();  -- version 4
SELECT uuidv7();           -- version 7, PostgreSQL 18+

-- SQL Server
SELECT NEWID();

Browser Privacy

This generator runs entirely in your browser using the open-source uuid library and your browser’s secure random number generator (crypto.getRandomValues). Generated identifiers, the names you enter for v3/v5, copies and downloads never leave your device: they aren’t sent to our server and aren’t stored in cookies or local storage. Loading the page itself involves a normal request to our web server, which happens before you generate anything.

Need to check an ID you already have? Paste it into the UUID validator, or open the UUID decoder to see its version and any embedded timestamp.

Frequently Asked Questions

What is a GUID generator?

A tool that creates new globally unique identifiers: 128-bit values written as 32 hexadecimal digits, usually in the 8-4-4-4-12 hyphenated form. This one runs in your browser and supports UUID versions 1, 3, 4, 5, 6 and 7.

Is GUID the same as UUID?

In everyday use, yes. RFC 9562 defines UUIDs and notes they are also known as GUIDs. "GUID" is the name Microsoft uses in Windows and .NET. A GUID can be any UUID version, not only version 4.

Which UUID version should I use?

For most new work, v4 if you just need a random ID, or v7 if you want IDs that roughly sort by creation time (often useful for database keys). Use v5 when the same input must always produce the same ID. Choose v1 or v6 only for compatibility with systems that already use them.

What is the difference between UUID v4 and v7?

v4 is almost entirely random. v7 starts with a 48-bit Unix timestamp in milliseconds and fills the rest with random data, so v7 values created later usually sort after earlier ones. That helps database index locality but reveals roughly when the ID was made.

Can I generate multiple GUIDs at once?

Yes. Choose a preset or type any number up to 1,000, then copy them all or download them as TXT, CSV or a JSON array.

Can I generate a GUID without hyphens?

Yes. Choose the Compact style for 32 hex digits with no hyphens. Removing hyphens doesn’t change the identifier’s value; it’s the same 128 bits written differently.

How do I generate a GUID in C#?

Call Guid.NewGuid(), which Microsoft documents as creating a version 4 UUID. On .NET 9 and later, Guid.CreateVersion7() creates a version 7 UUID. Use ToString("N") for no hyphens or ToString("B") for braces.

How do I generate a UUID in JavaScript?

Use crypto.randomUUID(), which returns a version 4 UUID in modern browsers (in secure contexts such as HTTPS) and in current Node.js. For other versions such as v7, use a maintained library like the uuid package.

How do I generate a UUID in Python?

Use the standard-library uuid module: uuid.uuid4() for a random UUID, uuid.uuid5(namespace, name) for a name-based one, and uuid.uuid7() on Python 3.14 or later.

Can two UUIDs be identical?

It is possible in principle but very unlikely with a good random source. Name-based versions are identical by design when the namespace and name are the same. Uniqueness can also fail if a generator is buggy or badly seeded.

Are UUIDs secure passwords or secrets?

No. RFC 9562 says implementations should not assume UUIDs are hard to guess and must not use them as security capabilities. Use proper authentication and access control, and a dedicated secure random token where you need a secret.

Does UUID v7 contain a timestamp?

Yes. The first 48 bits are a Unix timestamp in milliseconds. It reflects the clock of whatever generated the ID, so it shows roughly when the ID was made, not when a record was saved.

Does this generator send IDs to a server?

No. Identifiers are generated, formatted, copied and downloaded in your browser. They are not included in any request to our server.

Sources