TL;DR

You saved a webpage as a PDF and half the images are blank boxes, gray placeholders, or missing entirely. This almost always means the page uses lazy loading — images only download as you scroll near them, and your converter grabbed the PDF before they arrived. The fix is Load All Images plus pre-scroll in Convert: Web to PDF: the extension scrolls the whole page first so lazy images actually load, then prints a real PDF with everything in place. It runs 100% locally, works on pages behind a login, and uploads nothing. One caveat up front: for pages with true infinite scroll, only what has actually loaded gets captured — so scroll to the bottom first.

Why your PDF has blank boxes

Here's the thing that trips everyone up: the page you look at and the page a converter captures are not the same page.

Modern sites don't load every image when the page opens — that would be slow and waste bandwidth on images you might never scroll to. Instead they use lazy loading: an image below the fold is just an empty placeholder until you scroll near it, at which point the real image downloads and slots in.

That's great for browsing. It's terrible for naive PDF conversion, because:

  • Chrome's built-in Print to PDF (Ctrl+P) captures the page in its current state. Images you haven't scrolled past are still placeholders — so they come out blank.
  • Server-side converters (paste-a-URL tools) fetch the page fresh on their own server and often render it once, near the top, with no scrolling. Everything below the fold is missing. They also can't see anything behind your login at all.

So you get a PDF where the top image is fine and everything lower down is a row of empty rectangles. It's not corruption. The images were simply never loaded before the snapshot was taken.

The fix: Load All Images + pre-scroll

Convert: Web to PDF handles this in two coordinated ways:

  1. Pre-scroll. Before printing, the extension scrolls through the page so lazy-loaded images get triggered and download, just as if you'd scrolled the whole thing yourself.
  2. Load All Images. A dedicated option that pushes the page to fetch its images before the PDF is generated, so the print engine sees real images instead of placeholders.

Then it prints through Chrome's own engine, producing a real PDF with selectable text and clickable links — and, crucially, the images actually in it.

Because it all runs locally in your browser using the page you're already looking at, it works on image-heavy pages behind a login — a private gallery, an internal wiki, a product admin — without uploading anything to a server. For the definitional "why are some images missing" answer, see the FAQ on long and dynamic pages.

How each method handles lazy-loaded images

MethodBelow-the-fold lazy imagesBehind-login pagesOutput type
Convert: Web to PDF (Load All Images + pre-scroll)Loaded before captureWorks — uses your sessionReal PDF, selectable text
Chrome Ctrl+P (Print to PDF)Usually missing / placeholdersWorks but no pre-scrollReal PDF, but blank boxes
Server converters (PDFCrowd, PDFShift-style URL tools)Often missing — renders once, no scrollCan't access them at allPDF, but incomplete
PrintFriendlyStrips a lot, mixed results on lazy mediaLimitedCleaned PDF
GoFullPage / screenshot toolsScrolls, so images load, but output is an imageWorksFlattened image — text not selectable
Smallpdf / iLovePDF (upload-based)You upload a file; can't fix a live lazy pageNoDepends on input

Note the GoFullPage row: screenshot tools do scroll, so they usually catch the images — but they flatten everything into an image, so you lose selectable text and clickable links. Load All Images gets you both the images and a real, usable PDF.

The hard limit: infinite scroll only captures what's loaded

Be clear-eyed about this. There are two different page behaviors, and they're not the same:

  • Lazy loading — the page has a fixed length; images just load as you approach them. Pre-scroll and Load All Images fully solve this.
  • Infinite scroll — the page keeps appending new content as you scroll (endless feeds, some galleries, social timelines). There is no natural bottom.

For infinite scroll, no converter can capture content that hasn't been generated yet. The extension captures what has already loaded into the page. So the workflow is: scroll down until you've loaded everything you want (or until the feed genuinely ends), then convert. If you stop scrolling at item 40, item 41 onward won't be in the PDF, because it doesn't exist in the page yet. This is a real limitation, not a bug — the content simply isn't there to capture.

Where this matters most

Long image galleries and portfolios

A photographer's portfolio or a product gallery is almost pure lazy-loaded imagery. Ctrl+P gives you the first few and blanks below. Load All Images plus a full pre-scroll gets the whole set. For very tall pages, pair it with Save a full scrolling page as PDF to keep it as one continuous document.

E-commerce product pages

Product photos, variant swatches, and "you might also like" thumbnails are frequently lazy-loaded. If you're saving a product page for a purchase record or a comparison, the images are the point — a PDF full of blank boxes is useless. Load All Images fixes it.

Image-heavy articles and reports

Long-form journalism, data-story pieces, and research write-ups embed charts and photos throughout. Save it naively and the visuals vanish below the fold. If you want the clean article version too, Article Mode helps — but note that for code-heavy pages you should stick with the default mode, since Article Mode's Readability engine can drop <pre> blocks. More at Save an article as a clean PDF.

Documentation and knowledge bases with embedded diagrams

Internal wikis and product docs lean heavily on diagrams — architecture charts, flowcharts, annotated screenshots — and many render them lazily to keep the page snappy. If you're saving a doc page as a reference PDF and the diagrams come out blank, the doc is worthless. Load All Images plus pre-scroll pulls every diagram in before printing. And because these live behind a company login, doing it locally in your own session matters: the page never leaves your machine, which is the right posture for anything internal.

Real-estate and travel listings

Listing pages — homes, rentals, hotels — are wall-to-wall photos, almost all lazy-loaded, and they're exactly the kind of page people want to save for later comparison. A listing PDF with blank photo boxes tells you nothing. Scroll the gallery so every photo loads, turn on Load All Images, and export a PDF that actually shows the property. This pairs naturally with saving the listing's whole layout — orientation and paper size tips are in Fit a wide table or dashboard on one PDF page if the listing table is wide.

Why "just use a screenshot tool" isn't the answer

It's tempting to conclude that since screenshot tools scroll (and therefore load the images), you should just use one. Here's the trade-off you're making if you do:

  • A screenshot is an image. The captions under those product photos aren't selectable text anymore — you can't copy the model number, search for a term, or click a "view details" link.
  • Image files of long pages get large and unwieldy, and they pixelate when someone zooms in to read fine print.
  • You lose the document structure — no headings, no links, no reflow.

Load All Images gets you the same complete set of images inside a real PDF, so you keep everything a document should have: selectable text, working links, crisp rendering, and a sensible file size. You're not choosing between "has the images" and "is a usable document." You get both.

A quick checklist when images still don't show

If a PDF still has gaps after converting, run through this:

  1. Did you scroll to the bottom first? Especially on infinite-scroll pages — the extension can only capture loaded content.
  2. Is Load All Images turned on before you generate the PDF?
  3. Give the page a moment. On a slow connection, let images finish downloading before you export; pre-scroll triggers the fetch, but the images still have to arrive.
  4. Is it a background image via CSS? Some decorative visuals are CSS backgrounds rather than <img> tags; these usually render fine, but if one is missing, capturing that specific element can help — see Save one section of a webpage as PDF.
  5. Preview before you download. The extension shows an accurate preview; if a box is blank there, fix it before exporting rather than discovering it later.

The mental model that saves you every time

If you internalize one thing, make it this: a converter can only save what has actually loaded into the page. Everything else follows from that.

  • Lazy-loaded image that hasn't scrolled into view? Not loaded yet → won't be captured. Pre-scroll and Load All Images load it → now it will.
  • Infinite-scroll item you never reached? Never generated → can't be captured. Scroll to it first → now it exists → now it's captured.
  • Image still downloading on a slow connection? In flight, not yet arrived → give it a moment before exporting.

Once you think of it that way, the fix is always the same shape: make the content real in the page first, then convert. The extension automates the common case (pre-scroll on a normal lazy page), and you handle the edge case (manually scrolling an endless feed to the point you care about). There's no server round-trip guessing at your page from the outside — it's your live browser tab, so what you can see is what you can save.

Frequently asked questions

Why does my saved PDF have blank boxes instead of images?

The page uses lazy loading — images only download as you scroll near them. If the converter captured the page before those images loaded, they come out as empty placeholders. Turning on Load All Images and letting the extension pre-scroll loads them before the PDF is generated.

Why does Chrome's own Print to PDF miss images?

Ctrl+P captures the page in its current state without scrolling through it first. Any lazy-loaded image you haven't reached is still a placeholder, so it prints blank. The extension pre-scrolls specifically to avoid this.

Do online URL-to-PDF converters fix this?

Usually not. Server converters render the page once on their own machine, typically near the top with no scrolling, so below-the-fold lazy images are missing — and they can't see anything behind your login. See why a PDF converter shouldn't upload your files.

Will Load All Images capture an infinite-scroll feed completely?

No — infinite scroll keeps generating new content as you scroll, so only what has actually loaded gets captured. Scroll down to load everything you want first, then convert. Content you never scrolled to won't be in the page, so it can't be in the PDF.

Does this upload my page to a server to process the images?

No. Everything runs locally in your browser using Chrome's print engine. The page — including image-heavy pages behind a login — is processed on your device, and nothing is uploaded.

Are the images in the final PDF still good quality?

Yes. They're the real images the page loaded, printed through Chrome's engine, and the surrounding text stays selectable and links stay clickable. See the output quality FAQ.

Which browsers does this work in?

Any Chromium browser — Chrome, Edge, Brave, Arc, Opera, Vivaldi. Not Firefox or Safari.

Bottom line

Blank boxes in a saved PDF almost always mean lazy-loaded images that never got a chance to load before capture. Convert: Web to PDF fixes it with pre-scroll and Load All Images — it walks the page so the images arrive, then prints a real PDF with everything in place. Just remember the one rule for endless feeds: scroll first, then convert, because the tool captures what's loaded, not what hasn't happened yet. It's local, works behind logins, uploads nothing, and it's free.