· Updated · Tutorials · By Simon Chiu

Full Page Screenshot in Edge: 3 Methods Compared

Take a full page screenshot in Microsoft Edge with the built-in Screenshot tool, DevTools or a script. Steps, known limits and a tested Playwright example.

Line illustration of the RenderScreenshot mascot with three tools next to a tall browser window

Microsoft Edge gives you two built-in ways to take a full page screenshot. The quick one is the Screenshot tool (it was called Web Capture until Microsoft renamed it): press Ctrl+Shift+S, choose Capture full page, then save or copy. The exact one is DevTools: press F12, open the Command Menu with Ctrl+Shift+P, and run Capture full size screenshot, which downloads a PNG at the page's real size. For repeated captures, script Edge with Playwright.

This page belongs to our full-page screenshot guide. If you use Chrome, the DevTools steps are the same and the Chrome guide covers the differences.

What I tested, and what I did not. The test machine (Apple M1 Pro, macOS 27.0.1, 2026-10-15) has no Edge installed, so the menu steps below come from Microsoft's documentation, cited in each section, not from my own clicks. The scripted method was run with [email protected] against Chromium 156.0.8078.4, the engine Edge is built on; the Edge-specific line (channel: 'msedge') and the error you get without Edge are shown as they appeared.

Method 1: the Screenshot tool (formerly Web Capture)

Steps, from Microsoft's Edge learning center (checked 2026-10-15):

  1. Open the page and scroll once to the bottom if it loads images as you scroll.
  2. Press Ctrl+Shift+S (Windows, Linux), or open the Settings and more (...) menu and choose the Screenshot entry. The right-click menu has it too.
  3. Choose Capture full page, the middle option. Capture area (the left option) lets you drag a rectangle instead.
  4. Mark up the capture if you want (draw, highlight), then Copy it or save it.

Microsoft's WebCaptureEnabled policy page confirms the rename: "The web capture feature is rebranded to 'Screenshot'". It also lists the three entry points (context menu, Settings and more menu, Ctrl+Shift+S) and says the feature works on web and PDF content. That page explains a common surprise at work: if the option is missing, your administrator may have disabled the policy. The policy exists for Windows and macOS (Edge 87 and later), not for Android or iOS.

Known limit: resolution. In a Microsoft Q&A thread, a user on Edge 113 reported that Capture full page produced an image scaled to about 94%, which made small text hard to read, and no setting to change it was offered. I could not re-test this on a current Edge. If you need sharp text, use DevTools (Method 2) and compare.

Where it fits: a quick capture with annotations that you paste into a chat, a bug ticket or a document.

Method 2: DevTools "Capture full size screenshot"

The DevTools in Edge are the Chromium DevTools, so the screenshot commands match Chrome's:

  1. Press F12 (or Ctrl+Shift+I) to open DevTools.
  2. Press Ctrl+Shift+P on Windows and Linux, or Cmd+Shift+P on macOS, to open the Command Menu.
  3. Type screenshot.
  4. Choose Capture full size screenshot. Edge downloads a PNG.

Other commands in the same list:

  • Capture screenshot: the visible viewport only.
  • Capture area screenshot: drag a rectangle.
  • Capture node screenshot: select an element in the Elements tool first (or right-click it there), then run it. Microsoft's Edge 89 release notes say this captures the whole element, including parts outside the viewport.

To get a mobile-width full page, turn on Device Emulation (Ctrl+Shift+M) first and pick a device. The Device Emulation docs show Capture full size screenshot in that toolbar's More options menu as well.

Where it fits: full resolution, no extension, no upload. It is the best manual option for documentation and design reviews.

Method 3: script Edge with Playwright

When you capture the same pages every week, or many pages at once, script it. Playwright can drive an installed Edge through the msedge channel. The script below takes the page with Playwright's own full-page option, then a second time with the same DevTools protocol call that the DevTools command uses, so you can compare.

// edge-fullpage.mjs - full-page screenshot with Microsoft Edge via Playwright.
// Node 22+, [email protected]. Needs Edge installed (or: npx playwright install msedge).
// Usage: node edge-fullpage.mjs <url> <out.png> [channel=msedge]
import { writeFile } from 'node:fs/promises';
import { chromium } from 'playwright';

