Twitter ID to username, in one paste
Every X (formerly Twitter) account has two identifiers: the friendly @username a person types into the address bar, and a permanent numerical user ID that never changes when the username does. Paste that numerical ID above and Keep returns the matching @username, the avatar, the bio, and the follower stats. The reverse lookup that the official X site no longer offers without a login.
What is a Twitter snowflake ID?
"Snowflake" is the name Twitter gave its ID generation system in 2010. Every user ID, tweet ID, and direct message ID created since November 4, 2010 is a 64-bit integer with a timestamp baked into the top 41 bits. That is why X IDs are roughly time-ordered, globally unique across all of X's data centers, and decodable back to the exact millisecond they were minted.
How the 64 bits are split
- 1 bit sign bit, always 0
- 41 bits timestamp in milliseconds since the Twitter epoch (1288834974657, which is 2010-11-04 01:42:54.657 UTC)
- 5 bits data center ID (0–31)
- 5 bits worker ID inside the data center (0–31)
- 12 bits per-millisecond sequence (0–4095)
The split lets thousands of workers mint up to 4,096 IDs each per millisecond without ever colliding. The decoder above pulls each piece out of the ID you pasted.
How to decode a Twitter snowflake ID by hand
Take the 64-bit ID as an integer. Shift it right by 22 bits to drop the worker, data center, and sequence. Add the Twitter epoch 1288834974657 to the result. The total is the Unix millisecond timestamp the ID was minted at. The lower 22 bits hold the sequence (12 bits), worker ID (5 bits), and data center ID (5 bits).
What about non-snowflake user IDs?
Tweet IDs have used the snowflake format since November 4, 2010, so every tweet ID decodes cleanly to a creation timestamp. User IDs are different. X kept handing out sequential user IDs for years after the snowflake system launched, and only switched user IDs to snowflakes around 2020. @jack at ID 12, mid-era accounts like @vercel at 4686835494, and anything else with a short numeric ID is sequential, not snowflake-encoded. The decoder above flags these IDs and skips the timestamp section. Modern accounts with 17+ digit IDs decode back to the exact moment the account was created.
Twitter ID to username vs username to ID
The two lookups are mirror images of each other. If you have the @username and want the numerical ID, use the Twitter ID Finder. If you have the ID and want the @username, this page is the one to use. Both work for any public X account with no API key, login, or paid plan needed.
When you'd need a Twitter ID to username lookup
- You exported data from the X API and have author IDs but no handles
- You hit a webhook or stream payload that ships
author_idfields and want to read who posted what - You need to figure out when an old account was actually created from its ID
- You are debugging an integration where a user has been renamed and the only stable reference you have is the ID
- You have a tweet ID and want to know exactly when the tweet was posted without opening X
Frequently asked questions
Is this Twitter ID to username lookup free?
Yes. There is no sign-up, no paywall, and no per-lookup limit. Paste any numerical X user ID and the tool returns the matching @username and a full snowflake decode.
What is a Twitter snowflake ID?
"Snowflake" is the name Twitter gave its ID generation system in 2010. Every user ID, tweet ID, and direct message ID created since November 4, 2010 is a 64-bit integer with a timestamp baked into the top 41 bits. That is why X IDs are roughly time-ordered, globally unique, and decodable back to the exact millisecond they were created.
Can I decode the date from any X ID?
Tweet IDs and direct message IDs created after November 4, 2010 always decode cleanly. User IDs are different: X kept assigning sequential user IDs for years after the snowflake system launched, and only switched user IDs to the snowflake format around 2020. Older user IDs (think @jack at ID 12, or any account where the ID is under ~17 digits) do not contain a timestamp and cannot be decoded back to a join date.
How does X build the 64-bit snowflake ID?
The 64 bits are split into: 1 sign bit (always 0), 41 bits for the timestamp in milliseconds since the Twitter epoch (1288834974657), 5 bits for the data center ID, 5 bits for the worker ID inside that data center, and 12 bits for a per-millisecond sequence number. That sequence allows up to 4096 IDs per worker per millisecond.
Why not use the X API directly?
The X API requires a paid developer account and a Bearer token, and the IDs-to-username endpoint is rate-limited even on the paid tiers. This tool wraps the same lookup so you can paste an ID and get the answer with no setup.
Does it work for tweet IDs and direct message IDs?
The user lookup only works for X user IDs. The snowflake decoder works for any X ID, including tweet IDs and direct message IDs, so you can paste a tweet ID to see exactly when it was posted even though the username lookup will not match.
What if the ID is correct but no username comes back?
The account is most likely suspended, deactivated, or set to fully private. The snowflake decode is independent of the lookup, so you still get the creation date for the ID even if the profile is unavailable.
I only have the @username. Can I get the ID instead?
Yes. Use the Twitter ID Finder, the companion tool to this one. Paste an @username or profile URL and you get the numerical user ID back along with the avatar, bio, and stats.
Save posts, threads, and profiles in Keep
Keep turns the things you bookmark on X, like threads, replies, and long posts, into clean, searchable Markdown you can read later or hand to your AI agent. Connect your X account once and every new bookmark syncs automatically.