Snowflake ID Decoder
Other Discord Tools
Decode Twitter & Discord Snowflake ID to Date
What is a Snowflake ID decoder?
A Snowflake ID decoder converts numeric IDs used by Twitter/X, Discord, and Instagram into human-readable information. Every Snowflake ID contains an embedded creation timestamp, which means you can determine exactly when any tweet, Discord user, message, server, or channel was created just from its ID number. Paste any ID into the decoder above to instantly extract the creation date and time.
How do I decode a Twitter Snowflake ID to a date?
Copy any tweet ID, user ID, or DM ID from Twitter/X and paste it into the decoder. The tool extracts the 41-bit timestamp portion of the Snowflake and converts it using Twitter's epoch (November 4, 2010). You'll see the exact creation date and time in UTC, down to the millisecond. This works for any Twitter object that uses a Snowflake ID, including tweets, accounts, lists, and Spaces.
How do I find a Discord user's account creation date from their ID?
Enable Developer Mode in Discord (Settings > Advanced > Developer Mode), right-click any user and select "Copy User ID." Paste the ID into the Snowflake decoder. The tool displays the exact account creation date and time, letting you verify user histories, identify new accounts, or audit server members. This works for user IDs, message IDs, server IDs, and channel IDs.
What information can I extract from a Snowflake ID?
From any valid Snowflake ID, the decoder reveals:
- Creation timestamp - exact date and time the resource was created (UTC)
- Worker ID - which machine or process generated the ID
- Process ID - internal process identifier
- Increment/sequence - distinguishes IDs created in the same millisecond
The most useful field is the timestamp, which tells you precisely when a tweet was posted, when a Discord account was made, or when a message was sent.
Can I decode Instagram Snowflake IDs?
Instagram uses a modified Snowflake scheme for posts, stories, and reels. The decoder supports Instagram's ID format, which similarly encodes a creation timestamp but uses different bit allocations (more bits for shard ID). Paste an Instagram post ID to extract its creation date.
What are common use-cases for decoding Snowflake IDs?
- Verify account age - Check when a Discord or Twitter account was created to spot alt accounts, bots, or impersonators
- Date a tweet - Determine when a tweet was posted without needing the Twitter UI
- Audit Discord servers - See when channels, roles, or messages were created
- Investigate suspicious activity - Cross-reference creation dates of accounts in giveaways or role management
- Debug distributed systems - Analyze worker and sequence data for applications using Snowflake-style IDs
Does the decoder work for all Discord objects?
Yes. The decoder processes server IDs, user IDs, message IDs, channel IDs, role IDs, and webhook IDs - any identifier using Discord's standard 64-bit Snowflake format. Note that Discord Timestamp syntax in messages (like <t:1234567890:R>) is a different feature and not a Snowflake ID.
How accurate is the timestamp from a Snowflake ID?
The timestamp is always highly accurate; it is taken directly from the 41 most significant bits in the Snowflake and represents milliseconds since a fixed epoch. However, timezones may need adjustment.
What are some common use-cases for a Snowflake decoder?
- Auditing the age of Discord or Twitter accounts for giveaways or role management
- Checking the time a Discord message, user, channel or server was created
- Tracking the rollout of new features or activities chronologically
- Debugging distributed system behaviors by analyzing sequence and machine ID data
Decoding Snowflake IDs provides actionable insights for community management, data validation, and platform transparency.
How do I decode a Snowflake ID used by Discord or X in TypeScript or JavaScript?
Here is a TypeScript function you can use to locally decode Twitter/X and Discord Snowflake IDs:
function decodeSnowflake(id: string, epochType: "TWITTER"|"DISCORD" = "DISCORD") {
const snowflake = BigInt(id);
return {
timestamp: Number((snowflake >> 22n) + epochType === "TWITTER" ? 1288834974657n : 1420070400000n),
workerId: Number((snowflake >> 17n) & 0x1Fn),
processId: Number((snowflake >> 12n) & 0x1Fn),
increment: Number(snowflake & 0xFFFn),
};
}
This tool is not in any way associated or endorsed by Discord or X.