Skip to main content

Pricing, Plans, and Cost per Reques

Sorsa API uses a flat pricing model: 1 API call = 1 request from your quota, regardless of which endpoint you hit. A complex tweet search costs the same as a simple ID conversion. There are no “credit multipliers,” no per-endpoint pricing tiers, and no hidden charges for user data embedded in tweet responses. This page explains the available plans, breaks down the effective cost per data unit for every endpoint, and shows how to estimate your monthly spend for common workflows.

Plans

StarterProEnterprise
Monthly requests10,000100,000500,000
Price$49/mo$199/mo$899/mo
Cost per request$0.0049$0.00199$0.0018
Rate limit20 req/s20 req/s20 req/s
All endpoints includedYesYesYes
Custom plans. If you need more than 500,000 requests per month - whether for AI training, large-scale scraping, or continuous monitoring across thousands of accounts - we offer custom volumes with dedicated rate limits. Contact [email protected] or reach us on Discord. Rate limit is the same on all standard plans. Every plan gets 20 requests per second. Upgrading from Starter to Pro does not change your speed, only your monthly quota. Custom enterprise plans can include higher rate limits if needed.

The Flat-Rate Principle

Many X data providers use credit-based pricing where different endpoints consume different numbers of credits per call. A search might cost 25 credits, a profile lookup 5 credits, and a follower extraction 50 credits. This makes budgeting difficult and creates situations where the same data costs wildly different amounts depending on how you access it. Sorsa does not work this way. Every request to every endpoint costs exactly 1 request from your quota. Additionally:
  • User data is included for free in tweet responses. When /search-tweets, /user-tweets, /comments, /mentions, or any tweet endpoint returns results, each tweet includes the full author profile (ID, username, bio, follower count, verified status, etc.). You are not charged extra for this embedded data.
  • Batch endpoints exist for high-volume lookups. /info-batch and /tweet-info-bulk let you fetch multiple items in a single request, so the effective cost per item drops significantly when you use them.
  • Follower/following endpoints return up to 200 profiles per request. This is among the highest per-request yields in the industry.

Cost per Data Unit

The real question is not “how much does a request cost?” but “how much does it cost to get the data I need?” The answer depends on how many items each endpoint returns per request.

Tweet Data

EndpointItems per requestStarterProEnterprise
/search-tweets~20 tweets$0.00025$0.0001$0.00009
/user-tweets~20 tweets$0.00025$0.0001$0.00009
/mentions~20 tweets$0.00025$0.0001$0.00009
/comments~20 tweets$0.00025$0.0001$0.00009
/quotes~20 tweets$0.00025$0.0001$0.00009
/list-tweets~20 tweets$0.00025$0.0001$0.00009
/tweet-info-bulkup to 100 tweets$0.00005$0.00002$0.000018
/tweet-info1 tweet$0.0049$0.00199$0.0018
Takeaway: Always use /tweet-info-bulk instead of looping /tweet-info. The cost difference is 100x. For collecting tweets by keyword, topic, or user, the search/timeline endpoints are the most efficient at ~$0.0001 per tweet on Pro.

User Profile Data

EndpointItems per requestStarterProEnterprise
/followersup to 200 users$0.000025$0.00001$0.000009
/followsup to 200 users$0.000025$0.00001$0.000009
/verified-followersup to 200 users$0.000025$0.00001$0.000009
/community-members~20 users$0.00025$0.0001$0.00009
/list-members~20 users$0.00025$0.0001$0.00009
/retweets (users who RT’d)~20 users$0.00025$0.0001$0.00009
/search-users~20 users$0.00025$0.0001$0.00009
/info-batchup to 100 profiles$0.00005$0.00002$0.000018
/info1 profile$0.0049$0.00199$0.0018
Takeaway: Follower/following extraction is extremely cost-efficient at $0.00001 per profile on Pro. For bulk profile lookups, always use /info-batch instead of looping /info.

Verification Checks

EndpointItems per requestStarterProEnterprise
/check-follow1 check$0.0049$0.00199$0.0018
/check-retweet1 check$0.0049$0.00199$0.0018
/check-quoted1 check$0.0049$0.00199$0.0018
/check-comment1 check$0.0049$0.00199$0.0018
/check-community-member1 check$0.0049$0.00199$0.0018
Verification endpoints are one-check-per-request by design (each checks a specific user against a specific action). For campaigns with 1,000 participants and 5 tasks each, budget 5,000 requests.

Utility Endpoints

EndpointItems per requestStarterProEnterprise
/about (country data)1 result$0.0049$0.00199$0.0018
/username-to-id1 conversion$0.0049$0.00199$0.0018
/id-to-username1 conversion$0.0049$0.00199$0.0018
/link-to-id1 conversion$0.0049$0.00199$0.0018
/score1 result$0.0049$0.00199$0.0018

