Zachery was at the top of the world. He and his team had finally completed all the work on his app. They had run it through every possible test they could think of and it was as ready as it could ever have been. His team members had already started commenting that the app was the next Instagram killer. He was sure that once people started using his app, the name of his app would become a verb like “Google it” or “WhatsApp me”.
The bolt literally came from the blue.
Something that had never crossed his mind, something that had never occurred to him, happened, and it totally devastated him. He wasn’t even aware of the concept.
His app was rejected by Apple.
When he saw the email for the first time he couldn’t believe his eyes. How was it possible? His was a genuine app that allowed people to share images and people could embed voice messages on various parts of the images just like Facebook allows people to tag various parts of an image.
After the initial shock, he gradually read the list of reasons why his app was rejected. He also did some research on Google to find other instances of apps being rejected. He could get some comfort in the fact that many people had shared their experience of being rejected by Apple and he wasn’t just being singled out.
There is a reason why Apple has a long list of reasons it rejects apps ruthlessly.
According to TechCrunch, by 2020, Apple’s App Store may have 5 million apps. You see, App Store is a serious business for Apple. In 2017, according to this Slate report, Apple made roughly $38.5 billion from App Store. Hence, naturally, Apple is picky about which app it allows to be included the App Store.
How can you make sure that your app is accepted by Apple and it shows up in the Apple store listing? When you submit your app, Apple makes you sign an NDA so if Apple rejects your app you cannot openly reveal the reason.
Nonetheless, over the years people have gathered enough intelligence to minimize the chances of their apps getting rejected by Apple. There are some dos and don’ts you must keep in mind when submitting your app to App Store. This CultOfMac post has a complete list of Apple guidelines for developers aspiring to get their apps added to the App Store.
Most of the guidelines and reasons are quite obvious, and it will help you a lot if you can go through them BEFORE getting down to developing your app.
Listed below are 15 reasons why Apple may reject your app. Hence, it makes sense to avoid them.
1. You haven’t thoroughly tested your app
What does testing mean? Once you have developed your app, you run through quality checks. You make your friends and colleagues use the app and prepare a list of bugs and then iron out those bugs. There are app development tools available that allow you to test your app in various simulated environments.
Are menu items leading to the right sections? Are all the elements loading smoothly? If the app displays ads, are they intrusive or nonintrusive? There are many factors that will convey to Apple that you haven’t yet properly tested your app and you have submitted it in a great hurry. Make sure you test your app thoroughly.
2. App crashing due to denial of permissions
Does your app depend a lot on getting user permissions? There are many services in iOS that your app may require to function properly, and that’s pretty natural. When your app is being installed and set up for the first time, it may ask to use various services existing on a user’s iPhone or iPad.
What happens if the person denies your app the needed permission? If your app cannot function without those permissions, it is bound to crash. For example, if your app needs to get permission to access contacts and due to privacy concerns the user doesn’t give you the permission, and without that, if your app cannot proceed, your app is of no use. This is why it is very critical that you test your app and make sure that even if it doesn’t get the needed permissions, it has something to fall back to, and goes on functioning without crashing. If it crashes, your app will not make into App Store.
3. Scant regard for user’s privacy
As mentioned above, your app should be able to function even if the user denies you the permission to access another app or data like contacts. If your app begins to access confidential data without asking for permission, this is a very big red flag. All the confidential data being accessed by your app must be obtained after getting permission from the user and it should be explicitly mentioned in your terms and conditions for what purposes that information will be used. If your app is accessing private information without permission, your app is going to be rejected.
4. Not adhering to the standard Apple functionality
There are certain buttons on Apple products that are for certain reasons and if you use those buttons for other reasons, Apple will reject your app. For example, every iPhone has volume buttons. If you change the functionality of the volume buttons into something like zoom in and zoom out, it may incur Apple’s wrath.
5. Too complicated or very uninspiring user experience
Remember that humans will be evaluating your app. If you want your app to be accepted, the user experience should be appealing to people testing your app. If the user experience is too complicated and it makes using your app very difficult, they are going to reject it. On the other extreme, if the user experience is totally drab, outdated, slow, unhelpful and uninspiring, your app stands to be rejected.
What is good UX according to Apple?
Remember that Apple is very big on sleek design and aesthetic integrity. All the elements in your app must be nonintrusive and they must reflect Apple’s basic design architecture. The interface must be fluid and crisp. If the evaluators cannot make sense of the various elements of your app, they are bound to reject it.
6. Very slow response
App interfaces these days work within a flick of a second. Remember that hourglass icon on PCs and laptops when software applications would take their own good time to load or move onto the next screen? Such lags are not tolerated by mobile users. Even if the slow behavior of your app depends on the mobile phone it is being tested on or the network connection, the user is going to assume that something is wrong with the app. Make sure that your app functions smoothly using the least common denominators. Keep your design interface simple and to the point and don’t add bells and whistles at the cost of the speed of your app.
7. Ignoring Apple’s guidelines
They publish guidelines for a reason. So, obviously, if you ignore their guidelines, they’re going to be pissed. Remember that when people will be using your app, they will be using it using the standard Apple interface. It isn’t just about branding, it is also about maintaining a standard. If they are going to have to spend half of their time figuring out what various icons and symbols mean, they’re going to lose interest. Apple’s guidelines ensure that you comply with all the healthy practices that can create an amiable atmosphere for all app developers and app users.
8. Trying to usurp Apple’s branding
Just like any other company, Apple is possessive about its branding. So, if you are using some items used by standard Apple apps like iPhone-like icons or some sort of nomenclature used by Apple system apps, and that too without permission, you are in trouble. You shouldn’t be using copyrighted material or trademarks, app names, watermarks and other materials that belong to Apple or other apps without informing the owners and taking their consent. This is mainly because such copyrighted material might be a source of income for the actual owners and your usage may cut into their profits, directly or indirectly.
9. Inaccurately describing your app
The app description is a section where you describe your app – what it does and why it makes sense to use the app. It should never be misleading. Also goes without saying that you shouldn’t submit your app without filling up the description box. Make sure that the description is unique, uses the right language, and doesn’t trick App Store users into downloading it by promising something that is not present in the app. Stick to the point. Since the reviewer/reviewers is/are going to cross check the features in your app with the description that you have submitted, any sort of discrepancy may get your app rejected.
10. Using file systems and storage inappropriately
The file system and storage integrity need to be maintained for the overall stability of not just the operating system, but the complete mobile device environment. For example, if your app tries to save non-user-generated data to iCloud, it is a big red flag. This is because Apple mandates that only user-generated data should be backed up on iCloud. Any other sort of data that is needed to run the app should be either saved in the cached area of the device or it should be marked as “do not back up”.
11. Ignoring broken links
Broken links within your app are not just frustrating for the users, they may also lead to system integrity problems. People will leave your app midway or your app may simply crash. They will feel cheated that they were made to tap into something that leads to nothing. Before submitting your app, make sure that all the links are working, and they lead to something useful and productive.
12. Having a poor user interface
Of course, no developer intentionally wants to have a poor user interface (UI) and normally it is about personal taste. The best thing to do is, follow Apple’s guidelines on developing UI for the Apple’s environment. Apple has clearly-defined Human Interface Guidelines and following these guidelines is always a safer bet. For example, it is always better to use the standard UIButtonBarSystemItem and other system interface elements rather than creating your own buttons and icons or changing the default functions of existing Apple icons. Apple wants all its apps to behave in a predictable manner and users shouldn’t have to spend time figuring out what that icon in your app means.
13. Unnecessary and inappropriate use of advertisements
Every app ecosystem allows you to publish in-app advertisements to generate revenue, especially when you don’t have a direct revenue generation model for your app. But, if you are publishing apps within your app, you need to notify Apple because just as the company reviews your app, it also wants to review the ads you will be publishing to make sure that the content of the ads adheres to the standard Apple guidelines.
That’s one thing. The other thing is if you are publishing ads you need to tell Apple that your app uses the Advertising Identifier (IDFA) to serve advertisements. If you tell Apple that you are using the Advertising Identifier and your app doesn’t have any ads, this also sends conflicting signals to the company and consequently, as per Apple’s own guidelines, your app will be rejected.
14. Using another payment gateway and not Apple’s default gateway
You have read above how much money Apple makes selling apps and games from App Store. How does it do that? When people pay for your app or for one of its features, or for its content, or for its subscription, a portion of the payment goes to Apple. The company automatically handles that part through its own payment gateway. Now, if you use an external payment gateway Apple will be left high and dry. Apple doesn’t allow that.
The Dropbox app is a well-known case in this regard. The cloud-based storage system company uses a web page as a login screen and on its login screen, there was a link that allowed you to purchase additional space. The link led to another payment gateway system. This got the Dropbox app dropped from the App Store listing. Not just the main Dropbox app, even other iOS apps using the Dropbox SDK began to be rejected.
So, don’t be a maverick, use Apple’s default payment gateway in your app if you don’t want your app turned down.
15. Submitting different apps of basically the same nature
This is almost like spamming. Suppose you have already submitted a task management app that is either being reviewed or it has already been included in the App Store. With little variations, you submit multiple task management apps to supposedly increase your exposure. You think with multiple listings, you will increase your chances of more people using your apps. Developers especially do this when they are trying to generate multiple streams of ad revenue.
Repeatedly submitting the same types of apps for review and for inclusion not only wastes the time of the reviewers, it also harms your main app. Whatever features you want to add to different apps, it is always better to add all these features to a single app and make it as powerful as possible. Having multiple apps doing basically the same thing gets your app rejected. And in the confusion, even the first app that you submitted may also get rejected as backlash.
Apple has nothing against you. There is nothing like, “this dude’s app should be definitely rejected because he doesn’t brush his teeth after chewing raw garlic.”
The guidelines are there to serve Apple’s purposes and the purposes of all the people desiring to promote their apps through App Store. Apple is also worried about the stability of its system. If your app changes the nature of the default icons, it will become very difficult for people to use the interface instinctively, which is very important for the success of any operating environment. Similarly, if your app hogs most of the disk space, there will be nothing left for other apps.
So, what’s the best way of making sure that your app isn’t rejected? Study the guidelines from the beginning itself, before you start working on your app. Acquaint yourself with each and every point of the guideline. Take a printout with large fonts and stick it somewhere. Go through the guidelines every day and make sure that every aspect of your app is being designed and developed according to them.
Have you experienced app rejection from Apple? Please share your stories in the comments below.
Dhananjay (DJ) Goel is the CTO at Alphalogic, passionate about technology, startups, game of thrones and coffee. He enjoys working on challenging problems with innovative startups.