Saves the current page as a PDF file. This will open a dialog, supplied by the underlying operating system, asking the user where they want to save the PDF file.

This is an asynchronous function that returns a Promise.


var saving = browser.tabs.saveAsPDF(
  pageSettings   // object


object. Settings for the saved page, as a tabs.PageSettings object. This object must be given, but all its properties are optional. Any properties not specified here will get the default values listed in the PageSettings documentation.

Return value

A Promise that will be fulfilled with a status string when the dialog has closed. The string may be any of:

  • "saved"
  • "replaced"
  • "canceled"
  • "not_saved"
  • "not_replaced"

Browser compatibility

ChromeEdgeFirefoxFirefox for AndroidOpera
Basic support No No561 No No

1. This function does not work on macOS.


In this example a background script listens for a click on a browser action, then tries to save the currently active tab as a PDF file, then logs the result:

browser.browserAction.onClicked.addListener(() => {
    .then((status) => {

Document Tags and Contributors

Contributors to this page: wbamberg
Last updated by: wbamberg,