Type Object
Mandatory No
Manifest version 2 or higher
  "chrome_url_overrides" : {
    "newtab": "my-new-tab.html"

Use the chrome_url_overrides key to provide a custom replacement for the documents loaded into various special pages usually provided by the browser itself.


The chrome_url_overrides key is an object that may have the following properties:

Name Type Description
bookmarks String

Provide a replacement for the page that shows the bookmarks.

history String

Provide a replacement for the page that shows the browsing history.

newtab String

Provide a replacement for the document that's shown in the "new tab" page. This is the page that's shown when the user has opened a new tab but has not loaded any document into it: for example, by using the Ctrl/Command+T keyboard shortcut.

The replacement is given as a URL to an HTML file. The file must be bundled with the extension: you can't specify a remote URL here. You can specify it relative to the extension's root folder, like: "path/to/newtab.html".

The document can load CSS and JavaScript, just like a normal web page. JavaScript running in the page gets access to the same privileged "browser.*" APIs as the extension's background script.

It's very good practice to include a <title> for the page, or the tab's title will be the "moz-extension://..." URL.

A common use case is to let the user define a new tab page: to do this, provide a custom new tab page that navigates to the page the user defined.

If two or more extensions both define custom new tab pages, then the last one to be installed or enabled gets to use its value.

To override the browser's homepage, use "chrome_settings_overrides" instead.

All properties are localizable.


"chrome_url_overrides" : {
  "newtab": "my-new-tab.html"

Browser compatibility

BCD tables only load in the browser