Better Fetch

Threads Scraper

Retrieve public Threads profiles, creator posts, individual posts, keyword results, and indexed user matches without login.

Socialv0.2.1~1 credit/runSource on GitHub

Workspace

Configure

Inputs stay here while results become exportable artifacts.

Start from an example

Keyword query for search or indexed username query for search_users mode.

Public Threads post URL for post mode.

Public Threads username or profile URL for profile and user_posts modes.

Sign in and run
~1 credit/run10 runs/minute

Results

Preview, inspect, copy, or export the complete output.

Your result will become an artifact

Run the tool to inspect structured rows, raw JSON, execution details, and downloadable JSON, CSV, and Markdown files.

modecountpostsusersprofilesource_url

Overview

Threads Scraper combines server-rendered public metadata with Better Fetch browser rendering to cover profiles, creator posts, individual posts, and keyword discovery without a logged-in account.

Last validated: Jul 15, 2026

Input

mode"profile" | "user_posts" | "post" | "search" | "search_users"required
querystring

Keyword query for search or indexed username query for search_users mode.

post_urlstring

Public Threads post URL for post mode.

usernamestring

Public Threads username or profile URL for profile and user_posts modes.

max_resultsintegerdefault: 10

Output

modestringrequired
countintegerrequired
postsobject[]required
usersobject[]
profileobject
profile.biostring
profile.urlstring
profile.avatarstring
profile.usernamestring
profile.display_namestring
profile.thread_countnumber
profile.followers_textstring
source_urlstringrequired

Examples

openai-profile

{
  "mode": "profile",
  "username": "openai"
}

openai-posts

{
  "mode": "user_posts",
  "username": "openai",
  "max_results": 5
}

openai-post

{
  "mode": "post",
  "post_url": "https://www.threads.com/@openai/post/DawRu9_CH6X"
}

search-openai

{
  "mode": "search",
  "query": "openai",
  "max_results": 5
}

search-users

{
  "mode": "search_users",
  "query": "shams",
  "max_results": 10
}

Use cases

Creator research

Resolve public Threads profiles to their bio, follower label, thread count, and avatar.

Timeline monitoring

List the public post URLs, timestamps, and visible text from a creator profile.

Conversation discovery

Search public Threads posts by keyword and pass normalized results into an agent workflow.

Account discovery

Find public profile handles exposed in Google's index when native account search requires login.

FAQ

Does this require Threads login?

No. The implemented modes use pages visible to logged-out visitors.

Does it support private profiles?

No. Only public profile and post surfaces are supported.

Why does timeline search use a browser?

Threads renders public result cards after page load; Better Fetch captures that rendered state.

How does user search work?

It transparently searches Google's public index because native Threads account search requires login.

Use it anywhere

MCP (Claude, ChatGPT, Codex)

# After connecting https://betterfetch.co/api/mcp, ask your AI to:
1. Call search_tools for "Threads Scraper"
2. Call run_tool with:
   name: "threads_scraper"
   input: {"mode":"profile","username":"openai"}

REST

curl -sS -X POST "https://betterfetch.co/api/tools/threads_scraper/run" \
  -H "Authorization: Bearer bf_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"input": {"mode":"profile","username":"openai"}}'

Run locally

git clone https://github.com/better-fetch/tools/tree/main/tools/threads-scraper && cd threads-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"mode":"profile","username":"openai"}'