Rate Limits

Every application is rate limited at the API endpoint. These limits are set on a 1-minute, 15-minute, and 1-hour time windows; API requests have specific rate limits. For example, reading a feed has a different limit than establishing a follow relationship.

What Happens When You’re Rate Limited

If an API call exceeds a rate limit during the target time window, subsequent requests for the same API function will be rejected. The payload returned for that API call will indicate that rate-limiting has occurred.

If your application becomes rate-limited, it doesn’t block other API calls from working. For example, hitting a rate limit on follows will still allow you to read feeds. Each ‘resource’ is rate-limited separately.

Rate limits are reset at the end of each time window.

How To Avoid Rejected API Requests

For Premium and Enterprise plans, Stream will review your feed group architecture, and set higher rate limits for your production application. For other paid plans, you will need to review responses from Stream to watch for error conditions indicating that your API request was rate-limited and retry. We recommend implementing an exponential back-off retry mechanism.

Rate Limits

API RequestCalls per minuteCalls per 15 minutesCalls per hour
Adding Activities1,00012,00048,000
Removing Activities3003,60014,400
Updating Activities2503,00012,000
Updating Activity To Targets2503,00012,000
Reading Feeds2,00024,00096,000
Following Feeds5006,00024,000
Unfollowing Feeds2503,00012,000
Reading Feed Followers2002,4009,600
Reading Followed Feeds5006,00024,000
Batch Follow2503,00012,000
Batch Unfollow000
Collections upsert2503,00012,000
Collections select2503,00012,000
Collections delete many2503,00012,000
Collection read1,00010,000100,000
Collections add1,00010,000100,000
Collections remove1,00010,000100,000
Collections update1,00010,000100,000
User add1,00010,000100,000
User read1,00010,000100,000
User update1,00010,000100,000
User delete1,00010,000100,000
Reaction add1,00010,000100,000
Reaction read1,00010,000100,000
Reaction update1,00010,000100,000
Reaction delete1,00010,000100,000
Image upload2503,00012,000
Image processing2503,00012,000
Image delete2503,00012,000
File upload2503,00012,000
File delete2503,00012,000
Analytics Track Engagement1,00010,000100,000
Analytics Track Impression1,00010,000100,000
Analytics Track and Redirect1,00010,000100,000

Batch Unfollow is disabled by default and requires a paid subscription.

© Getstream.io, Inc. All Rights Reserved.