Home | History | Annotate | Download | only in articles
      1 <h1>Extensions Quality Guidelines FAQ</h1>
      2 
      3 <h2 id="one">1.) What is the new policy?</h2>
      4 
      5 <p>
      6 To maintain the quality of the Chrome user experience,
      7 we recently launched a new policy requiring Chrome extensions
      8 to have a single purpose.
      9 We are also introducing the new
     10 <a href="http://blog.chromium.org/2014/03/protecting-user-settings-on-windows.html">Settings Override API</a>
     11 to allow extensions to manage important Chrome settings on Windows.
     12 Beginning with the July release of Chrome,
     13 the Settings Override API will be the only approved path
     14 for offering settings changes to Chrome users on Windows.
     15 In addition, starting with the May 20, 2014 release of Chrome,
     16 we <a href="http://blog.chromium.org/2014/02/make-sure-to-get-your-extension-in.html">have begun to require</a>
     17 that extensions in Chrome for Windows be hosted in the Chrome Web Store.
     18 </p>
     19 
     20 <h2 id="two">2.) Why did Google launch a single purpose Chrome extensions policy?</h2>
     21 
     22 <p>For an overview of the policy announcement, please read this
     23 <a href="http://blog.chromium.org/2013/12/keeping-chrome-extensions-simple.html">Chromium blog post</a>.</p>
     24 
     25 <p>We launched this policy because
     26 multi-purpose extensions can crowd your browser UI
     27 and slow down your web browsing - sometimes significantly.
     28 Speed and simplicity have always been part of Chrome's core principles,
     29 so this policy will help us get back to the design that was originally intended.
     30 Also, unexpected changes to browser functionality and
     31 settings have become the number one user complaint for Chrome users,
     32 and this policy helps minimize the problem by ensuring
     33 that users understand what extensions are doing.
     34 </p>
     35 
     36 <h2 id="three">3.) Where can I find the single purpose policy?</h2>
     37 
     38 <p>
     39 Please refer to the
     40 <a href="https://developer.chrome.com/webstore/program_policies?csw=1#extensions">Extensions Quality Guidelines</a>
     41 section of the Chrome Web Store Developer Program Policies.
     42 </p>
     43 
     44 <h2 id="four">4.) What does single purpose actually mean?</h2>
     45 
     46 <p>
     47 Single purpose can refer to one of two aspects of an extension: 
     48 </p>
     49 
     50 <p>
     51 An extension can have a single purpose limited to a narrow
     52 <strong>focus area or subject matter</strong>
     53 (for example, news headlines", "weather", "comparison shopping").
     54 If the extension has a narrow focus area or subject matter,
     55 then it can offer various functions related
     56 to that focus area or subject matter.
     57 For example, a news headlines extension could have a browser action button
     58 that allows users to see news stories and replace the new tab page
     59 with news-only content,
     60 so long as all of those functions are narrowly focused
     61 on the news headline focus area. 
     62 </p>
     63 
     64 <p>
     65 Or, an extension can have a single purpose limited
     66 to a narrow <strong>browser function</strong>
     67 (for example, "new tab page", "tab management", or "browser history").
     68 If the extension is implemented in a single function,
     69 then it can offer content or features related to different areas or subjects.
     70 For example, an extension that replaces the new tab page could offer
     71 multiple unrelated features on the new tab page
     72 (for example, weather forecast, news headlines, search engine, and so on),
     73 but it cant also provide a browser action button,
     74 change the browsers homepage, or
     75 make any other changes to browser functionality.
     76 </p>
     77 
     78 <h2 id="five">5.) Will this policy affect my extension?</h2>
     79 
     80 <p>
     81 It depends.
     82 Particularly if your extension offers multiple features,
     83 please make sure that it has a single purpose.
     84 Ask yourself these questions:
     85 </p>
     86 
     87 <ul>
     88   <li>Does my extension have a narrow focus area
     89   or a narrow function as described above?</li>
     90   <li>If my extension has a narrow focus area,
     91   are all of the features directly related to that single purpose?</li>
     92   <li>If my extension has multiple features,
     93   does it only affect a narrow function of the browser?</li>
     94   <li>Does my extension modify Chromes behavior in a predictable way,
     95   in line with the extension's narrow, stated purpose?</li>
     96 </ul>
     97 
     98 <p>
     99 If youre unsure, you can email
    100 <a href="mailto:chromewebstore-policy (a] google.com">chromewebstore-policy (a] google.com</a>
    101 with your extension ID,
    102 and well take a look and try to provide feedback within a week.
    103 If your extension does not have a single purpose,
    104 then you will need to remove functionality
    105 or split your extension into different extensions. 
    106 </p>
    107 
    108 <h2 id="six">6.) What will happen
    109 if I dont make my extension compliant with this policy?</h2>
    110 
    111 <p>
    112 If you created your extension after December 19, 2013,
    113 your extension will not be permitted in the Chrome Web Store.
    114 If you created your extension prior to December 19,2013,
    115 your extension may be removed from the Chrome Web Store starting July 22, 2014,
    116 although you will still be able to update the extension and file appeals.
    117 Please keep in mind that
    118 your re-published item will not be immediately published live in the store.
    119 The re-published item will undergo a compliance review
    120 before it can be restored.
    121 </p>
    122 
    123 <p>
    124 In order to minimize disruption for users,
    125 we recommend that you take a moment to carefully review your extensions
    126 and make necessary updates as soon as possible.
    127 You can email us at
    128 <a href="mailto:chromewebstore-policy (a] google.com">chromewebstore-policy (a] google.com</a>
    129 with your extension ID, and well try to provide feedback within a week.
    130 </p>
    131 
    132 <h2 id="seven">7.) Can my extension make changes to the start page,
    133 homepage, and new tab settings?</h2>
    134 
    135 <p>
    136 Yes.
    137 If the purpose of your extension is to modify one narrow function
    138 of the browser (either the start page, homepage or new tab page, for example),
    139 and it does only that, then it would be compliant with the single-purpose policy.
    140 Additionally, if the purpose of your extension is limited
    141 to one focus area or subject matter,
    142 then you can have various functions related to that one area or subject matter,
    143 including changes to start page, homepage and new tab page. 
    144 </p>
    145 
    146 <p>
    147 Beginning with the July release of Chrome,
    148 the only way to programmatically change the homepage, search provider,
    149 and startup page settings in Chrome on Windows will be via an extension
    150 that uses the Settings Override API.
    151 Where more than one extension modifies these Chrome settings,
    152 the most recently installed extension will manage the settings it has modified
    153 via the Settings Override API.
    154 Extension developers can modify the new tab page
    155 (and a few other Chrome pages) using the same
    156 <a href="https://developer.chrome.com/extensions/override">override method</a>
    157 as before. 
    158 </p>
    159 
    160 <p>
    161 In addition,
    162 if you want to publish an extension that modifies Chrome settings,
    163 you must either control any domains you wish to set in any changed browser settings
    164 or redistribute an extension created by the entity that controls those domains.
    165 For example, you could distribute an extension that changes the homepage
    166 to wikipedia.org if the Wikimedia Foundation originally created and
    167 published the extension in the Chrome Web Store,
    168 and gave you the right to distribute it.
    169 </p>
    170 
    171 <p>
    172 Please see this
    173 <a href="http://blog.chromium.org/2014/03/protecting-user-settings-on-windows.html">Chromium blog post</a>
    174 for more information.
    175 </p>
    176 
    177 <h2 id="eight">8.) Can my extension make changes to the default search settings?</h2>
    178 
    179 <p>
    180 Yes.
    181 If the only purpose of the extension is to change the default search settings,
    182 then it would be compliant with the single purpose policy.
    183 Additionally,
    184 if the single purpose of your extension is search as the narrow focus area,
    185 and nothing else, then you can offer various functions related to search,
    186 including changes to default search settings.
    187 </p>
    188 
    189 <h2 id="nine">9.) How will users be notified of settings changes in new versions of Chrome?</h2>
    190 
    191 <p>
    192 If an extension changes Chrome settings via the Settings Override API,
    193 the user will be notified of the settings changes prior to installation,
    194 when they encounter the settings change for the first time,
    195 and via an indicator next to each changed setting on the Chrome settings page.
    196 From these notifications,
    197 users will have the option to reverse the settings changes
    198 by disabling the extension.
    199 </p>
    200 
    201 <h2 id="10">10.) What happens to settings when an extension is disabled?</h2>
    202 
    203 <p>
    204 All Chrome settings changed by an extension will be reverted
    205 when that extension is disabled.
    206 All other settings
    207 (for example, those changed directly by a Windows binary)
    208 will remain unchanged.
    209 </p>
    210 
    211 <h2 id="eleven">11.) Will users existing homepage, search provider or
    212 startup pages be affected by the introduction of the Settings Override API?</h2>
    213 
    214 <p>
    215 No.
    216 A users existing homepage, search provider or startup settings will
    217 remain unchanged by the introduction of Settings Override API.
    218 Following the launch of the Settings Override API,
    219 only extensions can programmatically change these settings and
    220 only through the Settings Override API.
    221 But all changes to a users homepage, search provider or
    222 startup pages made prior to the launch of the Settings Override API,
    223 including any that may have been made by Windows binaries,
    224 will remain unchanged until the user manually updates those settings or
    225 installs an extension that uses the Settings Override API to change them. 
    226 </p>
    227 
    228 <h2 id="twelve">12.) Is this new policy Windows-only?</h2>
    229 
    230 <p>
    231 The <a href="https://developer.chrome.com/extensions/hosting_changes">requirement</a>
    232 that Chrome extensions be hosted in the Chrome Web Store
    233 initially applies only to Windows extensions.
    234 Likewise, the new Settings Override API will initially be made available
    235 only on Chrome for Windows.
    236 However, the single-purpose policy will apply to all Chrome extensions.
    237 </p>
    238 
    239 <h2 id="thirteen">13.) Does this policy apply to Chrome apps too?</h2>
    240 
    241 <p>
    242 At this time, Chrome apps (as distinguished from extensions)
    243 are not required to be distributed through the Chrome Web Store,
    244 or to have a single purpose.
    245 Chrome apps are currently not capable of changing Chrome settings.
    246 </p>
    247 
    248 <h2 id="fourteen">14.) Can I bundle ad injection with some other type of functionality?</h2>
    249 
    250 <p>
    251 No.
    252 This violates the single purpose policy.
    253 However, if injecting ads is the single purpose of the extension and
    254 the extension is otherwise compliant with Chrome policies,
    255 then it would be acceptable.
    256 For example, a related articles extension that adds sponsored links
    257 to articles related to a page the user is visiting would be compliant
    258 with the single purpose policy because it has a single purpose limited
    259 to a narrow function of the browser.
    260 You also might want to explore the other monetization options described
    261 <a href="https://developer.chrome.com/webstore/money">here</a>.
    262 </p>
    263 
    264 <h2 id="fifteen">15.) Are toolbars permitted under this policy?</h2>
    265 
    266 <p>
    267 It depends on what the toolbar does.
    268 As described in
    269 <a href="#four">answer #4</a>,
    270 it must adhere to the narrow single purpose of the extension.
    271 Broad, multi-purpose toolbars are not allowed and
    272 toolbars that are implemented using content scripts
    273 to inject UI into every page are not recommended because
    274 they slow down every page load, clutter the UI,
    275 and can lead to security problems for users.
    276 Instead, consider using a
    277 <a href="https://developer.chrome.com/extensions/browserAction">browser action popup</a>,
    278 which was designed to solve this very problem.
    279 It's a better user experience, with no performance or security downsides.
    280 </p>
    281 
    282 <h2 id="sixteen">16.) What will happen to non-compliant extensions
    283 that were already installed by users?</h2>
    284 
    285 <p>
    286 All extensions will need to comply with the Extension Quality Guidelines.
    287 If a user installed a non-compliant extension,
    288 then you will need to update them to a compliant extension
    289 that is hosted in the Chrome Web Store.
    290 If the user is not updated to a compliant extension
    291 that is hosted in the Chrome Web Store,
    292 then the extension will be automatically disabled.
    293 As noted above,
    294 any settings or behaviours controlled by the extension,
    295 including any settings controlled by the Settings Override API,
    296 will be reverted when the extension is disabled. 
    297 You can find more information
    298 <a href="http://blog.chromium.org/2014/02/make-sure-to-get-your-extension-in.html">here</a>.
    299 </p>
    300 
    301 <h2 id="seventeen">17.) If my extension is rejected from the Chrome Web Store
    302 because it doesnt comply with the single purpose policy,
    303 what will happen after the requirement to host extensions
    304 in the Chrome Web Store comes into effect?</h2>
    305 
    306 <p>
    307 If your extension is rejected from the Chrome Web Store,
    308 you will need to make changes or appeal the decision.
    309 After the requirement to host extensions
    310 in the Chrome Web Store comes into effect in late May 2014,
    311 your extension must be hosted in the Chrome Web Store or
    312 it will be automatically disabled from the users browsers. 
    313 </p>
    314 
    315 <h2 id="eighteen">18.) If my extension gets flagged for review under the single purpose policy,
    316 what will happen?</h2>
    317 
    318 <p>
    319 Our team will review it,
    320 and it may be removed from the Chrome Web Store.
    321 Youll have a chance to make changes and appeal the decision.
    322 As noted above,
    323 if you created your extension before we announced the policy on December 19, 2013,
    324 you have until July 22, 2014 to make changes.
    325 If your extension was created after the policy was announced,
    326 it needs to be compliant now.
    327 You can temporarily unpublish it and contact us at
    328 <a href="mailto:chromewebstore-policy (a] google.com">chromewebstore-policy (a] google.com</a>
    329 with your extension ID if youd like feedback.
    330 Well try to respond within a week.
    331 </p>
    332 
    333 <h2 id="nineteen">19.) I need help. Who should I contact?</h2>
    334 
    335 <p>
    336 You can email
    337 <a href="mailto:chromewebstore-policy (a] google.com">chromewebstore-policy (a] google.com</a>
    338 with your extension ID,
    339 and well take a look and try to provide feedback within a week.
    340 This is a lightweight review intended to give you an indication
    341 of whether your extension will comply with the new policy.
    342 </p>
    343 
    344 <h2 id="appendix">Appendix: Examples of extensions that comply with the quality guidelines</h2>
    345 
    346 <p>
    347 An extension that adds features to Chromes browser history.
    348 All of the features are contained in a single browser function.
    349 </p>
    350 
    351 <img src="{{static}}/images/history-extension.png"
    352      width="680"
    353      height="385"
    354      alt="Image of browsing history extension">
    355 
    356 <p>
    357 An extension with a single subject matter:
    358 It provides dropdown information about the weather.
    359 Because it is focused on one type of content,
    360 this extension could also change browser settings, like the new tab page,
    361 where the extension displays weather conditions and offers a weather search.
    362 </p>
    363 
    364 <img src="{{static}}/images/extension.png"
    365      width="680"
    366      height="425"
    367      alt="Image of weather extension">
    368 
    369 <img src="{{static}}/images/search-extension2.png"
    370      width="680"
    371      height="425"
    372      alt="Image of weather extension showing new tab page">
    373 
    374 <p>
    375 A search extension.
    376 It has multiple features, including this dropdown,
    377 but all of them are related to the narrow subject matter of search.
    378 </p>
    379 
    380 <img src="{{static}}/images/extension2.png"
    381      width="680"
    382      height="425"
    383      alt="Image of search extension">
    384 
    385