ScreenshotNeo

BlogHow-to

How to Save a Firefox Full-Page Screenshot as a PDF

Firefox saves full-page screenshots as images. Use Print to create a PDF, then choose settings that preserve the page you need.

By the ScreenshotNeo team1 October 20266 min read

Short answer: Firefox’s Take Screenshot tool saves a full-page capture as an image file. It does not provide a documented “export this screenshot as PDF” command. To save the page as a PDF, open Firefox’s Print view, choose Save to PDF, review the print settings, and select Print. The resulting PDF is the page’s print rendering, so it can look different from both the live page and a screenshot.

Choose the output you actually need

Need Firefox workflow Result
A single visual image of the entire page Right-click the page, choose Take Screenshot, then Save full page and Download PNG image
A document you can print or share Menu button → Print… → Save to PDF Paginated PDF using print CSS and print settings

Mozilla documents these as separate workflows. Printing to PDF does not convert the image produced by the screenshot tool; it prints the web page itself. See Mozilla’s guides for taking screenshots in Firefox and printing web pages.

Save the Firefox page as a PDF

  1. Open the page in Firefox and wait for the content you need to appear.
  2. Open the application menu and choose Print…. You can also use your operating system’s normal print command.
  3. In print preview, open Destination and select Save to PDF.
  4. Set the paper size, orientation, scale, margins, page range, headers and footers, and background printing as needed.
  5. Inspect the preview for clipped columns, missing backgrounds, unexpected page breaks, or blank pages.
  6. Select Print, choose a filename and folder, and save the PDF.

The exact controls can vary with the page and your environment. Mozilla’s print documentation lists orientation, pages, paper size, scale, margins, format, headers and footers, and background printing as available print controls.

Settings that usually matter

  • Orientation: Use landscape for wide tables, dashboards, and code samples.
  • Scale: Reduce it when content is clipped horizontally; increasing it can create more pages.
  • Margins: Narrow margins give content more width, while larger margins improve readability.
  • Backgrounds: Enable background graphics when colors or shaded sections carry meaning.
  • Headers and footers: Disable them for a clean document, or keep them when URL, title, or page numbers are useful.
  • Page range: Export selected pages when the preview contains an unwanted appendix or blank section.
  • Simplified format: Firefox may offer a simplified print format. Mozilla notes that background printing cannot be selected when Simplified is selected.

When you need the full-page screenshot image

  1. Right-click an empty part of the page and choose Take Screenshot. The shortcut is Ctrl+Shift+S on Windows and Linux, or Command+Shift+S on macOS.
  2. Select Save full page in the screenshot controls.
  3. Select Download. Firefox downloads the capture as a PNG image.

This is the right choice when pixel-level appearance matters, such as visual regression evidence or a design review. It is not the documented route for producing a PDF. If you must place that exact image inside a PDF, use an image-to-PDF tool available on your operating system and verify the result separately; Firefox’s screenshot help does not describe an image-to-PDF command.

Why the PDF can differ from the screenshot

  • Print CSS: Websites can define print-only styles that hide navigation, change colors, or rearrange columns.
  • Pagination: A PDF splits content across pages and may insert breaks inside cards, tables, or code blocks.
  • Dynamic content: A page can change between the time it is displayed, captured, and printed.
  • Fixed or sticky elements: Headers and floating controls can be repositioned or repeated in print.
  • Background handling: Disabled background printing can remove visual sections that are present on screen.
  • Fonts and media: Missing fonts, animations, videos, and interactive widgets may render differently or disappear.

Review the print preview before saving. A PDF is a document representation, not a guarantee of the screen’s exact pixels.

Troubleshooting

Problem Likely cause Fix
No “Save to PDF” destination The system print dialog or environment exposes different destinations. Look for a PDF option in the destination list or system print dialog. Update Firefox or use the platform’s built-in PDF printer.
Content is cut off Scale, orientation, or margins do not fit the page width. Try landscape, reduce scale, or use narrower margins; confirm the preview before saving.
Colors or images are missing Background printing is disabled, or the page’s print stylesheet hides media. Enable background graphics where available and compare the print preview with the live page.
Unexpected page breaks Print CSS and pagination rules differ from screen layout. Change paper size, scale, or orientation, then inspect each page. A screenshot image may be better when exact layout is required.
The full-page screenshot stops early Lazy content has not loaded or the page changed while Firefox captured it. Scroll through the page first, wait for content to load, then retry Save full page.
A blank or incomplete PDF The page is still loading, blocked by authentication, or relies on scripts that do not render in print. Wait for the page to settle, sign in if required, reload, and check the preview before saving.

Automation: generate a PDF or screenshot without opening Firefox

For repeatable jobs, a browser automation script or screenshot API can avoid manual print-dialog work. Keep the distinction clear: a browser print operation creates a paginated PDF, while a screenshot endpoint normally returns an image unless its PDF option is selected.

cURL

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://support.mozilla.org/en-US/kb/take-screenshots-firefox -o shot.webp

Python

import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://support.mozilla.org/en-US/kb/take-screenshots-firefox"}, timeout=90)
r.raise_for_status()
open("shot.webp", "wb").write(r.content)

Node.js

const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://support.mozilla.org/en-US/kb/take-screenshots-firefox' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`${res.status} ${res.statusText}`);
const fs = await import('node:fs/promises');
await fs.writeFile('shot.webp', Buffer.from(await res.arrayBuffer()));

See the ScreenshotNeo documentation for the PDF output option and print settings such as paper size, margins, orientation, and page ranges.

Performance, reliability, and cost considerations

  • Wait for stable content: Screenshots and PDFs are only as complete as the page state at capture time. Allow fonts, images, and lazy sections to load.
  • Use the smallest output: Export selected PDF pages when you do not need the entire document. For visual archives, WebP or JPEG can be smaller than PNG.
  • Repeatable settings: Record paper size, scale, margins, and orientation with your job so later exports are comparable.
  • Check failures: Automation should detect timeouts, authentication redirects, blank pages, and HTTP errors instead of silently storing unusable files.
  • Browser cost: Running Firefox in automation consumes memory and startup time. A hosted capture API can centralize that work when you have many URLs.

Or skip the browser setup

ScreenshotNeo provides a website screenshot API and MCP server. One GET request can return a clean PNG, JPEG, WebP, or PDF; use the PDF options in the documentation when you need a paginated document. Before capture, it accepts cookie or consent banners and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and whether the request was billed. Its MCP server lets Claude, Cursor, and other MCP clients call take_screenshot, get_page_info, and capture_pdf.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://support.mozilla.org/en-US/kb/take-screenshots-firefox -o shot.webp

The Free plan includes 1,000 screenshots per month with no card. Paid plans start at $5 for 3,000 shots, and every feature is available on every plan. Create a free ScreenshotNeo account.

FAQ

Does Firefox convert its full-page screenshot directly to PDF?

Mozilla’s documented screenshot workflow downloads a PNG. The documented PDF workflow is Print → Save to PDF, which prints the page rather than converting the PNG.

Will the PDF look exactly like the web page?

No. Print styles, pagination, scale, margins, backgrounds, and fonts can change the result. Use the preview to check it.

Is Save Page As a PDF option?

Mozilla’s page-saving guide lists complete webpage, HTML-only, text, and all-files formats. It documents Print as the PDF route.

Should I use a screenshot or a PDF for visual evidence?

Use a full-page screenshot when exact on-screen appearance matters. Use a PDF when you need pages that can be printed, annotated, or shared as a document.