Every step filled with dread
The Hidden Costs of Convenience: Choosing Between Control and SaaS in Game Dev

A few days into building my own authentication and leaderboard system, I paused and reflected. Do I really want to engage in all this extra work? Do I then really want to host it myself and be responsible for keeping it running? Do I really want to deal with all the legal intricacies that laws like the Digital Services Act (DSA) in Europe and the Children's Online Privacy Protection Act (COPPA) in the US are requiring?
I've been taking another look at Unity Gaming Services. They dealt with all the technical hurdles. They keep it running. They have lawyers to waterproof and protect their system. The services are also mostly free for around 10k players, which is a lot of free runway. For a premium game (which charges upfront) the costs appear to be covered easily.
And yet. Even if we ignore last year’s Unity runtime fiasco, this decision carries real weight. What we are ultimately talking about is handing over a good amount of the relationship between the developer (business) and the player (customer) to a 3rd party. Using a provider for authentication means that the reliability of the service is out of the developers responsibilities, which is a good thing 99% of the time — but can be revenue and reputation ruining in the remaining 1%. Finger-pointing and finger-crossing are not as effective nor as satisfying as rolling up sleeves and getting to work, being able to resolve the issue self-reliantly.
This trade-off between convenience and control isn’t unique to Unity. This counts for all kinds of 3rd party services which trade convenience for dependence. Recently, the developer David Heinemeier Hansson coined the term "merchants of complexity". He describes the incentive of software providers to make their services look more sophisticated and complicated than they would need to be, in part due to the customers desire for what they consider better, or "special" like DHH puts it.
I see the same pattern in SaaS for games. Game development is hard and chaotic. Outsourcing a whole chunk of concerns to a 3rd party that provides features (even beyond what the developers need) looks enticing, especially when it's part of a domain (web services) that isn't necessarily familiar to game developers.
And using a turn-key solution to provide to the players might be just the leg up those developers think they need to survive in this competitive marketplace.
But reading the documentation of Unity Gaming Services, playing with the examples and implementing some of it in an example project, I feel like every step is filled with dread.
- No password recovery for users when they locked themselves out of their account?
- I can't verify the Steam ID of a user who connected his Steam account to their UGS account? (Business-critical info being withheld)
- I have to get consent from the player to use Unity Analytics because Analytics has no option to collect data anonymously?
- Is support going to help me if a problem comes up?
- Is the product even going to be around for long?

All the little things I'm stumbling over make me feel like control and the relationship to players is taken away from me. All of them being little opportunities to create a personalised experience, wiped out whack-a-mole style.
What's left is a behemoth of a service, all corners sanded off, areas of risk mitigated by the legal team, all personality sucked out of it, to serve the widest amount of use-cases and appeal to a very broad market.
We are in a market that sees the big publishers and studios in trouble, with more players seemingly preferring an edgy viral hit over big productions. Those games are trying risky things and feel more authentic in return. It makes me wonder if a more customised solution for e.g., Leaderboards that can handle all sorts of quirky ideas isn't better suited to accompany those types of games.
Rolling those systems alone is challenging, and I know common wisdom says I should probably not be that concerned with the choice of backend service and focus on finishing my game. Yet, I also believe it's a very critical choice to make as making changes later on could be incredibly hard, when the game is live with active players. Dealing with account migration is its own can of worms.
In the indie web scene, there is this idea of growing your own digital garden, as a place "imperfect and often a playground for experimentation".
I see some of that energy with sites on itch.io, but most content for games seems to be inside the walled gardens of the usual social media companies.
There has been increasing worry in the game preservation scene about online-only games and DRM, but games as a cultural phenomenon transcend the games themselves and should also incorporate fandom, leaderboard data, wikis, etc.
All of this is challenging to preserve when our conversations are happening on Discord, Let's Plays on YouTube and game data is trapped in 3rd party SaaS — and those services ultimately die.
With AAA in the ropes and people finally taking a sober look at cloud hosting companies, here is hoping for more quirky experiments in game backend services outside SaaS.
After weighing all these points, it's still hard for me to say no to those products.
As a hobby and part-time game developer, those offerings seem to be closing the gap to provide a full and rich gaming experience, with the little time I can attribute to my game. But my gut tells me the next rug-pull is only a few months away.
Discussion