Threads Scraper (No Cookies) avatar

Threads Scraper (No Cookies)

Pricing

$1.50 / 1,000 results

Go to Apify Store
Threads Scraper (No Cookies)

Threads Scraper (No Cookies)

Scrapes public Threads profiles, their latest posts, single posts with their replies, and keyword or hashtag searches, without login or cookies.

Pricing

$1.50 / 1,000 results

Rating

0.0

(0)

Developer

Mina

Mina

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Share

What does Threads Scraper (No Cookies) do?

Threads Scraper (No Cookies) collects public data from Threads, Meta's conversation app, without a login, cookies or an account. Paste profile links to get each profile (username, full name, bio, follower count, verified badge, profile picture and bio links) with its newest posts. Paste post links to get a post with its replies, or search by keyword or #hashtag. Every post comes with its text, date, likes, replies, reposts, quotes, shares, photos, videos, carousel items, links, mentions and topic tag. It also says whether the post is a reply or a quote, with the quoted post attached.

Try it with the prefilled profiles: open the Actor, click Start, and two profiles with 10 posts each arrive within seconds. Because it runs on the Apify platform, you also get API access, scheduled runs, integrations (Google Sheets, Make, Zapier, webhooks), run monitoring and automatic retries through Apify Proxy whenever Threads refuses a request.

Why scrape Threads?

  • Social listening and brand monitoring: follow what brands, creators and journalists post on Threads, and how many likes, replies and reposts each post earns.
  • Influencer research: compare accounts by follower count, verified badge and engagement per post.
  • Customer feedback: collect the replies under a brand's or a creator's post, top replies or newest first.
  • Trend and topic research: search keywords and hashtags, or open a topic tag page, and save the posts Threads shows for them.
  • Archiving and AI datasets: save a profile's public history back to its first post, with text, links and media URLs.

How to scrape Threads

  1. Open a Threads profile or post in your browser and copy its link, such as https://www.threads.com/@zuck. A plain @zuck or zuck works too, and so do old threads.net links.
  2. Paste the links into Threads profiles or posts, one per line.
  3. Optionally, type words or hashtags into Search Threads.
  4. Set Max posts per profile or search and, if you only want recent posts, Only posts newer than (a date, or an age such as 7 days).
  5. Click Start, then download the results from the Output tab.

Input

Everything is set on the Input tab. In JSON, the input looks like this:

{
"startUrls": [
"https://www.threads.com/@zuck",
"@nasa",
"https://www.threads.com/@zuck/post/Ddt7cL5EfUG"
],
"searchQueries": ["openai", "#artemis"],
"maxPosts": 20,
"newerThan": "30 days",
"includeProfiles": true,
"includeReplies": true,
"maxRepliesPerPost": 50,
"repliesSort": "TOP"
}
FieldWhat it does
startUrlsProfile links (threads.com/@name, threads.net/@name, @name or name), post links (threads.com/@name/post/CODE or threads.com/t/CODE), or search links copied from threads.com/search, including topic tag pages.
searchQueriesOptional words, phrases or #hashtags. Without a login Threads shows its top results only: about 20 posts per search.
maxPostsPosts saved per profile (newest first) or per search. Default: 20. Set 0 to save only profile rows.
newerThanSkips profile and search posts older than a date (2026-09-01) or an age (12 hours, 7 days, 2 weeks). Post links and their replies are always saved.
includeProfilesAdds one row per profile link. Default: on.
includeRepliesSaves the replies under each post link, with the conversations under them. Default: on.
maxRepliesPerPostReplies saved per post link. Default: 50.
repliesSortTOP (the order threads.com shows by default, which for logged-out visitors starts with the oldest replies) or RECENT (newest first).
proxyConfigurationOptional; leave it empty. The Actor connects directly and switches to Apify datacenter, then residential proxies, on its own if Threads refuses it.

Output

Each post and each profile becomes one row. Here is a real post, with its long media links shortened:

{
"type": "post",
"id": "4002762028958762635",
"code": "DeMqtuYgkaL",
"url": "https://www.threads.com/@nasa/post/DeMqtuYgkaL",
"author": "nasa",
"authorFullName": "NASA",
"authorIsVerified": true,
"createdAt": "2026-10-07T15:22:45+00:00",
"text": "A LOT of Artemis II data just dropped! 🌖 \n\n814GB of observations. 996 new images. 521min of never-before-released crew audio. …",
"likes": 1772,
"replies": 47,
"reposts": 177,
"quotes": 40,
"shares": 49,
"media": [
{
"type": "video",
"url": "https://scontent-iad3-2.cdninstagram.com/o1/v/t16/f2/m84/AQN…",
"thumbnailUrl": "https://scontent-iad3-2.cdninstagram.com/v/t51.71878-15/8316…",
"width": 1080,
"height": 1920
}
],
"links": ["http://go.nasa.gov/Artemis2LunarScience"],
"linkPreview": null,
"mentions": [],
"tag": "Artemis II",
"isReply": false,
"replyToUsername": null,
"isQuote": false,
"quotedPost": null,
"isPinned": true,
"source": "nasa",
"scrapedAt": "2026-10-08T12:55:37.085061+00:00"
}

