13

How exactly are concurrent users determined for a Firebase app?

It seems in the analysis panel that there are more peak concurrent users than I have had browser windows open using my app.

I'm a little worried about committing to FB for the future with the 1000 concurrent limit, but perhaps I'm overestimating the popularity of my app and likelihood of ever reaching that limit. :)

georgedyer
  • 2,737
  • 1
  • 21
  • 25

1 Answers1

14

A concurrent user is a single client (browser tab, mobile app, Node.js process, etc) connected to Firebase at a time. If you have 3 browser tabs open, you should see 3 concurrent users (note that the stats in our analytics dashboard are a little bit delayed).

In our experience, on average, 1 concurrent user is equivalent to ~1400 visits per month to a website. 1000 is a very large number of concurrent users for most apps, and fewer than 1% of Firebase apps ever reach this.

Note that Firebase is capable of powering apps well beyond 1000 concurrent users, so if you have a bigger app (even a much, much bigger app), it's not a problem.

Frank van Puffelen
  • 565,676
  • 79
  • 828
  • 807
Andrew Lee
  • 10,127
  • 3
  • 46
  • 40
  • This is what I was hoping. Thanks for the quick response! – georgedyer Jan 13 '13 at 21:16
  • @Andrew, can you clarify your comment a bit more? If I use Firebase in an android app, 1000 app installs (which is very small install base for an app), will mean 1000 concurrent users (if they connect at the same time). Isn't this correct? – Sameera Jul 05 '13 at 04:45
  • 1
    In theory that would. But them connecting at the same time is incredibly unlikely. On the average app I'd expect < 1% to be connected at any one time. Even on hugely engaging apps with a paid monthly subscription, you're unlikely to see more than 5-10% active at peak times: http://www.forbes.com/sites/erikkain/2012/01/12/riots-league-of-legends-surpasses-world-of-warcraft-as-number-one-mmo/ – Andrew Lee Jul 05 '13 at 16:20
  • 1
    I would suggest trying a "dark launch" in an existing app of yours (connect to Firebase but don't actually do anything). You'll be able to see concurrent users in the Analytics tab in Forge. I have a hunch it will be orders of magnitude smaller than you think. – Andrew Lee Jul 05 '13 at 16:23
  • If do addValueEventListener from an Android Service (Background task) that writes data to my local database to it keep in sync - will this be counted as 1 concurrent user, and will I end up with 1 concurrent connection per user in this scenario? – Glenn Bech Aug 05 '13 at 15:03
  • Re: Glenn. Yes, and yes you will. A concurrent connection is any device with an open connection to our servers. – Andrew Lee Aug 05 '13 at 19:21
  • 10
    How about multiple ValueEventListeners. Do they add more than one connection? And how about the case where I write data, while the ValueEventListener is listening. I assume that the client will consume 2 connections for a very short while (the duration of the write?) I am working on an app, as you might guess, that requires a constant connection to my Firebase. A section on this in the FAQ would have been super. (Awsome product by the way) – Glenn Bech Aug 27 '13 at 20:39
  • 7
    @AndrewLee as Android does not actually 'close' apps in the traditional sense, is there a chance that this 'connection' persists long after the user has actually left the app? From debug, I could see that my listeners were still active after the user has exited the app (via the Home button)... and they were still receiving messages. Thanks. – Neil Feb 12 '14 at 22:43
  • @AndrewLee can firebase handle 10,00,000 concurrent connections?? – Gijo Varghese Jan 29 '16 at 01:11
  • @Neil Did you find out the answer to your comment above? – Shaharyar Jul 31 '16 at 18:36