ScreenshotNeo

BlogHow-to

How to Save a Webpage as a PDF with a Chrome Extension

Save any webpage as a PDF in Chrome using built-in printing or an extension for full-page, selected-content, and cleaner exports.

By the ScreenshotNeo team1 October 20267 min read

Fastest answer: open the page in Chrome, open the Print dialog, choose Save as PDF, review the preview, and save the file. Chrome extensions are useful when you need full-page capture, selected-element export, or a cleaner article layout.

Chrome’s native workflow is enough for ordinary printable pages. An extension adds controls, but output still depends on the webpage’s print styles, loaded content, images, and browser permissions.

1. Save a webpage with Chrome’s built-in PDF printer

  1. Open the webpage in Chrome.
  2. Open Chrome’s print dialog from the browser menu or your operating system’s print shortcut.
  3. Set the destination to Save as PDF. Google documents this destination in its Chrome Help instructions: Print from Chrome.
  4. Review the preview. Check page breaks, orientation, margins, headers, footers, images, and background graphics.
  5. Click Save, choose a filename and folder, then open the PDF to verify it.

The exact controls can differ between Chrome versions and operating systems. If a page is designed for printing, this method usually requires no installation or extra permissions.

2. Use a Chrome extension when native printing is not enough

An extension makes sense when you need one of these workflows:

Need Useful mode What to check
Capture content that continues below the visible viewport Full-page export Lazy-loaded images and content loaded after scrolling
Export only one card, article, table, or section Selected-element export That the selector includes headings, images, and related links
Remove navigation, ads, and surrounding page clutter Clean-article mode Tables, images, links, and code blocks in the simplified output
Match a printed document format Paper, orientation, margin, and layout controls Preview before downloading

Step-by-step extension workflow

  1. Review the extension’s current Chrome Web Store listing, developer, permissions, and recent updates before installing it.
  2. Open the webpage you want to export.
  3. Click the extension icon in Chrome’s toolbar.
  4. Choose full-page, selected-element, or clean-article mode, depending on the result you need.
  5. Set paper size, orientation, margins, and other layout controls.
  6. Let the page finish loading. Scroll through the source page first if images or sections load lazily.
  7. Preview the generated document.
  8. Download or print the PDF, then open it in a PDF viewer and check the pages that matter.

One Chrome Web Store example, Web to PDF – Save Webpage as PDF, describes full-page, selected-element, and clean-article modes, along with paper size, orientation, margins, preview, printing, and download options. Its listing says the PDF uses Chromium’s print engine and that preservation of text, links, images, and styling depends on the page’s print layout. Those are vendor-described capabilities, so verify the current listing and your output.

3. Full-page, selected-element, and article exports

Full-page export

Choose full-page mode when the page is longer than the normal print viewport or when you want one continuous capture. Give the page time to load. Infinite scroll, lazy images, animations, sticky headers, and content that appears only after interaction can change the result.

Selected-element export

Use this for a single article, product description, table, or documentation section. Select the actual content container rather than a temporary overlay. After export, verify that the selection includes its heading, images, captions, links, and any nested tables.

Clean-article export

Article mode can remove navigation and other surrounding content for reading or archiving. Compare the result with the source page if the article contains code, footnotes, diagrams, advertisements that provide context, or interactive data.

4. Why a PDF does not always look like the webpage

A PDF is produced through print layout rules, not by taking a perfect copy of the browser window. The page can provide print-specific CSS that hides elements, changes colors, moves columns, or inserts page breaks. Conversely, a page without useful print styles may produce clipped content, awkward breaks, or missing backgrounds.

  • Images: wait for lazy-loaded images and check that remote images were permitted to load.
  • Fonts: custom fonts may not be available when the print job runs, changing line wrapping and page count.
  • Links: some exporters preserve clickable links; confirm this if the PDF is used as a reference.
  • Backgrounds: background graphics may be disabled in the print dialog or omitted by print CSS.
  • Sticky elements: headers and floating controls can repeat on every page or obscure content.
  • Interactive content: accordions, tabs, videos, maps, and charts may export only their visible state or a static fallback.
  • Long pages: a browser print engine may paginate them differently from the screen layout.

