Unity Gaming Services Cost Calculator


Unity Gaming Services Cost Calculator

First, allow me to explain how and whom the UGSCC helps.

Approaches to Live Service Costs

When it comes to Unity’s Gaming Services (Server Hosting, Matchmaking, Relay, Lobby, Authentication, Cloud Save, and many more), there are three ways developers look at these service costs:

  1. “Services cost money, what a rip-off! I won’t use any!”
  2. “My game will earn so much, it’ll dwarf any costs!”
  3. “I will estimate revenue and costs before I start developing.”

Let’s talk about these in order. Sure, the first two needn’t necessarily reflect a phobia but I felt like adding a little insult to these developers’ ignorance. 😝

1. Fear of Cost (Chrometophobia)

These developer’s fear spending any money on service costs.

It can’t be that hard?!

Yes, it’s absolutely okay to design your multiplayer game to not use any live services if you don’t have to.

It’s a problem when the developer has a blind eye for how much it costs to develop these as a self-service. You already have an online database and you know some SQL, what could be so hard?

Perhaps .. spending half of your game’s development time on building these services? Applying all the proper security measures and for player accounts: adhering to privacy laws. And so on …

I don’t need the Service!

Other devs are trying to find clever ways to avoid using any online service. Sure, you could decide not to use Relay and instead rely on UDP Hole Punching to enable players host online games.

Literally Hole Punching (Source: Wikimedia)

Except the reality is that there are at least three different ways to perform hole punching (not counting the above) to cover a wide range of network situations.

Yet it will still fail for a significant number of clients. Without a Relay fallback to enable all players to play online, the locked-out users may be frustrated and leave a bad review.

Worry > Costs

Sure, 50 CCU on average in a given month for Relay doesn’t sound like much. Until you consider that peaking to 50 CCUs at any given time is already quite the feat, let alone for monthly average!

Assumption: 30,000 Monthly Active Users (MAU) with 40% Hole Punching

The reality is: most games could still use most of the services effectively for free while the game can be deemed quite successful.

2. Fear of Calculating (Dyscalculia)

This one often goes hand in hand with delusions of grandeur.

MMO Or Nothing

Typically, it goes like this:

“My game needs to support <absurdly high concurrent user count>.”

And then the developer might ask which game engine or networking framework can handle this number of users?

Ah yes, the wannabe MMO developers never die.

There’s More Than One Server

Problem is: At that scale, the technology the game is built with isn’t the blocker – it’s the costs that’ll make such projects unrealistic.

Imagine an MMO on a global scale, you’d have to rent at least 20 machines. Let’s put in some numbers (I know you’re afraid):

Set aside that non-Enterprise customers only get dual-core machines with 8 gigs of RAM unsuitable for MMO scale games, you would still pay $2,000 per month just for server hosting:

On top you have to add the other service costs, too! And become a Unity Enterprise customer. And handle customer support requests.

Optimization’s On You

If you don’t also carefully optimize the game to minimize costs but end up writing it in a naive and inefficient way … costs might actually be several times higher than necessary!

I reach that conclusion having seen the kind of Netcode written by users, needlessly wasting bandwidth and issuing far too frequent service calls. The inefficiency is measured on a logarithmic scale.

3. Estimating Revenue and Costs

This is what serious developers do!

They want to find out – before they start any work – whether their planned project has any real chance of offsetting both development and running (live service) costs.

What Are The Main Cost Drivers?

Running estimates also helps you find out what kind of services / features will likely need to be carefully tweaked for cost effectiveness, and which are much less of a concern than you had originally expected.

Realization: Storage costs are minor, but perhaps still zip the player files?

Development Costs, Too!

Don’t forget: part of the service costs will need to be paid well before the game is published: during development and public test phases!

You already need to use the services long before the game is published, albeit typically at a much smaller scale.

Define And Monitor Budgets!

While you may not have all the data readily available, you can still make a best guess what the min/max range is and use that to define and monitor budgets for memory, traffic, CPU time, service calls:

Insert your best estimates … then monitor actual usage.

And while developing, take the actually observed metrics and plug them into the calculator to see if you’re still on track.

Gaming Services Cost Calculator

I created the Unity Gaming Services Cost Calculator (UGSCC) to get a feel for all these numbers, how they affect the game’s costs, and which areas are most important to optimize.

Unity Gaming Services Cost Calculator (UGSCC)

We simply can’t make good monthly estimates for prices like $0.0072 per compute second.

Nor did we consider optimizing per-player memory usage as cost factor – but this allows for more server instances per machine!

Access UGSCC For Free

The UGSCC is a Google Sheets spreadsheet which you can copy or download. Then enter your estimates or budgest and see the costs!

Join my free Patreon to access the UGSCC!

The link is in the Welcome post (pinned).

Leave a comment below if you have any questions or feedback!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

WordPress Cookie Notice by Real Cookie Banner