Threads Scraper - Profile Posts, Search & Hashtags, No Login
Pricing
from $4.25 / 1,000 post delivereds
Threads Scraper - Profile Posts, Search & Hashtags, No Login
Scrape Meta Threads (threads.com, threads.net) without login: every public post of a profile, keyword and #hashtag search (top or recent), posts by link. Text, date, likes, replies, reposts, quotes, images, videos, mentions and author. Only new posts on schedules. US$ 5 per 1,000.
Pricing
from $4.25 / 1,000 post delivereds
Rating
0.0
(0)
Developer
Scrapewise Data
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
10 hours ago
Last modified
Categories
Share
Threads Scraper
Scrape Meta Threads (threads.com, formerly threads.net) without login or cookies. Get every public post of a profile, page after page, search any keyword or #hashtag (top or recent), or open posts by link. Each post comes as one row with its text, date, likes, replies, reposts, quotes, images, videos, hashtags, mentions, links and the author's username, name and verified badge. Export as JSON, CSV or Excel, or read it from the Apify API.
At a glance
| Your Apify plan | Price per 1,000 posts |
|---|---|
| Free | US$ 5.00 |
| Bronze | US$ 4.75 |
| Silver | US$ 4.50 |
| Gold and above | US$ 4.25 |
- No monthly fee, no start fee. Error rows and duplicates are free, and there is no Apify compute bill on top.
- Profiles: all public posts, newest first, paged (not only the first 10 or 20). Replies to other people are left out by default and can be turned on.
- Search: keywords and #hashtags,
toporrecent, and every row keeps the keyword that found it. - Post links: any
threads.com/@user/post/CODE(threads.net links work too). - Engagement as numbers: likes, replies, reposts and quotes on every post.
- 30 fields per row, listed in the field reference.
onlyNewfor schedules: a daily run delivers, and charges, only the posts published since the last run.
What you can do with it
- Brand and competitor monitoring: every post of the accounts you follow, on a schedule, with engagement.
- Trend and topic research: the newest posts for a keyword or hashtag with
searchSort: recent. - Influencer analysis: posting frequency, media mix and engagement per post for any public profile.
- Content research: which formats (text, image, video, carousel) get the most replies and reposts.
- Datasets for AI and social listening: clean text with hashtags, mentions and links, ready for sentiment analysis or an LLM prompt.
Input
Two profiles, one hashtag sorted by recent, up to 200 posts each:
{ "usernames": ["nasa", "meta"], "searchQueries": ["#worldcup"], "searchSort": "recent", "maxItems": 200 }
Two specific posts by link:
{ "postUrls": ["https://www.threads.com/@zuck/post/Dd1MqfcG0aH", "https://www.threads.net/@zuck/post/DeZtp-TkQHh"] }
A profile's own posts plus its replies under other people's posts:
{ "usernames": ["zuck"], "excludeReplies": false, "maxItems": 100 }
| Field | What it does |
|---|---|
usernames | Usernames or profile links (zuck, @nasa, https://www.threads.com/@meta). Also profiles, profileUrls |
searchQueries | Keywords or #hashtags. Also keywords, queries |
searchSort | top (default) or recent |
postUrls | Post links. Also urls, startUrls |
maxItems | Max posts per profile or keyword (default 50). Also maxPostsPerSource |
excludeReplies | Keep only the profile's own posts (default on) |
onlyNew | Only posts not delivered in earlier runs (default off), for schedules |
proxyConfiguration | Apify datacenter proxy by default, which Threads accepts |
An empty input runs an example profile, so you can see the output first.
Output
One real row, profile zuck, collected on 2026-10-15 (image link shortened):
{"type": "post","id": "4006434140014576097","code": "DeZtp-TkQHh","url": "https://www.threads.com/@zuck/post/DeZtp-TkQHh","text": "Introducing Muse Wonder, our new family of frontier models with state of the art performance for personal and professional agentic work.","publishedAt": "2026-10-12T16:56:29Z","likeCount": 1966,"replyCount": 329,"repostCount": 154,"quoteCount": 56,"isReply": false,"replyToUsername": null,"isRepost": false,"imageUrls": ["https://scontent-xxc1-1.cdninstagram.com/v/t51.82787-15/...webp"],"videoUrls": [],"mediaType": 1,"hashtags": [],"mentions": [],"links": [],"authorUsername": "zuck","authorName": "Mark Zuckerberg","authorIsVerified": true,"authorUrl": "https://www.threads.com/@zuck","source": "profile:zuck","scrapedAt": "2026-10-15T18:17:32Z","errorCode": null}
In a sample of 242 posts from our last 27 runs, 64% were text only, 14% images, 13% carousels and 9% videos; 26% had a link and 10% mentioned another account.
Field reference
| Field | What it is |
|---|---|
type | post, or error for a free error row |
id, code, url | Threads post id, short code and link |
text | Full text of the post |
publishedAt | Publication date and time, ISO 8601 in UTC |
likeCount, replyCount, repostCount, quoteCount | Engagement numbers |
isReply, replyToUsername | The post is a reply, and to whom |
isRepost | The post is a repost of another post |
quotedPostCode | Code of the quoted post, when Threads sends it |
imageUrls | Up to 10 image links (every image of a carousel) |
videoUrls | Up to 5 video links |
mediaType | Threads media code: 19 text only, 1 image, 2 video, 8 carousel |
hashtags | Hashtags in the text, without # |
mentions | Usernames mentioned in the text |
links | Links in the text |
language | Language code, when Threads sends it (usually empty for logged-out pages) |
authorUsername, authorName, authorUrl | Who posted it |
authorIsVerified | Verified badge |
authorFollowers | Follower count, when Threads sends it (usually empty for logged-out pages) |
source | What produced the row: profile:<user>, search:<keyword> or the post link |
scrapedAt | When the row was collected |
error, errorCode | Empty on a post; filled on a free error row |
Error rows (never charged)
| errorCode | Meaning |
|---|---|
PROFILE_NOT_FOUND | No public profile with this username |
POST_NOT_FOUND | The post was deleted or is not public |
INVALID_URL | Not a Threads post link |
NO_RESULTS | Nothing public for this input |
BLOCKED | Threads did not answer after retries; run again |
NOT_REACHED | The run timeout arrived before this input |
UNEXPECTED | Something unforeseen broke; only that input is lost |
Schedule it daily: only new posts
Turn on onlyNew, save the input as a Task and attach a Schedule. The Actor remembers which posts of each profile
and keyword it already delivered, in a Key-Value Store named threads-scraper-only-new in your own Apify account,
so every run delivers, and charges, only the posts published since the last one. Profiles stop paging at the first
post you already have, so a quiet day is one request and costs nothing for results; the run ends green with the
status "No new posts since the last run". Delete the store to start over.
{ "usernames": ["nasa"], "searchQueries": ["#worldcup"], "searchSort": "recent", "maxItems": 50, "onlyNew": true }
Integrations, scheduling and AI agents
- Schedule the input as a Task in Apify schedules, with
onlyNewon, and each run bills only new posts. - Export as JSON, CSV, Excel, XML or HTML, or read the dataset from the Apify API.
- Connect it to Make, n8n, Zapier, Google Sheets, Slack or a webhook through Apify integrations, so new posts land where your team reads them.
- AI agents: the Actor works as a tool through the Apify MCP server in Claude, ChatGPT, Cursor and other MCP clients, for example "get the last 50 posts of these three brands on Threads and compare their engagement".
- API call:
scrapewise/threads-scraperwith the Apify API or the Python and JavaScript clients.
FAQ
Do I need a Threads or Instagram account? No. The Actor reads public pages logged out, with no cookies.
How many posts can I get from a profile?
All public posts, newest first, up to maxItems per profile. Raise maxItems for a full history.
How many posts does a keyword search return?
What Threads shows logged-out visitors, about 25 to 35 posts per keyword. Use several keywords, or schedule a
recent search often with onlyNew and the dataset grows every run.
How much does it cost? 500 posts of a profile cost US$ 2.50 on the Free plan and US$ 2.13 on Gold. Error rows and duplicates are free.
Can I download the images and videos?
Yes, from imageUrls and videoUrls. The links are signed by Meta and expire, so download them within a few hours.
Limitations
- Search returns what Threads shows logged-out visitors, about 25 to 35 posts per keyword.
- Follower counts and language are filled only when Threads sends them on public pages, which is rare.
- Media links are signed by Meta; download files within a few hours.
- This Actor reads public posts only. Independent tool, not affiliated with Meta.
Changelog
- 16 Oct 2026: price per plan (US$ 5.00 Free down to US$ 4.25 Gold and above), field reference with the media codes, more input examples and an integrations section on this page.
- 2026-10-04:
onlyNewoption for scheduled runs: posts delivered in earlier runs are skipped, not charged and not counted inmaxItems. - 2026-09-30, 0.1: first release. Profile posts with pagination, keyword and hashtag search (top or recent), post links, free error rows.