The short answer
The X API is pay per use in 2026. X charges $0.005 per Post read, $0.010 per user read, and $0.015 to create a plain Post. A Post created with a URL costs $0.200. You buy credits in advance, and there is no subscription or minimum spend in the current documentation. Standard pay-per-use plans are capped at 3 million Post reads per monthly billing cycle.
Use the official X API when you need to publish, manage an account, search X broadly, receive webhooks, or work with OAuth and private permissions. For public profile and timeline retrieval, a managed public-data API can be simpler and cheaper. It is not the same product, though. It cannot replace authenticated X actions or full-archive search.
All prices, limits, and product claims below were checked against primary sources on September 3, 2026.
X API pricing table
X bills reads per resource returned. Writes and other actions are billed per request. That distinction matters because one response can contain many Posts or users.
| X API operation | Current unit price | Cost per 1,000 units | Important detail |
|---|---|---|---|
| Post read | $0.005 per resource | $5 | Standard pay-per-use plans are capped at 3 million Post reads per billing cycle |
| User read | $0.010 per resource | $10 | The charge is per user resource returned |
| Following or follower read | $0.010 per resource | $10 | Large relationship graphs can get expensive quickly |
| List, Space, or Community read | $0.005 per resource | $5 | Each returned resource is billable |
| Like, mute, or block read | $0.001 per resource | $1 | Separate from standard Post and user reads |
| Owned Read | $0.001 per resource | $1 | Only eligible requests for the developer app owner’s own data qualify |
| Create a plain Post | $0.015 per request | $15 | Write price, not a resource-read price |
| Create a Post with a URL | $0.200 per request | $200 | More than 13 times the plain Post create price |
| Create a DM interaction | $0.015 per request | $15 | Requires the official authenticated route |
| Recent counts | $0.005 per request | $5 | X lists all-count requests at $0.010 |
Source: X API pay-per-usage pricing. X says rates can change and that the Developer Console has the current account pricing.
The old $200 Basic and $5,000 Pro tiers still show up in videos, forum posts, and search results. They are stale for the current default model. One YouTube guide returned by the live search still described “Essential Access” and 500,000 monthly Tweets. I did not use those figures because they conflict with X’s current pricing page.
What the rates cost in practice
A small number beside a resource can hide a large bill. Multiply the number of unique returned objects, not just the number of HTTP requests.
| Monthly workload | X API calculation | X API cost |
|---|---|---|
| Read 10,000 unique Posts | 10,000 x $0.005 | $50 |
| Read 100,000 unique Posts | 100,000 x $0.005 | $500 |
| Read 1 million unique Posts | 1,000,000 x $0.005 | $5,000 |
| Read 10,000 users | 10,000 x $0.010 | $100 |
| Read 10,000 eligible resources from your own account | 10,000 x $0.001 | $10 |
| Publish 1,000 plain Posts | 1,000 x $0.015 | $15 |
| Publish 1,000 Posts containing URLs | 1,000 x $0.200 | $200 |
X deduplicates a resource within a 24-hour UTC window, so repeated reads of the same Post normally incur one charge that day. X calls this a soft guarantee and warns that edge cases can occur. The window resets at midnight UTC.
That changes how you should model polling. A dashboard that refreshes the same 500 Posts every minute is not automatically charged for 720,000 Post reads each day. A discovery system that keeps finding new Posts is a different story because each unique resource can be billable.
The 3 million Post-read cap also matters. At the listed rate, 3 million unique Post reads would equal $15,000 before deduplication or special pricing. Projects above that cap need an Enterprise conversation. X does not publish one simple Enterprise dollar figure on the pricing page, so I would not put a guessed number into a budget.
Official X API vs a public-data API
Start with the job, then compare price. A cheap public-data call does not help if the product needs to publish a Post or search the full archive.
| Need | Official X API | ScrapeCreators public-data API |
|---|---|---|
| Publish or delete Posts | Yes | No |
| DMs and authenticated account actions | Yes | No |
| Broad recent or archive search | Yes, subject to the current endpoint and account terms | No general Twitter search endpoint is currently documented |
| Public profile lookup | Yes, $0.010 per returned user at the verified standard rate | Yes, GET /v1/twitter/profile, currently 1 credit per request |
| Public user Posts | Official timelines and fields, billed per returned Post | GET /v1/twitter/user-tweets, currently 1 credit per request, with public-source coverage limits |
| Individual public Post details | Yes | Yes, GET /v1/twitter/tweet |
| OAuth and supported platform contract | Yes | No. It is an unofficial public-data API |
| Setup | Developer account, app, credentials, credits, and the right auth flow | One ScrapeCreators API key |
| Current public price basis | Per resource for reads, per request for writes | Endpoint credits. Most endpoints use 1 credit, but the docs show the exact cost |
ScrapeCreators currently sells 25,000 credits for $47 and 500,000 credits for $497. For a one-credit endpoint, that works out to $1.88 or about $0.99 per 1,000 requests. New accounts receive 100 credits, credits do not expire, and the homepage says cached results are free. Check the live pricing section because packs and endpoint costs can change.
A narrow profile example is reasonably comparable. Ten thousand standard user resources cost $100 at X’s listed $0.010 rate. Ten thousand one-credit ScrapeCreators profile calls consume $18.80 from the $47 pack or about $9.94 at the $497 pack’s unit rate. The packs are prepaid, and the products do not have identical authorization, data contracts, or service terms.
Post retrieval is less comparable. X charges for each returned Post. ScrapeCreators charges the documented endpoint credit and can return many public Posts in one response, but its user-tweets documentation warns that public X access is limited to roughly 100 Posts and does not promise a complete chronological archive. Cheap incomplete data is not a substitute for the official archive if completeness is the requirement.
My bias is obvious: I built ScrapeCreators. I would use it for public profiles, individual public Posts, community data, and public timeline enrichment across a product that also needs Instagram, TikTok, YouTube, or LinkedIn. I would use X’s official API for posting, DMs, OAuth, full search, supported account actions, or a contract that depends on official access.

