My Two Cents on Unity's New Pricing Model
September 17, 2023
ADDENDUM (October 15, 2023): Since writing this article, Unity has largely rolled back its pricing changes and published an open letter detailing the new changes - in summary, while the Runtime Fee still exists, it is now self-reported (meaning that we don't need to be afraid of dystopian download tracking) and it never overtakes 2.5% of your revenue. There have also been some nice amenities (such as the removal of the "Made With Unity" splash screen requirement), and Unity's CEO, John Riccitiello, has resigned. I believe that most of my thoughts in this article still stand, however, since the Unity Runtime fee still exists - and, of course, the larger trend of selling copies of software has existed for decades.
I know that a lot has already been said about Unity's new pricing model that they announced earlier this month, in which developers are now being charged $0.20 USD for each time their games are installed by an end user. As a software developer and hobbyist game developer who makes his living selling software, I thought I might weigh in my two cents on the topic. Of course, as I stated in my article on the fair market hypothesis, I claim no special knowledge of the financial sector and acknowledge that my business knowledge may be woefully incomplete, but I will do what I can and accept feedback for what I get wrong.
If I could summarize my feelings on the issue in one sentence, it would be this:
Our business model in software, that of selling copies, is unnatural.
Or really, the way we sell copies of most intellectual property is unnatural. And no, this is not me being against capitalism - even within the context of capitalism, where time and material capital are invested into productive work to get greater returns, we are forcing the existence of unnatural, artificial, and abusive markets with the way that we are trying to sell intellectual property to consumers.
We can see this by comparing software to pretty much any other good we sell on the market. A farmer who grows potatoes, for instance, puts a certain amount of work and material resources (water, fertilizer, tools, etc.) into each square foot of their potato fields, and every few square feet, within some reasonable tolerance, yields a 110-pound sack. That sack goes into a warehouse, waiting to be sold at a price at some reasonable margin over the total cost of what the farmer put in. And once that sack is sold, the farmer receives the money for it, and then the sack is loaded into a truck and driven away, never to generate another cent for the farmer again. The most future yield that the farmer can hope to get from that sack of potatoes is if the customers like them enough to buy another sack - but then again, in that case, there is another sack to sell.
We can also look at services sold on the market. In the field of law, for instance, lawyers provide their services - private counsel with clients, writing letters and forms, defending or prosecuting in court, etc. - and usually bill for these services by the amount of time spent. In a sense, each minute of the lawyer's time is sold as a good to customers at some set price, and while the lawyer hopes to get repeat business that will allow them to sell more of their future minutes, they will never see any more money from those particular minutes they have already sold.
The intellectual property industries, by and large, have failed to map either of these models effectively, because in selling books, movies, music, software, games, and other intellectual works, we have misidentified the good to sell as the individual copies of the work, when the true good (or service) that should be sold is, more or less, the original. By misidentifying this, we have created a situation where developers (in the case of software) do many hours of productive work to make a piece of software, and then expect to be paid for with an entirely unrelated process of marketing individual copies that cost pennies on the dollar to make - you might spend tens of millions of dollars to make your software, and either get hundreds of millions from making it big or only a few thousand from failing to reach the market, regardless of how good your software actually is. Or you end up making next to nothing because someone figured out how make and sell their own copies for free.
And that last point highlights why this model is so unnatural. In order to cover up the fact that we are selling cheap copies instead of the true original unit of work, we have to artificially limit customer's ability to make those cheap copies, with DRM schemes and restrictive license terms and a little help from aggressive lawyers and thugs. In the realm of digital distribution, we also have to carefully track how that software is sold and copied, often introducing privacy invasions that limit what we are allowed to do with our technology - and really, for no good reason.
And, of course, this pricing model is exactly what Unity is trying to do. Beyond a certain threshold of sales and installs, Unity is attempting to demand payment for their original unit of work, the Unity Runtime, by charging $0.20 USD for each and every copy that is made, whether it is installed on an app store, on a streaming service, or elsewhere. The places where this will be difficult to enforce (PC and other open platforms) highlight just how much of a nightmare this is, and the places where this will be easy to enforce (mobile and console platforms) highlight just how complicit our major technology distributors have become in this flawed model.
What could we do about this? I've had a lot of ideas about this subject, which I might expound on at a later date. The game designer Jason Rohrer, developer of One Hour, One Life, has written an extensive essay on the subject, and things have both gotten better (e.g. with crowdfunding systems like Patreon or Kickstarter) and worse (e.g. with in-app purchases that restrict a user from using content they have already downloaded, even if the app needs it to properly interact with other users) in the time since it was written.
However, one other common practice in the software business that lends itself well to a more amenable solution is the Agile development methodology, where, thanks to how easy the Internet makes it to publish and distribute new versions of software, developers work with all existing customers and produce a new version of the software every 2 or 3 weeks. In that sense, each original, while based on the previous original, is worked on for some determined amount of time (with each programmer rendering their billed-by-the-time-period services for it), and each original has an expected lifetime of about 2 or 3 weeks before the next one is released. And hence, if all existing customers pay for each version of the software as it is released, developers would be selling their originals and their effort would map more directly with their return.
Fortunately, this is very close to a very popular option for selling software: the subscription. While I agree it isn't good to have consumers pay for a potentially durable copy and only get to use it for a year, if the software developers are actively making improvements to the software being paid for, as well as offering services with it that are more difficult to replicate, then paying yearly or monthly for software is a great business model for supporting those developers and other workers.
And guess what? Unity has one too. Or rather, they had one, but decided that couldn't be enough for them or their shareholders.
We can definitely do better than that.