Snowflake ID FAQ
What is a Snowflake ID?
A Snowflake ID is a 64-bit unique identifier that encodes a timestamp, machine ID, and sequence number. It allows distributed systems to generate unique IDs without central coordination. Discord, Twitter/X, and Instagram all use variations of this format.
How do I convert a Twitter snowflake ID to date?
Use this online tool: paste the Twitter snowflake ID into the input field, select Twitter/X as the platform (or let the tool auto-detect), and the creation date and timestamp are shown instantly in UTC, local time, and relative format.
How do I convert a Discord snowflake to timestamp?
Paste the Discord snowflake ID into this decoder, choose Discord as the platform, and the tool displays the Unix timestamp in milliseconds plus the human-readable date and time. Works for any Discord user, message, server, or channel ID.
How do I decode a Discord ID to timestamp?
Paste the Discord ID into this tool and select "Discord" as the platform. The tool extracts the timestamp by right-shifting the ID by 22 bits and adding Discord's epoch (January 1, 2015). You'll see the exact creation date and time.
How do I decode a LinkedIn activity ID?
Take the numeric activity ID from a LinkedIn URN (e.g. 7024360000000000000), paste it above, and select LinkedIn. LinkedIn stores a millisecond Unix timestamp in the top 41 bits of the ID, so the tool reveals when the post was published.
Can I find when a Discord account was created?
Yes! Every Discord user ID contains the account creation timestamp. Just paste the user ID into this tool. This works for all Discord IDs: users, servers, channels, messages, roles, and more.
What is the difference between Discord and Twitter Snowflakes?
Both use the same 64-bit structure, but with different epochs. Discord uses January 1, 2015 as their epoch, while Twitter uses November 4, 2010. The internal bit layout for worker/process IDs may also differ slightly.
Why do Snowflake IDs look like random numbers?
They're not random. They're carefully structured. The large numbers result from packing a timestamp, machine ID, and sequence into 64 bits. The timestamp alone can be billions of milliseconds, making the numbers appear random but they're actually sequential over time.
Can I generate my own Snowflake IDs?
Yes! Use the generator section above. You can specify a custom timestamp, worker ID, and sequence number. This is useful for understanding how Snowflakes are constructed or for testing purposes.
Is my data safe using this tool?
Absolutely. This Snowflake decoder runs entirely in your browser using JavaScript. No data is sent to any server. All decoding happens locally on your device.
How do I share a decoded Snowflake ID?
The URL updates automatically with the ID and platform when you decode. Copy the link from your address bar or click the Share link button in the result section to copy the URL. Anyone opening that link will see the same decoded result.
Should I use Snowflake IDs as database primary keys?
They're a strong choice for high-write tables in distributed databases. Because the timestamp is in the high bits, Snowflake keys are roughly time-ordered, so new rows append to the right edge of a B-tree index. that keeps inserts fast and the index compact, unlike random UUIDs which scatter writes and cause page splits. Store them as a 64-bit BIGINT (not a string) to keep the index small.
How do Snowflake IDs compare to auto-increment and UUID keys in a distributed database?
Auto-increment keys need a central sequence, which becomes a bottleneck and creates a single hot range when sharded. Random UUIDs generate without coordination but destroy index locality. Snowflake IDs get the best of both: each node mints IDs independently using its worker ID (no coordination), while staying time-sortable. This is why sharded MySQL/Vitess, distributed SQL like CockroachDB and TiDB, PostgreSQL with Citus, and cloud-managed databases (Amazon Aurora, Google Cloud SQL) favor application-generated time-ordered keys.