A real public-data request
The public profile request is small:
curl --get 'https://api.scrapecreators.com/v1/twitter/profile' \
--header 'x-api-key: YOUR_API_KEY' \
--data-urlencode 'handle=Austen'
I ran that exact request on September 3, 2026. It returned HTTP 200, reported one credit charged, and included the account ID, handle, follower count, Post count, description, verification data, and profile image fields. Here is a shortened excerpt. The counts are a dated snapshot and will change.
{
"success": true,
"credits_charged": 1,
"rest_id": "221838349",
"legacy": {
"screen_name": "Austen",
"followers_count": 480905,
"statuses_count": 59612
}
}
I also called GET /v1/twitter/user-tweets?handle=Austen&trim=true. That request returned HTTP 200, charged one credit, and returned 100 Post objects. The first object included a Post ID, creation time, text, and view count. This proves the current fixture and response shape, not long-term reliability or complete archive coverage.
Read the Twitter profile endpoint docs and user Posts endpoint docs before choosing fields. The broader Twitter API overview lists all currently documented routes.
Choose the right route
Choose the official X API if any of these are true:
- Your app publishes Posts, sends DMs, manages lists, follows users, or acts on behalf of an account.
- You need recent search, full-archive search, filtered streams, or another official data product.
- OAuth permissions and X’s supported developer contract are part of the product.
- You need more than the public web exposes, or you need to discuss Enterprise volume.
- Your compliance team requires an official platform relationship.
Choose a managed public-data API if these fit better:
- You only need public profile, public Post, community, or transcript data.
- You want one API key and do not want to maintain X scraping sessions, parsers, and proxy infrastructure.
- Your application also needs public data from several social platforms.
- You can live with the endpoint’s documented depth and ordering limits.
- You would rather buy endpoint credits than model every returned X resource.
Some products should use both. Keep writes and authenticated user actions on X. Use a public-data API for enrichment or cross-platform research where its contract fits. That split appeared in the developer discussions I reviewed, and it is more honest than pretending one route replaces the other.
One thing kept coming up in the research: cheap workflow tutorials often skip the coverage limits. Comments asked about pagination, newest Posts, replies, real-time monitoring, and whether a free trial returned demo data. Those are not setup details. They decide whether the low price is useful.
The Twitter scraping guide covers the maintenance side in more depth. The pay-as-you-go social scraping guide explains how credit packs compare with subscriptions across platforms.
Cost controls and production checks
X provides several controls that are worth using instead of building around a spreadsheet estimate:
- Set a spending limit in the Developer Console. Requests stop when the billing-cycle limit is reached.
- Enable auto-recharge only after choosing a recharge amount that can survive a five-minute usage burst. X limits automatic top-ups to one per five-minute window.
- Track Post consumption with
GET /2/usage/tweetsand alert before the budget is gone. - Design around the 24-hour UTC deduplication window, but do not treat a soft guarantee as an accounting invariant.
- Separate owned-account reads from standard reads in the estimate. Eligible Owned Reads cost $0.001 per resource.
- Log the number of resources returned by each endpoint. Request count alone will understate read charges.
For a public-data provider, run a different checklist:
- Call the exact endpoint with a real public fixture and record
credits_charged. - Confirm ordering and pagination rather than assuming “user Posts” means every Post in newest-first order.
- Compare fields, not just result counts. A cheap response without the metric you need has no value.
- Treat
null, an empty array, a missing public object, and an upstream failure as different states. - Cache stable profile fields, but timestamp followers, views, and engagement.
- Test several ordinary accounts, not only one large public account.
- Review platform terms, privacy obligations, and your intended use with counsel when the project is sensitive.
Audience research backed up those priorities. I reviewed six YouTube transcripts, 59 unique top/new YouTube comments, and 17 fetched reply rows. The useful questions were about setup, pagination, newest data, replies, monitoring, and whether older pricing videos still applied. Four Reddit threads added a sharper distinction between reads and writes, plus repeated confusion about whether a free tier still exists. TikTok discussion was older and mostly about the previous tier shock, so I used it only as evidence that researchers and small developers care about predictable access, not as a source for current prices.
FAQ
How much does the X API cost in 2026?
X currently charges $0.005 per Post read, $0.010 per user read, and $0.015 to create a plain Post. A Post created with a URL costs $0.200. Rates vary for other resources and actions. These figures were verified against X’s pricing page on September 3, 2026.
Is the X API free?
X’s current documentation describes credit-based pay-per-use access with no subscription or minimum spend. It does not list a general free API tier. You buy credits before making billable requests. Eligible developers can earn xAI API credits after spending at least $200 in an X API billing cycle, but that is a separate reward, not free X API usage.
Does X still charge $200 or $5,000 per month?
Those numbers belong to the older Basic and Pro tier model. The current default documentation uses pay-per-use credits. Search results and videos can lag behind pricing changes, so verify the live X page rather than copying a monthly tier from an old tutorial.
Is a Twitter scraping API cheaper than the official X API?
It can cost less for public profile and Post retrieval, especially when one endpoint request returns several objects. The comparison breaks down if you need official search, posting, DMs, OAuth, private permissions, or complete archive coverage. Compare the exact fields and depth before comparing price.
What is the cheapest way to read my own X data?
X lists eligible Owned Reads at $0.001 per resource, or $1 per 1,000 resources. The authenticated user must own the developer app, the requested ID must match that user, and the endpoint must qualify. That route is a better fit than a scraper for a dashboard built around your own X account.

