ScreenshotNeo

BlogHTML to image & PDF

CloudConvert Review for Converting Web Pages to PDF

CloudConvert can capture a website URL as a PDF through an API job. Here are its documented controls, setup, pricing caveats, and limits to check before adopting it.

By the ScreenshotNeo team4 October 20268 min read

CloudConvert can capture a website URL directly as a PDF. Its documented workflow creates a capture-website task, then an export/url task to retrieve the result. CloudConvert says its HTML-to-PDF service uses headless Chrome and supports layout controls, selector waits, and custom headers or footers. The documentation establishes these capabilities; it does not establish how every website will render, so test representative pages before relying on the output.

What CloudConvert does well

CloudConvert is a developer-oriented API and job workflow for automated web capture. The direct URL operation is useful when a process needs to turn a page into a PDF without first saving the page as an HTML file. The same capture operation can also produce PNG or JPG screenshots. CloudConvert’s Capture Website documentation lists the operation and its required inputs.

The product page describes the HTML-to-PDF service as powered by headless Chrome. It documents URL or HTML-file input, custom authorization headers for protected resources, waiting for a CSS selector, page size, margins, zoom, and custom headers and footers. These are vendor-documented features, not independent findings about output quality. Protected-site behavior can depend on the site and authentication setup; do not assume every login-protected page is accessible. CloudConvert’s HTML-to-PDF API page describes these options.

Convert a URL to PDF with the API

  1. Create a CloudConvert account and obtain an API key. Keep the key in a secret store or environment variable; do not put it in browser-side code or a public repository.
  2. Submit a job with a capture-website task and an export/url task. Set output_format to pdf.
  3. Check the job response and wait for its tasks to finish. CloudConvert jobs are asynchronous by default; its documentation also describes webhook notifications and a synchronous API.
  4. Read the export task’s result and download the provided output URL. The quickstart documents export URLs as valid for 24 hours, so retrieve and store the file promptly.

The following cURL request uses the documented job endpoint and payload. It submits the job and prints the JSON response; your integration must inspect the job status and retrieve the export result after completion.

curl -X POST "https://api.cloudconvert.com/v2/jobs" \
  -H "Authorization: Bearer $CLOUDCONVERT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "tasks": {
      "capture-page": {
        "operation": "capture-website",
        "url": "https://example.com",
        "output_format": "pdf"
      },
      "export-pdf": {
        "operation": "export/url",
        "input": "capture-page"
      }
    }
  }'

Set CLOUDCONVERT_API_KEY in your shell before running the command. For production integrations, follow the response task IDs and status fields in the CloudConvert quickstart. CloudConvert also provides SDK examples and a Job Builder that can generate requests for the selected options.

Options that affect the PDF

Option or capability When it helps What to check
url and output_format Choose the page and PDF output. The documented output format is pdf. Use a canonical URL that loads the intended content without an interactive step.
Page size, margins, zoom Adjust printed layout and density. Compare page breaks and text size against your requirements. The exact available parameters depend on the capture configuration.
Wait for a CSS selector Give a page time to reveal content that appears after JavaScript runs. Choose a selector that reliably appears on the target page; a missing selector can delay or prevent capture.
Custom authorization headers Pass headers when fetching resources that require authorization. Verify the target site’s authentication flow and access rules; the documentation does not establish universal support for all login cases.
Headers and footers Add page numbers, total pages, date, title, or URL. CloudConvert documents templates using placeholders and says to enable display_header_footer and provide top or bottom margin space.
Engine and engine version Pin a conversion engine selection where reproducibility matters. These are documented task parameters. The dossier does not establish which engine/version is best for a given website.
Filename and timeout Name the output and set a task cancellation limit. The documented default timeout is five hours. That is a maximum task timeout, not an expected conversion time.

CloudConvert’s capture documentation includes examples for header and footer templates. Those templates can use page number, total pages, date, title, and URL placeholders. Allow enough top or bottom margin so the template does not overlap page content. See the operation reference for the precise task parameters and payload structure.

Async jobs, exports, and repeat requests

For a single interactive conversion, CloudConvert documents a synchronous API option. For workflows or batches, asynchronous jobs with webhook notifications avoid holding a request open while conversion runs. A job can chain tasks, such as capture followed by export. Your application should handle job failure explicitly, avoid assuming that a successful submission means the PDF is ready, and download output while its link remains valid.

CloudConvert’s signed-URL feature is intended for on-demand conversions from URL parameters, such as a download button. The URL payload is publicly visible and can be extracted; CloudConvert specifically warns against placing sensitive information such as storage credentials in it. Its optional cache_key caches output files for 24 hours and can avoid repeating the job during that window. This signed-URL cache detail is separate from the quickstart’s statement that export URLs are valid for 24 hours. Neither point by itself describes the complete source-page privacy or file-retention policy. Read the signed URL documentation before using that mechanism.

