Extensions quality guidelines FAQ

Single purpose policy

Why did Google launch a "single purpose" Chrome extensions policy?

To maintain the quality of the Chrome user experience, we require Chrome extensions to have a single purpose. For an overview of the policy announcement, please read this Chromium blog post.

We launched this policy because unexpected changes to browser functionality and settings have become the number one user complaint for Chrome users, and this policy helps minimize the problem by ensuring users understand what extensions are doing. Also, multi-purpose extensions can crowd your browser UI and slow down your web browsing sometimes significantly. Speed and simplicity have always been part of Chrome's core principles, so this policy will help us get back to the design that was originally intended.

Where can I find the "single purpose" policy?

Please refer to the Extensions Quality Guidelines section of the Chrome Web Store Developer Program Policies.

What does "single purpose" actually mean?

"Single purpose" can refer to one of two aspects of an extension:

  1. An extension can have a single purpose limited to a narrow focus area or subject matter (for example, "news headlines", "weather", "comparison shopping"). If the extension has a narrow focus area or subject matter, then it can offer various functions related to that focus area or subject matter. For example, a shopping extension could have an action button that allows users to see recent deals and have host access to find coupons for a store the user is currently browsing.

  2. Or, an extension can have a single purpose limited to a narrow browser function (for example, "new tab page", "tab management", or "search provider").

Regardless of the extension's purpose, the experience provided by the extension must respect the user's other settings and preferences.

Be conscious of your extension's permissions. We assume your extension utilizes each of the permissions it requests. Excessive permissions unrelated to your extension's single purpose will be viewed as enabling unrelated functionalities, resulting in a policy violation.

Will this policy affect my extension?

It depends. Particularly if your extension offers multiple features, please make sure that it has a single purpose. Ask yourself these questions:

  • Does my extension have a narrow focus area or a narrow function as described above?
  • If my extension has a narrow focus area, are all of the features directly related to that single purpose?
  • If my extension has multiple features, does it only affect a narrow function of the browser?
  • Does my extension modify Chrome's behavior in a predictable way, in line with the extension's narrow, stated purpose?
  • Does my extension request any unnecessary permissions?

If you're unsure, you may want to post a question to the chromium-extensions Google Group to get feedback from other extension developers.

What will happen if I don't make my extension compliant with this policy?

Extensions that violate this policy are not permitted on the Store, and will be removed.

Chrome changes

Can my extension make changes to the start page, home page, and new tab settings?

Yes. If the purpose of your extension is to modify one narrow function of the browser (either the start page, home page or new tab page, for example), and it does only that, then it would be compliant with the single-purpose policy. Additionally, if the purpose of your extension is limited to one focus area or subject matter, then you can have various functions related to that one area or subject matter, including changes to the start page, home page and new tab page.

As of July 1, 2017, however, the only way to programmatically change the startup page, the home page, or the search provider settings in Chrome on Windows and Mac is via the Settings Overrides API. If your extension modifies one of these functions, it must use the Settings Overrides API.

Where more than one extension modifies these Chrome settings, the most recently installed extension will manage the settings it has modified via the Settings Override API. Extension developers can modify the new tab page (and a few other Chrome pages) using the same override method as before.

In addition, if you want to publish an extension that modifies Chrome settings, you must either control any domains you wish to set in any changed browser settings or redistribute an extension created by the entity that controls those domains. For example, you could distribute an extension that changes the home page to wikipedia.org if the Wikimedia Foundation originally created and published the extension in the Chrome Web Store, and gave you the right to distribute it.

Can my extension make changes to the default search settings?

Yes. If the only purpose of the extension is to change the default search settings, then it would be compliant with the single purpose policy.

The only supported way to change the default web search settings using an extension is via the Settings Overrides API. Extensions that change the default web search experience in any form, without using the Settings Overrides API, are subject to removal from the Chrome Web Store.

Can my New Tab Page (NTP) extension make changes to the user's search experience?

No. NTP extensions that provide a search experience must respect the user's existing settings by using the Chrome Search API. Altering a user's search experience is considered a standalone functionality and should not be coupled with any other features.

Settings

How will users be notified of settings changes in new versions of Chrome?

If an extension changes Chrome settings via the Settings Override API, the user will be notified of the settings changes prior to installation, when they encounter the settings change for the first time, and via an indicator next to each changed setting on the Chrome settings page. From these notifications, users will have the option to reverse the settings changes by disabling the extension.

What happens to settings when an extension is disabled?

All Chrome settings changed by an extension will be reverted when that extension is disabled.

Will users' existing home page, search provider or startup pages be affected by the introduction of the Settings Override API?

No. A user's existing home page, search provider or startup settings will remain unchanged by the introduction of Settings Override API. Following the launch of the Settings Override API, only extensions can programmatically change these settings and only through the Settings Override API.

Does this policy apply to Chrome apps too?

At this time, Chrome apps (as distinguished from extensions) are not required to be distributed through the Chrome Web Store, or to have a single purpose. Chrome apps are currently not capable of changing Chrome settings.

Other

Can I bundle ad injection with some other type of functionality?

No. This violates the single purpose policy. However, if injecting ads is the single purpose of the extension and the extension is otherwise compliant with Chrome policies, then it would be acceptable. For example, a "related articles" extension that adds sponsored links to articles related to a page the user is visiting would be compliant with the single purpose policy because it has a single purpose limited to a narrow function of the browser.

Are toolbars permitted under this policy?

It depends on what the toolbar does. As described above #3, it must adhere to the narrow single purpose of the extension. Broad, multi-purpose toolbars are not allowed and toolbars that are implemented using content scripts to inject UI into every page are not recommended because they slow down every page load, clutter the UI, and can lead to security problems for users. Instead, consider using an action popup, which was designed to solve this very problem. It's a better user experience, with no performance or security downsides.

What will happen to non-compliant extensions that were already installed by users?

All extensions must comply with the Extension Quality Guidelines. If a user installed a non-compliant extension, then you will need to update them to a compliant extension that is hosted in the Chrome Web Store. If the user is not updated to a compliant extension that is hosted in the Chrome Web Store, then the extension will be automatically disabled. As noted above, any settings or behaviors controlled by the extension, including any settings controlled by the Settings Override API, will be reverted when the extension is disabled. You can find more information here.

If my extension gets flagged for review under the single purpose policy, what will happen?

Our team will review it, and it may be removed from the Chrome Web Store. You'll have a chance to make changes and appeal the decision.

If my extension's single purpose is to change the new tab page, can I use the action button?

The addition of an action button under the new Chrome UI (Chrome 49 and later), will not trigger a single purpose policy violation if the button only serves as a shortcut to the extension's main functionality. For example, if an extension's single purpose is changing the new tab page, clicking the toolbar icon can open a new tab page. The action button button, however, cannot introduce any additional functionality or content. If an extension's single purpose is a narrow subject matter or focus area, then the functionality and content of the action button must likewise fall within that narrow purpose.

Why does Chrome display a confirmation prompt for some extensions?

Chrome makes it easy for users to retain agency over their preferred search settings. Modifying search settings should be a purpose on its own, and when bundled with other functionalities, users may experience an unpleasant surprise. For these reasons, search extensions that stretch their functionality beyond a clear single purpose will trigger a confirmation dialog. Search extensions that are limited to the single purpose of overriding search settings will not trigger a confirmation dialog.