Free GUID Generator · Browser-Only · No Signup

GUID Generator

Generate a new GUID online instantly — random, RFC-compliant, created entirely in your browser. Bulk generate GUIDs, toggle braces, uppercase, and export as JSON or CSV.

Bulk GUID Generation
★ 100% Free ✓ No Signup 🔒 Browser-Only · Zero Server Calls ★ RFC 9562 Compliant

The Basics

What is a GUID?

A GUID (Globally Unique Identifier) is Microsoft’s term for a UUID (Universally Unique Identifier) — a 128-bit identifier generated without any central authority so that no two systems ever produce the same ID. The underlying standard is identical: both follow the format defined in RFC 4122 and RFC 9562, producing a 32-character hexadecimal string in the 8-4-4-4-12 pattern.

You see the term GUID in .NET, COM, SQL Server, Windows APIs, and the Microsoft ecosystem. You see UUID everywhere else — Linux, macOS, Java, Python, web standards, and cloud platforms. Functionally they are the same thing. A GUID is a UUID.

💡

GUID vs UUID — the only real difference

In binary storage, some Microsoft COM/DCOM implementations store the first three fields of a GUID in little-endian byte order, whereas the RFC defines them as big-endian. In the canonical hyphenated string representation — which is what this generator outputs — there is no difference at all. A GUID and a UUID are the same 36-character string.

A GUID looks like this:

{3F2504E0-4F89-41D3-9A0C-0305E82C3301}

The braces ({ }) are optional and commonly used in C# and .NET contexts. Toggle them on above using the {Braces} option.

Comparison

GUID vs UUID — Side-by-Side

The terms are used in different ecosystems but refer to the same standard. Here is what actually differs and what does not:

PropertyGUID (.NET / Microsoft)UUID (RFC 4122 / 9562)
Bit length128 bits128 bits
String format8-4-4-4-12 hex, 36 chars8-4-4-4-12 hex, 36 chars
Braces notationCommon in C# / .NET ({…})Not used (RFC omits braces)
Binary byte orderFirst 3 fields little-endian in COM/DCOMAll fields big-endian per RFC
String representationIdentical — no difference in string form
Default algorithm in .NETGuid.NewGuid() — version 4 (random)UUID v4 by default in most libraries
Collision probability~5.3 × 10³⁶ possible values~5.3 × 10³⁶ possible values
Governing standardMicrosoft / ECMA-334IETF RFC 4122, RFC 9562

Bottom line: generate a GUID or a UUID — same output

When you generate a new GUID online using this tool, you get a standard RFC-compliant v4 UUID. Use it in any .NET, SQL Server, or Windows context without conversion. The braces toggle above adds the {…} wrapper that C# and COM interfaces commonly expect.

Generate GUID in Code

How to Create a GUID in Every Major Language

Need to generate GUIDs programmatically rather than online? Every major platform has a built-in method. Here are the one-liners:

C# / .NET — Guid.NewGuid()

C#
// Generate a new GUID in C# Guid guid = Guid.NewGuid(); Console.WriteLine(guid.ToString()); // 3f2504e0-4f89-41d3-9a0c-0305e82c3301 Console.WriteLine(guid.ToString(“B”)); // {3F2504E0-4F89-41D3-9A0C-0305E82C3301} Console.WriteLine(guid.ToString(“N”)); // 3f2504e04f8941d39a0c0305e82c3301
💬

Format specifiers in C#

“D” — default with hyphens. “B” — braces with hyphens. “N” — 32 hex digits, no hyphens. “P” — parentheses with hyphens. “X” — four curly-brace fields in hex.

Python

Python
import uuid # Generate a random GUID (UUID v4) guid = uuid.uuid4() print(str(guid)) # 3f2504e0-4f89-41d3-9a0c-0305e82c3301 print(str(guid).upper()) # 3F2504E0-4F89-41D3-9A0C-0305E82C3301 print(str(guid).replace(‘-‘, ”)) # 3f2504e04f8941d39a0c0305e82c3301