And the profile row from the same run:

{
"type": "profile",
"username": "nasa",
"fullName": "NASA",
"userId": "28829152388",
"url": "https://www.threads.com/@nasa",
"biography": "Making the seemingly impossible, possible. ✨",
"followers": 12762210,
"isVerified": true,
"isPrivate": false,
"profilePicUrl": "https://scontent-iad6-1.cdninstagram.com/v/t51.82787-19/6697…",
"bioLinks": [],
"source": "nasa",
"scrapedAt": "2026-10-08T12:55:36.322748+00:00"
}

The Output tab has two views, Posts and Profiles. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

Data fields

Post rows (type is post), including replies and search results:

FieldDescription
id, codeThe post's numeric id (as text, because it is too long for some spreadsheet tools) and its short code from the link.
urlLink to the post.
author, authorFullName, authorIsVerifiedWho posted it.
createdAtWhen it was posted (UTC, ISO 8601).
textThe full post text, with line breaks and emoji. Empty for a photo or video posted without text.
likes, replies, reposts, quotes, sharesExact counts. likes is empty when the author hides it; shares is empty on most replies, because Threads does not report it for them.
mediaPhotos and videos in display order, one item per carousel slide: type (image or video), url, width, height, and thumbnailUrl for videos.
linksWeb addresses in the text and in the link preview, with Threads' redirect removed.
linkPreviewThe preview card of a shared link: url, title, displayUrl, imageUrl.
mentionsUsernames mentioned in the text.
tagThe topic tag the author added.
isReply, replyToUsernameWhether the post replies to another one, and to whom. An author's follow-up posts in their own thread are replies to themselves.
isQuote, quotedPostWhether the post quotes another one, with the quoted post's id, code, url, author, authorIsVerified, createdAt, text, counts and media.
isPinnedtrue when the author pinned the post to their profile.
sourceThe input the row was found through.
scrapedAtWhen the row was saved.

Profile rows (type is profile):

FieldDescription
username, fullName, userId, urlThe account.
biographyThe bio text.
followersExact follower count.
isVerified, isPrivateVerified badge, and whether the account is private.
profilePicUrlThe largest profile picture available.
bioLinksThe links shown under the bio.
source, scrapedAtAs for posts.

How much does it cost to scrape Threads?

Threads Scraper (No Cookies) uses pay-per-event pricing: you pay for the rows you get, and the price per result is on the Pricing tab. Each post, reply or profile saved is one row. Inputs that return nothing, such as a deleted post, an unknown username or a search without results, are never saved as rows, so they cost nothing. If you set a maximum cost for a run, the Actor stops cleanly as soon as it is reached.

It is also fast: 1,000 posts from 10 profiles took 36 seconds in our tests, because it reads Threads' own data feed instead of loading web pages in a browser.

Tips for scraping Threads

  • Monitor accounts on a schedule. Run daily with Only posts newer than set to 1 day and Save profile rows off, to get only the new posts.
  • Follower counts only: set Max posts to 0 to check a long list of profiles quickly and cheaply.
  • Full history: Threads lets the Actor page back to an account's first post, so a large Max posts (for example 1000) archives a whole profile.
  • Replies: paste the post link. Choose Newest replies first to follow a conversation as it grows.
  • Pinned posts come first on a profile whatever their age; they are marked isPinned, and with a date limit an old pinned post is skipped without stopping the rest.
  • Search shows about 20 top posts per query. Use several specific keywords or hashtags, or paste a topic tag page from threads.com, to cover a subject; to get more from one account, paste its profile instead.
  • Each post is saved only once per run, even when several inputs lead to it.

FAQ, disclaimers and support

Do I need a Threads account, cookies or a login? No. The Actor reads only what Threads shows to visitors who are not logged in.

What can it not get? Without a login, Threads does not show following counts, post view counts, posts of private accounts or the "Recent" search tab, so search returns Threads' top results only, about 20 per query. A private account still gets its profile row, and the run notes that its posts are hidden. From a profile the Actor reads the main Threads tab: the account's replies to other people and its reposts are not included.

What happens to links that return nothing? They are not saved as rows, so you are not charged for them. Each one is listed with its reason in the FAILED_INPUTS record of the run's key-value store, and the run's status message gives the counts. A run fails only when every input failed because Threads could not be reached.

Are media links permanent? No. Photo and video links point to Meta's content servers and stop working after a while. Download the files soon after the run if you need to keep them.

Is it legal to scrape Threads? This Actor collects only public posts and profiles that Threads shows to anyone without an account. Posts and profiles can still contain personal data, so you are responsible for making sure your use complies with Threads' Terms of Use and with data protection laws such as the GDPR. If in doubt, ask a lawyer.

Found a problem or need a custom solution? Open an issue on the Issues tab and we will look into it. Custom scrapers and data feeds are available on request.