Price and cost considerations

CloudConvert’s product page displays “Starting at $0.008 per file” in a 10,000-file conversion context and presents monthly and one-time pricing choices. Treat this as a volume-contextual starting figure, not a guaranteed price for one PDF or a quote for your workload. Check the live HTML-to-PDF pricing page and full pricing details before estimating a budget.

To estimate cost, count the actual conversions your workflow will trigger, account for retries and repeated requests, and check whether caching applies to your chosen flow. Signed URL requests start a new job by default; CloudConvert says using a cache key can avoid repeating that work for 24 hours. Conversion time, failure rates, and output size for your pages were not established by the reviewed evidence, so measure them with your own representative URLs.

Practical limits and how to evaluate fidelity

The available documentation does not prove that CloudConvert handles every cookie wall, dynamic application, infinite-scroll page, complex print stylesheet, or very long page in the desired way. A headless Chrome engine and configurable options are useful capabilities, but they do not guarantee that a specific page will look right in PDF.

Before adopting it for an important workflow, compare the same representative URLs in CloudConvert and the browser’s built-in print-to-PDF. Inspect text completeness, page breaks, images and fonts, headers and footers, dynamic content, setup effort, privacy controls, and expected cost. Those are evaluation criteria, not comparative findings from this review.

Common problems and fixes

Symptom Likely cause What to do
The job is accepted but no PDF is immediately available. Jobs run asynchronously by default. Check the job and task statuses, wait for completion or configure a webhook, then inspect the export task.
The PDF is missing content that appears after page load. The content may render after capture begins or require interaction. Try the documented selector wait for an element that indicates the content is ready. Test the specific page behavior; a selector wait does not prove every dynamic interaction is supported.
The page is inaccessible or shows a sign-in screen. The source may require authorization or use an unsupported authentication path. CloudConvert documents custom authorization headers for protected resources. Confirm the correct headers and site access policy, then test a representative page. Do not assume all protected pages can be captured.
Text or content is clipped or pagination looks wrong. Page size, margins, zoom, or the site’s print styling may not fit the output. Adjust documented layout options and compare the result with browser print-to-PDF. Check headers and footers have sufficient margin.
A signed URL exposes information. The encoded job payload can be extracted from the URL. Do not include secrets or sensitive credentials in the payload. Use the API with protected credentials kept server-side when appropriate.
A download link no longer works. The export URL has expired. CloudConvert’s quickstart says export URLs are valid for 24 hours. Download and store the result promptly, or create a new job as needed.
Repeated signed-link access creates repeated jobs. Without a cache key, each request starts a new job by default. Use a suitable cache_key when the same output can be reused within the documented 24-hour cache period.

Or skip the browser setup

If your task is capturing a screenshot of a page rather than archiving it as a PDF, ScreenshotNeo is a website screenshot API and MCP server for developers. Its one-call API returns an image; it does not replace the PDF workflow described above. See the ScreenshotNeo API documentation for options.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

ScreenshotNeo removes cookie and consent banners, newsletter popups, and chat widgets before capture. Bot checks, blank pages, failed loads, timeouts, and cache hits are not billed. Its MCP server lets AI agents use screenshot tools, and 1,000 screenshots per month are free with no card; paid plans start at $5 for 3,000. Sign up for ScreenshotNeo’s free 1,000 screenshots per month, with no card required.

Verdict

CloudConvert is worth evaluating when you need URL-to-PDF capture as part of an API or automated job workflow, especially if selector waits, layout settings, headers and footers, and export tasks fit your process. Its documentation is specific about the workflow and options, but the reviewed evidence does not establish universal rendering quality or a one-off price. Test your own pages and verify current pricing before making it a production dependency.

FAQ

Can CloudConvert save a URL directly as a PDF?

Yes. Its capture-website operation accepts a URL and PDF output format, followed by an export task to retrieve the file.

Can I convert HTML that is not hosted at a public URL?

The HTML-to-PDF product page documents both URL input and HTML-file input. The capture-website operation itself is documented around a website URL.

Does CloudConvert guarantee an exact copy of every page?

The reviewed sources document a headless Chrome-based service and controls, but they do not establish output fidelity for every site. Test the pages and layouts that matter to your workflow.

Is ScreenshotNeo an alternative for producing PDFs?

ScreenshotNeo’s supplied API example returns an image such as WebP. It is an alternative for website screenshots, not a PDF export replacement.