API rate limits
Our API rate limits are designed to act as safety measures and should not interfere with normal usage. These limits apply per app and per endpoint. These quotas are based on when the request is made, not when the response is received.| Endpoint | Rate Limit |
|---|---|
| Create notification | Free plans: 150 requests/sec/app Paid plans: 6,000 requests/sec/app Each request can target multiple users or audiences. |
| Creating, updating, or deleting users or subscriptions | 1000 requests/sec/app 1 request/sec/user or subscription Up to 100 property modifications per request. |
| View messages, View templates, View user, View message | 1 request/sec/app 10 requests/sec look-back. |
| Message History, Audience Activity CSV | Please keep parallel request sizes under 100 GB per file. |
429 response:
Retry-After header with the number of seconds to wait before retrying. Monitor your app’s API usage patterns and implement exponential backoff when handling 429 errors.
Application rate limits
In a rolling 15-minute window, you may not send more than 10x your total number of subscribed users. For example:- 1,000 subscribers = max 10,000 messages within any 15-minute window.
- 500,000 subscribers = max 5,000,000 messages within any 15-minute window.
- Your app may be temporarily disabled.
- An email will be sent to all App Administrators.
- A banner will appear in your Dashboard with a re-enable button.

Example dashboard banner to re-enable your app when hitting the application rate limit.
support@onesignal.com for assistance.
Common scenarios
| Scenario | Rate Limit Triggered? |
|---|---|
| 1 notification to 1,000 users | ❌ No |
| 10 notifications to 1,000 users each | ✅ Yes (10 × 1,000 = 10,000) |
| 10,000 notifications to 1 user each | ✅ Yes |
| 9 notifications to 1,000 users in 14 minutes, then 1 more after 1 minute | ❌ No (new 15-min window) |
| 9 notifications to 1,000 users in 14 minutes, then 9 more after 1 minute | ❌ No (static 15-min windows) |
FAQ
Do apps get disabled if API limits are reached?
No. API rate limit breaches result in temporary throttling (429), but apps are not disabled.
Will I be notified when my app is disabled?
Yes. All app administrators receive an email when the app is disabled or re-enabled, including date and time details. Anyone with access to the app can re-enable it. If you need help re-enabling your app, emailsupport@onesignal.com for assistance.
Will my app be automatically re-enabled?
No. You must manually re-enable it via the Dashboard. Investigate and fix any issues that caused the spike in messages.How do I re-enable my app?
- Review your code for issues (e.g., infinite loops or retry storms).
- Log into the Dashboard.
- Click the re-enable link in the red banner at the top.
support@onesignal.com for assistance.