Discord Snowflake Decoder
Decode any Discord ID into its creation date, timestamp formats and Snowflake components. Works for users, messages, servers and channels.
Decoded locally in your browser. Your ID is never sent to a server.
Decoded values
Snowflake details
Your decoded values will appear here
Paste a Discord ID above or try the example to see its creation date, timestamp formats and snowflake internals.
What Is a Discord Snowflake?
A Discord Snowflake is the unique numeric ID Discord gives to almost everything on the platform, including user accounts, messages, servers, channels and roles. A standard snowflake is a 64-bit integer that packs a creation timestamp together with a worker, a process and a counter.
Because the timestamp is part of the number, you can work out when something was created just by decoding its ID. No lookup on Discord’s servers and no API request is needed for that step.
| Field | Bits | Position | Purpose |
|---|---|---|---|
| Timestamp | 42 | bits 63–22 | Milliseconds since the Discord epoch |
| Worker ID | 5 | bits 21–17 | Internal worker value |
| Process ID | 5 | bits 16–12 | Internal process value |
| Increment | 12 | bits 11–0 | Counter for IDs made in the same millisecond |
How to Decode a Discord ID
- 1
Enable Developer Mode
Open Discord, go to User Settings → Advanced and switch on Developer Mode. Menu names can vary slightly between desktop, web and mobile.
- 2
Copy the ID
Right-click (or long-press on mobile) a user, message, server, channel or role and choose Copy ID. For a message, use the Copy Message ID option.
- 3
Paste it into the decoder
Paste the number into the field above. Results appear instantly, with no login, bot token or Discord API call.
- 4
Copy the format you need
Use the copy buttons for your local time, UTC, ISO 8601, Unix time or a ready-made Discord timestamp tag.
The decoder works with standard Discord snowflake IDs and never asks for your Discord login, password or bot token.
What Can You Find From a Discord ID?
The date you get always belongs to the object the ID identifies: a user ID gives the account’s creation time, a message ID gives the message’s time, and so on.
Account creation date
Decode a user ID to see when that Discord account was registered and how old it is.
Limit: It does not show activity, renames or whether the account still exists.
Message timestamp
Decode a message ID to get the exact moment the message was sent, down to the millisecond.
Limit: It does not reveal edits or deletions, and it is not a legal proof of authorship.
Server creation date
Decode a server (guild) ID to find when the server was created.
Limit: Ownership may have changed and the server may have been renamed since then.
Channel, role and emoji dates
Channels, roles, emojis, webhooks and other objects use the same format and decode the same way.
Limit: The date is when the object was created, not when it was last modified.
A snowflake decoder shows when an ID was created. It cannot verify who owns an account, whether it is still active, or anything private such as email addresses, IP addresses or messages.
Understanding the Decoded Values
- Creation timestamp
- The moment the object was created, shown in your local time zone and in UTC.
- Unix timestamp
- The same moment as seconds or milliseconds since 1 January 1970 UTC. Best for code and databases.
- ISO 8601
- A standard text format for date and time. Best for APIs, logs and data exchange.
- Discord timestamp tag
- Markdown such as <t:1462015105:F> that Discord renders as a date in every reader’s own time zone.
- Worker ID and process ID
- Internal 5-bit values inside the snowflake. They are part of the format, not a public directory of Discord machines.
- Increment
- A 12-bit counter that keeps IDs unique when several are generated in the same millisecond by the same process.
How Discord Snowflake Timestamp Conversion Works
The timestamp lives in the top 42 bits of the ID. To recover it, shift the ID right by 22 bits to drop the worker, process and increment, then add Discord’s custom epoch, 1 January 2015 at 00:00:00 UTC.
unix_ms = (snowflake >> 22) + 1420070400000Worked example
Using the example ID 175928847299117063:
- 1. Shift right by 22 bits: 175928847299117063 >> 22 = 41944705796
- 2. Add the epoch: 41944705796 + 1420070400000 = 1462015105796
- 3. Convert the Unix milliseconds to a date: 2016-04-30T11:18:25.796Z
- 4. The low 22 bits give worker 1, process 0 and increment 7.
In JavaScript
const DISCORD_EPOCH = 1420070400000n;
function snowflakeToDate(id) {
// BigInt is required: snowflakes exceed Number.MAX_SAFE_INTEGER
return new Date(Number((BigInt(id) >> 22n) + DISCORD_EPOCH));
}
snowflakeToDate('175928847299117063').toISOString();
// "2016-04-30T11:18:25.796Z"Use BigInt (or a string) for IDs. Storing a snowflake in a regular JavaScript number loses precision and gives a wrong date.
Frequently Asked Questions
What is a Discord Snowflake Decoder?
A Discord Snowflake Decoder converts a Discord ID into the creation timestamp embedded inside it and shows the other fields packed into the number: worker ID, process ID and increment. It is useful for checking when a user account, message, server or channel was created.
How do I find a Discord account creation date?
Turn on Developer Mode, right-click the user and choose Copy User ID, then paste it into the decoder. The decoded timestamp is the moment that account was created. The tool also shows the account's age in years, months and days.
How do I convert a Discord ID to a date?
Shift the ID right by 22 bits and add 1420070400000 (the Discord epoch, 1 January 2015 UTC). The result is a Unix timestamp in milliseconds, which you can turn into a date. This decoder does exactly that and also shows UTC, your local time, ISO 8601 and Unix seconds.
Can I decode a Discord ID without the Discord API?
Yes. The timestamp is stored inside the ID itself, so it can be calculated locally with simple arithmetic. This tool runs entirely in your browser and never sends the ID anywhere. Retrieving other details about an object, such as a username or server name, is a separate task that needs the Discord API.
Can I decode a message ID, server ID or channel ID?
Yes. Standard Discord snowflakes use the same structure for users, messages, servers (guilds), channels, roles and more. The decoded timestamp is the creation time of whichever object the ID belongs to.
Does decoding a Discord ID reveal personal information?
No. Decoding only exposes the timestamp and the internal bit fields already contained in the ID. It does not reveal an email address, password, IP address, location or private messages, and it can't prove who owns an account.
What is the difference between Unix time and ISO 8601?
Unix time counts seconds (or milliseconds) since 1 January 1970 UTC, which suits code and databases. ISO 8601 writes the same moment as readable text, for example 2016-04-30T11:18:25.796Z, which suits APIs and logs.
Why does the creation time differ from the UTC time?
The first value is converted to your device's time zone, while the UTC value uses Coordinated Universal Time. They show the same instant with different clock readings.
What do worker ID, process ID and increment mean?
They are bit fields in the snowflake: 5 bits for an internal worker, 5 bits for an internal process and a 12-bit counter that separates IDs generated in the same millisecond. They are internal values and are not a reliable way to identify a physical machine or locate Discord infrastructure.
How accurate is the decoded creation date?
The timestamp is stored with millisecond precision and is generated by Discord when the object is created, so it is reliable for when an ID was issued. It does not tell you whether the account is still active, was renamed, or changed owners.
Why does my ID fail to decode?
Discord IDs are numbers of roughly 17 to 20 digits. Make sure you copied the ID itself and not a username, a tag, or a Unix timestamp, and that you enabled Developer Mode before using Copy ID. Values that do not fit in 64 bits are also rejected.
Is this Discord Snowflake Decoder free?
Yes. It is free, needs no login, no password and no bot token, and you can decode as many IDs as you like.