PDFCrowd WebSave lets a website owner add a button visitors can use to download a page as a PDF. Add a button with the pdfcrowd-websave class and your WebSave key, then load PDFCrowd’s JavaScript library. Use URL mode for public pages; use content mode when the PDF needs the page state already loaded in the visitor’s browser, such as a logged-in view or completed form.
WebSave is a site integration, not a browser extension for saving any site you visit. PDFCrowd’s servers perform the conversion, so you do not need to install a PDF renderer on your own server. The guide’s quick-start example uses library version 1.3.0; check the WebSave guide for the current version and setup details.
Add a WebSave button to your website
Place the button and configuration on the page, then load the WebSave script after them. The pdfcrowd-websave class is required. The optional pdfcrowd-websave-style class applies the default button styling, icon, and loading animation.
- Add the button: Set its
data-keyto your WebSave key. Thedemokey is for testing and produces watermarked PDFs. - Choose whether to configure it: Define a JavaScript configuration object before the library script and reference it with the button’s
data-configattribute. Without that attribute, WebSave uses its defaults. - Load the library: Put the script after the button and any configuration it needs.
<button class="pdfcrowd-websave pdfcrowd-websave-style" data-key="YOUR_WEBSAVE_KEY">Save as PDF</button>
<script>
window.pdfcrowdWebSaveConfig = {
// Add supported options here if needed.
};
</script>
<script src="https://edge.pdfcrowd.com/websave/1.3.0/websave.min.js"></script>
If you use a configuration object, point the button’s data-config attribute at that object as described in the official guide and reference. Replace the demo key with a production key before offering the feature to visitors. Production keys are scoped to configured domains or subdomains; a subdomain setting does not make sibling domains interchangeable.
#1 Best Overall
Choose URL mode or content mode
The mode determines what PDFCrowd converts and whether it can see the visitor’s current page state. URL mode is the documented default.
| Mode | What it converts | Use it for | Important limit |
|---|---|---|---|
| URL | A fresh server-side fetch of the page URL. | Public pages whose content is available without the visitor’s session. | It does not share the visitor’s login session or current form input. URL parameters can be adjusted. |
| Content | HTML submitted from the page currently loaded in the browser. | Logged-in views, dynamic application screens, completed forms, and other user-specific content already present in the page. | Only state represented in the submitted HTML is available. Unloaded records and interactive state not captured in that HTML are not included automatically. |
Content mode is a recreated server-side rendering, not a pixel-for-pixel capture of the visitor’s screen. If the page depends on protected images, fonts, or other assets, those may need separate handling. Prepare the page content first and verify the generated PDF against the content you intended to include.
Rank #2
Configure the PDF output
The guide and reference describe options for the filename and whether the result downloads, opens, or opens in a new tab. You can also configure page size, orientation, margins, headers and footers, print CSS, and custom CSS or JavaScript. Use these options to suit the document rather than assuming one setting will fix every site’s layout.
- For a print-friendly result, provide a print-specific URL or stylesheet where practical.
- Use custom CSS or JavaScript to adjust the converted page when necessary.
- Add the
pdfcrowd-removeclass to elements that should be excluded. - Check page breaks, margins, and headers and footers with representative content, including longer pages and pages with dynamic sections.
Initialize buttons added after page load
If React, Vue, Angular, Svelte, or another frontend framework creates the button after the initial document load, initialize it after the element exists. The documented method is window.WebSave.initButton(...); pass the newly created button as described in the WebSave guide. A button that is inserted later may not be picked up by the library’s initial page scan unless you explicitly initialize it.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteRank #3
Check domain access and local development
- Domain-scoped keys: Confirm that the production key is configured for the exact host you use. Subdomain inclusion follows the domain entered when the key is created; it does not make sibling domains interchangeable.
- Custom URL targets in URL mode: The guide describes an exact-host same-origin check. Confirm that the target URL’s host matches the expected host.
- Localhost: PDFCrowd’s servers cannot reach a URL on your local machine. For local development, expose the site through a temporary public HTTPS tunnel and test that reachable URL.
Consider what content leaves the browser
In content mode, page HTML is sent to PDFCrowd for conversion. That can include personal or confidential information represented in the page, including current input and selection values. Decide whether that data flow is appropriate before enabling exports for sensitive pages.
PDFCrowd says submitted HTML and generated files are deleted from active processing systems within 30 minutes, with no backup copies. Converted URLs may be retained in conversion logs for a default period of 14 days; the vendor says URL retention can be set to no storage. These are PDFCrowd’s published statements, not an independent assessment. For regulated or sensitive use, review its current privacy information, DPA, subprocessors, and applicable terms.
Troubleshoot common WebSave problems
- The button does nothing: Check that the button has the exact
pdfcrowd-websaveclass, the library loaded successfully, and the key is valid for the current host. If JavaScript inserts the button after page load, callwindow.WebSave.initButton(...)after insertion. - The PDF is watermarked: The
demokey is intended for testing and produces watermarked output. Use a production key for live use. - A logged-in page becomes inaccessible or shows the wrong content: URL mode fetches a fresh page and does not use the visitor’s login session. Use content mode for page state already loaded in the browser.
- Form values are missing: Use content mode and ensure the current values are represented in the submitted HTML. URL mode does not include the visitor’s current form input.
- Some records or controls are absent: Content mode only sends captured HTML; load the required content before conversion and check whether the missing state is actually represented there.
- A custom target URL is rejected: In URL mode, check the exact-host same-origin requirement and verify the target host against the page host.
- A localhost page cannot be converted: Use a temporary public HTTPS tunnel; PDFCrowd’s conversion servers cannot access your local machine’s localhost address.
- Layout differs from the browser: WebSave converts the page into a PDF rather than guaranteeing a pixel-perfect screenshot. Adjust print styles, page size, margins, or custom CSS and inspect the resulting PDF.
Or skip the browser setup
If you need a screenshot image rather than a visitor-facing PDF export, ScreenshotNeo is a separate website screenshot API and MCP server for developers. For example, this cURL request saves a webpage as a WebP image:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo documentation for options and response details. It accepts cookie or consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status. Its MCP server offers take_screenshot, get_page_info, and capture_pdf for AI agents. The Free plan includes 1,000 shots a month without a card; paid plans start at $5 for 3,000 shots. Sign up for ScreenshotNeo’s free plan.
WebSave pricing and product-name distinction
PDFCrowd’s pricing page describes a free trial with 100 test API credits valid for one month; credits are based on output size at one credit per 0.5 MB. Its interactive plan selector does not establish a fixed WebSave price in the published content cited here, so check the current selector rather than assuming a plan price. See PDFCrowd pricing.
Best Value
“WebSave” can also refer to unrelated products, including a Chrome extension and an iOS app. This guide concerns PDFCrowd WebSave as PDF, the JavaScript integration for website owners—not those separate browser or mobile products. PDFCrowd described its launch on October 8, 2025 as “Today we’re launching WebSave, a JavaScript library that adds PDF and image export capabilities to any website with just a few lines of code.” See the PDFCrowd launch post.
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.

