Windows Dev Center

Using content ratings

For every piece of content in the app’s catalog, the app needs to provide a RatedContentDescription.Ratings value that reflects the age appropriateness of the content.

The ContentRestrictions API provides a RequestContentAccessAsync method that allows an app to determine if a piece of content can be used by a user, based on the user’s Family Safety content settings and the piece of content's properties. These content properties are expressed by the RatedContentDescription object.

When determining the Ratings for a piece of content, here are some things to consider:

  • If a piece of content has any existing third-party approved rating, all third party board ratings must be provided in the Ratings property. Family Safety uses the ContentRestrictionBrowsePolicy.GeographicRegion and RatedContentDescription.Category properties to determine the appropriate rating system, per region and per content category, for a piece of content to be rated. If RatedContentDescription.Ratings contains a rating value in this system, it’s used by the API as the rating for a piece of content, to determine whether or not it can be used.

  • If a piece of content doesn’t have an existing third-party rating for its content category in the Family Safety settings region, and the content’s age suitability is known, you can provide a Store age rating. The rating must most accurately reflects age appropriateness of the content where allowed by local regulations.
  • If a piece of content doesn’t have an existing third-party rating for its content category in the Family Safety settings region, and content’s age suitability is NOT known, RatedContentDescription.Ratings should not contain any rating values.
  • If there is no preferred third-party rating system available for the ContentRestrictionBrowsePolicy.GeographicRegion and RatedContentDescription.Category properties, the these ratings can be provided for a piece of content:

Rating JSON file

The monikers for the ratings used in the RatedContentDescription.Ratings property are defined by this JSON file:

JSON file moniker definitions

It has the following structure:


Version value provides “YYYY.MM” stamp of the JSON file creation. The JSON file is updated when the ratings data is changed.

regions object

The regions object lists details about the rating systems per region. This object represent information provided by Supported content rating systems.

"regions": {
"AR": {
    "tv": ["INCAA"],
    "movie": ["INCAA"],
    "application": ["Microsoft", “PEGI”]
"US": {
    "movie": ["MPAA"],
    "tv": ["TVPG"],
    "game": ["ESRB"],
    "music": ["RIAA"],
    "application": ["Microsoft", "ESRB"]

region object

Every region that has a preferred third-party rating system(s) for content categories supported by the ContentRestrictions API is represented by the region object. This object contains a list of content categories that have preferred rating system(s) in the region. Argentina (AR) lists rating systems for tv, movie and application content categories; while the US has preferred rating systems defined for more content types like movies, tv, games, applications and music. It’s possible for a content category to have more than one preferred rating system. The rating of any listed system can be used to indicate age appropriateness for a piece of content of the listed content type in the region.

unlisted object

The unlisted object represents rating systems per content category to be used for a region not represented by a region object. For example, Zimbabwe is not listed as the region, so its game and application rating systems are defined by this object.

If a region is represented by an object, but doesn’t explicitly list a particular content category, the rating system(s) listed by the unlisted object per content category are to be used. For example, Argentina (AR) doesn’t list game content category, so the PEGI ratings are to be used for Argentina.

"unlisted": {
    "game": ["PEGI"],
    “application”: [“Microsoft”, “PEGI”]

defaults object

The defaults object lists rating systems per content category, that is to be used in a piece of content if:

  • A piece of content doesn’t have a rating in the region’s rating system for the content category. For example, if a game in the US doesn’t have ESRB rating, the Store age rating is to be used (“Microsoft”).
  • A region doesn’t have a rating system per content category, even after the unlisted object values are taken into account. For example, there is no rating system for a music content category in Argentina, so the Store age ratings are to be used (“Microsoft”).

"defaults": {
    "game": "Microsoft",
    "tv": "Microsoft",
    "movie": "Microsoft",
    "music": "Microsoft",
    "general": "Microsoft"

systems object

The systems object list supported rating systems. For each rating system, an array of supported rating monikers is provided.

"systems": {
"OFLC-NZ": [

The Store age rating system is represented by the following value:

"Microsoft": [

ageRatings object

The ageRatings object lists supporting ratings for all supported rating systems and ratings’ age suitability. Each rating property has the following format:

<rating moniker>:<age suitability of content with such a rating>

where <rating moniker> is <rating system>:<rating>.

"ageRatings": {
"OFLC-NZ:G": 1,
"OFLC-NZ:PG": 8,
"OFLC-NZ:R13": 13,
"OFLC-NZ:R15": 15,
"OFLC-NZ:R16": 16,
"OFLC-NZ:M": 16,
"OFLC-NZ:R18": 18,
"OFLC-NZ:R": 18,
"Microsoft:3": 0,
"Microsoft:7": 7,
"Microsoft:12": 12,
"Microsoft:16": 16,
"Microsoft:18": 18,

For example, an ESRB:E rating is suitable for users 10 and older and E represents “Everyone”. “Microsoft:3” rating is suitable for users 0 and older and stands for Store age rating “3+”.

excludedRatings object

The excludedRatings object lists ratings that are not applicable to the one or more content categories in the following format:

<rating moniker> : <array of content categories for which this rating is not applicable>, where an empty array indicates that the rating is not applicable to any categories.

A rating exclusion is used for:

  • Some rating systems are covering several content categories with different ratings per content category. The ability to exclude a rating from a content category allows us to accomplish this. For example, New Zealand (NZ) Office of Film and Literature Classification board defines a rating system that covers game, movie, and TV content categories. R13-Restricted and R15-Restricted ratings of the system are applicable to game and movie content, but not to TV content.
  • A rating gets deprecated. For example, the Spain (ES) movie rating system ICAA no longer uses rating “15”. This movie rating for ES is supported by the ContentRestrictions API, but this rating is no longer shown in the content settings UI as a supported rating.

"excludedRatings": {
    "OFLC-NZ:R13": ["tv"],
    "OFLC-NZ:R15": ["tv”],
	   "ICAA:15": [],

Related topics

Supported content rating systems
Store age ratings



Send comments about this topic to Microsoft

Build date: 10/13/2013

© 2015 Microsoft