Max user streams we can subscribe to?


How many user streams can I subscribe to using standard streaming API? We currently subscribed to a few hundred, but want to plan for scaling. Can we subscribe to many thousands?

Does it change if we use auth tokens for the users?

Can we use multiple app ids to do this?

Does using multiple IP addresses help?

I can’t find thorough documentation on this, and would love some clarity so we can plan for scale.


See [node:14935] for some related discussion that you may find really helpful.

If you’re using’s filter.json method with the follow parameter, you can “follow” up to 5000 users per stream. Your application should only have a single open stream to represent itself in entirety. You should not connect on behalf of your users directly, but instead the access token should represent your application itself. Multiple IP addresses, multiple app IDs, etc are all ways toward ruin for apps like this. You can follow up to 5000 users using this model, and 400 track terms. If you need to go beyond that, you’ll probably want to start thinking about certified partner providers of Twitter data.


Thanks Taylor. This is exactly what I was looking for. I don’t want to violate any policies. We aren’t tracking any terms, so it sounds like we are ok up until 5000. Given that we have (or could have) auth tokens for all these streams, is there any other mechanism or limit before we have to start paying gnip/datasift? These streams are being used by end users for manual curation, not for data mining or anything like that. We are also not trying to recreate a twitter client ala tweetdeck, which I imagine uses individual tokens and a client side stream.


You might want to start prioritizing your users at some point – stream on behalf of users you identify to be higher velocity (or paying customers…) and use the REST API for the others.

Also, feel free to apply for Site Streams access now, though the beta is constrained at the moment and it can be difficult to get in – by applying now you’ll at least have communicated your interest ahead of time.