Learn simple steps to the perfect use of In-App Purchases for iOS and Android: Defining products, making it work, avoiding rejections & boosting your sales. Please see below our ultimate guide to the perfect use of In-App Purchases and In-App Subscriptions.
When to use In-App Purchase?
In-App Purchase is used by global apps in many categories (see our article The 50 Most Successful Examples of Apps with In-App Purchases) and is ideal to scale Subscription Business Models.
In-App Purchase is not an alternative to credit card payment and your Stripe, Mango Pay, … It must be used to sell a certain type of items while it is not allowed to sell them with your credit card. In other cases, you must use credit card and must not use In-App Purchase.
Both cannot be used alongside to sell the same items.
What are these cases?
In-App Purchase must be used for digital goods and services such as a level in a game, music, a movie, … on Apple platforms you are not allowed to sell them using another mean. In other words, if the purchase extends in some manner the features proposed by the App, it is considered as digital and it is thus mandatory to use In-App Purchase.
In-App Purchase must NOT be used to sell physical goods such as a BluRay disc, a CD, a ticket for a movie theatre, a reservation at a restaurant, or the dinner directly. In that case, you must sell it using regular credit card payment.
Our In-App Purchase flow screens give you complete control to engage and retain subscribers and boost sales, enhance your brand and improve your customer experience.
If what you sell is digital and consumed within the app, you must use In-App Purchase. If what you sell is physical you should not use it. If what you are doing is something in the middle you can get help by :
- checking Apple Guidelines
- finding apps doing a similar thing and check how they sell it
- ask your question on the Apple Developer Forums
- contacting the Apple Developer Relation
By now you should know if you must use In-App Purchase or Credit Card. Now let's continue by defining your products.
Define your products
Now that you jump into In-App Purchase, the first question you will be facing trying to configure your products is the choice of the “Product Type” and choose between Consumable, Non Consumable or Subscriptions (renewable or non renewable).
AppStore Product Configuration
The main difference between them is the availability scope of the products. Answering this question will lead you to the right category.
- Consumables – available once This is a product that needs to be bought again after use. For example coins in games, swipes or loves in dating apps. Dating apps and games.
- Non consumable – always available This is a product with no expiry date that will remain available in your app. That can be an unlocked feature, level or item in a game (golf club in a golf game, new car, engine, paint in a car game). Utility apps and games.
- Auto-renewing subscriptions – available as long as you pay A subscription to a service, that auto renews at the end of the period. This is the classical subscription you find on Apple Music, Spotify, …
- Non renewing subscriptions – available a fixed amount of time This item will only give you the access during a certain amount of time (usually long) but you will have to manually renew if you want to. Non renewing might seems odd compared to renewing but can be very useful. For example sport broadcasters that might not be able to insure that they will own the content rights next season or a sport that doesn’t last a year (tennis tournament, car race championship, …). Non renewing can also be helpful if you sell a content in education that covers a special degree that most user will pass next year. Non renewing is also re-insuring some users that don’t want to have to remember to unsubscribe so you can engage users for a long period like a whole year they won’t fear to have the unwilled payment in 12 months that they totally forgot about.
Now you know the difference between the different products and which kind of product you need to use for your service. Let's move on to the process.
Make it work
In-App Purchase leverages the fact that mobile phone users already have their credit cards tied up to their Google / Apple account to offer a one-click payment for In-App Purchases.
That ease of order and payment explains why IAP is working so well. The user only taps twice to confirm and is ready to fully enjoy the product or service. You can gain access to a full library of shows and movies like Disney+, HBO or music with Spotify, Apple Music or Deezer in a matter of seconds.
But how does that work internally?
Your app exchanges with a local vendor SDK (StoreKit on Apple devices, Google Play Billing on Android devices, …). That SDK is responsible for:
- 🗺 providing the product availability in the country of the user
- 💰 returning the prices of the product in the user currency
- 🤝 processing the payment request and validating the payment
- 🧾 returning a receipt or token of payment
- ✅ listing the active purchase for restore
On your side you need to :
- ⭐️ make a comprehensive (and shiny) presentation of your product on your app
- ⚙️ verify the receipt/token with Apple/Google on your server
- 🔓 unlock the content or service purchased
- ♻️ check the renewal of your subscriptions before expiration and after
- 🆙 upgrade or downgrade the services on plan change (if you have multiple subscription offers)
- 🛑 cancel the subscriptions if the payment could not be processed or if the user chose to cancel his subscription
The work to perform on your side is quite a piece of work. A part of it will be performed on your app to present the product and handle the payment process with StoreKit, Google Play Billing.
Then you will send the proof of purchase to your server that will check on its side that it is valid. Some apps might unlock a local feature others will just reload the content from the server which will give the new content the user paid for.
If your purchase is a subscription you will have even more work to do to:
- Check that the user didn’t ask for refund
- Check that he renewed the purchase
- … if not checked during 15 days in case he had some billing issues
Usually, all that technical setup takes 2 or 3 months. This is why we developed Purchasely a solution that handles everything for you and only requires a few hours to add into your app and start earning money from In-App Purchases tomorrow.
Now you know and developed the required tools to distribute and accept In-App Purchases. Let's check if your app will pass validation.
On macOS, iOS, tvOS and watchOS, Apple checks the applications before making them public. When a version adds In-App Purchase, the review process is really careful about it.
Apple checks that you are not trying to fool the user or that they won’t feel that way.
Here are some common rejections reasons:
- Unclear display of the purchase The features or contents that will be available once payment is made need to be clearly stated. The engagement duration (if it is a subscription) and the price paid must be clearly displayed and in the user store currency. The trial price and period must also be displayed clearly along with the regular price paid by the user. The user needs to press a button that clearly states that he is going to buy something, it cannot be on app or screen opening.
- Wrong product type Using a non-consumable instead of a non renewing subscription can lead to a rejection. You will also be rejected if you write “subscribe” in a button while it is a non-consumable product which is an unclear description of the purchase.
- Unlock purchased items not working There is no worse experience than paying for something and not having it available right away. People get anxious or nervous, that leads to bad reviews and refunds requests that Apple has to handle. So they are very careful when reviewing your app. Make sure you have no cache on your web services and reload the contents after your purchase is valid.
- Forcing users to register to subscribe You might get rejected because you ask your users to create an account to complete the purchase. You would allow your user to proceed purchase without having to register. At the end of the process you can ask them to create an account to enjoy the content or service on other platforms (tablet, TV, Android, Web, …). If they don’t they should still be allowed to register another device by restoring the purchase.
Purchasely developed native UI templates based on Apple's recommendations that you can use inside your apps. You can fully customise them with an easy to use web interface. Thanks to those templates you will avoid most mistakes listed above but also test different presentations and see which one converts best.
At that point your app is ready to go on the App Store and Google Play Store without any turbulence on sight. After that initial launch, soon will come the question of improving your initial release.
Boost your sales
Now that the money is coming in, it is natural to wonder how better you could do.
2 principles are important :
- Conversion: The ability to turn visitors or regulate users into paying customers
- Retention: The process of keeping your paying users active … and paying
Of course the quality of your product is the first thing that will influence those metrics. Take care about them, ask them what they think, warn them about new content, services, features, versions … that will keep them engaged.
Beware that whenever your user is uninstalling your app, he will be warned that he has active subscriptions and in one click he will be able to unsubscribe.
Beyond the quality of your offer many things can be done to skyrocket conversion and retention especially on the App Store.
Promoting In-App Purchase
Starting with iOS 11 you can promote your In-App purchases directly from the App Store. The Promoted In-App Products appear on your app page and are searchable from the App Store search engine. This is a great thing to help your user convert quicker. It can also allow you to boost your App Store Optimization / ASO as you have additional keywords to point to your app or its contents.
You can give the promoted item a name, a description that clearly describes what the user is buying and a special design (must be different from the icon).
You can promote up to 20 items of your choice (or let some of them unpromoted). Your app should tell the App Store which items were already purchased by the user and they will be hidden on the App Store.
These promoted items can be purchased in one click from the App Store directly. They can also be featured by Apple. If your product is a free trial, the button title will be “Free trial” instead of the price which can be more engaging.
This is the fastest path for converting users.
“Well it seems great but are you sure ? so give it a try ?!”
With an introductory price, your users can try your product at no (or reduced) cost. This is a good way to convert hesitating users especially if the offer ends soon. You can set up special introductory price at certain period.
You should :
- Try different duration and prices options to see what works the best (free during a week, half price during month, …)
- Test these strategies in the different countries as consumer behaviour might change
- Advertise the end of the trial period so that user want to seize the opportunity while they still can. Do that even if if that means making several campaign during the year.
- Send push notifications to your users to alert them on special deals. Beware that they must have opted-in to receive that type of push and don’t send them too many offers. Try your messages and offers on subset of your user base to see which converts best before sending it to a larger scale.
Promotional offers to retain your churned users
The churned users are the subscribers who left / unsubscribed. There are 2 reasons of churn:
- Voluntary churn: The customer chooses to cancel its subscription
- Involuntary churn: A billing issue arises (expired credit card, insufficient funds, …) and leads to a unsubscription
No matter the reason, you can be alerted as soon as the customer churns and act consequently.
When a user cancels his subscription, you will most probably never see him again. Given how hard it is to convert a user, you should do whatever is possible to retain him. The first thing to implement is to ask your user why he is unsubscribing to learn from that and improve your product. You can send him a push notification to a survey or send him that survey by mail.
The good thing is that, once again, Apple helps you by letting you send him a personalised promotional offer.
Let’s say you are working on a sports app and the season ends for 3 months. Some users might be tempted to unsubscribe and resubscribe once the season starts. Before they start doing it (or if they just did) you can send them a promotional offer at a very low price (or free) to keep them subscribed so you won’t have to spend energy (and money) to make them subscribe again.
On an involuntary churn your challenge will be to make the customer pay again. Apple will try to bill during 60 days. You should send him an email or a push with a deep link to the App Store settings to change its credit card. You can choose to let the customer enjoy the content during a grace period that can last up to 16 days or cut the service immediately.
Retain more subscribers as our software automates touchpoints to help reduce churn and boost abandoned cart recovery.
Of course, you made a business plan, a price strategy, … and of course, your expectations will be challenged by reality.
Don’t stay stuck on your initial expectations and challenge your pricing strategy.
You can setup different prices in different countries, try different prices at different time and check how you convert to find the best offer between conversion rate and earnings.
Now you have mastered all the marketing conversion and retention you can setup them incrementally and test what works best for your product on each market.
The devil is in the details
If you implemented everything mentioned above, that means that you already are mastering In-App Purchase but there are still small things you can do to leverage or improve your sales.
Search ads on subscription offer
Get the most of the opportunities available to you to promote your In-App Products and try the Search Ads experience.
Kids and In-App Purchase
If you are building apps in the education area or games you will be facing an issue when it comes to kids: Parental control.
Parental control was made to protect our younger customer from purchase mistakes or uncontrolled purchases. When the kid tries to purchase, the parent receives a notification and has to accept it. You can improve the conversion by sending an email to the kid (or asking the parent email to send it directly) explaining the purchase. It is especially important to reassure the parents when it is a subscription and tell them what they are purchasing and that they can cancel it whenever they want.
As you must know, Apple and Google have 30% service fees they take on your purchased items. For long-term subscribers, this percentage goes down to 15%. The longer you engage your users the better it is. Think about it when defining your retention strategy.
Let’s say you want to change the price of an In-App purchase subscription. If you lower the price it will be affecting all users immediately and reduce your revenues.
If you increase the price you can choose to leave the existing base at their original price or to force them to upgrade to the new pricing. In that case, Apple and Google will send a notification of price change that the user will have to accept and that might lead to a lot of cancellations. Be extra careful.
If you reached that part of the article you must be thinking that this is quite a big amount of work … and you are right. Implementing the basics and advanced features is a matter of months of development and testing. Every advice will give you great results but the associated cost or time to set it up might scare you or slow you down.
This is why we developed Purchasely. A unique tool to add In-App Purchase into your app in a matter of minutes and access every marketing feature you could ever dream of to boost conversion and retention of your In-App Purchases.