Discord Snowflake ID Format

Learn how Discord Snowflake IDs encode creation time, worker data, process data, and sequence numbers inside a 64-bit integer.

Overview

Every Discord user, server, channel, role, and message is identified by a numeric ID. That ID is not random. Discord uses a Snowflake format, a 64-bit integer structure that encodes time and a small amount of internal metadata.

This is why a Discord ID lookup tool can calculate an exact creation date without needing private account access.

Discord Snowflake Bit Layout

A Discord Snowflake contains four segments:

SegmentBitsPurpose
Timestamp42Milliseconds since the Discord epoch
Worker ID5Internal machine identifier
Process ID5Internal process identifier
Increment12Sequence number for IDs created in the same millisecond

The important part for lookup tools is the first 42 bits. They store the timestamp.

Discord Epoch

Discord counts time from its own epoch rather than from the Unix epoch.

  • Discord epoch: 2015-01-01 00:00:00 UTC
  • Discord epoch in Unix milliseconds: 1420070400000

To calculate the real creation time:

  1. right-shift the Snowflake by 22 bits
  2. add the Discord epoch
  3. interpret the result as Unix milliseconds

Why This Matters for Account Age

Because the timestamp is built into the ID itself, the creation date is:

  • exact to the millisecond
  • stable over time
  • independent of usernames, avatars, or display names

That makes the Snowflake the most reliable way to estimate when a Discord account or object was created.

What a Snowflake Can and Cannot Tell You

A Snowflake can tell you:

  • when an account or object was created
  • whether two objects were created close together in time
  • whether an ID belongs to the general Discord Snowflake format

A Snowflake cannot tell you:

  • the email address of the user
  • their private messages
  • their IP address
  • whether they currently own Nitro

Those details are not encoded in the ID.

Examples of Objects That Use Snowflakes

The same Snowflake structure is used for:

  • user IDs
  • guild or server IDs
  • channel IDs
  • role IDs
  • message IDs
  • webhook IDs
  • bot account IDs

This is why an account age checker can also work as a server creation date checker or message timestamp decoder.

Practical Use Cases

People commonly decode Snowflakes to:

  • estimate account age during moderation
  • identify newly created spam or raid accounts
  • verify when a server or channel was created
  • investigate the order of events in community incidents