ScreenshotNeo

BlogScreenshots on your device

How to Capture an Entire Web Page in Firefox

Capture a full scrolling page in Firefox, save or copy it, use Developer Tools, fix common issues, and automate screenshots with ScreenshotNeo.

By the ScreenshotNeo team1 October 20265 min read

Short answer: Open the page in Firefox, open Take Screenshot from the page context menu (or press Ctrl+Shift+S on Windows/Linux, Command+Shift+S on macOS), choose Save full page, then select Download or Copy. “Save visible” captures only the current viewport. This is Firefox’s built-in workflow documented by Mozilla Support.

Capture an entire page in Firefox

  1. Navigate to the page you want to capture and wait for its content to finish loading.
  2. Right-click an empty area of the page and choose Take Screenshot. On macOS, Control-click opens the context menu. You can also use the keyboard shortcut for your operating system.
  3. In the screenshot toolbar, choose Save full page in the upper-right. Use Save visible only when you want the viewport currently on screen.
  4. Choose Download to save a PNG to Firefox’s default download folder, or choose Copy to put the image on the clipboard. Mozilla documents a filename pattern like Screenshot [date and time] [page title].png.

The full-page option scrolls beyond the viewport and combines the page into one image. It does not export a PDF from this desktop interface.

Make the Screenshot command easier to reach

Open More Tools → Customize Toolbar, drag the Screenshot item into the toolbar, and click Done. Clicking that toolbar button opens the same capture interface without using the context menu. [Mozilla Support]

Use Developer Tools for advanced full-page captures

Developer Tools expose controls useful for repeatable captures, delayed states, and element-only images.

Enable the full-page screenshot button

  1. Open Developer Tools with F12 or Ctrl+Shift+I (Windows/Linux), or Command+Option+I (macOS).
  2. Open Developer Tools Settings.
  3. Under Available Toolbox Buttons, enable Take a screenshot of the entire page.
  4. Close Settings and click the new camera icon. Firefox saves the image to the browser’s Downloads directory.

Run the Web Console command

:screenshot --fullpage
Option Purpose Example
--clipboard Copy the result instead of saving it as a file. :screenshot --fullpage --clipboard
--delay N Wait N seconds before capture. :screenshot --fullpage --delay 2
--dpr N Set device-pixel ratio. :screenshot --fullpage --dpr 2
--file NAME Choose the output filename. :screenshot --fullpage --file=checkout.png
--selector SELECTOR Capture one element matching a CSS selector. :screenshot --selector="article"
:screenshot --fullpage --delay 2 --dpr 2 --file=product-page.png

Reusing a filename such as test.png overwrites the previous image. Pick unique names when preserving successive captures. See the Firefox Source Docs screenshot reference for the complete syntax.

Full page versus visible page

Choice What it includes Use it when
Save full page The page beyond the current viewport. You need a complete archive or design reference.
Save visible Only the pixels currently on screen. You need a quick bug report.
Region selection A rectangle you draw. You need one small area.
Developer Tools selector The element matched by a CSS selector. You need a repeatable component capture.

Where Firefox saves or copies the image

  • Download: the PNG goes to Firefox’s configured download folder. Check Settings → General → Files and Applications → Downloads if needed.
  • Copy: paste into an editor, issue tracker, document, or chat with Ctrl+V (Windows/Linux) or Command+V (macOS).
  • Save shortcut: Ctrl+S on Windows/Linux or Command+S on macOS.

Capture lazy-loaded or interactive content

Wait for the page to render. Scroll through it once if important images load only near the viewport. For a menu or tooltip, open it first and use --delay. Moving content can produce inconsistent frames, so pause animations where possible.

Troubleshooting

Symptom Cause Fix
Only the viewport appears. Save visible was selected. Choose Save full page.
Screenshot is missing from the menu. The menu was opened over a control. Right-click an empty area, use the shortcut, or pin Screenshot through Customize Toolbar.
Developer Tools camera icon is absent. The toolbox button is disabled. Enable Take a screenshot of the entire page in Settings.
Dropdown or hover state is missing. The state closed before capture. Open it and use :screenshot --delay 2 --fullpage.
Previous files disappear. The filename was reused. Pass a unique --file value.
Crosshair will not move. Mozilla notes a Wayland limitation. Use keyboard selection controls or the full-page command.
Content is blank or shifted. Scripts, lazy loading, animations, or layout changes interrupted capture. Wait for the page, trigger lazy content, disable animations where possible, and retry.

Privacy and data collection

Mozilla says Firefox Screenshots collects interaction events such as using Copy or Save full page, but not the page URL or details of the captured image. The support article describes controls for disabling add-on and website data collection. [Mozilla Support]

Performance and reliability

  • Very tall pages create large images and can take longer to render and save. Use a selector or viewport capture when a whole page is unnecessary.
  • Wait for fonts and images, avoid active animations, and keep viewport and zoom consistent between runs.
  • For repeatable builds, use explicit delay, device-pixel ratio, selector, and filename settings.
  • The desktop tool saves an image. Use a separate print or PDF workflow for PDF output.

Or skip the browser setup

ScreenshotNeo provides one HTTP request for a PNG, JPEG, WebP, or PDF. It accepts cookie and consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be turned off. Bot checks, CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and responses identify the result with X-Page-Verdict and X-Billed headers. Its MCP server exposes take_screenshot, get_page_info, and capture_pdf for Claude, Cursor, and other MCP clients. One thousand shots per month are free with no card, and paid plans start at $5 for 3,000 shots.

See the ScreenshotNeo API docs. These examples save the returned WebP:

cURL

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Python

import requests

r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)

Node.js

const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

Create a free ScreenshotNeo account for 1,000 screenshots each month with no card.

FAQ

Can Firefox capture a page longer than the screen?

Yes. Choose Save full page or run :screenshot --fullpage.

Can I copy a full-page screenshot without downloading it?

Yes. Choose Copy, or use --clipboard.

Can I capture one element?

Yes. Developer Tools supports --selector with a CSS selector.

Does the built-in desktop tool create a PDF?

No. It creates an image; use a separate PDF workflow.

Are mobile steps identical?

Firefox for iOS has a separate operating-system screenshot and Save as PDF workflow. Follow Mozilla’s iOS-specific guidance.