const [url, out = 'edge-full.png', channel = 'msedge'] = process.argv.slice(2);
const browser = await chromium.launch({ channel });
try {
  const page = await browser.newPage({ viewport: { width: 1280, height: 800 } });
  await page.goto(url, { waitUntil: 'networkidle' });

  // Option A: Playwright's own full-page capture.
  await page.screenshot({ path: out, fullPage: true });

  // Option B: the DevTools protocol call behind "Capture full size screenshot".
  const cdp = await page.context().newCDPSession(page);
  const { cssContentSize } = await cdp.send('Page.getLayoutMetrics');
  const { data } = await cdp.send('Page.captureScreenshot', {
    format: 'png',
    captureBeyondViewport: true,
    clip: { x: 0, y: 0, width: cssContentSize.width, height: cssContentSize.height, scale: 1 },
  });
  await writeFile(out.replace(/\.png$/, '-cdp.png'), Buffer.from(data, 'base64'));
  console.log(`${browser.version()} content ${cssContentSize.width}x${cssContentSize.height}`);
} finally {
  await browser.close();
}
npm i [email protected]
node edge-fullpage.mjs https://example.com example.png

Results of my runs, with the chromium channel because Edge was not installed:

Target Engine Option A (Playwright fullPage) Option B (DevTools protocol)
https://example.com Chromium 156.0.8078.4 1280 x 800, 80,629 bytes 1280 x 800, 80,629 bytes
Local landing test page, 2,784 px tall, sticky nav Chromium 156.0.8078.4 1280 x 2784, 398,798 bytes 1280 x 2784, 398,798 bytes, pixel-identical to A
Full-page capture of a test landing page: the sticky navigation bar appears once at the top, followed by a purple hero, feature cards, an orange gradient block, pricing cards and a dark footer
Option A on the landing test page (Chromium 156, 1280 x 2784, shown at 25%). The sticky nav appears once, at the top.

With channel: 'msedge' and no Edge on the machine, Playwright stops with a clear message:

browserType.launch: Chromium distribution 'msedge' is not found at /Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge
Run "npx playwright install msedge"

On Windows and on Linux CI runners that ship Edge, the same script runs unchanged. The script is also at edge-fullpage.mjs.

Do you need Edge for this at all? Only if you test something Edge-specific (enterprise policies, a site that sniffs the Edge user agent). For everything else, the bundled Chromium uses the same Blink engine and does not depend on what is installed on the machine.

Which method to use

Screenshot tool DevTools Playwright script
Open with Ctrl+Shift+S F12, then Ctrl+Shift+P Command line
Resolution Reported to scale down long pages Page size at the current zoom and device pixel ratio Exactly what you set
Annotations Yes (draw, highlight) No No
Lazy-loaded images Only what has loaded Only what has loaded Scroll first in code
Repeatable No No Yes
Can be turned off by an admin Yes (WebCaptureEnabled) DevTools has its own policy Not by browser policy if you use bundled Chromium

Troubleshooting

Symptom Cause Fix
No Screenshot option in the menu WebCaptureEnabled disabled by policy Use DevTools, or ask IT; check edge://policy
Text is soft in the full-page capture Screenshot tool scaled the image down Use DevTools Capture full size screenshot
Images further down are empty Lazy loading; they load only on scroll Scroll to the bottom and back, then capture
Only the first screen, or an inner panel is cut The page scrolls inside a div, not the document Use Capture node screenshot on that element
Sticky header repeated or overlapping content Header drawn at each scroll position by a stitching tool Use DevTools, which renders the page in one pass; see sticky headers
Feed never ends in the capture Infinite scroll Bound the scroll in a script, see infinite scroll pages
Chromium distribution 'msedge' is not found Edge not installed where the script runs npx playwright install msedge, or use the default Chromium
Capture is wider than expected Browser zoom or display scaling above 100% Reset zoom (Ctrl+0) before you capture

Capturing without a browser at all

If the captures go into a product (link previews, archives, reports), a browser on a desktop is the wrong place to make them. Disclosure: RenderScreenshot is my product, and it does this as one HTTP request. GET /v1/screenshot?url=...&full_page=true returns the full-page image, and the capture parameters add scroll simulation for lazy images and a maximum height. If you prefer a browser extension for manual work, our comparison of full-page screenshot extensions covers the options and what each one does with tricky pages. For API keys, create a free account.

Related in this topic