GUID Generator
Your new GUID is ready below, in the uppercase, braced style Windows uses. ClickTap Copy to use it, or Generate for a fresh one.
- Free, no sign-up
- Follows the official RFC 9562 standard
Need more? Make them in bulkGenerate GUID in bulk
Make up to 10,000 GUIDs at once and save them as a file. Three quick steps.
Enter a number from 1 to 10,000.
What is a GUID?
A GUID is Microsoft's name for a UUID. It is the same 128-bit ID, often written in uppercase inside curly braces.
GUID stands for Globally Unique Identifier. It follows the same standard as a UUID, so any UUID is a valid GUID and the other way round. When .NET makes a new one with Guid.NewGuid(), you get a random UUID v4.
You see GUIDs across Windows: registry keys, COM class IDs, Visual Studio project files and SQL Server tables. The braces and capitals are only a writing style. They do not change the value.
What a GUID looks like
Here is the GUID you just made, split into its parts. ClickTap Generate above and watch it change.
- The 4 means version 4, the random kind. It is always in this spot.
- This digit is always 8, 9, A or B. It marks the standard layout.
- Everything else is random: 122 bits in total.
When to use a GUID
Good for
- IDs in .NET, C# and PowerShell code
- SQL Server uniqueidentifier columns
- Registry keys, COM classes and project files
- Config files that expect the {…} style
Make a GUID in code
Guid id = Guid.NewGuid();
Console.WriteLine(id.ToString("D")); // 3f2b8c1e-9a4d-4e7b-b1c2-5d6e7f8a9b0c
Console.WriteLine(id.ToString("N")); // 3f2b8c1e9a4d4e7bb1c25d6e7f8a9b0c
Console.WriteLine(id.ToString("B")); // {3f2b8c1e-9a4d-4e7b-b1c2-5d6e7f8a9b0c}
Console.WriteLine(id.ToString("P")); // (3f2b8c1e-9a4d-4e7b-b1c2-5d6e7f8a9b0c)
Console.WriteLine(id.ToString("B").ToUpperInvariant()); // registry styleBuilt into .NET. ToString() writes lowercase, and "D" is the default format.
New-Guid
# Or as text, registry style:
[guid]::NewGuid().ToString('B').ToUpper()New-Guid needs PowerShell 5.0 or later. [guid]::NewGuid() works in every version.
SELECT NEWID();
CREATE TABLE Orders (
Id UNIQUEIDENTIFIER NOT NULL DEFAULT NEWSEQUENTIALID() PRIMARY KEY,
Total DECIMAL(10, 2) NOT NULL
);NEWID() makes a random GUID. NEWSEQUENTIALID() only works as a column default.
const guid = '{' + crypto.randomUUID().toUpperCase() + '}';
console.log(guid);Built into modern browsers and Node.js.
import uuid
guid = '{' + str(uuid.uuid4()).upper() + '}'
print(guid)The uuid module ships with Python.
GUID vs UUID v4, UUID v7 and ULID
Questions people ask
Is a GUID the same as a UUID?
Yes. Both are 128-bit IDs in the same format. GUID is the name Microsoft uses. See GUID vs UUID for the small differences in how they are written and stored.
What do the .NET formats D, N, B and P mean?
They are ways to write the same GUID. D has hyphens (the default), N is 32 digits with no hyphens, B adds curly braces and P adds round brackets. Pass the letter to ToString(), such as id.ToString("B").
Why are the bytes of my GUID in a different order?
.NET's Guid.ToByteArray() stores the first three groups back to front (little-endian), so the bytes do not match the text. Other tools read the bytes in text order. In .NET 8 and later, ToByteArray(true) gives the standard order.
Should I use NEWID() or NEWSEQUENTIALID() in SQL Server?
NEWID() is random, so new rows land all over the index. NEWSEQUENTIALID() counts upward and keeps inserts tidy, but its values can be guessed and can restart lower after Windows restarts. For a sortable ID made in your app, look at UUID v7.
Uppercase or lowercase?
Both are the same GUID. Windows tools often show uppercase, while .NET and most other systems write lowercase. Every major parser accepts either.


