Threads Scraper - Posts, Profiles & Replies
Pricing
from $2.40 / 1,000 records
Threads Scraper - Posts, Profiles & Replies
Scrape Meta Threads without login: the full public post history of any account, its replies and reposts, profile data and the replies under any post. Dates, engagement counts, media and links included.
Pricing
from $2.40 / 1,000 records
Rating
0.0
(0)
Developer
Ben
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
🧵 Threads Scraper - Posts, Profiles & Replies
Scrape Meta Threads without logging in: the complete public post history of any account, the replies it wrote, its reposts, its profile data, and the replies under any post. Every row has the full text, the publication time, likes, replies, reposts, quotes, shares, links, mentions and media. Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.
🔎 What is the Threads Scraper?
It is an Apify Actor that reads threads.com the way a logged-out visitor's browser does. No Threads or Instagram account, cookies or API key are needed.
A profile page shows a handful of posts before Threads asks visitors to log in. This Actor keeps reading the account's timeline page after page, back to its first post. In our tests it read National Geographic's whole public history, 1,819 posts from July 2023 to today, in a little over two minutes.
Pick one of five jobs:
| Job | Input | One row per |
|---|---|---|
| Posts | usernames | post the account published, newest first |
| Replies | usernames | reply the account wrote, with the post it answers |
| Reposts | usernames | post the account reposted, with the repost time |
| Profile data | usernames | account |
| Replies under posts | post links | reply under each post |
Put post links into Post links with the Posts job to get just those posts.
What data does it extract?
- Post:
id,code,url,text,posted_at,is_pinned,is_edited,is_reply,reply_to_author - Engagement:
likes,replies,reposts,quotes,shares - Author:
username,full_name,author_id,is_verified - Content:
mentions[],links[](real destinations, not Threads redirect links),link_title,quoted_post_url,image_urls[],video_urls[] - Conversation:
reply_to_url,reply_to_text,root_post_url,depth - Reposts:
reposted_by,reposted_at - Profile:
biography,followers,is_private,bio_links[],profile_pic_url,last_post_at,recent_avg_likes,recent_avg_replies
record_type tells the row kinds apart: post, reply, repost or profile.
⬇️ Input
| Field | Type | What it does |
|---|---|---|
mode | string | posts, replies, reposts, profiles or post_replies |
usernames | array | Usernames, @handles or profile links |
postUrls | array | Post links (threads.com or threads.net) |
maxResults | integer | Rows per username or post link, newest first. 20 by default, up to 100,000 |
postedAfter | string | Only rows from this UTC date on (YYYY-MM-DD). Reading stops at older posts |
postedBefore | string | Only rows up to this UTC date |
sort | string | Order of replies under a post: top or recent |
includeNestedReplies | boolean | Also save the answers Threads shows under each reply |
Example input
Everything two accounts posted in September 2026:
{"mode": "posts","usernames": ["natgeo", "nasa"],"maxResults": 1000,"postedAfter": "2026-09-01","postedBefore": "2026-09-30"}
Up to 2,000 replies under a post, newest first, including answers to replies:
{"mode": "post_replies","postUrls": ["https://www.threads.com/@mosseri/post/DdrY7cAAPhB"],"maxResults": 2000,"sort": "recent","includeNestedReplies": true}
⬆️ Output
A post from a timeline (real row, media link shortened):
{"record_type": "post","id": "3867248781788782365","code": "DWrOkcIlR8d","url": "https://www.threads.com/@natgeo/post/DWrOkcIlR8d","username": "natgeo","author_id": "63269174602","full_name": "National Geographic","is_verified": true,"text": "Apollo 8 astronauts captured the iconic Earthrise image, which inspired the global environmental movement. Artemis II astronauts may have the chance to recreate it more than 50 years later. Here's how they might do it: https://on.natgeo.com/eOreaO","posted_at": "2026-04-03T16:00:23+00:00","likes": 867,"replies": 8,"reposts": 54,"quotes": 2,"shares": 5,"is_reply": false,"reply_to_author": null,"is_pinned": false,"is_edited": false,"mentions": [],"links": ["https://on.natgeo.com/eOreaO"],"link_title": null,"quoted_post_url": null,"image_urls": ["https://scontent-iad6-1.cdninstagram.com/v/t51.82787-15/659913135_1795..."],"video_urls": [],"scraped_at": "2026-10-02T20:45:48.418624+00:00"}
A reply under a post:
{"record_type": "reply","id": "3993412241672459144","code": "Ddrc0aalVOI","url": "https://www.threads.com/@jonathanwthomas/post/Ddrc0aalVOI","username": "jonathanwthomas","author_id": "63470164322","full_name": "Jonathan Thomas","is_verified": false,"text": "You could just let people who actually follow us, actually see our content.","posted_at": "2026-09-24T17:44:17+00:00","likes": 154,"replies": 9,"reposts": 0,"quotes": 0,"shares": 1,"is_reply": true,"reply_to_author": "mosseri","is_pinned": false,"is_edited": false,"mentions": [],"links": [],"link_title": null,"quoted_post_url": null,"image_urls": [],"video_urls": [],"root_post_url": "https://www.threads.com/@mosseri/post/DdrY7cAAPhB","reply_to_url": "https://www.threads.com/@mosseri/post/DdrY7cAAPhB","depth": 1,"scraped_at": "2026-10-02T20:55:13.166663+00:00"}
A profile row:
{"record_type": "profile","id": "28829152388","url": "https://www.threads.com/@nasa","username": "nasa","full_name": "NASA","biography": "Making the seemingly impossible, possible. ✨","followers": 12753599,"is_verified": true,"is_private": false,"bio_links": [],"profile_pic_url": "https://scontent-atl3-2.cdninstagram.com/v/t51.82787-19/669747085_1808...","last_post_at": "2026-10-01T17:12:26+00:00","recent_posts_sampled": 4,"recent_avg_likes": 2882.8,"recent_avg_replies": 74,"text": null,"posted_at": null,"scraped_at": "2026-10-02T20:45:35.720285+00:00"}
The two averages come from the newest posts shown on the profile page, and recent_posts_sampled says how many that was. A run also writes a SUMMARY record with the accounts or posts that were not found, private or not answered.
💰 How much does it cost?
You pay per saved row, plus a tiny start fee per run.
| Apify plan | Price per 1,000 rows |
|---|---|
| Free | $3.00 |
| Starter | $2.70 |
| Scale | $2.55 |
| Business and above | $2.40 |
The default run (20 posts of one account) costs 6 cents. Set Maximum cost per run in the run options and the Actor stops saving at that amount and says so in the status message.
💡 Use cases
- 📊 Brand and competitor monitoring: export every post of the accounts you watch, schedule a daily run with
postedAfter, and chart likes and replies over time. - 🗣️ Audience research: collect the replies under a launch post or a competitor's announcement and run sentiment or topic analysis on them.
- 🤝 Influencer vetting: compare followers with recent likes and replies per post, and check when an account last posted.
- 🧠 Datasets for AI and research: full post histories with dates and engagement, ready for fine-tuning, RAG or academic work.
❓ FAQ
Do I need a Threads or Instagram account? No. The Actor never logs in and needs no cookies.
How far back does it go? To the account's first public post. Threads opened in July 2023, so that is the oldest a timeline can reach.
How many replies under a post can I get? In top order Threads ranks about a thousand candidates, which gave about 900 replies on a post with 2,446. Newest-first order (sort: recent) reached about 1,800 on the same post. The rest are replies Threads hides from logged-out visitors. The status message tells you when top order ended early.
Can it search Threads by keyword? Not yet. Logged-out visitors only get about 20 search results per keyword, which is too few to sell as a search scraper. Collect the accounts that matter to your topic instead.
What happens with private, deleted or misspelled accounts? They are skipped and listed in the status message and in the SUMMARY record. The run still succeeds with the rows it could read. A private account still returns its profile row.
How fast is it? About 15 posts per request, around 14 posts per second on a long timeline; 1,819 posts took 128 seconds. Replies under a post come about 90 per request; 913 took 28 seconds. Profile data takes one to two seconds per account.
What if Threads slows the Actor down? Threads limits how many requests one address may send. When that happens the Actor continues from the same place through a new residential address, so a long export does not start over.
Does maxResults count per account or per run? Per username or post link. A run with three usernames and maxResults: 100 can save up to 300 rows. To cap the whole run, set Maximum cost per run.
Is it legal to scrape Threads? The Actor reads only what Threads shows publicly to any visitor and does not log in. Posts and profiles contain personal data, so GDPR, CCPA and similar rules apply to how you store and use them, and Meta's terms apply to you as well. If in doubt, ask a lawyer.
Something is missing or broken? Open an issue on the Actor's Issues tab with the run ID. Issues are answered within one business day.
🔗 You might also like
- Threads Profile Scraper
- Threads User Posts Scraper
- Threads Replies Scraper
- Instagram Intelligence Scraper
- Reddit Scraper
- YouTube Transcript Scraper
Keywords: threads scraper, meta threads scraper, threads.net scraper, threads.com scraper, scrape threads posts, threads posts scraper, threads profile scraper, threads replies scraper, threads reposts, threads api alternative, threads data export, threads to csv, threads without login, threads post history, threads followers, threads engagement data, social media scraper, threads monitoring