Replace deprecated wkhtmltopdf with a modern Chromium-based HTML to PDF API. Full CSS3, JavaScript support, form filling, batch processing, and zero security vulnerabilities. One API call, no binaries to install, no Docker to maintain.
The GitHub repository was archived in January 2023. No new releases, security patches, or bug fixes are planned. Here's why you need a modern wkhtmltopdf replacement.
CVE-2022-35583 (CVSS 9.8) allows SSRF attacks via iframe injection. CVE-2020-21365 enables directory traversal. The maintainer warns: "Do not use wkhtmltopdf with any untrusted HTML".
Flexbox, Grid, custom properties, calc(), and transforms are not supported. Bootstrap 4+ grid classes break completely due to the outdated WebKit engine frozen in 2012.
No arrow functions, Promises, async/await, or fetch(). Modern frameworks like React, Vue, and Angular may not render correctly without transpiling to ES5 via Babel.
Verified memory leak of 20-60KB per call. Not thread-safe — concurrent requests can cause PDF cross-contamination. Processes hang indefinitely with no built-in timeout.
wkhtmltopdf is deprecated and insecure. DocuQueue is the modern HTML to PDF alternative with a Chromium engine, full CSS3 support, and zero infrastructure to manage.
Sign up, get a key, make an API call. That's it.
No capacity planning. Auto-scales behind the scenes.
Not a GitHub issue that goes unanswered for months.
Convert live URLs to PDF with one parameter.
Built-in job queue. No Redis or Bull setup needed.
Generate hundreds of PDFs from a single CSV upload.
Upload your own Word documents as templates. Fill them with data via the API. No HTML or CSS required.
Detect and fill form fields in existing PDFs. wkhtmltopdf has zero form filling support.
Upload DOCX templates, fill with JSON data, get PDFs. Design templates in Word, not code.
| Feature | wkhtmltopdf | DocuQueue |
|---|---|---|
| Status | Deprecated (Jan 2023) | Active development |
| Rendering Engine | Qt WebKit (frozen 2012) | Chromium (modern) |
| CSS Flexbox & Grid | Not supported | Full support |
| JavaScript | ES5.1 only | Full modern JS |
| Security | 2 unpatched CVEs | No known vulnerabilities |
| Installation | Binary + Qt libraries | REST API (no install) |
| Concurrency | Not thread-safe | Fully concurrent |
| URL-to-PDF | Basic (broken CSS) | Full Chromium rendering |
| Template Support | None | DOCX templates + JSON fill |
| Form Filling | Not supported | Auto-detect & fill fields |
| Batch Processing | Manual scripting only | CSV upload, auto-generate |
| Async Processing | None (blocks process) | Built-in job queue |
| Pricing | Free (LGPL) | Free plan (25 credits/mo) + paid plans |
Whether you use Python with pdfkit or Node.js with puppeteer, switching to DocuQueue is straightforward. Here's how to migrate your HTML to PDF code.
import pdfkit # Requires wkhtmltopdf binary on system html = "<h1>Invoice #1042</h1>" options = { 'page-size': 'A4', 'margin-top': '20mm', 'margin-bottom': '20mm', } pdfkit.from_string( html, 'invoice.pdf', options=options )
import requests html_content = "<h1>Invoice #1042</h1>" response = requests.post( "https://docuqueue.com/api/v1/convert-html", headers={"api-key": "YOUR_KEY"}, json={ "html": html_content, "format": "A4", "margin": { "top": "20mm", "bottom": "20mm" } } ) # Save PDF open("invoice.pdf", "wb").write(response.content)
const response = await fetch( "https://docuqueue.com/api/v1/convert-html", { method: "POST", headers: { "api-key": "YOUR_KEY", "Content-Type": "application/json", }, body: JSON.stringify({ html: "<h1>Invoice #1042</h1>", format: "A4", margin: { top: "20mm", bottom: "20mm" }, }), } ); // Save PDF const buffer = await response.arrayBuffer(); fs.writeFileSync("invoice.pdf", Buffer.from(buffer));
Common questions about migrating from wkhtmltopdf to a modern HTML to PDF API.
A step-by-step guide to migrate your wkhtmltopdf integration to DocuQueue's modern HTML to PDF API.
Create a free account and get your API key from the dashboard.
Swap wkhtmltopdf calls for a single REST API POST request.
Verify formatting matches your requirements with modern CSS rendering.
Delete wkhtmltopdf and Docker from your server. Done.
Self-hosted Chromium PDF engine. DocuQueue gives you the same quality without Docker or infrastructure.
Headless Chrome library for PDF generation. DocuQueue wraps it in a managed API with templates and batch processing.
HTML-to-PDF API at $49/mo. DocuQueue offers more features including URL conversion, templates, and form filling at a lower price.
Fill PDF form fields programmatically. Auto-detect fields, fill with JSON data, and return completed PDFs.