Rate Limits
Monthly quotas, burst limits, and how to handle rate limiting.
Monthly Quotas
Each plan has monthly limits that reset on the 1st of each month (UTC):
| Plan | Posts/mo | Scheduled/mo | Accounts | Price |
|---|---|---|---|---|
| Free | 50 | 25 | 1 | $0 |
| Starter | 1,000 | 500 | 3 | $19/mo |
| Pro | 5,000 | 2,500 | 10 | $49/mo |
| Scale | 25,000+ | 12,500+ | 25+ | Custom |
| Enterprise | Unlimited | Unlimited | Unlimited | Custom |
Burst Rate Limiting
To prevent abuse, API requests are limited to 60 requests per minute per API key (sliding window). This is separate from monthly quotas.
Overage
- Free plan: Hard limit — posts are rejected after the quota is reached
- Paid plans: Overage is allowed at $0.01 per post (Starter) or $0.008 per post (Pro) over the limit
Handling 429 Responses
When you hit a limit, the API returns 429:
{
"error": {
"code": "rate_limited",
"message": "Monthly post limit exceeded (50/50 used). Upgrade your plan at chirpie.ai/dashboard/billing"
}
}Best Practices
- Check your usage before bulk operations — use the dashboard billing page
- Implement exponential backoff for burst rate limits
- Batch scheduling — schedule posts with staggered times rather than posting all at once
- Use threads — a 10-post thread is one API call (though it counts as 10 posts against your quota)
X/Twitter Rate Limits
X also enforces its own rate limits (approximately 200 tweets/user/day). If X rate-limits your account, Chirpie returns a 502 error. Scheduled posts will be retried automatically.