Last updated October 1, 2026
Short answer: to find old tweets from any public account, search from:username until:2015-01-01 on X (add since: and keywords to narrow it) and open the Latest tab. To search your own complete history, download your Twitter archive from Settings and privacy → Your account → Download an archive of your data, open the Your archive.html file in a browser, and search it offline.
Below are both methods step by step, what's inside the archive, and why some old posts don't turn up.
X search reaches back to the very first public post in 2006. The trick is to tell it when to look, because a plain search mostly shows recent and popular posts.
from: plus the username (no @) and an end date with until:.since: and any keywords you remember.from:nasa until:2013-01-01 from:nasa since:2012-08-01 until:2012-09-01 from:nasa curiosity since:2012-01-01 until:2013-01-01 from:nasa until:2013-01-01 filter:media from:nasa until:2013-01-01 min_faves:1000
Narrow year by year if the account posts a lot. until:doesn't include its own date, so until:2013-01-01 covers everything through December 31, 2012. The full operator list, including likes, media and language filters, is in our guide to searching tweets by date. If you don't want to type operators, our free Twitter advanced search tool builds the query for you.
The same search works on your own account: from:yourhandle until:2016-01-01. To find your very first post, look at the Joined date on your profile, search from that month to the month after, and scroll to the bottom of Latest.
For anything more than a quick lookup, download your archive. It holds every post that still existed when you requested it, plus your messages and media, and you can search it offline without any limits.
On x.com in a browser:
In the iOS or Android app, the path is Settings and privacy → Account → Your X data, under Data and permissions. After the code, tap Request data next to X.
X says it may take a few days to prepare the archive, and asks that your email address be confirmed before you request it, since the download link is sent there.
X describes the archive as a snapshot of your account “starting with your first post”, in HTML and JSON files. It includes:
It only covers your account. Nobody can download another person's archive.
Your archive.html in a web browser. It runs offline and lets you browse your posts, messages and media, and search your posts.data folder and search the posts file (tweets.js) in any text editor with Find.Developers can load the same file as data. It's JSON wrapped in a single JavaScript assignment on the first line: remove that prefix and parse the rest. Each entry includes the post text, its ID and when it was created.
| Method | Whose posts | What you need | Best for |
|---|---|---|---|
| X search with from: + until: | Any public account | An X login | Quick lookups of anyone's history |
| X Advanced Search form | Any public account | x.com in a browser, logged in | Building a search without typing operators |
| Your X archive | Only yours | Your login and a few days' wait | Your complete history, messages and media |
| Wayback Machine | Any account it saved | Nothing | Posts that were deleted or are now hidden |
| twitr.sh x_search | Any public account | A wallet or card-funded balance, no X account | Old posts in bulk, from code or an AI agent |
from: uses the current username. An old post link still works through its ID at x.com/i/status/ID.include:nativeretweets.Found the post but not its context? Paste its link into our free thread reader to read the whole thread on one page. To see what an account posted most recently without logging in, use the Twitter viewer. If an account changed its name, the Twitter ID finder turns its permanent numeric user ID back into the current handle, so you know what to put after from:. And since late 2010, a post's ID (the number at the end of its link) also encodes the date it was created.
To pull old posts in bulk, send the same operators to the twitr.sh x_searchtool. There's no X account, API key or signup:
curl -X POST https://twitr.sh/api/tools/x_search \
-H 'content-type: application/json' \
-d '{"q":"from:nasa since:2012-01-01 until:2013-01-01","queryType":"Latest","resultsLimit":20}'
# → HTTP 402 Payment Required with the exact price
# ($0.0012 per returned tweet, so about $0.024 for 20)
# → pay with any x402 or MPP wallet and send the same request again
# → 200 with the postsAgents in Claude Code, Cursor or any MCP client can call it as the x_search tool. For an account's recent posts in order, use x_timeline. For thousands of results as a downloadable dataset, use bulk export. See all tools and pricing.
Type from:username until:YYYY-MM-DD into the X search bar, for example from:nasa until:2013-01-01, and open the Latest tab. Add since: to set a start date and keywords to narrow it down. This works for any public account.
On x.com go to Settings and privacy → Your account → Download an archive of your data. In the app it's Settings and privacy → Account → Your X data. Confirm your identity with the code X sends, tap Request data, and wait for the email or notification saying it's ready.
X says it may take a few days to prepare. You get an email and, if you have the app, a push notification when it's ready. Download it while logged in to X in the same browser.
Unzip the file and open Your archive.html in a web browser. It works offline and lets you browse and search your posts. For exact text searches, open the posts file in the data folder (tweets.js) in a text editor and use Find.
According to X: your profile information, posts, Direct Messages, Moments, media you attached to posts and messages, followers and following lists, your address book, Lists, inferred interest and demographic information, and information about ads you've seen or engaged with.
No. Only the account owner can request an archive. To find another account's old posts, use X search with from: and until:, the Wayback Machine, or an API.
Check the Joined date on your profile, then search from:yourhandle since:(join date) until:(a month later) and open Latest. Scroll to the bottom for the earliest post. Your archive also lists every post from the first one on.
X says its search covers posts from any date since the first public post in 2006. Very old results can be incomplete, so if a post is missing, narrow the date range or add a word you remember from it.
It may have been deleted, the account may be protected, suspended or deactivated, or it may be a repost (add include:nativeretweets). If the account changed its username, search with the current one. Also make sure you're on the Latest tab, not Top.
Not on x.com, where search needs you to be logged in. You can check the Wayback Machine, or run the same search through the twitr.sh x_search API, which needs no X account and is paid per call.
An archive includes the posts that existed when you requested it. Some people also find a deleted-tweets file covering recent deletions, but X doesn't document what it covers. Posts deleted long before the request aren't there.