Why Use a Free HTML to PDF API?
Most PDF generation APIs charge per document or per month. PDFSpark takes a different approach: high-quality PDF conversion that costs you nothing. Here is why developers are switching from paid alternatives to PDFSpark.
No API Key Required
Start generating PDFs immediately. There is no registration form, no email verification, and no API key management. Send a POST request and receive a PDF back. That simplicity means faster prototyping, easier CI/CD integration, and zero credential rotation overhead.
Chromium Rendering Engine
PDFSpark uses a real Chromium browser under the hood, powered by Playwright. Your PDFs render with the same fidelity as Chrome's print output: full CSS3, Flexbox, Grid, custom fonts, and JavaScript execution. What you see in Chrome is what you get in the PDF.
Three Powerful Endpoints
Convert raw HTML to PDF with /api/v1/pdf/from-html, capture any public URL as PDF with /api/v1/pdf/from-url, or merge multiple PDFs into one with /api/v1/pdf/merge. One API covers your entire PDF workflow.
Production-Ready Infrastructure
Hosted on Azure with Helmet security headers, CORS support, SSRF protection, and rate limiting. PDFSpark is built for real-world production use, not just hobby projects. Use it in your SaaS, internal tools, or client applications.
PDFSpark vs Paid Alternatives
See how PDFSpark stacks up against the most popular paid HTML to PDF APIs on the market. Every competitor charges monthly fees or per-document pricing. PDFSpark charges nothing.
PDFSpark
DocRaptor
PDFShift
HTML2PDF
Feature Comparison
Beyond pricing, here is how PDFSpark compares on the features that matter for production PDF generation.
❌ Paid APIs (DocRaptor, PDFShift, HTML2PDF)
✅ PDFSpark
Start Converting in Seconds
Pick your language and start generating PDFs right now. No signup, no SDK installation, no API key. Just send an HTTP request to pdfspark.dev and receive a PDF in the response body.
curl -X POST "https://pdfspark.dev/api/v1/pdf/from-html" \ -H "Content-Type: application/json" \ -d '{ "html": "<h1>Invoice #1042</h1><p>Total: $250.00</p>", "options": { "format": "A4", "printBackground": true, "margin": { "top": "20mm", "bottom": "20mm" } } }' \ -o invoice.pdf
curl -X POST "https://pdfspark.dev/api/v1/pdf/from-url" \ -H "Content-Type: application/json" \ -d '{"url": "https://example.com", "options": {"format": "A4"}}' \ -o webpage.pdf
const response = await fetch('https://pdfspark.dev/api/v1/pdf/from-html', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ html: ` <html> <head><style> body { font-family: Inter, sans-serif; padding: 40px; } h1 { color: #1e293b; } table { width: 100%; border-collapse: collapse; } td, th { border: 1px solid #e2e8f0; padding: 8px 12px; } </style></head> <body> <h1>Monthly Report</h1> <table> <tr><th>Metric</th><th>Value</th></tr> <tr><td>Revenue</td><td>$12,400</td></tr> <tr><td>Users</td><td>3,210</td></tr> </table> </body> </html> `, options: { format: 'A4', printBackground: true, margin: { top: '20mm', bottom: '20mm', left: '15mm', right: '15mm' } } }) }); const pdfBuffer = Buffer.from(await response.arrayBuffer()); fs.writeFileSync('report.pdf', pdfBuffer);
import requests response = requests.post( "https://pdfspark.dev/api/v1/pdf/from-html", json={ "html": """ <html> <head><style> body { font-family: sans-serif; padding: 40px; } .header { color: #1e293b; border-bottom: 2px solid #0086a8; } </style></head> <body> <h1 class="header">Contract Agreement</h1> <p>This agreement is entered into on March 31, 2026.</p> <p>Parties: Acme Corp and Client LLC.</p> </body> </html> """, "options": { "format": "A4", "printBackground": True, "margin": {"top": "25mm", "bottom": "25mm"} } } ) with open("contract.pdf", "wb") as f: f.write(response.content) print(f"PDF saved: {len(response.content)} bytes")
What Developers Build with PDFSpark
A free HTML to PDF API unlocks use cases that paid services make too expensive to justify. Here are the most common scenarios where PDFSpark shines.
Invoice & Receipt Generation
Generate branded PDF invoices from HTML templates on the fly. Combined with Faktuj for Polish VAT invoices, PDFSpark handles the rendering while your app handles the business logic. No per-document fee means margins stay healthy even at high volume.
Reports & Dashboards
Export your web-based dashboards and analytics reports to PDF for stakeholders who prefer offline documents. Chromium rendering ensures charts, tables, and CSS Grid layouts look identical to the browser version. Schedule nightly report generation without worrying about API quotas.
Contracts & Legal Documents
Render contracts, terms of service, and compliance documents from structured HTML templates. The /api/v1/pdf/merge endpoint lets you combine cover pages, signatures, and appendices into a single document. Consistent formatting across all client environments.
Shipping Labels & Tickets
Generate custom-sized PDFs for shipping labels, event tickets, and boarding passes. PDFSpark supports custom page dimensions, landscape orientation, and precise margin control. Perfect for e-commerce platforms, ticketing systems, and logistics workflows.
FAQ — Free HTML to PDF API
Answers to the most common questions developers ask before switching to PDFSpark.
Is PDFSpark really free? What is the catch?
There is no catch. PDFSpark is a free, open-source project maintained by SoftVoyagers. It is part of a portfolio of free developer tools. The API has no API keys, no signup, no credit card, and no usage-based billing. Rate limiting (20 requests per minute per IP) prevents abuse, but there are no monthly document caps. If you need higher throughput, you can self-host the Docker image on your own infrastructure at no cost.
How does PDFSpark compare to DocRaptor?
DocRaptor uses the Prince XML rendering engine, which excels at print-quality typography but does not execute JavaScript and has limited support for modern CSS features like Grid and Flexbox. DocRaptor pricing starts at $15/month for 125 documents. PDFSpark uses a real Chromium browser, so your PDFs render exactly like Chrome's print output with full JavaScript, CSS3, and web font support. PDFSpark is free with no document limits.
How does PDFSpark compare to PDFShift?
PDFShift also uses Chromium for rendering, so output quality is comparable. The key difference is pricing: PDFShift charges $9 to $99 per month depending on volume, with a credit-based system that can lead to unexpected overage charges. PDFSpark provides equivalent Chromium rendering at zero cost. PDFShift requires API key management and offers additional features like watermarks and encryption that PDFSpark handles through HTML and CSS instead.
Can I use PDFSpark in production?
Absolutely. PDFSpark runs on Azure with Helmet security headers, CORS support, request ID tracking, and SSRF protection on URL endpoints. It is the same infrastructure stack used by enterprise-grade SaaS products. For mission-critical workloads where you need full control over uptime, self-host the open-source Docker image behind your own load balancer.
What PDF options are supported?
PDFSpark supports all standard Chromium PDF options: page format (A4, Letter, Legal, etc.), landscape or portrait orientation, custom margins, header and footer templates with page numbers, print background graphics, custom page ranges, and media type emulation. You can also set a delay for JavaScript-heavy pages. See the full API documentation for the complete options reference.
Does PDFSpark support merging multiple PDFs?
Yes. The /api/v1/pdf/merge endpoint accepts multiple PDF files and combines them into a single document. This is useful for assembling multi-section reports, combining cover letters with resumes, or merging invoices into a batch PDF. No other free API offers built-in PDF merging alongside HTML-to-PDF conversion.
What are the alternatives to paid HTML to PDF APIs?
Beyond PDFSpark, open-source options include running Puppeteer or Playwright yourself (requires server management), using wkhtmltopdf (abandoned since 2023, outdated rendering), or WeasyPrint (Python-based, limited CSS support). PDFSpark gives you Chromium-quality rendering as a hosted API without the infrastructure burden. For a deeper comparison with wkhtmltopdf specifically, see our wkhtmltopdf alternative guide.