SQL Server — NEWID()

SQL Server / T-SQL
— Generate a new GUID in SQL Server SELECT NEWID(); — random GUID (UUID v4 equivalent) SELECT NEWSEQUENTIALID(); — sequential GUID (better for clustered indexes) — Use as a default in a table column CREATE TABLE Orders ( OrderId UNIQUEIDENTIFIER DEFAULT NEWID() PRIMARY KEY, OrderDate DATETIME2 DEFAULT GETDATE() );

JavaScript / TypeScript

JavaScript (modern browsers & Node.js 19+)
// No library needed in modern environments const guid = crypto.randomUUID(); // “3f2504e0-4f89-41d3-9a0c-0305e82c3301” // With braces (C#/.NET style) const guidWithBraces = ‘{‘ + crypto.randomUUID() + ‘}’; // “{3f2504e0-4f89-41d3-9a0c-0305e82c3301}”

PowerShell

PowerShell
# Generate a new GUID in PowerShell [System.Guid]::NewGuid() # returns a Guid object [System.Guid]::NewGuid().ToString() # “3f2504e0-4f89-41d3-9a0c-0305e82c3301” (New-Guid).ToString() # same, shorter syntax

Java

Java
import java.util.UUID; UUID guid = UUID.randomUUID(); System.out.println(guid.toString()); // 3f2504e0-4f89-41d3-9a0c-0305e82c3301

PHP

PHP 9+
// PHP has no built-in, but Symfony/ramsey/uuid are standard use RamseyUuidUuid; $guid = Uuid::uuid4()->toString(); // 3f2504e0-4f89-41d3-9a0c-0305e82c3301 // Without a library (PHP 8.3+): echo sprintf(‘%s-%s-%04x-%04x-%s’, bin2hex(random_bytes(4)), bin2hex(random_bytes(2)), (hexdec(bin2hex(random_bytes(2))) & 0x0fff) | 0x4000, (hexdec(bin2hex(random_bytes(2))) & 0x3fff) | 0x8000, bin2hex(random_bytes(6)));

Use Cases

Where GUIDs Are Used

GUIDs appear throughout the Microsoft ecosystem and anywhere that needs a globally unique identifier without a central sequence. Common applications:

ContextWhy GUIDsExample
SQL Server primary keysDistributed inserts across servers or clients without a central sequence; works with replicationUNIQUEIDENTIFIER column type, NEWID()
C# / .NET class identifiersCOM component identity; assembly and type identity; plugin systems[Guid(“3F2504E0-…”)] attribute
Azure / Microsoft Cloud resource IDsSubscriptions, resource groups, storage accounts, and service principals all use GUIDs as identifiersAzure subscription ID format
Windows Registry keysCOM class IDs (CLSID), interface IDs (IID), and type library IDs stored in the registryHKEY_CLASSES_ROOTCLSID{GUID}
MSI / Windows Installer packagesProductCode and UpgradeCode are GUIDs; required for Windows Installer to track installations and upgradesProductCode = {3F2504E0-…}
Active Directory / Entra IDObject GUIDs identify users, groups, and computers across domain controllers and tenantsUser objectGUID in LDAP/AD
Visual Studio project filesProject type GUIDs and project GUIDs in .sln and .csproj filesProjectTypeGuids in .csproj
SharePoint / Microsoft 365Site collection IDs, list IDs, content type IDsSharePoint web GUID

Format Reference

GUID Format Options

A GUID can be represented in several ways depending on the context. The generator above supports all common formats via the toggles:

FormatExampleUse When
Standard (default)3f2504e0-4f89-41d3-9a0c-0305e82c3301Everywhere — the RFC canonical form
Uppercase3F2504E0-4F89-41D3-9A0C-0305E82C3301COM/DCOM attributes, registry entries, Windows headers
With braces{3f2504e0-4f89-41d3-9a0c-0305e82c3301}C# Guid.Parse() input, COM IDL files, MSI packages
No hyphens3f2504e04f8941d39a0c0305e82c3301Database storage as CHAR(32), URLs, compact tokens
Uppercase + braces{3F2504E0-4F89-41D3-9A0C-0305E82C3301}C# ToString(“B”), Windows Registry, type library definitions
⚠️

