Apphud – Integrate, analyze and improve subscriptions in your iOS app
Marketing

How to pass App Store review with auto-renewable subscriptions?

In this article I will give you some tips for how to get approved to the App Store if your app has auto-renewable subscriptions. This article will be helpful for developers who ever had problems with Apple review team or who just added their first auto-renewable subscription to the app.

As you may already know, app review consists of two steps: automatic review (with a bot) and human review. However, not every app update is being reviewed by a human (it’s not a fact, but we are 99% sure). And it’s not a secret that every year automatic review is getting more and more responsibilities.

Important information about App Store app reviews

Our experience (more than 50 new apps and hundreds of updates) helped us to understand the following:

  • Every new binary is being reviewed for having a private API
  • Every first release or update with newly added IAPs are being reviewed by a human
  • If bot detects suspicious activity in your app (huge increase of app ratings and reviews, several times increase of IAP prices, etc.), it may trigger your live app for additional human review
  • It’s not a secret Apple has some kind of ‘Black list’ of unscrupulous developers. If you are one of those you have less chances to get through.

How to get approved with subscriptions?

Here is a list of recommendations which increase your chances to be approved.

1. Create a full set of subscription durations in advance

After you add a new subscription in an update it will go to human review even if you already have subscriptions approved. Our main goal is to have less human reviews, right? That means you should submit a full set of subscriptions for review in one time. Create all subscription durations even if you think you won’t need them. Trust me, you probably will.

2. Prepare a simplified subscription purchase screen for reviewer

This means you should create such a screen that won’t have any doubts. Skip animations, complex UI, make all fonts large and remove unneeded images. You can easily bring back all of these in later updates. But don’t scam – do not violate review guidelines!

Keep in mind that review team may check your app even if you didn’t submit any updates. They may check your live app and remove it from the App Store if your app is not compliant with the guidelines.

An example of proper purchase screens by Apple

3. Display all subscription durations on the screen at once

Apple reviewers are sometimes lazy – they won’t take their time trying to find every subscription in your app. So I recommend you to show all subscriptions in a single purchase screen until approved. For example, you can display one or two subscriptions on the main purchase screen and add “show more options” button which pushes another screen with more subscriptions.

4. Subscription terms

This one is the most important thing. Information about subscription terms may have a small font, can be cut, can be scrolled but must be at least partially visible.

As an example, you may use this text:

[Title of subscription] subscription is required to get access to [list of premium functions]. After the free trial period, if offered, the subscription automatically renews with the price and duration given above unless it is canceled at least 24 hours before the end of the current period. Payment will be charged to your Apple ID account at the confirmation of purchase. Your account will be charged for renewal within 24 hours prior to the end of the current period. You can manage and cancel your subscriptions by going to your account settings on the App Store after purchase. Any unused portion of a free trial period, if offered, will be forfeited when the user purchases a subscription to that publication, where applicable.

You may also add these text:

Removing the app doesn’t automatically cancel the subscription.

More details about required subscription terms can be found here.

5. Check all your screen sizes

If your app is targeted for iPhone only don’t forget to check older screen proportions. Apple reviewers often review apps from iPads which simulates iPhone 6s screen proportions. So better to test your purchase screen on iPhone SE and iPhone 8.

6. Retrieve your products before showing purchase screen

Never show a purchase screen which didn’t yet have SKProduct classes loaded. You can easily be rejected if reviewer taps on “buy” button but nothing happens.

7. Display full price of a product

Do not divide your subscription price for months, weeks, days, etc. If your subscription duration is 1 month, you should display a price per month.

Apple says: “While you may also present a breakdown price that the annual amount is equivalent to or a savings when compared to weekly or monthly subscriptions, these additional elements should be displayed in a subordinate position and size to the annual price. This ensures that users are not misled.”

8. Your subscription price must be localized

Here is an example of how to get localized price of a product:

func localizedPriceStringFor(product : SKProduct) -> String? {
	let formatter = NumberFormatter()
  	formatter.locale = product.priceLocale
  	formatter.numberStyle = .currency
  	return formatter.string(from: product.price)
}

9. Links to Terms of Use and Privacy Policy must be present on the screen

Reviewers always open such links so make sure these links are clickable, content is loaded, and they are not confused. There are a few great tools to generate such texts: TermsFeedTermly or even this one.

10. Add Restore purchases button

Your purchase must have an option to restore purchases. It is also better to have a button called exactly “Restore purchases” (not just “Restore”). We know cases when app was rejected with just “Restore” title on the button.

11. Try to make monthly subscription a primary

It is not recommended to make weekly or annually subscriptions your default ones. At least until approve. And add a good trial period – you can always change it.

12. Display real subscription prices

If your desired price for the subscription is $9.99 per month display exact same price and not $0.99. Otherwise, you may be triggered for an extra review.

13. Make appropriate changes in your app after successful purchase

It is recommended to show current subscription status somewhere in the app. A text “Your current plan is: Premium|Free” should be enough.

14. Maybe add subscriptions later?

If you worry about being rejected because of “4.3 Design Spam” reason or other reasons, try to submit an app without subscriptions first. After you get approved prepare some updates, add more features and only then submit auto-renewable subscriptions.

15. App description in App Store Connect

In app description in App Store Connect don’t forget to include all the information from 4th advice. You should also include information about all your subscriptions titles, prices and durations.

App reject example regarding auto-renewable subscriptions

Conclusion

At the moment about 100K new apps and updates are being submitted to the App Store per week. And 40% are being rejected for various reasons. It’s really hard to get through with a first submit. But if you follow our tips your chances to get approved with a first submit will increase.

After approval

What to do after successful approval? Add Apphud SDK to your app and find out how much you earn in real-time with many more features.

Apphud is iOS subscriptions analytics tool. One of its main features is sending subscriptions-based notifications to your favorite analytics tool. Apphud fills the gap in sending events from Apple, practicing a hybrid approach: we use both Subscriptions Status Polling and Apple Subscriptions Notifications to collect the most accurate information. All you need if to integrate our lightweight SDK and setup integrations. Apphud will do the rest.