MarsEdit developer Daniel Jalkut on Apple’s announced free trials:
On Monday Apple announced that they are officially supporting so-called “free trials” for non-subscription apps. The reaction has been a breathless celebration that Apple has finally relented and given developers something we’ve been asking, no begging, for since the dawn of the App Store.
But what really changed? Not much. Apple announced no functional changes to the way the apps are categorized, how pricing is conveyed to customers, or how the physical transaction of downloading, trialing, and potentially purchasing an app takes place. What they did announce is a change to the App Review Guidelines, adding a bullet item to section 3.1.1 describing a kind of ersatz substitute for actual free trials, built on the in-app purchase system:
Non-subscription apps may offer a free time-based trial period before presenting a full unlock option by setting up a Non-Consumable IAP item at Price Tier 0 that follows the naming convention: “14-day Trial.”
This change to the review guidelines is fantastic, because it will give app developers greater confidence that such a workaround will continue to be approved by Apple. But the practice of offering free trials in this manner is not new, and is not particularly great by any stretch of the imagination.
I think it’s particularly important, in the face of all the celebration this week about Apple’s perceived changes to the App Store, to understand the many ways in which this solution falls short of what many developers still hope for: bona fide support for real free trials in the App Store.
In summary: none of the mechanics of supporting ersatz free trials are substantially supported by the App Store. Every aspect of the solution is bolted on to a system which was not designed for, yet is somewhat admirably being used to simulate real support for free trials. Let me elaborate by listing several shortcomings and how they affect both users and developers in significant ways. Just off the top of my head …
- Paid apps are listed as free, even though payment is required to unlock core functionality. This is confusing to many users and leads some to a feeling of bait-and-switch, and that they’ve been betrayed by the developer. This is particularly problematic with apps whose price points make them most suitable to free trials. MarsEdit is $50, so some users who download the “free app” are understandably annoyed when the first thing they learn is that it will cost a significant amount to unlock it.
- Bulk purchase programs are unavailable. Apple’s Volume Purchase Programs for business and education are based on a system of allocating a certain number of “primary” App Store products to an institution. In the case of a free app with paid in-app purchases, there is no mechanism by which a school or company can for example purchase 500 copies of MarsEdit from the App Store. They can “purchase” 500 free copies and then proceed to unlock each copy individually through the in-app purchase dialog in each app. This is a particularly unfortunate limitation for apps that are uniquely suitedeither to education or to business uses.
- Family sharing is unavailable. For the same reasons that bulk purchases are off the table, a developer who wants to allow families to purchase an app once and share it among their family’s devices and accounts is unable to do so unless they sell their app with a fixed, up-front cost in the App Store.
- Not applicable to all app types. Although Apple doesn’t explicitly state it in their revised App Review Guidelines, I strongly suspect that a continuing requirement for ersatz free trials is that the app must continue to function in some way as a perpetually free, unlocked app. For document-based apps such as Omni’s, they went with an approach whereby the app becomes a read-only document viewer when it is not paid for. In MarsEdit, I took a similar tack by allowing all features to function except for publishing changes to blogs. In many cases it is possible to contrive a free/paid functionality divide, but for some apps it would be very awkward, or maybe impossible to do so.
- Apps are ranked and featured in the wrong charts. A problem rooted in these paid apps being listed as free is that there is no natural place for them to be honestly ranked among the App Store’s two-tier division of apps into “Paid” and “Free” charts. An app that is $50 and sells very well will never make its way to the top of the “Paid” charts, and if it is lucky enough to beat out actually free apps in the free charts, it will only confound users who are surprised to learn that one of the top free apps actually costs money. The presence of a “Top Grossing” category provided a sort of compromise category for such apps, but Apple removed the ranking from iOS 11, and appears to be set to remove it from the Mac App Store in macOS Mojave.
- Transaction mechanics are pushed onto developers. One of the primary advantages of the App Store to developers is being able to get out of the business of managing direct sale transactions. With the paid-up-front approach, users browse the store, conduct a transaction with Apple, and download the app. In exchange for taking on this work, Apple is rewarded with a 30% cut. With ersatz free trials, almost every aspect of this complexity is pushed into the app, where developers have to laboriously devise a mechanism for conveying app limitations to users, blocking pertinent functionality, transacting an in-app purchase, facilitating the unlock of app functionality, and so on.
- Free trials cannot be easily reset. It is typical outside of App Store marketplaces for developers who offer free trials to periodically reset free trials so that users who, for example, enjoyed a free trial on version 1.0 of an app, can give it a fresh look on 1.1. The use of in-app purchases for accommodating free trials would, strictly speaking, require that developers perpetually add new SKUs to the App Store representing a different “free trial” product for each of the timeframes in which a developer wants to reset things.
- Apps cannot be made to “just work” out of the box. One of the main rationales for offering free trials is to get prospective customers to download and start using the great features of an app as quickly and with as little effort as possible. With ersatz free trials a customer must first authorize Apple to allow the download of the free app, and then they must commence a confusing in-app purchase process during which they will be asked again whether they want to start a free trial.
For starters, real free trials would allow developers who currently list their apps as “free” in the App Store to list them by their actual price. The App Store could convey that information both more honestly and more informatively to users. Instead of “Free with in-app purchases,” MarsEdit could be identified succinctly as “$49.95 with 14-day free trial.” These apps would no longer be erroneously featured among free apps, but would rank alongside other paid apps, where they belong.
Having a bona fide price associated with the main App Store SKU would re-open access to the bulk purchase programs and family sharing. You know you want 500 copies of MarsEdit for your company? Go ahead and purchase 500 copies. The fact that the App Store happens to support free trials would be irrelevant to your conducting this transaction with Apple.
Real free trials would open the functionality up to any developer who chooses to participate, regardless of their app’s functionality. Instead of forcing developers to come up with arbitrary lock-downs on functionality in the app, they would simply flip a switch in App Store Connect, ideally specifying a trial duration. When free trials are downloaded from the store, the receipt would have the trial information baked right in.
Putting the logic in the store itself would also empower developers to start or stop offering free trials whenever they like, and to reset free trials across the board with major updates, in the same way they can choose to reset star ratings today. And all the tedious mechanics of offering, transacting, and enforcing free trial limitations would obviously be back in Apple’s court, where they can efficiently support such functionality in one place instead of requiring every developer to re-implement the same kind of support in every app.
Finally, and probably equally importantly to users and developers alike, real free trials would enable users to effortlessly download and use all the features of an app without having to labor through any of the administrative tedium that is currently required by ersatz free trials. Happy customers trying excellent apps and ultimately paying for them is something that we can all get excited about.