Shadow Inbox/blog
Subscribe
← back to indexblog / buyer intent / monitor-threads-for-leads
● Buyer Intent

Monitor Threads for leads: what the keyword API allows

Threads keyword search gives each user 2,200 queries per rolling day, and public posts only after Meta approves it. What you can poll, keep and reply to.

A
ArthurFounder, Shadow Inbox
publishedOct 15, 2026
read6 min
Monitor Threads for leads: what the keyword API allows

Someone posts at 7:40 on a Tuesday morning: "Does anyone have a scheduling tool that doesn't make clients create an account? Mine is eating my week." It gets 14 replies by lunch, all from friends, none from a vendor. You would have been the

Someone posts at 7:40 on a Tuesday morning: "Does anyone have a scheduling tool that doesn't make clients create an account? Mine is eating my week." It gets 14 replies by lunch, all from friends, none from a vendor. You would have been the right answer. You were not looking, because Threads is where your team posts, not where it searches. Meta shipped keyword search for the Threads API in December 2024, so this is no longer a scraping question. It is a quota question, an approval question and a data-terms question. This post covers what the keyword endpoint returns, what it costs you, and what Meta's terms say you may do with the results. We read every page cited below on 15 October 2026.

Keyword search gives each user 2,200 queries a rolling day

Meta's keyword search documentation states the cap in one line: "A user can send a maximum of 2,200 queries within a rolling 24-hour period." The cap belongs to the user, not the app. If several apps send requests for the same user, they draw from the same pool, and repeat queries on the same keyword count again.

2,200queries per user in a rolling 24 hours
100most posts one query can return (default 25)
0quota cost of a query that returns nothing
Dec 2024when keyword search shipped

That is a roomier budget than it sounds. This is our arithmetic on Meta's number, not a Meta figure:

  1. 20 search phrases polled every 15 minutes is 96 polls times 20, or 1,920 queries a day.
  2. The same 20 phrases hourly is 480 queries.
  3. Queries that return no results do not count, so a quiet phrase costs nothing.

One warning on numbers. Some third-party guides quote a different cap. Meta's Threads changelog says the keyword search query limit changed on 25 June 2025, so trust the live page over any write-up, including this one, and re-read it before you size a poller.

Public posts only open up after Meta approves your app

The same page is plain about permissions. You need threads_basic plus threads_keyword_search, and "if your app has not been approved for the threads_keyword_search permission, the search will be performed only on posts owned by the authenticated user." Your own posts are not where your buyers are.

Meta's get started guide adds that for app users without a role on your app, "each permission must first be approved" through App Review, and the app must be published. People with a role, called Threads testers, can grant permissions at any time. What the two pages leave open is whether a tester token reaches public posts before approval. We could not settle that from the docs, so test it in the Graph API Explorer before you plan around it.

Meta publishes no review turnaround on these pages, so file the application before you build the poller.

Each result carries id, text, media_type, permalink, timestamp, username, has_replies, is_quote_post and is_reply. The owner field is excluded. There is no email, no follower count in the search result, and no company name. Filters are search_type (TOP or RECENT), search_mode (KEYWORD or TAG), media_type, since, until, limit and author_username.

A sensible poller uses RECENT, passes since as the timestamp of your last run, and asks for 100 results. Two details to plan for. The API returns an empty array for any query containing terms Meta has deemed sensitive or offensive, so an empty result from a phrase like "killing my budget" may not mean silence. And author_username makes a competitor-watch cheap: one query filtered to a competitor's handle tells you who is arguing with them.

A username and a permalink is a smaller lead than it looks. The lead is the question inside the text, and the username is only where you send the answer.

Threads is a thinner pool than Reddit, and scoring has to be stricter

This section is opinion. We have not measured Threads buyer intent, and we are not going to hand you a rate we made up. Our read: Threads leans toward people talking to followers, and Reddit leans toward people asking strangers. That changes the filter. A "what do you use for X?" post with 14 replies is a buyer. A hot take with 14 replies is an audience.

