Decoding DAU, MAU and CCU

In this article we will try to demystify several acronyms related to online traffic that are commonly found in the multiplayer/online lingo, but are usually not well understood.

Even without knowing anything about online gaming many of us are familiar with concepts such as “unique visits”, “daily visits” etc… which represent different metrics of online activity, typically in the context of a website traffic.

More recently, especially since the inception of social networking and online gaming, we have seen new acronyms being used such as DAU (daily active users), MAU (monthly active users) and CCU (concurrent users). But how exactly are these values calculated?, What do the represent? And how do they translate between each other?

Let’s start with DAU. This metric represents the unique daily active users. Note the “unique” qualifier, which is not represented by the acronym, but is normally implied. In other words DAU represents the number of distinct registered users that interact with the system during any specific day. To further clarify, this means that a client that logs into the application five times a day will only count as one.

In terms of website traffic, DAU is the direct equivalent of the “unique visit” / “unique user” metric, in contrast to the “visit” or “session” view which typically keeps track of all sessions during the day (i.e. five visits of the same user will count as five instead of one).

Once we have this clarified we can move on to MAU which, unsurprisingly, represents the aggregated view of DAU during the course of one month

Finally we get to CCU which is the measure of users connected at the same time in any given moment. As you can see “moment” doesn’t really define a time interval such as in DAU and MAU but rather it refers to the actual instant of the measurement. More on this in a few paragraph.

» Conversions and expectations

One of the most frequent questions we’re asked is how to estimate the number of CCU  in order to choose the right license package or to properly size the server resources, such as cloud server type, bandwidth etc…

The question usually originates from developers who already have other online projects, typically single player games, for which at least some traffic statistics are already known.

Given the DAU of an existing game, and supposing the multiplayer version will reach and possibly exceed those figures, we can approximate the average CCU required.

Depending on the game type and a number of other variables the number of CCU is roughly equal to DAU divided by a value between 50 and 100. Typically we could use an average of the two extremes. In other words:

CCU == DAU / 75

If instead of DAU we are starting from a web sessions/visits report then the value should be divided by a value between 100 and 200. Example:

CCU == Visits / 150

Keep in mind that these are rough calculations, unlikely set in stone, but still useful to get a ballpark figure to get started.

» Further refinements

In general terms DAU metrics are more precise than web stats because they are effectively based on registered users, and therefore more reliable. Having access to more fine grained views of the traffic could also help improving the soundness of our CCU predictions.

For instance, by watching the game’s traffic spikes during the day we could isolate the peak periods during the 24 hours and use those readings to infer the CCU requirements.

Another useful piece of information is the average length of the single user session which could be used as a time window to calculate our CCU estimate.

Let’s see an example: let’s consider an existing game with 2.4 Million DAU for which we’re planning to build the multiplayer version. From our statistics we know that most of the traffic is concentrated in 4 peak hours of the day, with values that are 3 times higher than the average traffic.

Finally we know that the mean game session length is approximately 6 minutes.

Let’s start by dividing the DAU into an hourly average: 2.400.000 / 24 = 100K hourly visits. If we now consider a window of time equal to the median game session length (6 min) we’ll obtain ~10K CCU. This is still a rough number, subject to oscillations, but it should give us a general idea of the number of users we’d find connected at any one time, considering the a typical session.

The 10K CCU however is not taking in consideration that our traffic is not evenly distributed throughout the day. Since we know that peak hours have 3x the traffic compared to the average metric, we can infer that during peak hours we will have ~30K CCU during any 6 minute game session.

If we now go back to our initial 2.4M DAU value and compare it with the final 30K CCU estimate we have extrapolated we find a factor of 80x, which is close enough to the 75x value we have postulated at the beginning.

» Final thoughts

In conclusion the average session length seem a good parameter, in conjunction with DAU and the other more fine grained metrics, to estimate the expected CCU.

This is essentially because while DAU and MAU are values specified over a well defined time interval, the CCU metric is not. CCU is indicative of a specific instant and yet we have to make a projection of its progression during the 24 hours.