Pricing, Plans, and Cost per Request
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
| Starter | Pro | Enterprise | |
|---|---|---|---|
| Monthly requests | 10,000 | 100,000 | 500,000 |
| Price | $49/mo | $199/mo | $899/mo |
| Cost per request | $0.0049 | $0.00199 | $0.0018 |
| Rate limit | 20 req/s | 20 req/s | 20 req/s |
| All endpoints included | Yes | Yes | Yes |
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-batchand/tweet-info-bulklet 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 1,000 Data Units
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
| Endpoint | Items per request | Requests for 1K items | Starter | Pro | Enterprise |
|---|---|---|---|---|---|
/search-tweets | ~20 tweets | 50 | $0.25 | $0.10 | $0.09 |
/user-tweets | ~20 tweets | 50 | $0.25 | $0.10 | $0.09 |
/mentions | ~20 tweets | 50 | $0.25 | $0.10 | $0.09 |
/comments | ~20 tweets | 50 | $0.25 | $0.10 | $0.09 |
/quotes | ~20 tweets | 50 | $0.25 | $0.10 | $0.09 |
/list-tweets | ~20 tweets | 50 | $0.25 | $0.10 | $0.09 |
/tweet-info-bulk | up to 100 tweets | 10 | $0.05 | $0.02 | $0.018 |
/tweet-info | 1 tweet | 1,000 | $4.90 | $1.99 | $1.80 |
/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.10 per 1,000 tweets on Pro.
User Profile Data
| Endpoint | Items per request | Requests for 1K items | Starter | Pro | Enterprise |
|---|---|---|---|---|---|
/followers | up to 200 users | 5 | $0.025 | $0.01 | $0.009 |
/follows | up to 200 users | 5 | $0.025 | $0.01 | $0.009 |
/verified-followers | up to 200 users | 5 | $0.025 | $0.01 | $0.009 |
/community-members | ~20 users | 50 | $0.25 | $0.10 | $0.09 |
/list-members | ~20 users | 50 | $0.25 | $0.10 | $0.09 |
/retweets (users who RT’d) | ~20 users | 50 | $0.25 | $0.10 | $0.09 |
/search-users | ~20 users | 50 | $0.25 | $0.10 | $0.09 |
/info-batch | multiple profiles | ~10 | $0.05 | $0.02 | $0.018 |
/info | 1 profile | 1,000 | $4.90 | $1.99 | $1.80 |
/info-batch instead of looping /info.
Verification Checks
| Endpoint | Items per request | Requests for 1K checks | Starter | Pro | Enterprise |
|---|---|---|---|---|---|
/check-follow | 1 check | 1,000 | $4.90 | $1.99 | $1.80 |
/check-retweet | 1 check | 1,000 | $4.90 | $1.99 | $1.80 |
/check-quoted | 1 check | 1,000 | $4.90 | $1.99 | $1.80 |
/check-comment | 1 check | 1,000 | $4.90 | $1.99 | $1.80 |
/check-community-member | 1 check | 1,000 | $4.90 | $1.99 | $1.80 |
Utility Endpoints
| Endpoint | Items per request | Requests for 1K items | Starter | Pro | Enterprise |
|---|---|---|---|---|---|
/about (country data) | 1 result | 1,000 | $4.90 | $1.99 | $1.80 |
/username-to-id | 1 conversion | 1,000 | $4.90 | $1.99 | $1.80 |
/id-to-username | 1 conversion | 1,000 | $4.90 | $1.99 | $1.80 |
/link-to-id | 1 conversion | 1,000 | $4.90 | $1.99 | $1.80 |
/score | 1 result | 1,000 | $4.90 | $1.99 | $1.80 |
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.
Comparing Sorsa to Official X API Pricing
| X API Free | X API Basic | X API Pro | Sorsa Starter | Sorsa Pro | Sorsa Enterprise | |
|---|---|---|---|---|---|---|
| Price | $0 | $100/mo | $5,000/mo | $49/mo | $199/mo | $899/mo |
| Monthly requests | 1,500 tweets read | 10,000 tweets read | 1M tweets read | 10,000 requests | 100,000 requests | 500,000 requests |
| Historical search | 7 days | 7 days | 30 days (full archive at Enterprise) | Full archive | Full archive | Full archive |
| Auth complexity | OAuth 2.0 | OAuth 2.0 | OAuth 2.0 | API key header | API key header | API key header |
| User data in tweet responses | Requires expansions param | Requires expansions param | Requires expansions param | Always included | Always included | Always included |
/search-tweets returns ~20 tweets, so 100,000 Sorsa requests on Pro yield approximately 2,000,000 tweets - comparable to X API Pro at 4% of the price.
Checking Your Current Usage
UseGET /v3/key-usage-info to see your current request consumption and remaining quota:
key_requests- requests used so far in the current billing periodremaining_requests- requests remainingtotal_requests- total quota for the planvalid_until- when the current billing period ends
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 38 endpoints.