How to Scrape a Twitter Thread and All Its Replies
To scrape a Twitter thread and all its replies, run apidojo's Twitter Scraper Unlimited on Apify with conversation_id: followed by the first post's ID in searchTerms.

To scrape a Twitter thread and all its replies, run apidojo’s Twitter Scraper Unlimited on Apify with conversation_id: followed by the first post’s ID in searchTerms. A conversation query costs $0.016 and includes about 40 replies; each further reply costs from $0.0004.
This guide covers whole conversations, author-only threads, several threads at once and the costs of each. Searching replies by hand is covered in how to search Twitter replies. Every other collection task is mapped in how to scrape Twitter (X) data.
Which apidojo Actor Scrapes Replies?
Two apidojo actors scrape replies: Twitter Scraper Unlimited for conversation searches, and Twitter Replies Scraper for replies by post ID or URL. Tweet Scraper V2 does not scrape conversations or replies to specific posts; its documentation directs that job to Twitter Scraper Unlimited (Apify).
| Actor | Input | Best for |
|---|---|---|
| Twitter Scraper Unlimited | conversation_id:ID in searchTerms |
Full conversations, filtered replies, author threads |
| Twitter Replies Scraper | Post ID or URL | Every reply to specific posts |
How Do You Scrape Every Reply to a Tweet?
You scrape every reply to a tweet by taking the post ID from its URL and running conversation_id: with that ID. A conversation ID matches every post in the thread, including replies to replies (twitter-advanced-search reference). Listed below are the 4 steps.
- Copy the post URL and take the number after
/status/. - Open Twitter Scraper Unlimited.
- Enter the query in
searchTermswithsortset toLatest. - Run and export the replies as JSON, CSV or Excel.
{
"searchTerms": ["conversation_id:1728108619189874825"],
"sort": "Latest"
}
Finding a post from its ID is covered in how to view a tweet by ID on X.
How Do You Scrape Only the Author’s Thread?
To scrape only the author’s own thread, add from: and the author’s handle to the conversation query. conversation_id:ID from:username keeps the author’s posts in that conversation and drops everyone else’s replies. from:username filter:self_threads returns the author’s self-replies across all their threads (twitter-advanced-search reference).
How Do You Filter Replies in a Thread?
You filter replies by adding operators to the conversation query, exactly as in X search. Listed below are the 4 most useful filters, including the hashtag example from the actor’s documentation (Apify).
| Keep | Query |
|---|---|
| Replies with a hashtag | conversation_id:ID #AI |
| Replies with a keyword | conversation_id:ID refund |
| Popular replies | conversation_id:ID min_faves:50 |
| Replies from verified accounts | conversation_id:ID filter:verified |
How Do You Scrape Several Threads With Python?
Put one conversation_id: query per thread in searchTerms and read the results from the run’s dataset. Batch size sets the per-item price: up to 5 queries is Tier 1 at $0.0004 per item (Apify).
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("apidojo/twitter-scraper-lite").call(run_input={
"searchTerms": [
"conversation_id:1728108619189874825",
"conversation_id:1140437409710116865",
],
"sort": "Latest",
})
replies = {i["id"]: i for i in client.dataset(run.default_dataset_id).iterate_items()}
for r in replies.values():
print(r["author"]["userName"], r["likeCount"], r["text"][:80])
The full Python setup is in how to collect tweets with Python.
What Does Scraping a Thread Cost?
A thread costs $0.016 per conversation query, which includes the first 2 pages (about 40 replies), plus $0.0004 per further reply in a batch of up to 5 queries. A thread with 1,040 replies costs about $0.016 plus 1,000 replies at $0.0004, or $0.42 (Apify).
| Batch size | Price per item |
|---|---|
| Up to 5 queries | $0.0004 |
| 6 to 10 queries | $0.0008 |
| 11 to 30 queries | $0.0012 |
| 31 to 100 queries | $0.0016 |
| More than 100 queries | $0.002 |
This pricing applies on paid Apify plans; free plan users run in demo mode, up to 5 runs a month with 10 items each.
Questions people ask
Does conversation_id: include replies to replies?
Yes, it matches every post in the conversation at every reply level.
Can you scrape replies from a protected account?
No, protected replies are visible only to approved followers and are not returned.
Why are some replies missing?
The actors return what X serves, and X can filter or hide some replies; the documentation notes shadow-banned or filtered posts are outside their control.
Where do you start?
At how to scrape Twitter data in 2026 or the apidojo Twitter Scraper.