READ API LIVEBuild on /v1 for search, profiles, timelines, audience graph, and tweet context.READ DOCS
Pricing

Twitter API and account monitor pricing.

Start with 1,000 API credits. Choose PAYG or a monthly API plan, then use its included account-monitor capacity. The extra-account rate is $3 / month.

vs the official X APISelf-serve signup, public pricing, and one dashboard API key. Start with Google sign-in and ship your first read.See the side-by-side →
Starter

For your first integration. Ship a real read workflow.

$19/mo
Save 29%
$0.150$0.106 / 1K credits
  • 180,000 credits / month
  • 180K single-tweet lookups · 16K 10-tweet searches
  • 600 requests / minute (~10 QPS)
  • 2 account-monitor slots included
Growth

For steady, dependable production reads.

$49/mo
Save 40%
$0.150$0.089 / 1K credits
  • 550,000 credits / month
  • 550K single-tweet lookups · 50K 10-tweet searches
  • 900 requests / minute (~15 QPS)
  • 5 account-monitor slots included
Pro

More monthly volume for busy read pipelines.

$129/mo
Save 52%
$0.150$0.072 / 1K credits
  • 1,800,000 credits / month
  • 1.8M single-tweet lookups · 163K 10-tweet searches
  • 1,500 requests / minute (~25 QPS)
  • 10 account-monitor slots included
Scale

Lowest per-credit rate for sustained high-volume reads.

$349/mo
Save 61%
$0.150$0.058 / 1K credits
  • 6,000,000 credits / month
  • 6M single-tweet lookups · 545K 10-tweet searches
  • 2,400 requests / minute (~40 QPS)
  • 25 account-monitor slots included

Every plan: full live /v1 + /2 read surface · opaque pagination tokens · no endpoint gating by tier

Account monitors are separate from API credits: deliveries never spend them. Free and PAYG include one 10-day trial slot; monthly plans include monitor slots (Starter 2, Growth 5, Pro 10, Scale 25). The extra-account rate is $3 / account / month. See how account monitors work →

Start free before choosing a plan. Every new account starts with 1,000 credits — spend them on any live endpoint, no card and no expiry. Add a plan later, once your volume is clear.

Monthly credits renew each billing period and expire at the end of it. Need flexibility instead? See pay-as-you-go ↓

Need more than Scale's 6,000,000 credits / month? Get in touch →

Pay as you go

No commitment? Top up any time.

Buy credits outright when you don't want a subscription. Custom amount from $10 at $0.150 / 1K credits, rounded up to the next whole credit. Cancel anytime by not topping up again — there's nothing to cancel.

  • Top-up credits don't expire
  • 300 requests / minute (~5 QPS)
  • Upgrade to a monthly plan when volume gets predictable
  • $1066,667 credits
  • $25166,667 credits
  • $50333,334 credits
How per-call pricing works

Current rules, then every key.

  1. 01

    Single lookups

    1 credit

    “Get this user. Get this tweet.”

  2. 02

    Collections and search

    1 base + 1 per returned item

    “Search recent posts. Read follower profiles.”

  3. 03

    Workflow APIs

    Base + returned workflow items

    “tweet.context = 1 + quotes/retweeters. profile.lookup = 1 + recent tweets. search.enriched = 1 + 2/tweet.”

  4. 04

    Bulk graph IDs

    1 base + 1 per 50 IDs

    “Followers and following IDs use the block rate.”

Every active pricing key with its current credit cost. These are billing dimensions, not the route count: the same keys cover 31 /v1 read routes and 14 /2 compatibility routes. Keys are public product contracts — pricing.md is the same data in markdown, suitable for AI agents comparing tools programmatically.

View all 33 pricing keysShowHide
Pricing keyWhat it doesStatusCost
trend.lookupTrends by WOEID.Live1 base + 1 per item
user.lookupSingle user by id or username.LiveFlat 1 credit
tweet.lookupSingle tweet by id.LiveFlat 1 credit
user.tweetsA user's recent tweets with paginated next_token.Live1 base + 1 per item
user.tweets.repliesReplies authored by a user.Live1 base + 1 per item
user.mediaA user's media-bearing tweets.Live1 base + 1 per item
user.followersFollower profiles.Live1 base + 1 per item
user.followers.idsFollower ids for high-volume graph reads.Live1 base + 1 per 50 items
user.followers.profilesFollower profile objects for enriched graph reads.Live1 base + 1 per item
user.followers.verifiedVerified followers for a user.Live1 base + 1 per item
user.followingFollowing profiles.Live1 base + 1 per item
user.following.idsFollowing ids for high-volume graph reads.Live1 base + 1 per 50 items
user.following.profilesFollowing profile objects for enriched graph reads.Live1 base + 1 per item
user.relationshipBidirectional follow relationship between two accounts.LiveFlat 1 credit
search.recentRecent search by keyword, URL, hashtag, cashtag, or author filter.Live1 base + 1 per item
search.enrichedRecent search with deduped author objects for the page.Live1 base + 2 per item
user.multiBatch user lookup by ids.Live1 base + 1 per item
tweet.multiBatch tweet lookup by ids.Live1 base + 1 per item
tweet.retweetersAccounts that retweeted a tweet.Live1 base + 1 per item
tweet.quotesQuote tweets for a tweet.Live1 base + 1 per item
tweet.conversationPaginated reply thread under a tweet.Live1 base + 1 per item
tweet.threadRoot author's self-thread reconstructed from the conversation.Live1 base + 1 per item
tweet.articleNormalized X long-form Article for a tweet, as ordered content blocks.LiveFlat 1 credit
tweet.contextTweet context workflow with author, quotes, and retweeters.Live1 base + 1 per item
list.tweetsTweets from a list.Live1 base + 1 per item
list.membersList member profiles.Live1 base + 1 per item
list.followersList follower profiles.Live1 base + 1 per item
community.lookupCommunity by id.LiveFlat 1 credit
community.searchSearch communities.Live1 base + 1 per item
community.tweetsTweets from a community.Live1 base + 1 per item
community.membersMembers of a community.Live1 base + 1 per item
community.moderatorsModerators of a community.Live1 base + 1 per item
profile.lookupProfile workflow with user details and recent tweets.Live1 base + 1 per item
What we never charge for

You only pay when it works.

400Failed input validation
401 / 403Auth failures
402Insufficient credits
429Rate limit responses
5xxService-side failures

Five categories of failure. None of them touch your balance.

Frequently asked

Common questions.

Can I evaluate xfetch before signing up?
The API reference shows live request/response samples on every endpoint, and the full machine-readable contract is at /openapi.json. Sign in with Google to run real requests against your own API key in the dashboard playground.
Do credits expire?
Free credits and PAYG credits do not expire. Monthly credit allotments expire at the end of each subscription period.
Do account monitors cost credits?
No — monitor deliveries don't draw down API credits. Monitor billing is separate: Free and PAYG include one 10-day trial slot; monthly plans include monitor slots (Starter 2, Growth 5, Pro 10, Scale 25). Each slot watches one account and can deliver to one Discord channel and one generic webhook; use another slot to send the same account to another Discord channel. The extra-account rate is $3 per account / month.
What happens when I run out?
A request that starts below its minimum cost returns 402 insufficient_credits and is not charged. A variable-cost read that passed preflight can finish successfully and leave a small negative balance; later calls return 402 until the balance is restored. Successful /v1 responses return the charged amount and remaining balance in meta.credits; /2 responses use credit headers.
Is xfetch ready for commercial use?
Yes. Sign up with Google, mint an API key, and ship. xfetch is read-only and provider-neutral by design — your code targets the xfetch contract, not an upstream API. See the Terms of Service for the full agreement.
Can I change plans?
Yes. Manage your subscription from the billing dashboard. Upgrades take effect immediately and use prorated billing; downgrades take effect at the end of the current billing period. Canceling keeps the current period active and stops the next renewal. See our refund policy for billing-exception details.
What happens if a request fails?
Customer API failures return stable public error codes, and service-side failures are not charged.
Do you have an SDK?
xfetch returns plain JSON over REST and works with any HTTP client: curl, Node fetch, Python requests, or Go net/http. The OpenAPI contract at /openapi.json can generate typed clients in most languages.

Start with data.
Or start with a monitor.

Get 1,000 API credits, or watch one public account free for 10 days. Both paths begin with Google sign-in.