Storing GUIDs in SQL Server — NEWID() vs NEWSEQUENTIALID()

NEWID() generates a fully random GUID (equivalent to UUID v4) which causes index fragmentation on clustered primary keys because values insert out of order into the B-tree. Use NEWSEQUENTIALID() for clustered index columns — it generates monotonically increasing GUIDs that prevent fragmentation, similar to how UUID v7 works in PostgreSQL. For non-clustered indexes, NEWID() is fine.

Related Tools

More UUID & GUID Tools

Looking for a specific version or format? These tools are each built for a distinct use case:

FAQ

Frequently Asked Questions

Yes. A GUID (Globally Unique Identifier) and a UUID (Universally Unique Identifier) are the same 128-bit identifier standard. Microsoft adopted the term GUID for its .NET, COM, and Windows implementations. The structure, algorithm, and string format are identical. The only practical difference is in binary storage where some COM implementations use little-endian byte order for the first three fields — the string representation is always the same.
Click the Generate GUID button at the top of this page. The GUID is created instantly in your browser using the Web Crypto API — nothing is sent to any server. It is completely free, requires no signup, and works on any device. You can also bulk-generate up to 1,000 GUIDs at once and download them as plain text, JSON, or CSV.
Guid.NewGuid() in C# generates a new random GUID using version 4 of the UUID algorithm — 122 bits of cryptographically random data. It is equivalent to uuid.uuid4() in Python, UUID.randomUUID() in Java, or crypto.randomUUID() in JavaScript. The result is a System.Guid struct that can be formatted as a string using .ToString() with format specifiers like “D” (hyphens), “B” (braces), “N” (no hyphens), or “P” (parentheses).
Yes. Every GUID generated here uses your browser’s built-in cryptographically secure random number generator (crypto.getRandomValues()), the same API used by Guid.NewGuid() in .NET and UUID.randomUUID() in Java. With 2 to the power of 122 possible values, the probability of generating a duplicate GUID is negligible at any realistic scale. The GUIDs are not logged, stored, or transmitted anywhere.
Use NEWSEQUENTIALID() for GUID columns that serve as clustered primary keys. Random GUIDs from NEWID() cause page splits and index fragmentation because new values insert at random positions in the B-tree. NEWSEQUENTIALID() generates monotonically increasing GUIDs that insert at the end of the index, preventing fragmentation — similar to how UUID v7 works in PostgreSQL. For non-clustered index columns, unique constraints, or foreign keys, NEWID() random GUIDs are fine.
Yes, and it is a common pattern in .NET applications. Use the UNIQUEIDENTIFIER data type with NEWID() as the default for non-clustered primary keys, or NEWSEQUENTIALID() for clustered primary keys to avoid index fragmentation. GUIDs as primary keys have advantages over integer sequences: they work across distributed systems without coordination, prevent clients from predicting adjacent IDs, and survive database merges and replication without conflicts. The tradeoff is storage (16 bytes vs 4 or 8 for integers) and the fragmentation risk with random GUIDs on clustered indexes.
Guid.Parse() in C# accepts all common formats: the standard 8-4-4-4-12 with hyphens, braces with hyphens {8-4-4-4-12}, parentheses (8-4-4-4-12), 32 hex digits without hyphens, and the four-field curly brace format. The most common format you will encounter in C# code is either the default with hyphens or with curly braces. Use the {Braces} toggle above to generate a GUID in the brace format ready to paste into C# attributes or COM IDL files.

Need a UUID Instead of a GUID?

A UUID and a GUID are the same standard. Our UUID generator covers all 8 versions — v4, v7, v1, v5, v6, v8, Nil, and Max — with validation, bulk export, and code examples.

Open UUID Generator