Use the same cues as anywhere else. Our anatomy of a high-intent Reddit post lists ten, and an LLM can score them in bulk. Add one Threads-specific check: is_reply and has_replies tell you whether you are looking at a question with answers already under it, which is the same race you run on Bluesky and on YouTube comments.

Meta's data terms are tighter than the search docs suggest

The search page does not mention retention, resale or profiling. The Meta Platform Terms, last updated 3 February 2026, do. Three clauses matter for a lead pipeline:

  • The prohibited practices include "Selling, licensing, or purchasing Platform Data." A lead list built from Threads posts and sold on is out.
  • They also include "Processing Platform Data without valid User consent in order to build or augment user profiles for any purpose."
  • You must delete Platform Data as soon as reasonably possible "when retaining the Platform Data is no longer necessary for a legitimate business purpose."

Unlike YouTube's flat 30-day clock, Meta gives you no number. The standard is "no longer necessary for a legitimate business purpose," which you have to define and defend yourself. Keep the post ID and the permalink, re-fetch when you need the text, and delete what you stopped using.

You may reply through the API, and repeating yourself is still spam

Replying is supported. Meta's December 2024 announcement says you can reply to, repost and quote "public posts or replies surfaced through mention or keyword search." The create replies page lists threads_keyword_search as one of the permissions that lets you reply to a thread you do not own. The API overview puts a ceiling of 1,000 replies per 24-hour moving period on a profile.

A ceiling is not a permission. Meta's Developer Policies tell you to "Respect the way Meta Products look and function, and the limits we've placed on product functionality" and not to "confuse, deceive, defraud, mislead, spam or surprise anyone." The spam standard bars posting and engaging "either manually or automatically, at very high frequencies." Neither one gives a number, which means the line is wherever Meta's enforcement puts it, and a pitch pasted under 40 strangers is on the wrong side of any reading.

The reply that survives is the one you write for the one person who asked. It answers the question first, says whose product you are talking about, and reads the way a reply that does not get you banned on Reddit reads.

Build a poller, buy one that covers it, or skip Threads

Shadow Inbox is our product and it does not watch Threads. It reads Reddit and Hacker News. We would also be wrong to tell you a bought tool covers it. Syften's pricing page lists Reddit, X, Hacker News, YouTube, Bluesky, Mastodon and other sources on 15 October 2026, and does not name Threads. That could change, so check before you pay.

If your buyers do ask on Threads, the build is small: one token, a list of phrases, a loop with since, and a scorer. In our estimate that is a weekend of developer time plus App Review. Before you spend it, run your ten best phrases in the Threads search box by hand for a week and count how many results were a person asking for a tool. If the count is zero, you have your answer without writing a line of code.

● FAQ

Does Threads have an API for searching posts by keyword?
Yes. The keyword_search endpoint searches public Threads posts by keyword or topic tag and has done since December 2024. It needs the threads_keyword_search permission, and without Meta's approval it only searches the authenticated user's own posts.
How many Threads searches can I run per day?
Meta's documentation allows 2,200 queries in a rolling 24-hour period per user, shared across every app that user authorized. Repeat queries count, and queries that return no results do not.
Can I store Threads posts in my CRM?
Only for as long as you have a legitimate business purpose for them. Meta's Platform Terms require deleting Platform Data as soon as reasonably possible once it is no longer necessary, and they bar selling it or using it to build profiles of people without their consent.
Can I auto-reply to Threads posts that match my keywords?
The API lets you reply to public posts you surfaced through keyword search. Meta's spam standard bars posting or engaging, manually or automatically, at very high frequencies, so a bot that drops the same pitch under every match is the thing to avoid.
— share
— keep reading

Three more from the log.

Monitor GitHub for leads: what the API allows
003 · Buyer Intent

Monitor GitHub for leads: what the API allows

GitHub's REST search covers issues and pull requests. Discussions live behind a separate GraphQL budget, and the reply rules differ by repo.

Aug 27, 2026 · 7 min