V1.2 Certification requirements
Document version: 1.2
Document date: May 31, 2012
In this document, we describe the criteria an app must meet to be eligible for listing in the Windows Store.
Thank you for your interest in developing apps for Windows. We’re committed to a relationship with you that supports your ambitions and encourages a diverse catalog of high-quality, engaging apps for Windows customers worldwide. We crafted these certification requirements with those goals in mind and they should help you make choices that enhance your app’s appeal and help speed its listing in the Windows Store.
We review every app before we list it in the Store. If our certification requirements change, we’ll identify the updates to ease your consideration. If you have feedback on the policies, please let us know by commenting in our forum. We will consider every comment.
Your apps are crucial to the experience of hundreds of millions of customers. We can’t wait to see what you create and are thrilled to help deliver your apps to the world.
The Windows Store offers only fully functional apps to provide customers with the best experience. Anything that might cause our testers to think that your app is not completely finished will cause your app to fail certification.
You can help us by testing your app thoroughly before you submit it, and by providing us the information we need to test your app thoroughly. For example, if your app requires login credentials, provide us with a demo account. If your app requires access to a server, tell us what we need to do to verify that it's working correctly.
A trial can limit access to some of the app’s features, or limit the period of time that the app functions.
The image on an app’s tile must be reasonably related to the content of the app.
If your app includes or displays ads, it must provide additional functionality beyond the ads.
Our content policies are described in Section 5. Windows Store apps are appropriate for a global audience.
2.3 Your app must not use its tiles, notifications, app bar, or the swipe-from-edge interactions to display ads
You must use only the Windows Runtime APIs to implement the features of your app.
We describe these APIs in the Windows Store apps API reference. Your app must not link to, depend on, or otherwise make use of APIs or Windows OS services other than those described in the Windows Store apps API reference. This includes APIs and services exposed by, or used to communicate with, Windows 8 desktop apps or services.
If your app has a different user interface or functionality when it runs on different processor types, you must submit a separate app for each processor type and describe the differences in the Description of each app.
3.4 Updates must not decrease your app’s functionality in a way that would be unexpected to a reasonable customer
Your app must provide visual feedback when users touch interactive elements.
Your app must not use an interaction gesture in a way that is different from how Windows uses the gesture. The Windows 8 touch language is described in Touch interaction design.
Your app must support a snapped layout. In landscape orientation, your app’s functions must be fully accessible when the app’s display size is 1024 x 768. Your app must remain functional when the customer snaps and unsnaps the app.
Your app must neither programmatically close nor offer UI affordances to close it. Windows 8 Process Lifetime Management closes Windows Store apps automatically.
Your app must suspend and resume to a reasonable state.
If your app implements an app bar, that bar must show up with a bottom-up swipe.
If your app implements a navigation bar, that bar must show up with a top-down swipe.
See Revision history.
- The app must launch in 5 seconds or less
- The app must suspend in 2 seconds or less
Low-power computers are described in How to test your app with the Windows App Certification Kit.
Your app can publish a customer’s personal information to a service or other person only after obtaining opt-in consent.
Opt-in consent means the customer gives their express permission for the requested activity, after you have:
a) Described to the customer how the information will be used or shared; and
b) Provided the customer a mechanism through which they can later rescind this permission and opt-out.
If your app publishes a person’s personal information, but that person is not a customer, you must obtain express written consent to publish that personal information, and you must permit the person whose information is shared to withdraw that consent at any time.
Personal information includes all information or data that is associated with an identifiable person. Examples of personal information include: contacts, photos, phone number, SMS or other text communication, images of the computer’s desktop or screen shots, browsing history, and other internet settings.
4.2 Your app must respect system settings for notifications and remain functional when they are disabled
This includes the presentation of ads and notifications to the customer, which must also be consistent with the customer’s preferences, whether the notifications are provided by the Windows Push Notification Service or any other service. If a customer disables the notification function, either on an app-specific or a system-wide basis, your app must remain functional.
Additionally, the app must not include, link to, distribute through the Windows Push Notification Service, or otherwise provide an entry point for viruses, malware, or any other malicious software, to access the customer’s Windows system.
The Windows system includes the computer running Windows, any software running on that computer, and any computers or software communicating with that computer.
4.4 Your app must not be designed or marketed to perform, instruct, or encourage tasks that could cause physical harm to a customer or any other person
We would consider an app that allows for control of a device without human manipulation, or that is marketed for use to resolve emergency or lifesaving situations to violate this requirement.
When operating over a metered network, your app must offer the customer the option of permitting these transfers without limit or limit audio and video transfers to these data rates:
Video streams, which include download-only and two-way video messaging, must use an adaptive bit-rate technology and limit the transfer rate to no more than 256 Kbps.
Audio streams, which include voice over IP (VOIP), must limit the data rate to no more than 64KBps.
When the customer’s computer is connected to a metered network, your app must obtain permission from the customer or wait until it has access to an unrestricted network before it performs any synchronization, upload, or download that requires a total transfer larger than Windows.Networking.Connectivity.DataPlanStatus.MaxTransferSizeInMegabytes.
When the customer’s computer is operating outside of its home network or connected to a metered network while over the data limit, your app must obtain permission from the customer before it performs any data transfer that is larger than 1 megabyte.
4.6 Your app must comply with Windows Push Notification Service (WNS) requirements if it uses WNS notifications
If your app uses the Windows Push Notification Service (WNS) to transmit push notifications, it must do so as described in this requirement.
a) You may only use WNS for apps distributed through the Windows Store. Notifications provided through WNS are considered app content and are subject to all Windows Store app policies, including the certification requirements.
b) Your app must be associated with only one Package Security Identifier.
c) You may not obscure or try to disguise the source of any WNS message or Package Security Identifier, or other unique referral identifier.
d) You may not include in a notification any info a customer would reasonably consider to be confidential or sensitive.
e) Your app must not use excessive network capacity or WNS bandwidth, or otherwise unduly burden the Windows system with WNS notifications. For example, using WNS to stream content or transfer files violates this requirement.
4.7 If you use a transaction provider other than the Store's, you must identify the provider at the time of the transaction or when it collects any payment info from the customer
If your app uses the Windows.ApplicationModel.Store namespace for in-app purchases, this messaging is provided for you. If your app uses any other method for in-app purchases or to collect payments, it must display a message to the customer stating that you are responsible for the transaction and not the Windows Store.
For example, in-app purchases made from apps produced by Contoso that don’t use the Windows Store for the transaction would display a message such as, “This item is available from Contoso” at the time of the transaction.
4.8 If your app doesn't use the Windows.ApplicationModel.Store namespace for in-app purchases, your app must prompt the user for authentication to allow a transaction to be accomplished.
The app can offer the user the ability to save this authentication, but the user must have the ability to either require an authentication on every transaction or to turn off in-app transactions.
4.9 If your app collects credit card info or uses a third-party payment processor that collects credit card info, the payment processing must meet the current PCI Data Security Standard (PCI DSS)
This section describes types of content that are not permitted in the apps made available in the Windows Store.
Content means the images, sounds, and text contained in the app, the tiles, notifications, error messages or ads exposed through your app, and anything that’s delivered from a server or that the app connects to. Because Windows and the apps in the Windows Store are used around the world, these requirements will be interpreted and applied in the context of regional and cultural norms.
Apps with a rating over PEGI 16, ESRB MATURE, or that contain content that would warrant such a rating, are not allowed. Metadata and other content you submit to accompany your app may contain only content that would merit a rating of PEGI 12, ESRB EVERYONE, or Windows Store 12+, or lower.
5.2 Your app must not contain content that advocates discrimination, hatred, or violence based on membership in a particular racial, ethnic, national, linguistic, religious, or other social group, or based on a person’s gender, age, or sexual orientation
5.3 Your app must not contain content or functionality that encourages, facilitates or glamorizes illegal activity
5.4 Your app must not contain or display content that a reasonable person would consider to be obscene
5.6 Your app must not contain content that encourages, facilitates or glamorizes excessive or irresponsible use of alcohol or tobacco products, drugs or weapons
5.7 Your app must not contain content that encourages, facilitates or glamorizes extreme or gratuitous violence, human rights violations, or the creation or use of weapons against a person or animal in the real world
Your app’s name is what we use to list your app in the Windows Store. You must give your app a name that is unique throughout the Windows Store catalog. You can give your app a name in another language; but additional names must also be unique throughout the Store.
6.2 Your app must have a Windows age rating, and you must submit third-party ratings for your app if you have them
You must assign a Windows Store age rating that most accurately matches your app. The Age rating page contains more detailed descriptions of the content that is suitable for each Windows Store age rating.
If a rating under any particular rating system is required by law in any country, you must include the rating documentation for that rating system along with your app.
If your app is rated by an optional ratings board that is identified in Rating boards for Windows apps, you must also submit that ratings certificate for the app and provide the appropriate content descriptors.
If your app has any existing third-party rating, the Windows Store age rating for the app must be determined from the following table. If your app has rating board ratings that correspond to different Windows Store age ratings, you must assign the Windows Store age rating that corresponds to the older audience.
Apps with a rating over PEGI 16, ESRB MATURE, or a corresponding rating under other ratings systems, are not allowed.
|Windows Store Age Rating||PEGI||ESRB||CERO||GRB||USK|
3+ Suitable for all ages
PEGI 4 in Portugal
A (all ages)
A (all ages)
USK ab 0
7+ Suitable for ages 7 and older
PEGI 6 in Portugal
USK ab 6
12+ Suitable for ages 12 and older
USK ab 12
16+ Suitable for ages 16 and older
USK ab 16
Note Adult content is not allowed in the Store.
USK ab 18
We don’t provide customer or technical support for your app. You must provide that support and specify easily discoverable and accurate technical support info for your app in the Support contact info field of the Description.
If your app requires authentication, such as a user or account name and password, you must provide a retrieval mechanism for account info—for example, through a secondary email account or phone support—and respond to customers within 24 hours.
Pick the markets in which you want to list your app on the Selling details page from the Submit a new app option in your Dashboard. This is separate from and unrelated to the languages that your app supports. We will detect the languages that your app supports by reading the Package/Resources element of the app manifest when you upload the app’s package(s).
At least one of the languages your app supports must be one of our certification languages.
In addition, you must provide a complete description of your app for your customers in each language that you declare in your app's package. The languages that the Windows Store supports are listed in App languages.
The elements of your app's description, such as screenshots, text, and promotional images must describe your app and not contain additional advertising.
Tip After you upload your app’s packages, we list the languages that we detect in the Release Summary.
6.6 The capabilities you declare must relate to the core functions and value proposition of your Windows Store app, and the use of those declarations must be compliant with our app quality declarations.
Learn more about our app capability declarations.
When you submit an update to the Store, you must describe any changes in the features of the app. In addition, you must also describe any changes in the app manifest's Package/Capabilities element.
These descriptions belong in the Description of update field.
You must provide at least one, but no more than eight, localized screenshots of your app for each language your app supports. Each screenshot image must:
Be .png files, 1366x768 pixels in size.
Be appropriate for people as young as 12 years old.
Have a caption in the language of the description.
Graphically enhanced screenshots are not allowed, unless they are clearly marked as having been enhanced.
In each of your app’s packages, the app manifest elements must contain the correct values as described in the Package metadata requirements.
Your app’s packages must comply with the Package format requirements.
In addition to these requirements, you must certify desktop apps under the Windows Desktop App Certification program.
7.1 The purchase page link provided for your app must send users to a location where they can directly download the app, and must not lead users to another intermediary site or a site that spoofs the purchase page
Users must be able to buy your app quickly and easily after they are directed to your purchase page from the Windows Store.
You are allowed to provide two purchase page links for your app. You must use these links to provide users access to 64-bit and 32-bit versions of your app.
7.2 The information you provide to the Store about your app must match the information used on the purchase page for that app. That includes the app name, price and major and minor version numbers
As these requirements evolve, we’ll note the changes in the revision history here. Stable requirements are critical to your doing your best work, so we aim to ensure the changes we do make are sustainable and continue to protect and enhance your apps.
Thank you again for joining us in this commitment to delivering fantastic experiences.
|Date||Version||Summary of changes||Link to document|
|May 31, 2012||1.2||
1.2 REVISED—added examples
2.4 REVISED—clarified statement about apps that mimic websites.
3.1 REVISED—added information on communication with desktop apps
3.3 REVISED—clarified requirement
3.5 REVISED—clarified requirement for apps to support touch and keyboard/mouse equally.
3.6 REVISED—added information on the use of nav and app bars
4.1 REVISED—clarified requirement
4.3 REVISED—clarified how this requirement applies to Windows systems
4.7 REVISED—clarified requirement
4.8 ADDED—included information on in-app purchases that don't use the Windows Store
4.9 REVISED—previously was 4.8.
5.1 REVISED—updated to include app metadata
6.2 REVISED—updated to make app ratings easier to read
6.5 REVISED—included more details for localization for supported languages
6.6 REVISED—included more info on app capabilities.
6.7 REVISED—clarified requirement for describing changes to your app
6.8 REVISED—clarified that you must provide localized screenshots
7 ADDED—requirements for desktop apps
|February 8, 2012||1.1||
2.3: REVISED - made more specific
2.4: REVISED - clarified and made more specific
3.5: REVISED - added external reference to Windows 8 Touch Language and clarified
3.6: REVISED - added more specific examples
3.7: DELETED - merged with 3.5
3.8: ADDED – describe performance testing already being performed by the Windows App Certification Kit
4.6: REVISED – removed some of the WNS usage limitations
4.7: ADDED – display identity of party responsible for in-app purchase transactions
4.8: ADDED – payment processing security standard
Throughout: minor typographical and terminology corrections that don’t change the meaning or intent of the document.
|Dec. 6, 2011||1.0||Initial draft of document for Store Preview.||http://go.microsoft.com/fwlink/p/?LinkId=228257|