Free Data: What You Get Without Extra Requests

Some data comes at zero additional cost because it is embedded in responses you are already making: User profiles inside tweet responses. Every tweet from /search-tweets, /user-tweets, /mentions, /comments, /quotes, and /list-tweets includes the full author profile. If you search for 1,000 tweets and they come from 400 unique users, you now have 400 complete profiles without a single /info call. Comment text inside verification responses. When /check-comment returns commented: true, the response includes the full tweet object of the comment. No need to call /comments separately to read what the user wrote. Quote text inside quote verification. When /check-quoted returns status: "quoted", the response includes the quote text and timestamp. Tweet data inside /article. The /article endpoint returns the full article text, engagement metrics, and the author profile in one call.

Budget Estimation for Common Workflows

Social Listening: Monitor a keyword and collect tweets

You poll /search-tweets every 30 seconds, 24/7, to capture tweets about your brand.
  • 1 request per 30 seconds = 2 req/min = 2,880 req/day = 86,400 req/month
  • Fits in the Pro plan ($199/mo)
  • Each request returns ~20 tweets, so you collect up to ~1.7M tweets/month

Competitor Analysis: Profile + content + mentions for 5 competitors

  • 5 profile lookups via /info: 5 requests
  • 50 pages of tweets per competitor via /user-tweets: 250 requests
  • 10 pages of mentions per competitor via /mentions: 50 requests
  • Total per run: 305 requests
  • Run weekly: 1,220 req/month - fits comfortably in the Starter plan

Audience Research: Extract and geo-analyze 50,000 followers

  • 50,000 followers via /followers (200/page): 250 requests
  • 50,000 country lookups via /about: 50,000 requests
  • Total: 50,250 requests
  • Fits in the Pro plan ($199/mo)
  • Cost: ~$100 (50,250 x $0.00199)

Campaign Verification: 2,000 participants, 5 tasks each

  • 2,000 x 5 verification checks: 10,000 requests
  • Fits in the Starter plan ($49/mo)

Large-Scale Data Collection: Full timeline scrape of 100 accounts

  • Average 500 tweets per account, ~20 per page = 25 pages per account
  • 100 accounts x 25 pages = 2,500 requests
  • Plus you get ~50,000 tweets with embedded user profiles
  • Fits in the Starter plan ($49/mo)

Real-Time Monitoring: Track 200 accounts via X List, 5-second interval

  • 1 request per 5 seconds = 17,280 req/day = 518,400 req/month
  • Requires the Enterprise plan ($899/mo) or a custom plan
  • Covers all 200 accounts with a single request per cycle

Cost Optimization Strategies

These are covered in depth in the Optimizing API Usage guide, but here is the summary: Use batch endpoints. /tweet-info-bulk (100 tweets/request) and /info-batch (multiple profiles/request) exist specifically to reduce request counts for bulk lookups. Use /list-tweets for multi-account monitoring. Monitoring 50 accounts individually costs 50x more requests than grouping them in an X List and polling once. Extract user data from tweet responses. Every tweet endpoint embeds author profiles. Build your user database from search and timeline results instead of making separate /info calls. Use /info instead of conversion + lookup. If you need both the User ID and the full profile, call /info once (it accepts usernames, IDs, and links) instead of calling /username-to-id then /info separately. Choose the right plan for your volume. Moving from Starter to Pro cuts your cost per request by 59% ($0.0049 to $0.00199). Moving from Pro to Enterprise cuts it by another 10%. If you consistently use more than 80% of your plan’s quota, upgrading saves money.
How does Sorsa compare to the official X API? Significantly cheaper. The official X API Pro plan costs $5,000/mo for 1M tweets read. On Sorsa Pro at $199/mo, you get 100,000 requests that yield approximately 2M tweets - comparable volume at roughly 4% of the price. Authentication is also simpler: a single API key header instead of OAuth 2.0. We cover this comparison in detail in a dedicated article.

Checking Your Current Usage

Use GET /key-usage-info to see your current request consumption and remaining quota:
curl "https://api.sorsa.io/v3/key-usage-info" \
  -H "ApiKey: YOUR_API_KEY"
{
  "key_requests": 100,
  "remaining_requests": 99900,
  "total_requests": 100000,
  "valid_until": "2026-04-01T00:00:00Z"
}
  • key_requests - requests used so far in the current billing period
  • remaining_requests - requests remaining
  • total_requests - total quota for the plan
  • valid_until - when the current billing period ends
Build this check into your monitoring scripts to alert you before you approach your quota limit. You can also view usage history visually on the Usage stats dashboard page.

Next Steps

  • Optimizing API Usage - detailed patterns for deduplication, batch endpoints, and avoiding redundant calls.
  • Rate Limits - handling 20 req/s rate limits, 429 errors, and backoff strategies.
  • API Reference - full specification for all endpoints.