Last updated
What is a Snowflake ID?
A Snowflake ID is a 64-bit unique identifier used by Twitter, Discord, and Instagram. It encodes a timestamp, worker ID, and sequence number, allowing distributed systems to generate unique IDs without coordination.
Snowflake ID Structure
Common Snowflake ID Use Cases
- Determining when a tweet, message, or user account was created
- Querying Twitter/Discord APIs by time range using ID boundaries
- Analyzing social media data with temporal context
- Debugging distributed systems that use Snowflake-style IDs
- Verifying account creation dates for moderation purposes
- Building time-based features in Discord bots
All decoding happens entirely in your browser. Your Snowflake IDs are never transmitted to any server.
Platform Epochs
🐦 Twitter Epoch
November 4, 2010, 01:42:54 UTC (1288834974657 ms)
💬 Discord Epoch
January 1, 2015, 00:00:00 UTC (1420070400000 ms)
📷 Instagram Epoch
Unix Epoch: January 1, 1970, 00:00:00 UTC (0 ms)
Common Use Cases
- Timestamp extraction: Get exact creation time from IDs
- Chronological sorting: IDs are naturally time-ordered
- Activity analysis: Track when content was created
- Bot development: Debug timing issues in applications
- Forensic analysis: Verify content timestamps
Examples
Example 1: Decoding a Twitter Snowflake ID
Input: 1529877576591609861
Decoded components:
Platform: Twitter
Epoch: 1288834974657 ms (Nov 4, 2010 01:42:54 UTC)
Timestamp: 2022-05-26 18:00:00.123 UTC
Datacenter ID: 3
Worker ID: 7
Sequence: 5
Unix timestamp (ms): 1653580800123
Unix timestamp (s): 1653580800
This tweet was created on May 26, 2022 at 6:00 PM UTC. The datacenter ID (3) and worker ID (7) identify the specific Twitter server that generated this ID.
Example 2: Decoding a Discord Snowflake ID
Input: 175928847299117063
Decoded components:
Platform: Discord
Epoch: 1420070400000 ms (Jan 1, 2015 00:00:00 UTC)
Timestamp: 2016-04-30 11:18:25.796 UTC
Worker ID: 1
Process ID: 0
Sequence: 7
Discord Snowflake bit structure:
Bits 22-63: Timestamp (41 bits)
Bits 17-21: Worker ID (5 bits)
Bits 12-16: Process ID (5 bits)
Bits 0-11: Sequence (12 bits)
This Discord entity (message, user, channel, or server) was created on April 30, 2016. Discord uses a different epoch than Twitter (January 1, 2015 vs November 4, 2010).
Example 3: Platform Epoch Comparison
Platform epochs (milliseconds since Unix epoch):
Twitter: 1288834974657 (2010-11-04 01:42:54 UTC)
Discord: 1420070400000 (2015-01-01 00:00:00 UTC)
Instagram: 1314220021721 (2011-08-25 00:00:21 UTC)
Mastodon: 0 (uses Unix epoch directly)
Why different epochs?
Each platform chose an epoch close to their launch date.
Using a custom epoch allows the 41-bit timestamp to cover
a longer future period before overflow.
With 41 bits, a platform can generate IDs for:
2^41 milliseconds = ~69 years from the epoch
Frequently Asked Questions
Paste the Snowflake ID, select the platform (Twitter, Discord, or Instagram), and click 'Decode'. The tool extracts the embedded timestamp and shows the exact Unix timestamp in milliseconds.
Twitter/X, Discord, and Instagram use Snowflake IDs. Each platform has a different epoch: Twitter (Nov 4, 2010), Discord (Jan 1, 2015), Instagram (Unix epoch 1970).
A Snowflake ID is a 64-bit unique identifier that encodes timestamp, worker ID, and sequence number. It allows distributed systems to generate unique IDs without coordination.