How to Screenshot a Page That Requires Login in Firefox
Sign in to the page in Firefox, then use Take Screenshot to save the visible content or a full-page capture. Here are the built-in and DevTools methods.
If you can already view the page in a signed-in Firefox tab, use Firefox’s built-in Screenshot tool: open the page, choose Take Screenshot from the right-click menu (or press Ctrl+Shift+S on Windows/Linux or Command+Shift+S on macOS), then choose a region, page element, or Save full page. Save or copy the resulting PNG. This captures what Firefox can render in your current session; it does not bypass a login or grant access to content you cannot legitimately view.
1. Use Firefox’s built-in Screenshot tool
- Open the page in Firefox and sign in through the site’s normal login flow.
- Confirm that the content you need is visible. If the site requires a second step, such as selecting a workspace or opening a report, do that before capturing.
- Right-click an empty area of the page and choose Take Screenshot. On macOS, Control-click can open the context menu. Or use the keyboard shortcut: Ctrl+Shift+S on Windows/Linux, or Command+Shift+S on macOS.
- Choose what to capture:
- Region: drag around the portion you need.
- Element: move the pointer over the page to highlight an element, then select it.
- Full page: choose Save full page in the upper-right corner.
- Use the save or copy action. Firefox’s built-in tool downloads the screenshot as a PNG image.
If you use the tool often, add its button to the toolbar from Menu → More Tools → Customize Toolbar. Firefox’s current menu labels and steps are documented in Mozilla Support: Take screenshots in Firefox.
2. Capture the page or an element with Firefox DevTools
DevTools is useful when the built-in picker is inconvenient or you want a page or element capture from the developer tools.
- Open DevTools with Ctrl+Shift+I on Windows/Linux or Command+Option+I on macOS.
- Open DevTools settings and find Available Toolbox Buttons.
- Enable Take a screenshot of the entire page. The screenshot button is not enabled by default.
- Click the new screenshot button to capture the current page. Firefox saves the image to the browser’s Downloads directory.
For command options, open the Web Console and use Firefox’s :screenshot helper. Examples:
:screenshot --fullpage
:screenshot --selector "main article"
:screenshot --delay 2000
--fullpage captures beyond the visible window; --selector targets an element matching a CSS selector; and --delay waits before the capture. The helper also documents device pixel ratio, clipboard, and filename options. Consult the Firefox DevTools screenshot documentation for the supported syntax and options for your Firefox version.
3. Choose the right capture for a signed-in page
| Need | Use | Keep in mind |
|---|---|---|
| A quick screenshot of one visible area | Built-in region selection | Make sure the selection excludes menus or overlays you do not want. |
| A single page component | Built-in element selection or DevTools --selector |
A selector must match the intended element; verify the output. |
| The whole page | Save full page, DevTools screenshot button, or :screenshot --fullpage |
Long or dynamically rendered pages may not capture as expected. Check the saved image. |
| Content that appears after loading | Wait for it to appear, or use :screenshot --delay |
A delay gives the page time; it does not guarantee that a failed request or hidden content will appear. |
4. What authentication does and does not mean
The browser can capture content rendered in the tab where you are signed in. Keep the normal login session active and capture only content you are authorized to access. A screenshot tool records the browser’s rendered page; it does not authenticate you, bypass access controls, or reveal hidden content.
If you need to share the screenshot, review it first for personal information, account details, internal URLs, or other sensitive data. A screenshot is a static image and may preserve information that the site’s normal interface would otherwise protect with navigation or access controls.
5. Troubleshooting
| Symptom | Likely cause | What to try |
|---|---|---|
| The page shows a login screen | The session expired, the page opened in a different profile, or the site needs another sign-in step. | Sign in in that Firefox tab, complete the site’s normal flow, and confirm the protected content is visible before capturing. |
| Take Screenshot is missing from the context menu | The click landed on browser chrome or a site-specific context menu replaced the standard menu. | Right-click an empty area of the webpage, use the keyboard shortcut, or add the Screenshot button through Customize Toolbar. |
| The screenshot button is absent in DevTools | The toolbox button is disabled by default. | In DevTools settings, enable Take a screenshot of the entire page under Available Toolbox Buttons. |
| The capture is blank or incomplete | The page may still be loading, content may be rendered dynamically, or the site may not expose all content in the current view. | Wait until the intended content is visible, try a delay with :screenshot --delay, capture a region or element, and inspect the saved file. |
| Full-page capture misses content | Some pages load or render content dynamically, and complete capture is not guaranteed for every site. | Scroll through the page so needed content loads, try the DevTools full-page route, or capture the necessary sections separately. |
| The element command captures the wrong thing | The CSS selector matches a different element, or no element matches. | Use a more specific selector and check that the target exists in the current page before running the command. |
| You cannot capture protected content | The signed-in account may not have permission, or the content is not available in the current session. | Request access through the site owner’s normal process. A screenshot cannot provide authorization. |
6. Performance, reliability, and file handling
For a small region or one element, use the built-in picker and capture only what you need. Full-page captures cover more content and can take longer or produce larger images, especially on long pages. Wait until the page is settled before capturing, then open the saved image to check that text, charts, and images are present.
Dynamic pages can change during capture, and Firefox’s documentation does not promise a complete result for every site or page length. For important records, verify the image and repeat the capture if the page changed or loaded late. Save the file somewhere appropriate and handle it with the same care as the signed-in page.
7. Or skip the browser setup
If you need screenshots through code or for a workflow, ScreenshotNeo is a website screenshot API and MCP server. Its one-call API returns an image or PDF; see the API documentation for options. For example, using 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}`);
if (!res.ok) throw new Error(`Screenshot request failed: ${res.status}`);
await import('node:fs/promises').then(fs => fs.writeFile('shot.webp', Buffer.from(await res.arrayBuffer())));
These API examples capture a URL using an API request; they do not reuse the Firefox tab’s signed-in session or bypass a site’s authentication. Use them for pages the API can access under the site’s normal access rules. ScreenshotNeo removes cookie and consent banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, failed loads, timeouts, and cache hits are not billed. Its MCP server gives AI agents tools to take screenshots, get page information, and capture PDFs. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 shots.
Create a free ScreenshotNeo account and get 1,000 screenshots a month with no card.
8. Frequently asked questions
Will Firefox save a screenshot as an image or a PDF?
The built-in Screenshot tool saves a PNG image. It is not a PDF export feature.
Can I take a screenshot if I forgot my password?
No. Sign in through the site’s normal process first, or use its account recovery flow. Firefox cannot grant access to a protected page.
Does a screenshot include browser tabs and the address bar?
The Firefox Screenshot feature captures webpage content. To record the whole desktop or browser chrome, use an operating-system screen capture feature instead.
Can I automate a screenshot of my signed-in Firefox tab with the API example?
That example sends a URL to the ScreenshotNeo API; it does not transfer your local Firefox cookies. Do not send private credentials or session cookies unless you have a legitimate, secure reason and have configured an authorized workflow.


