Some interesting research showing how the open plan office damages programmer productivity:
The full text of the App Store Review Guidelines. Note that this is a “living document” so they may change it as and when they please.
We’re pleased that you want to invest your talents and time to develop applications for iOS. It has been a rewarding experience – both professionally and financially – for hundreds of thousands of developers and we want to help you join this successful group. We have published our App Store Review Guidelines in the hope that they will help you steer clear of issues as you develop your App and speed you through the approval process when you submit it.
We view Apps different than books or songs, which we do not curate. If you want to criticize a religion, write a book. If you want to describe sex, write a book or a song, or create a medical App. It can get complicated, but we have decided to not allow certain kinds of content in the App Store. It may help to keep some of our broader themes in mind:
We have lots of kids downloading lots of Apps, and parental controls don’t work unless the parents set them up (many don’t). So know that we’re keeping an eye out for the kids.
We have over 700,000 Apps in the App Store. If your App doesn’t do something useful, unique or provide some form of lasting entertainment, it may not be accepted.
If your App looks like it was cobbled together in a few days, or you’re trying to get your first practice App into the store to impress your friends, please brace yourself for rejection. We have lots of serious developers who don’t want their quality Apps to be surrounded by amateur hour.
We will reject Apps for any content or behavior that we believe is over the line. What line, you ask? Well, as a Supreme Court Justice once said, “I’ll know it when I see it”. And we think that you will also know it when you cross it.
If your App is rejected, we have a Review Board that you can appeal to. If you run to the press and trash us, it never helps.
If you attempt to cheat the system (for example, by trying to trick the review process, steal data from users, copy another developer’s work, or manipulate the ratings) your Apps will be removed from the store and you will be expelled from the developer program.
This is a living document, and new Apps presenting new questions may result in new rules at any time. Perhaps your App will trigger this.
Lastly, we love this stuff too, and honor what you do. We’re really trying our best to create the best platform in the world for you to express your talents and make a living too. If it sounds like we’re control freaks, well, maybe it’s because we’re so committed to our users and making sure they have a quality experience with our products. Just like almost all of you are too.
Table of Contents
Terms and conditions
Metadata, ratings and rankings
Trademarks and trade dress
Purchasing and currencies
Scraping and aggregation
Damage to device
Religion, culture, and ethnicity
Contests, sweepstakes, lotteries, and raffles
Charities and contributions
1. Terms and conditions
As a developer of applications for the App Store you are bound by the terms of the Program License Agreement (PLA), Human Interface Guidelines (HIG), and any other licenses or contracts between you and Apple. The following rules and examples are intended to assist you in gaining acceptance for your App in the App Store, not to amend or remove provisions from any other agreement.
Apps that crash will be rejected
Apps that exhibit bugs will be rejected
Apps that do not perform as advertised by the developer will be rejected
Apps that include undocumented or hidden features inconsistent with the description of the App will be rejected
Apps that use non-public APIs will be rejected
Apps that read or write data outside its designated container area will be rejected
Apps that download code in any way or form will be rejected
Apps that install or launch other executable code will be rejected
Apps that are “beta”, “demo”, “trial”, or “test” versions will be rejected
iPhone Apps must also run on iPad without modification, at iPhone resolution, and at 2X iPhone 3GS resolution
Apps that duplicate Apps already in the App Store may be rejected, particularly if there are many of them, such as fart, burp, flashlight, and Kama Sutra Apps.
Apps that are not very useful, unique, are simply web sites bundled as Apps, or do not provide any lasting entertainment value may be rejected
Apps that are primarily marketing materials or advertisements will be rejected
Apps that are intended to provide trick or fake functionality that are not clearly marked as such will be rejected
Apps larger than 50MB in size will not download over cellular networks (this is automatically prohibited by the App Store)
Multitasking Apps may only use background services for their intended purposes: VoIP, audio playback, location, task completion, local notifications, etc.
Apps that encourage excessive consumption of alcohol or illegal substances, or encourage minors to consume alcohol or smoke cigarettes, will be rejected
Apps that provide incorrect diagnostic or other inaccurate device data will be rejected
Developers “spamming” the App Store with many versions of similar Apps will be removed from the iOS Developer Program
Apps that are simply a song or movie should be submitted to the iTunes store. Apps that are simply a book should be submitted to the iBookstore.
Apps that arbitrarily restrict which users may use the App, such as by location or carrier, may be rejected
Apps must follow the iOS Data Storage Guidelines or they will be rejected
Apps that are offered in Newsstand must comply with schedules 1, 2 and 3 of the Developer Program License Agreement or they will be rejected
Apps that display Apps other than your own for purchase or promotion in a manner similar to or confusing with the App Store will be rejected
3. Metadata (name, descriptions, ratings, rankings, etc)
Apps or metadata that mentions the name of any other mobile platform will be rejected
Apps with placeholder text will be rejected
Apps with descriptions not relevant to the application content and functionality will be rejected
App names in iTunes Connect and as displayed on a device should be similar, so as not to cause confusion
Small and large App icons should be similar, so as to not to cause confusion
Apps with App icons and screenshots that do not adhere to the 4+ age rating will be rejected
Apps with Category and Genre selections that are not appropriate for the App content will be rejected
Developers are responsible for assigning appropriate ratings to their Apps. Inappropriate ratings may be changed/deleted by Apple
Developers are responsible for assigning appropriate keywords for their Apps. Inappropriate keywords may be changed/deleted by Apple
Developers who attempt to manipulate or cheat the user reviews or chart ranking in the App Store with fake or paid reviews, or any other inappropriate methods will be removed from the iOS Developer Program
Apps which recommend that users restart their iOS device prior to installation or launch may be rejected
Apps that do not notify and obtain user consent before collecting, transmitting, or using location data will be rejected
Apps that use location-based APIs for automatic or autonomous control of vehicles, aircraft, or other devices will be rejected
Apps that use location-based APIs for dispatch, fleet management, or emergency services will be rejected
Location data can only be used when directly relevant to the features and services provided by the App to the user or to support approved advertising uses
5. Push notifications
Apps that provide Push Notifications without using the Apple Push Notification (APN) API will be rejected
Apps that use the APN service without obtaining a Push Application ID from Apple will be rejected
Apps that send Push Notifications without first obtaining user consent will be rejected
Apps that send sensitive personal or confidential information using Push Notifications will be rejected
Apps that use Push Notifications to send unsolicited messages, or for the purpose of phishing or spamming will be rejected
Apps cannot use Push Notifications to send advertising, promotions, or direct marketing of any kind
Apps cannot charge users for use of Push Notifications
Apps that excessively use the network capacity or bandwidth of the APN service or unduly burden a device with Push Notifications will be rejected
Apps that transmit viruses, files, computer code, or programs that may harm or disrupt the normal operation of the APN service will be rejected
6. Game Center
Apps that display any Player ID to end users or any third party will be rejected
Apps that use Player IDs for any use other than as approved by the Game Center terms will be rejected
Developers that attempt to reverse lookup, trace, relate, associate, mine, harvest, or otherwise exploit Player IDs, alias, or other information obtained through the Game Center will be removed from the iOS Developer Program
Game Center information, such as Leaderboard scores, may only be used in Apps approved for use with the Game Center
Apps that use Game Center service to send unsolicited messages, or for the purpose of phishing or spamming will be rejected
Apps that excessively use the network capacity or bandwidth of the Game Center will be rejected
Apps that transmit viruses, files, computer code, or programs that may harm or disrupt the normal operation of the Game Center service will be rejected
Apps that artificially increase the number of impressions or click-throughs of ads will be rejected
Apps that contain empty iAd banners will be rejected
Apps that are designed predominantly for the display of ads will be rejected
8. Trademarks and trade dress
Apps must comply with all terms and conditions explained in the Guidelines for Using Apple Trademarks and Copyrights and the Apple Trademark List
Apps that suggest or infer that Apple is a source or supplier of the App, or that Apple endorses any particular representation regarding quality or functionality will be rejected
Apps which appear confusingly similar to an existing Apple product or advertising theme will be rejected
Apps that misspell Apple product names in their App name (i.e., GPS for Iphone, iTunz) will be rejected
9. Media content
Apps that do not use the MediaPlayer framework to access media in the Music Library will be rejected
App user interfaces that mimic any iPod interface will be rejected
Audio streaming content over a cellular network may not use more than 5MB over 5 minutes
Video streaming content over a cellular network longer than 10 minutes must use HTTP Live Streaming and include a baseline 64 kbps audio-only HTTP Live stream
10. User interface
Apps must comply with all terms and conditions explained in the Apple iOS Human Interface Guidelines
Apps that look similar to Apps bundled on the iPhone, including the App Store, iTunes Store, and iBookstore, will be rejected
Apps that do not use system provided items, such as buttons and icons, correctly and as described in the Apple iOS Human Interface Guidelines may be rejected
Apps that create alternate desktop/home screen environments or simulate multi-App widget experiences will be rejected
Apps that alter the functions of standard switches, such as the Volume Up/Down and Ring/Silent switches, will be rejected
Apple and our customers place a high value on simple, refined, creative, well thought through interfaces. They take more work but are worth it. Apple sets a high bar. If your user interface is complex or less than very good, it may be rejected
11. Purchasing and currencies
Apps that unlock or enable additional features or functionality with mechanisms other than the App Store will be rejected
Apps utilizing a system other than the In-App Purchase API (IAP) to purchase content, functionality, or services in an App will be rejected
Apps using IAP to purchase physical goods or goods and services used outside of the application will be rejected
Apps that use IAP to purchase credits or other currencies must consume those credits within the application
Apps that use IAP to purchase credits or other currencies that expire will be rejected
Content subscriptions using IAP must last a minimum of 7 days and be available to the user from all of their iOS devices
Apps that use IAP to purchase items must assign the correct Purchasability type
Apps that use IAP to purchase access to built-in capabilities provided by iOS, such as the camera or the gyroscope, will be rejected
Apps containing “rental” content or services that expire after a limited time will be rejected
Insurance applications must be free, in legal-compliance in the regions distributed, and cannot use IAP
In general, the more expensive your App, the more thoroughly we will review it
Apps offering subscriptions must do so using IAP, Apple will share the same 70/30 revenue split with developers for these purchases, as set forth in the Developer Program License Agreement.
Apps that link to external mechanisms for purchases or subscriptions to be used in the App, such as a “buy” button that goes to a web site to purchase a digital book, will be rejected
Apps can read or play approved content (specifically magazines, newspapers, books, audio, music, video and cloud storage) that is subscribed to or purchased outside of the app, as long as there is no button or external link in the App to purchase the approved content. Apple will only receive a portion of revenues for content purchased inside the App.
Apps may only use auto renewing subscriptions for periodicals (newspapers, magazines), business Apps (enterprise, productivity, professional creative, cloud storage) and media Apps (video, audio, voice), or the App will be rejected.
Apps may enable additional approved features or functionality when used in combination with specific approved physical products (such as a toy) as long as the additional features and functionality are either completely dependent on such hardware (for example an App that is used to control a telescope) or also available through the App without the physical products, such as by way of reward for achievement or by use of IAP.
12. Scraping and aggregation
Applications that scrape any information from Apple sites (for example from apple.com, iTunes Store, App Store, iTunes Connect, Apple Developer Programs, etc) or create rankings using content from Apple sites and services will be rejected
Applications may use approved Apple RSS feeds such as the iTunes Store RSS feed
Apps that are simply web clippings, content aggregators, or a collection of links, may be rejected
13. Damage to device
Apps that encourage users to use an Apple Device in a way that may cause damage to the device will be rejected
Apps that rapidly drain the device’s battery or generate excessive heat will be rejected
14. Personal attacks
Any App that is defamatory, offensive, mean-spirited, or likely to place the targeted individual or group in harms way will be rejected
Professional political satirists and humorists are exempt from the ban on offensive or mean-spirited commentary
Apps portraying realistic images of people or animals being killed or maimed, shot, stabbed, tortured or injured will be rejected
Apps that depict violence or abuse of children will be rejected
“Enemies” within the context of a game cannot solely target a specific race, culture, a real government or corporation, or any other real entity
Apps involving realistic depictions of weapons in such a way as to encourage illegal or reckless use of such weapons will be rejected
Apps that include games of Russian roulette will be rejected
16. Objectionable content
Apps that present excessively objectionable or crude content will be rejected
Apps that are primarily designed to upset or disgust users will be rejected
Apps cannot transmit data about a user without obtaining the user’s prior permission and providing the user with access to information about how and where the data will be used
Apps that require users to share personal information, such as email address and date of birth, in order to function will be rejected
Apps that target minors for data collection will be rejected
Apps containing pornographic material, defined by Webster’s Dictionary as “explicit descriptions or displays of sexual organs or activities intended to stimulate erotic rather than aesthetic or emotional feelings”, will be rejected
Apps that contain user generated content that is frequently pornographic (ex “Chat Roulette” Apps) will be rejected
19. Religion, culture, and ethnicity
Apps containing references or commentary about a religious, cultural or ethnic group that are defamatory, offensive, mean-spirited or likely to expose the targeted group to harm or violence will be rejected
Apps may contain or quote religious text provided the quotes or translations are accurate and not misleading. Commentary should be educational or informative rather than inflammatory
20. Contests, sweepstakes, lotteries, and raffles
Sweepstakes and contests must be sponsored by the developer/company of the App
Official rules for sweepstakes and contests, must be presented in the App and make it clear that Apple is not a sponsor or involved in the activity in any manner
It must be permissible by law for the developer to run a lottery App, and a lottery App must have all of the following characteristics: consideration, chance, and a prize
Apps that allow a user to directly purchase a lottery or raffle ticket in the App will be rejected
21. Charities and contributions
Apps that include the ability to make donations to recognized charitable organizations must be free
The collection of donations must be done via a web site in Safari or an SMS
22. Legal requirements
Apps must comply with all legal requirements in any location where they are made available to users. It is the developer’s obligation to understand and conform to all local laws
Apps that contain false, fraudulent or misleading representations or use names or icons similar to other Apps will be rejected
Apps that solicit, promote, or encourage criminal or clearly reckless behavior will be rejected
Apps that enable illegal file sharing will be rejected
Apps that are designed for use as illegal gambling aids, including card counters, will be rejected
Apps that enable anonymous or prank phone calls or SMS/MMS messaging will be rejected
Developers who create Apps that surreptitiously attempt to discover user passwords or other private user data will be removed from the iOS Developer Program
Apps which contain DUI checkpoints that are not published by law enforcement agencies, or encourage and enable drunk driving, will be rejected
Passbook Passes can be used to make or receive payments, transmit offers or offer identification (such as movie tickets, airline tickets, coupons and reward offers). Other uses may result in the rejection of the App and the revocation of Passbook credentials.
Passes must include valid contact information from the issuer of the pass or the App will be rejected and Passbook credentials may be revoked.
Passes must be signed by the entity that will be distributing the pass under its own name, trademark, or brand or the App will be rejected and Passbook credentials may be revoked.
This document represents our best efforts to share how we review Apps submitted to the App Store, and we hope it is a helpful guide as you develop and submit your Apps. It is a living document that will evolve as we are presented with new Apps and situations, and we’ll update it periodically to reflect these changes.
Thank you for developing for iOS. Even though this document is a formidable list of what not to do, please also keep in mind the much shorter list of what you must do. Above all else, join us in trying to surprise and delight users. Show them their world in innovative ways, and let them interact with it like never before. In our experience, users really respond to polish, both in functionality and user interface. Go the extra mile. Give them more than they expect. And take them places where they have never been before. We are ready to help.
Not quite as awesome as an automatic post categoriser but still pretty handy: