Use Chrome’s print dialog to save a page occasionally and adjust the result by eye. Use Headless Chrome or browser automation when PDF creation must run repeatedly from a command or application. The choice is about workflow and control—not a documented universal winner for speed, quality, or cost.
Which HTML-to-PDF workflow should you choose?
| Need | Better fit | Why |
|---|---|---|
| Save a page once in a while | Chrome print dialog | You can inspect the print preview and adjust the available settings for that document. |
| Generate PDFs repeatedly or from an application | Headless Chrome or browser automation | A command-line flag or API can be integrated into a repeatable process. |
| Match the screen appearance rather than print styling | Automation with explicit media selection | Puppeteer uses print CSS by default; you can request screen media before generating the PDF. |
| Control when a dynamic page is captured | Either, with different considerations | A person can inspect readiness before printing; automation requires an intentional readiness strategy. |
This comparison describes capabilities in Chrome and Puppeteer documentation; it does not establish that automation is inherently faster or that either workflow always produces a better PDF.
As an Amazon Associate I earn from qualifying purchases.
Save a page with Chrome’s print settings
- Open the page in Chrome and wait until the content you need is visible.
- Open Chrome’s print interface using the browser menu or the system’s print shortcut.
- Choose the available destination for saving or printing to a PDF.
- Review the preview. Adjust the settings offered for that page, such as layout, margins, scale, or headers and footers where available.
- Save the PDF, then open the saved file to check page breaks, missing content, and appearance.
Print preview gives you an opportunity to inspect the output before saving. A page that changes after it first appears—because of lazy-loaded images, scripts, or application data—may still need additional time or interaction before it is ready.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsGenerate a PDF with Headless Chrome
Chrome Headless can save a page directly to a PDF with --print-to-pdf. For example, from a terminal where Chrome is installed and available as google-chrome:
#1 Best Overall
- BEST FOR SMALL BUSINESSES – Engineered for extraordinary productivity, the Brother DCP-L2640DW Monochrome (Black & White) 3-in-1 combines laser printer, scanner, copier in one compact footprint and delivers high-quality black & white prints
- FAST PRINTER WITH EFFICIENT SCANNING – Produces documents quickly with print speeds up to 36 ppm(2) and scan speeds up to 23.6/7.9 ipm(3) (black/color). A 50-page auto document feeder(4) allows for convenient, time saving multi-page scanning and copying
- FLEXIBLE CONNECTION OPTIONS – Easily navigate the changing demands of your business with secure multi-device connectivity via built-in dual-band wireless (2.4GHz / 5GHz) and Ethernet. Or connect locally to a single computer via USB interface
- BROTHER MOBILE CONNECT APP – Print, scan, and manage your wireless printer anytime, from almost anywhere from your mobile device. Order Brother Genuine Supplies, track toner usage, and complete more work on-the-go(5)
- CHOOSE BROTHER GENUINE TONER – When it’s time to replace your toner, be sure to choose Brother Genuine TN830 or TN830XL replacement toner. And with Refresh EZ Print Subscription Service, you’ll never worry about running out of toner again and you’ll enjoy savings of up to 50%(6) on Brother Genuine Toner. Get started with Refresh today with a Free Trial(1)
google-chrome --headless --print-to-pdf=output.pdf https://example.com
Executable names and installation locations vary by operating system and installation method. Use the command for the Chrome executable on your machine. The official Chrome Headless command-line reference documents the PDF flag and related options.
Headers and footers
To omit Chrome’s print header and footer, use --no-pdf-header-footer:
google-chrome --headless --no-pdf-header-footer --print-to-pdf=output.pdf https://example.com
Older Chrome versions may require the former --print-to-pdf-no-header flag. Check the documentation for the Chrome version deployed in your environment rather than assuming the same flag works everywhere.
Rank #2
- BEST FOR HOMES & HOME OFFICES – Engineered for consistent, premium print quality, the Brother HL-L2405W Monochrome (Black & White) Laser Printer delivers sharp, crisp prints at an affordable price. Prints one-sided documents at speeds up to 30ppm(2)
- COMPACT, CONNECTED PRINTER – Flexible connection options make this an ideal printer for home use and at-home offices. Securely connect to multiple devices with built-in dual-band wireless (2.4GHz/5GHz) or locally to a single computer via USB interface
- BROTHER MOBILE CONNECT APP – Manage your printer remotely and print from your mobile device anytime, from almost anywhere. Order Brother Genuine Supplies, track toner usage, and complete more work on-the-go(3)
- VERSATILE PAPER HANDLING – Enjoy seamless, reliable everyday printing with the 250-sheet paper tray(4) and a manual feed slot that enables printing on envelopes and specialty pape
- BROTHER IS AT YOUR SIDE – Backed by Brother with a 1-year limited warranty and free online, call, or live chat support for the life of your printer
Capture timing
Chrome Headless documents two timing controls, but they do different jobs:
--timeout=5000sets a maximum wait in milliseconds before capture, even if the page is still loading.--virtual-time-budget=5000advances time-dependent page code as though time had passed.
These controls do not prove that every asynchronous request has completed. Choose values based on the page’s behavior and verify the generated PDF, especially when important content appears after navigation.
Generate a PDF with Puppeteer
Puppeteer’s Page.pdf() is suitable when PDF creation belongs in a JavaScript workflow. This runnable Node.js example navigates to a page and saves its PDF:
Rank #3
- FAST PRINT SPEEDS: Print up to 19 pages per minute.
- COMPACT DESIGN: Space-saving, compact design fits anywhere in your home, school or small office.
- WIRELESS CONNECTIVITY: Print from almost anywhere in your workspace using your compatible mobile device.
- PAPER CAPACITY: Up to 150 sheets.
- SUSTAINABILITY: Uses less than 2 watts in Energy Saver mode.
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({ headless: true });
try {
const page = await browser.newPage();
await page.goto('https://example.com', { waitUntil: 'networkidle0' });
await page.pdf({ path: 'output.pdf', format: 'A4' });
} finally {
await browser.close();
}
})();
Install Puppeteer in your Node.js project before running the example. The navigation condition is an example, not a guarantee that a particular site’s application data, images, or late-running scripts are ready. Add a site-specific readiness check where needed. Puppeteer’s PDF generation guide shows the navigation-and-PDF flow and documents that the PDF method waits for fonts by default.
Print styling or screen styling
Page.pdf() generates using the print CSS media type by default. If the PDF should use screen media instead, emulate it before calling pdf():
await page.emulateMediaType('screen');
await page.pdf({ path: 'output.pdf', format: 'A4' });
Print CSS can intentionally hide navigation, alter colors, or reflow page content. Screen media can preserve styling intended for the browser viewport, but neither mode guarantees that the result will look identical to what a person sees on screen. The Puppeteer Page.pdf() API reference documents the media behavior and PDF options.
Rank #4
- BEST FOR HOME OFFICES & SMALL TEAMS – Engineered for consistent, premium print quality, the Brother HL-L2460DW Monochrome (Black & White) Laser Printer produces documents that are clear, crisp, and easy to review and share, all at an affordable price
- COMPACT, CONNECTED, EXCEPTIONALLY EFFICIENT– Connect with built-in dual-band wireless (2.4GHz/5GHz), Ethernet, or to a single computer via USB interface. Prints at speeds up to 36ppm(2), plus automatic duplex printing saves time and reduces paper waste
- BROTHER MOBILE CONNECT APP – Manage your wireless printer remotely and print from your mobile device anytime, from almost anywhere. Order Brother Genuine Supplies, track toner usage, and complete more work on-the-go(3)
- VERSATILE PAPER HANDLING – Tackle high-volume black & white printing with the 250-sheet capacity paper tray.(4) The manual feed slot enables printing on envelopes and specialty paper
- BROTHER IS AT YOUR SIDE – Backed by Brother with a 1-year limited warranty and free online, call, or live chat support for the life of your printer
Color handling
Puppeteer says PDF colors are modified for printing by default. Its documentation describes the CSS property -webkit-print-color-adjust for requesting exact colors. Verify the rendered PDF for the particular document and Chrome/Puppeteer version; do not assume color reproduction is identical across workflows or versions.
Make readiness, layout, and output choices deliberate
Wait for the content that matters
Fonts loading is only one part of readiness. The documented Puppeteer font wait does not establish that arbitrary application data, images, or scripts have finished. For a dynamic page, identify a meaningful condition—such as a specific element appearing—and wait for that condition before generating the PDF. For Headless Chrome, treat timeout and virtual-time budget as timing controls, not proof of completion.
Recommended Free Tools
Choose print versus screen styles intentionally
Use print media when the site’s print stylesheet is appropriate for a document. Use screen media with Puppeteer only when screen-oriented styling is specifically desired. Inspect page breaks, backgrounds, and hidden or rearranged elements in the output.
Best Value
- FROM AMERICA'S MOST TRUSTED PRINTER BRAND – Perfect for small teams printing professional-quality black & white documents and reports. Perfect for 1-3 people
- WORLD'S SMALLEST LASER IN ITS CLASS – Precision laser printing that fits anywhere
- FAST PRINT SPEEDS – Up to 21 black-and-white pages per minute single-sided
- WIRELESS WITH SELF-RESET – Helps you stay connected
- PRINT FROM ANY DEVICE – Wireless printing from any mobile device, PC or tablet. Works with Microsoft, Mac, AirPrint, Android, Chromebook and more
Check headers, footers, and colors
Decide whether page headers and footers belong in the PDF, and inspect whether important colors or backgrounds survive printing as expected. Manual print settings and automation options should not be presumed to match.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Troubleshooting common PDF problems
| Symptom | Likely cause | What to try |
|---|---|---|
| PDF contains a loading state or misses late content | The page was captured before its application data or scripts were ready. | Wait for a page-specific condition before capture. For Headless Chrome, adjust timing controls while remembering they do not guarantee every request is complete. |
| PDF layout differs from the browser view | The page uses print CSS, or content is designed to reflow for printing. | Inspect the print preview. In Puppeteer, use page.emulateMediaType('screen') before page.pdf() if screen media is required. |
| Colors look muted or backgrounds differ | Print-oriented color adjustment or print styles affect output. | Review the page’s print CSS and test Puppeteer’s documented -webkit-print-color-adjust behavior for the target document and version. |
| Header or footer appears unexpectedly | Print headers and footers are enabled in the chosen workflow. | Review the manual print settings or use Headless Chrome’s documented header/footer flag, confirming compatibility with the deployed Chrome version. |
| Headless Chrome rejects an option | The flag may differ in an older or otherwise different Chrome version. | Check the command-line reference and confirm the deployed version supports the exact flag. |
Performance, reliability, and cost considerations
The official documentation cited here specifies workflow and rendering controls, not comparative benchmarks. It does not support a general claim that browser automation is faster, more reliable, or cheaper than printing manually. For recurring work, automation makes the process repeatable, but correctness still depends on the page being ready and the chosen print settings matching the intended result. Test representative pages in the Chrome and Puppeteer versions you plan to deploy.
Or skip the browser setup
If your goal is a website capture rather than a print-styled document, ScreenshotNeo offers a screenshot API and MCP server. A single request can return a screenshot or PDF. See the ScreenshotNeo documentation for API details.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
ScreenshotNeo accepts cookie or consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; these steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and responses identify the page verdict and billing status. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents. The Free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots.
Sign up for 1,000 free screenshots a month, with no card required.
Frequently Asked Questions
Does Puppeteer’s PDF method use print or screen CSS by default?
It uses print CSS by default; call page.emulateMediaType('screen') before page.pdf() to request screen media.
Does Headless Chrome’s timeout guarantee that a page is fully loaded?
No. The timeout sets a maximum wait before capture, while virtual-time budget advances time-dependent page code; neither establishes that all asynchronous work has completed.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




