We are often being asked why our subscription plans¬†for Photon Cloud products (Realtime, PUN, Chat, Voice) are based on concurrent users (=CCU)¬†and our answer is always the same:
because we strongly believe that it is the most transparent and fairest model for our customers.
Read the following why we think so and see a comparison with some competitors.
The Logic Behind¬†Photon’s Pricing
The most important thing when we planned Photon’s pricing was to make it as affordable as possible for everyone. We always loved how Unity democratized game development and we wanted to do the same by empowering everyone to create and launch stunning multiplayer experiences¬†on a global scale.
Therefore we also needed a predictable and worry free pricing. We knew that CCU and data traffic are mainly driving our costs, so we used that as a start. We quickly found, that calculating data traffic for a game is pretty hard. Even in case you have launched a similar game before, your new game can vary a lot in terms of data traffic. On the other hand data traffic is a huge cost driver. Our solution was to include a 500 message limit per room in our price model. We knew that this limit is¬†not compromising creating great games, but it simply¬†prevents that some developers are over-exploiting our service by sending too much unnecessary data which would harm everyone in the end as we would need to raise our pricing then. In order to make that as transparent as possible we introduced a calculating tool on our website which shows how many messages are sent around (see pictured to the right).
We also knew that no one really knows how many CCU he can expect¬†before a game is launched. Therefore we decided against charging purely on a per CCU basis and went with
4 subscription plans: free, 100 CCU, 500 CCU & 1,000 CCU. This serves two purposes: a) you know exactly what your monthly bill is going to be and b) we can better plan our server capacities.
If you have a Photon 500 CCU plan, ¬†you want us to deliver 500 CCU. Therefore we need to make sure we have enough servers to handle your peak CCUs. We can’t simply switch servers on/off as we host on top-notch IBM SoftLayer bare-metal servers that include¬†an excellent pricing for data traffic. Please note that data traffic pricing in clouds like Amazon AWS or MS Azure¬†is so much¬†more expensive and¬†we would need to charge our customers a multiple of our current fees just because of traffic costs. Not an option.
However, we are giving most of those free resources back¬†to our customers with Photon’s CCU burst feature. CCU burst is activated¬†by default for all plans with 500 CCU or more and¬†allows your game to exceed your CCU limit without being charged anything. That means you do not have to worry a) that you have to pay more than you have calculated and b)¬†that your game is getting blocked and users are cut out of service. Of course you can always upgrade your Photon CCU plan or downgrade it.
Some indies do worry about reaching high CCU numbers as they are afraid that they cannot pay us then and would need to stick to a lower CCU plan. Please note, that if you are >500¬†CCU it means¬†that your game is a success with about 200k MAU. You will earn enough to pay us. If not – please be assured this has happened not a single time until today –¬†get in touch with us and we’ll find a way. We have zero interest in cutting our customers success. ¬†So in case you want to launch your game with Photon for the first time we recommend to go with the Photon 500 CCU plan with the CCU burst. It costs you US$95 only and provides you game hosting¬†spread all over the world in Photon Cloud.
MAU, DAU and Bandwidth – Intransparent & Hard to Calculate
Pricing plans based on MAU, DAU or messages sent/received by games are tricky.¬†MAU simply means how many¬†unique users played your game in a 30 days period (see Wikipedia). It does not count how often the user has played your¬†game. MAU (or DAU) ¬†as a¬†pricing basis would mean you need to pay the same amount for a user whether the user has played dozens times a day or if he quit playing your game after a few seconds. This is nearly impossible to predict and more important, it does not really relate to the actual costs that are generated by a user. The actual costs are related to the CCU, means when users are actually online, and the generated traffic.
A look at competition: Amazon GameLift & Unity Multiplayer
Looking at Amazon GameLift’s pricing¬†is pretty¬†challenging. There are a lot of (unknown before game launch) factors you need to take into calculation in order to find out what you’ll pay in the end. Their pricing is calculated based on DAU, bandwidth usage, CCU and the¬†kind of Amazon EC2 instance you need … only 28 different to choose from ūüėČ
On their website is a pricing¬†example for a first person shooter (click on the picture to the right¬†to see it in detail). There is quite a complex example calculation that results in total monthly costs of US$5,853.43 for 10,000 DAU and 1,000 CCU without and US$3,396.44 with GameLift’s Auto-Scale function.
We doubt that anyone can calculate a proper price without having such an example, but even with that example I think it is extremely hard to find out what you really have to pay¬†in the end. So how far these numbers are applicable to your game is very hard to guess.
Calculating the costs with Unity Multiplayer looks much easier than with Amazon: US$0,49 per GB and an easy to use calculator on their website that shows how the GB price relates to more
predictable¬†terms like CCU and MAU. So,¬†how much is it then for 1,000 CCU? Unity’s advanced calculator says something between US$599.64 (in case you know your game’s¬†expected average utilization and message size correctly) and US$2,398.57.
First thing that strikes me is Unity’s¬†US$0.49 per GB compared to¬†Amazon’s US$0.09¬†per GB. That is a lot more. Second thing is the size per message. Default value in Unity’s calculator is 160 bytes per message (appr. 1,6kb/s assuming 10 messages per second) compared to 75kb/s at Amazon’s example. A huge difference. Filling in the 75kb/s in Unity’s website would result in minimum costs of US$23,026.23 for Unity’s Relay service for 1,000 CCU with 10 msg/s at an utilization of 25%.
We do not want to comment if the one or other value is correct. All we can say is that these numbers are pretty game specific and there is e.g. not the one single FPS example that works for all FPS games. You need to intensively test to find out the right values for your game, but¬†the real numbers can only be found after game launch. As there is no build in limit as with Photon’s plans you can end up with an amount you have absolutely not expected, e.g. because the actually¬†used bandwidth¬†is much higher¬†than calculated before launch.
In comparision to that, calculation with Photon multiplayer¬†products goes like this: 1,000 CCU = US$ 185. Done. There is nothing to worry: there are no traffic costs and no average utilization or DAU or game server instances or anything which potentially lets your¬†monthly bill explode.
That’s why we think we have the fairest and most transparent pricing on the market.