# Twitter Search API: Query X From $0.04 per 1,000 Tweets Canonical: https://www.twitterapis.com/twitter-search-api Description: Run advanced X search queries against the live firehose at $0.0008 a call, $0.04 per 1,000 tweets on 20-tweet pages. No developer account needed. Generated: 2026-09-14T03:00:37.801Z --- 1. [Home](/) 2. / Twitter Search API SEARCH # The Twitter Search API at $0.04 per 1,000 Tweets Updated July 2026 How do you search Twitter (X) with an API? TwitterAPIs ships a Twitter/X search API that hits the live firehose, takes the full advanced-search operator set, and returns clean JSON for $0.04 per 1,000 tweets. Filter by handle, keyword, date window, language, or a minimum engagement bar, all in real time, with no developer account and no throttles. We bill each search call at $0.0008 (source: our published pricing), and one call returns about 20 tweets, so a full 1,000-tweet pull lands near $0.04. [Start Free](/signup?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-search-api)[Open the docs](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search) ## Why reach for a Twitter search API Typing a query into the X web app is fine for a one-off. The trouble starts the moment search has to live inside a product, a dashboard, an alert pipeline, or an AI agent, where you need it as a callable endpoint. The official X API does ship search, and it is the sanctioned channel, yet the price and the gatekeeping shut a lot of teams out: - Price plus a standing monthly floor. Sanctioned search reads land around $5 per 1,000 inside a paid tier, so even a light monitoring job owes a recurring monthly minimum before a single tweet comes back. - Sign-off and tier ceilings. First you request a developer account and wait on review, then you meet hard read ceilings and a short lookback on the lower tiers. The throttle decides your ceiling, not your code. - Roll your own and watch it crack. Free libraries that scrape X internals collect IP bans and snap the next time the site shifts, so you swap a monthly invoice for proxy churn and endless patching. TwitterAPIs sits in the managed middle. One Bearer key, one documented search endpoint, structured JSON in return, and $0.04 per 1,000 tweets with no monthly floor and one flat 600 req/min ceiling. You send a query, matching tweets come back, and none of the plumbing underneath is yours to babysit. ## Inside the search endpoint Everything routes through a single endpoint, `GET /twitter/tweet/advanced_search`. Put your query in the `query` parameter, set a `product` ranking, and step through pages using `cursor`. A call costs $0.0008 and brings back about 20 tweets. Parameter Required Purpose query Required Your search string. Takes every operator the X advanced-search box understands, such as from:elonmusk min\_faves:500 since:2026-01-01. product Optional Choose Latest for a newest-first live stream, or Top for the highest-engagement matches. Falls back to Latest when you leave it unset. cursor Optional Paging marker handed back on every response. Send it on the next request to walk forward until it comes back empty. ### One request, matching tweets curlPythonJavaScript Copy ``` curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://api.twitterapis.com/twitter/tweet/advanced_search?query=from:elonmusk&product=Latest" ``` What comes back is structured JSON plus a cursor for the next page, so there is no markup to scrape and no proxy pool to keep rotating. [See the advanced search endpoint docs](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search). ## Operators you can hand the query parameter Operator Matches Example from:username Posts authored by a single handle from:elonmusk to:username Replies aimed at a given handle to:nasa filter:verified Restricts results to verified authors ai agents filter:verified min\_faves:N Posts holding N or more likes solana min\_faves:1000 min\_retweets:N Posts holding N or more reposts launch min\_retweets:50 since: / until: Bounds a date range (YYYY-MM-DD) nvda since:2026-01-01 until:2026-03-01 lang:xx Posts written in a single language mundial lang:es geocode:lat,long,r Posts within a radius of a coordinate protest geocode:40.7,-74,10km Stack several operators into the same query, for instance `from:elonmusk min_faves:500 since:2026-01-01`. The [Twitter advanced search operators guide](/blogs/twitter-advanced-search-operators) covers the full set, combination recipes, and the corner cases. For the date operators on their own, including why an end bound excludes its own day, see [how to search tweets by date](/answers/how-to-search-tweets-by-date). ## The product parameter: Latest vs Top product Returns Best for Freshness Latest Newest-first, reverse chronological Alerting, live dashboards, streaming ingestion Seconds-fresh, straight off the timeline Top Highest-engagement matches first Digests, highlight pulls, sentiment rollups Recent set, weighted by likes plus reposts Skip the parameter entirely and the endpoint assumes Latest. Reach for Top when the most-engaged tweets for a query matter more than the freshest ones. ## Real-world query templates Operators are only useful once you see them combined. These are queries that answer a question a team actually has, written to be pasted into the query parameter and edited. Each one is a single call at $0.0008, and each pages with the cursor until it comes back empty. What you are trying to find Query Why it is shaped this way Complaints about a product, excluding your own posts "acme" (slow OR broken OR bug) -from:acme -is:retweet lang:en Excluding retweets stops one viral complaint from filling the whole page, and excluding your own handle keeps support replies out of the sample. Buying intent for a category ("looking for" OR "any recommendations" OR "alternatives to") crm -is:retweet Phrase quoting matters here. Without quotes the words match separately and the result set fills with noise. Launch-day reaction to a specific link url:yourdomain.com -is:retweet since:2026-08-01 The url operator matches the expanded link, so it catches shortened URLs that resolve to your domain. What a competitor's customers say to them to:competitorhandle -is:retweet lang:en Replies to an account are usually franker than posts about it, which makes this the highest-signal competitor query there is. Posts that got real traction, not just posted topic min\_faves:50 -is:retweet An engagement floor turns a firehose into a shortlist, and cuts the pages you pay for at the same time. Media-only results for a campaign hashtag #yourcampaign filter:images -is:retweet Pair this with the Photos product value when you want ranking to favour media rather than recency. Local conversation without a geo API (hiring OR "we are hiring") ("san francisco" OR sf) -is:retweet Place names in the text outperform geotags in practice, because very few posts carry coordinates at all. A clean training or analysis corpus keyword lang:en -is:retweet -is:reply filter:safe Dropping retweets and replies removes most near-duplicates before they reach your storage bill. Two habits keep these cheap. Put the narrowest term first so the page you pay for is dense rather than half-relevant, and add an engagement floor whenever you are looking for signal rather than volume. Every call bills the same $0.0008 whether it returns twenty results or three, so a tighter query is a cheaper corpus. ## The official X API: pay-per-use rates X moved to consumption billing in February 2026, so the comparison is now rate against rate rather than plan against plan. Post reads bill at $0.005 each and user reads at $0.010, which puts a thousand tweets at roughly $5 before any profile lookups, against $0.04 here. Writes bill separately, at $0.015 a post and $0.20 when the post carries a URL. The ceiling matters as much as the rate: pay-per-use caps post reads at 3 million a month, and the only route past it is an Enterprise contract with no published price and a procurement cycle attached. There is still a free tier in name, but it is write-centric with roughly 100 reads a month, which is not enough to collect anything. Full workings and every scenario sit on the [Twitter API pricing page](/twitter-api-pricing). ## The legacy Basic and Pro tiers Anyone who priced the X API before 2026 is remembering two plans that no longer work the way they did. Basic ran at $200 a month for 50,000 posts and 15,000 reads; Pro ran at $5,000 a month for 300,000 posts, a million reads, full-archive search and the filtered stream. Both stopped taking new signups at the February 2026 cutover, and Basic went further: X deprecated it outright, monthly and annual alike, and moved remaining subscribers onto pay-per-use from 1 June 2026 at the end of their billing cycle. So being grandfathered in is not the situation any more, and a bill that used to be a fixed $200 is now whatever the call volume prices out at. Pro is a narrower case, closed to new signups, and X has not said publicly whether it faces the same migration, so treat its future as open rather than settled. Search here has no tiers to age out of: one flat rate per call, the same on your first request and your millionth. ## How TwitterAPIs search stacks up against the alternatives Option Price Auth Rate limits Real-time TwitterAPIs $0.0008 a call, ~20 tweets, so $0.04 / 1,000 Bearer token, sign up in 30s 600 req/min per key Latest plus Top, seconds-fresh Official X API search $5+ / 1,000 reads, $200/mo floor Developer account plus app review Per-tier monthly read ceilings Recent search only, 7-day lookback on cheaper tiers RapidAPI Twitter search wrappers $0.20 to $0.50 / 1,000 Per-provider RapidAPI key Throttled by plan quota Provider-dependent Free libraries (twscrape, twikit) $0 before proxy and server cost Scraped cookies or tokens IPs banned in hours Snaps on each X update ## Flat, readable pricing $0.04 to search 1,000 tweets $0.50 in signup credits, no card $0 monthly fee, billing is per call A search call costs $0.0008 and returns close to 20 tweets, so 1,000 tweets settles around $0.04. The full breakdown sits on the [Twitter API pricing page](/twitter-api-pricing), and you can project a monthly bill with the [Twitter API cost calculator](/twitter-api-cost-calculator). ## Go deeper on any single tweet Search hands you matching tweets and their IDs. Once you hold a tweet ID, three read endpoints expand it into the full picture, all on the same Bearer key at $0.0008 per call. Pass the ID you already have, and structured JSON comes back with no extra auth step. Endpoint Returns Reach for it when GET /twitter/tweet/detail The full tweet object for one ID: text, author, counts, and attached media. You have an ID from a link or a webhook and need the whole record, not a truncated card. GET /twitter/tweet/replies The reply thread under a tweet, paged by cursor until it comes back empty. You track how a post is received, or pull a conversation for sentiment and support triage. GET /twitter/tweet/retweeters The accounts that reposted a tweet, each as a profile you can page through. You map who amplified a post, or score the reach behind a spike in engagement. A common pattern is one search call to find the tweets that matter, then a detail, replies, or retweeters call on each ID to expand the ones worth a closer look. Both steps bill at the same flat rate, so a deep read on a handful of tweets stays well under a cent. ## Read what is trending, worldwide or by location Search answers what people are posting about a query. Trends answers the other direction: what X itself is surfacing right now. Two read endpoints cover it at $0.0008 per call. Call trends locations first to resolve a city or country to its WOEID, then pass that WOEID to trends for the live list in that place. curlPython Copy ``` # 1. Find the WOEID for a place curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://api.twitterapis.com/twitter/trends/locations" # 2. Read the live trend list for that WOEID (1 = worldwide) curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://api.twitterapis.com/twitter/trends?woeid=1" ``` That pairing drives trend dashboards, timing calls for a launch, and regional monitoring where a topic breaks in one country before it travels. No developer account, one 600 req/min ceiling, same key as every other read. ## When search alone is not enough This is a single endpoint. Need entire timelines, follower lists, and profiles on top of it? The broader [Twitter scraper](/twitter-scraper) reaches that wider surface on the very same key. Wiring search into an AI agent instead? Point it at the [MCP server](/mcp). Still weighing vendors? Line up the full slate of [Twitter API alternatives](/twitter-api-alternatives) and compare them head to head. By the numbers ## Twitter search, in numbers. Sourced figures behind live search costs. - The official X API full-archive search enforces a hard 1 request per second floor on top of a 300 per 15-minute window. [(X API docs, 2026)](https://docs.x.com/x-api/fundamentals/rate-limits) - The official X API bills post reads pay-per-use at $0.005 per resource, and search results count against that read cost. [(X Developer Platform, 2026)](https://developer.x.com/#pricing) - Official X API pay-per-use is hard-capped at 3 million post reads per monthly billing cycle before Enterprise pricing applies. [(X API docs, 2026)](https://docs.x.com/x-api/fundamentals/rate-limits) - TwitterAPIs advanced search returns about 20 tweets per call at $0.0008, which is $0.04 per 1,000 tweets, under a 600 req/min ceiling per key. [(TwitterAPIs pricing, 2026)](/pricing) - A new TwitterAPIs account starts with $0.50 in free search credit, roughly 12,500 tweets, and needs no developer account. [(TwitterAPIs pricing, 2026)](/signup) ## Twitter search API, common questions ### What does the Twitter search API cost? Each advanced\_search call runs $0.0008 and hands back roughly 20 tweets, which puts 1,000 tweets at about $0.04. Nothing is billed as a subscription and there is no spend minimum. Compare that to the official X API, where search reads open at $5 per 1,000 on top of a $200 monthly floor, and TwitterAPIs is the cheaper managed route to search at volume. New accounts get $0.50 in credits up front, with no card needed to begin. ### Can I search X without a developer account? There is no X developer account to apply for and no OAuth flow to wire up. The one thing you need is a TwitterAPIs Bearer token, copied straight after a 30-second signup, and it signs every search request. Skip the app review, the per-endpoint sign-off, and the waiting list, and your first query can run inside a minute. ### Will I hit rate limits on search? One number: 600 requests a minute and 20 concurrent per key, the same on search as on every other route, with no daily or monthly cap on top. Billing is purely per call at $0.0008, so your spend tracks usage instead of bumping a tier ceiling. Scheduled firehose pulls and full date-range backfills run inside that ceiling without the per-endpoint throttles baked into the official X API search tiers. ### How does pagination work on search results? Every response carries a cursor value. Feed that value into the cursor parameter on the following call to pull the next page, and keep going until the cursor comes back empty. You can sweep an entire query or date window this way without the server holding any session state for you. ### Does the search API return live results? It does. Pass product set to Latest and advanced\_search streams a newest-first feed of posts that are only seconds old, which is exactly what alerting and live monitoring need. Pass product set to Top instead and you receive the highest-engagement matches for the same query. Either mode reads the live X index rather than a cached snapshot. ### Which advanced search operators does it accept? All of the familiar ones. Drop from:, to:, filter:verified, min\_faves:, min\_retweets:, since:, until:, lang:, and geocode: into the query parameter, mix them freely in one string such as from:elonmusk min\_faves:500 since:2026-01-01, and the endpoint honors the combination. The Twitter advanced search operators guide carries the complete list with worked recipes. ### How do Latest and Top differ? Ranking is the only thing the product parameter changes. Latest hands you matches newest-first in reverse-chronological order, the right call for live monitoring. Top reorders those same matches by engagement, strongest first, which fits highlight feeds and sentiment digests. Leave the parameter off and Latest is assumed. ### Search API or the full Twitter scraper, which do I need? Think of search as the targeted query endpoint: you pass operators and get matching posts. The wider Twitter scraper layers full timelines, followers, profiles, and media on top of that search surface. The same Bearer key and the same flat $0.0008 per call power both. Reach for this endpoint when a query is all you need, and step up to the scraper when you want complete account data. ### Search X with no X account $0.04 per 1,000 tweets, $0.50 in free credits, Latest and Top ranking, no developer account, 600 req/min per key. [Start Free](/signup?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-search-api)[View Pricing](/twitter-api-pricing?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-search-api) ## Next read Continue exploring related pages: [ Twitter timeline API Pull an account's full posting history over one REST endpoint. ](/twitter-timeline-api)[ Twitter scraper API Scrape tweets, profiles, and followers via a managed API at $0.0008 a call, $0.04 per 1,000 tweets on full 20-tweet pages, no developer account. ](/twitter-scraper)[ Twitter API use cases 14 use cases from sentiment analysis to lead generation. ](/twitter-api-usecases)[ Twitter API v2 pricing vs TwitterAPIs Side-by-side endpoints, pricing, auth, and response shape, same data, 100x cheaper. ](/twitter-api-pricing) [View API Docs](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search)[Start Free](/signup?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-search-api) [ TwitterAPIs ](/) The cheapest pay-as-you-go Twitter and X API. $0.0008 per call, which works out to $0.04 per 1,000 tweets on a full 20-tweet page. No subscriptions and no developer account. ## Product / API - [Pricing](/pricing) - [Cost Calculator](/twitter-api-cost-calculator) - [Rate Limits](/twitter-api-rate-limits) - [MCP Server](/mcp) - [Integrations](/integrations) - [Language Clients](/sdk) - [Changelog](/changelog) - [Status](/status) ## Developers - [Documentation](https://docs.twitterapis.com) - [API Reference](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search) - [User Info](https://docs.twitterapis.com/docs/reference/user-reads/user-info) - [User Tweets](https://docs.twitterapis.com/docs/reference/user-reads/user-tweets) - [Advanced Search](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search) - [Verified Followers](https://docs.twitterapis.com/docs/reference/follower-graph/user-verified-followers) ## Resources / Compare - [Answers](/answers) - [Reviews](/reviews) - [Free Tools](/tools) - [Twitter ID Finder](/tools/twitter-id-finder) - [Get a Twitter API Key](/twitter-api-key) - [Official X API Comparison](/twitter-api-pricing) - [Twitter API Use Cases](/twitter-api-usecases) - [Twitter API Alternatives](/twitter-api-alternatives) - [Twitter Unofficial API](/twitter-unofficial-api) - [Twitter Free API](/twitter-free-api) - [TwitterAPIs vs twitterapi.io](/twitterapis-vs-twitterapi-io) - [TwitterAPIs vs GetXAPI](/twitterapis-vs-getxapi) - [TwitterAPIs vs TweetAPI](/twitterapis-vs-tweetapi) - [TwitterAPIs vs TwexAPI](/twitterapis-vs-twexapi) - [TwitterAPIs vs RapidAPI](/twitterapis-vs-rapidapi) ## Legal - [About](/about) - [Security](/security) - [Trust](/privacy-and-data-handling) - [Terms of Service](/terms-of-service) - [Affiliates](/affiliates) - [Contact](/contact) - [Jobs](/jobs) © 2026 TwitterAPIs. All rights reserved. TwitterAPIs is an independent third-party API for developers and researchers. Not affiliated with, endorsed by, or sponsored by X Corp. All systems operational