Credits and billing
What costs what, and what is free.
One credit is one tweet or one profile returned to you. You buy credits in packs and spend them at any pace.
Packs
| Pack | Price | Credits | Per 1,000 |
|---|---|---|---|
| Free | $0 | 5,000, once | $0 |
| Starter | $10 | 80,000 | $0.125 |
| Builder | $50 | 500,000 | $0.100 |
| Growth | $200 | 2,500,000 | $0.080 |
| Scale | $600 | 10,000,000 | $0.060 |
Enterprise packs from $2,000 with invoice billing and a signed SLA: hello@tweetapi.dev.
Rules
- Credits last 12 months from purchase. Free credits never expire.
- No per-call minimum. A request that returns nothing costs nothing.
- Failed requests are free. Any status other than
200charges zero. - Cache hits cost half. Responses are cached for a short time per endpoint; a hit is marked
"cache": "hit". fresh=truebypasses the cache at double the price.- A charge never takes the balance below zero. At zero the API answers
402with a link to buy more. - One wallet per account. All packs land in the same balance; the oldest credits are spent first.
- Full refund of an unused pack within 7 days.
Price per item
| Item | Credits |
|---|---|
| Tweet from any endpoint | 1 |
| Profile | 1 |
| Follower or following entry | 0.1 |
| Cached item | half of the above |
fresh=true item | double the above |
Empty result, error, 404, 403 | 0 |
Reading the bill
Every response has credits_charged and balance_remaining. The same numbers are in the x-credits-charged and
x-balance-remaining headers, so a proxy can meter without parsing the body.
SLA credit
For each full hour where the public status page shows success under 99.9 percent, every customer who made a failed request in that hour gets 2 percent of their last pack back as credits. Applied automatically.