5. Troubleshooting Chrome PDF exports

Symptom Likely cause Fix
Only the visible portion was exported The chosen workflow captured the viewport rather than the whole document Use the extension’s full-page mode, or print after confirming the extension supports full-page export.
Images are blank or missing Images are lazy-loaded, blocked, or had not finished loading Scroll through the page, wait for images, reload, and export again. Check the preview.
Text or columns are cut off Print CSS, paper size, scale, or orientation does not fit Try landscape, a different paper size, narrower margins, or a lower scale. Inspect each page.
The page contains ads, chat, or navigation you do not want Native printing followed the page’s normal print layout Use clean-article mode or select only the article element.
A selected export is incomplete The selected node did not contain nested content or dependent styles Select a higher-level container and compare headings, images, tables, and links with the source.
Fonts or spacing changed Web fonts were not ready or print styles changed layout Wait for the page to settle, reload, and check the print preview before saving.
Chrome warns about an extension The extension’s trust or permission signals changed Review the listing, publisher, requested permissions, and Chrome’s warning before proceeding. Enhanced protection can warn when an extension is not trusted.
The export hangs The page is still loading, contains scripts that never settle, or the extension cannot process it Wait, disable unnecessary tabs, reload the page, try native Save as PDF, or export a simpler selection.

6. Privacy and permission checks

A webpage-to-PDF extension can need access to the pages you ask it to process. Before installing, read the current listing and permissions, check the developer and update history, and avoid granting broad access that the workflow does not require. Chrome’s enhanced protection warning is one signal; it does not replace reading the listing and deciding whether the requested access fits your use.

7. Performance, reliability, and file-size tips

  • For a single normal page, Chrome’s built-in printer is the shortest path and avoids extension startup time.
  • Full-page exports take longer on pages with many images, long feeds, animations, or scripts.
  • Open the preview before saving so you catch missing images and bad page breaks while the source page is still available.
  • For repeatable archives, save the source URL and capture date beside the PDF.
  • If the PDF is too large, reduce image-heavy content, choose a smaller paper size where appropriate, or use the extension’s available layout controls.
  • For sensitive pages, remember that browser extensions may have page access; prefer the native print workflow when it meets your needs.

8. Or skip the browser setup

If you need a repeatable API workflow instead of opening Chrome, ScreenshotNeo accepts one GET request and returns a clean screenshot or PDF. Its PDF options include paper size, margins, landscape mode, and page ranges. See the ScreenshotNeo API documentation for the output-format and PDF parameters.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
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)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

Configure the PDF output and other capture options in the documentation. ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before the shot; bot checks, blank pages, and failed loads are never billed. Its MCP server lets AI agents take screenshots, and the free plan includes 1,000 screenshots a month with no card. Paid plans start at $5 for 3,000 shots. Create a free ScreenshotNeo account.

9. FAQ

Can I save a webpage as a PDF without installing an extension?

Yes. Chrome’s Print dialog includes the Save as PDF destination.

When should I install an extension?

Use one when you need full-page, selected-element, or clean-article modes and the native print workflow does not provide the control you need.

Will the PDF be an exact visual copy?

Not always. Print CSS, fonts, page breaks, lazy content, and browser settings affect the output. Always inspect the preview and the saved file.

Why is the PDF missing an image that I can see in Chrome?

The image may be lazy-loaded, blocked, or unavailable to the print job. Scroll through the page, wait, reload, and export again.

Is a Chrome extension safer than using an online converter?

Safety depends on the specific tool and permissions. Review the extension’s current listing and access before installing it; for ordinary pages, Chrome’s built-in printer avoids adding an extension.

Can I automate webpage-to-PDF exports?

Yes. A screenshot API such as ScreenshotNeo can be called from cURL, Python, or Node.js, with PDF settings configured through its API documentation.