- HTML to PDF APIConvert HTML and URLs into PDFsExtract PDF Form Data APIEasily extract data from PDFsWatermark PDF APIAdd custom watermarks to PDFsProtect PDF APISecure your PDFs with passwordCompress PDF APIReduce file size without losing qualityFlatten PDF APIFlatten PDFs to make form permanentDigital Signature APISend documents for signing
- API DocumentationAPI DocumentationFull REST API referenceNodeJS SDKClient library for Node.jsJava SDKClient library for JavaC# SDKClient library for C#PHP SDKClient library for PHPPython SDKClient library for Python
- Pricing
- Contact Us

PDFGate vs Gotenberg
A managed HTML to PDF API with forms and e-signatures vs a self-hosted Docker service for document conversion.
Last reviewed: October 3, 2026
Nothing to deploy or scale
PDFGate is a managed API, so servers, scaling, and Chrome updates are handled for you. Gotenberg is a Docker image you deploy, scale, monitor, and upgrade yourself.
Forms and e-signatures
PDFGate turns HTML inputs into fillable PDF fields, extracts form data from PDFs, and sends documents for e-signature. These features are not built into Gotenberg.
More control when capturing pages
PDFGate can inject CSS and JavaScript, click through cookie banners and pop-ups, and sign in with basic authentication before capturing a page.
Which one should you choose?
Gotenberg is an open-source, Docker-based API that converts HTML, URLs, Markdown, and Office documents to PDF with Chromium and LibreOffice, and includes tools to merge, split, and manipulate PDFs. PDFGate's HTML to PDF API also renders with Chrome, but it is a managed service, so there are no containers to run, and it adds fillable forms, form data extraction, and e-signatures.
Choose PDFGate if
- You don't want to run, scale, and upgrade conversion containers.
- You need fillable PDF form fields generated from HTML.
- You need to extract form data from completed PDFs.
- You want to send documents for e-signature from the same API.
- You convert third-party URLs and need to click through cookie banners or pop-ups, or inject CSS and JavaScript.
- You want generated PDFs stored for you, with download links and no-code integrations.
Choose Gotenberg if
- Documents must never leave your own servers.
- You need to convert Office documents, such as Word, Excel, or PowerPoint, to PDF.
- You need PDF/A or PDF/UA output, or to merge, split, rotate, or embed files in PDFs.
- You need asynchronous conversion with webhooks.
- You want a free, open-source tool and have a team to run Docker containers.
- You generate very high volumes and self-hosting is cheaper for you.
Comparing more options? See our roundup of the Best HTML to PDF APIs in 2026, where we compare more tools side by side.
Same Chromium engine, different responsibilities
Both PDFGate and Gotenberg render HTML and URLs with a Chrome-based engine, so pages with modern CSS and JavaScript convert the same way. Both can wait for a CSS selector, for the network to go idle, or for a fixed delay before capturing a page.
Gotenberg also bundles LibreOffice for Office documents and PDF tools for merging, splitting, and converting to PDF/A. PDFGate focuses on the HTML to PDF workflow and adds fillable forms, PDF processing, and e-signatures.
The main difference is who runs it. Gotenberg is software you deploy and operate, including its timeouts, concurrency, and upgrades. PDFGate is a hosted API you call, with the infrastructure included in the plan.
Feature comparison
"Not built in" means Gotenberg does not include the feature itself. For everything PDFGate offers, see the HTML to PDF API page.
HTML to PDF rendering
| Feature | PDFGate | Gotenberg |
|---|---|---|
| Rendering engine | Chrome | Chromium, plus LibreOffice for Office documents |
| Convert a URL or raw HTML | Both | Both, plus Markdown and Office documents |
| Wait for dynamic content | CSS selector, network idle, or delay | CSS selector, JavaScript expression, network idle, or delay |
| Inject CSS and JavaScript | Yes | Not built in |
| Headers, footers, and page numbers | Header and footer templates | Header and footer HTML files |
| Click through cookie banners and pop-ups | Click selectors and selector chains | Not built in |
| Pages behind authentication | Basic authentication and custom HTTP headers | Custom HTTP headers and cookies |
| Fillable PDF form fields | From HTML inputs, including signature fields | Not built in |
| PDF/A, PDF/UA, and tagged PDFs | Tagged PDFs by default; no PDF/A or PDF/UA | Yes |
Beyond generation
| Feature | PDFGate | Gotenberg |
|---|---|---|
| E-signatures | Envelopes, recipients, and audit trail | Not built in |
| Password protection and watermarks | Protect PDF and Watermark PDF endpoints | Encrypt, watermark, and stamp routes |
| Compress and flatten PDFs | Compress and flatten endpoints | Optimize and flatten routes |
| Extract form data from PDFs | Dedicated endpoint | Not built in |
| Merge, split, rotate, and embed files | Not offered | Yes |
| Office documents to PDF | Not offered | LibreOffice route |
Running it
| Feature | PDFGate | Gotenberg |
|---|---|---|
| Setup | Nothing to install; send an API request | Deploy the Docker image on your infrastructure |
| Scaling | Managed, with 3 to 25 parallel conversions depending on the plan | You configure concurrency, queues, and instances |
| Request timeout | Page load timeout up to 15 minutes | 30 seconds by default, configurable |
| Asynchronous generation with webhooks | Synchronous requests | Webhook headers |
| Maintenance | Updates applied for you | Actively maintained; you upgrade your deployment |
| Document storage | Stored up to 2 years, with pre-signed URLs | Returned in the response or sent to your webhook |
| Data location | AWS in the EU (Frankfurt) | Your own servers |
| SDKs | Node.js, Python, PHP, Java, C# | HTTP API, with community client libraries |
| No-code integrations and MCP server | Zapier, viaSocket, and others, plus an MCP server | Not built in |
| License | Paid plans with a 14-day free trial | Free and open source (MIT) |
Cost of running it yourself
Gotenberg is free and open source under the MIT license, but running it in production still costs money: servers with enough memory for Chromium and LibreOffice, tuning timeouts, concurrency, and queues as volume grows, monitoring failed conversions, and upgrading to new releases.
You also own securing the service, keeping its dependencies patched, and making it highly available if other parts of your product depend on it.
With PDFGate, servers, scaling, and Chrome updates are included in the plan, and every plan starts with a 14-day free trial.
PDFGate plans
| Plan | Price / month | Documents / month | Cost per document |
|---|---|---|---|
| Personal | $9 | 500 | $0.018 |
| Starter | $20 | 3,000 | $0.0067 |
| Basic | $50 | 10,000 | $0.005 |
Migrating from Gotenberg to PDFGate
Gotenberg takes multipart form fields and PDFGate takes a JSON body, but most options have a direct equivalent, and both use the same page number classes in headers and footers.
| Gotenberg | PDFGate |
|---|---|
POST /forms/chromium/convert/url on your Gotenberg host | POST https://api.pdfgate.com/generate/pdf |
Form fields and files | JSON body, with Authorization: Bearer YOUR_API_KEY |
url | url |
index.html file (/convert/html) | html |
paperWidth and paperHeight | pageSizeType, or width and height in pixels |
marginTop, marginBottom, marginLeft, marginRight | margin.top, margin.bottom, margin.left, margin.right |
landscape | orientation: "landscape" |
scale | scale |
nativePageRanges | pageRanges |
printBackground | printBackground |
emulatedMediaType | emulateMediaType |
header.html and footer.html files | header and footer, with margin.top and margin.bottom |
waitDelay | delay, in milliseconds |
waitForSelector | waitForSelector |
skipNetworkIdleEvent: false | waitForNetworkIdle: true |
extraHttpHeaders and cookies | httpHeaders, with a Cookie header for cookies |
userAgent | userAgent |
/forms/pdfengines/optimize and /flatten | Compress PDF and Flatten PDF endpoints |
/forms/pdfengines/encrypt and /watermark | Protect PDF and Watermark PDF endpoints |
- Gotenberg defaults to Letter size, 0.39 inch margins, and no background graphics. PDFGate defaults to Ledger, no margins, and printed backgrounds, so set pageSizeType, margin, and printBackground explicitly.
- Both use the pageNumber and totalPages classes in headers and footers. Gotenberg expects complete HTML documents for header.html and footer.html, while PDFGate takes the header and footer HTML as strings.
- Gotenberg's waitDelay takes a duration such as 5s. PDFGate's delay takes milliseconds, up to 20000.
- PDFGate does not convert Office documents, merge or split PDFs, or produce PDF/A, so keep another tool for those tasks.
Gotenberg request
1curl --request POST http://localhost:3000/forms/chromium/convert/url \2 --form url=https://example.com/invoice/42 \3 --form paperWidth=8.27in \4 --form paperHeight=11.7in \5 --form printBackground=true \6 --form waitForSelector=#invoice-ready \7 -o output.pdfPDFGate request
1curl -X POST https://api.pdfgate.com/generate/pdf \2 -H "Authorization: Bearer YOUR_API_KEY" \3 -H "Content-Type: application/json" \4 -d '{5 "url": "https://example.com/invoice/42",6 "pageSizeType": "a4",7 "printBackground": true,8 "waitForSelector": "#invoice-ready"9 }' \10 -o output.pdfInformation about Gotenberg comes from its official website and repository and was last reviewed on October 3, 2026. Features may have changed since then.
Frequently Asked Questions
Yes, if you would rather not run conversion containers yourself, or if you need fillable PDF forms, form data extraction, or e-signatures. If documents must stay on your servers, or you need Office conversion, PDF/A, or merging, Gotenberg is the better fit.
Yes. Gotenberg is open source under the MIT license. You pay for the infrastructure to run it and the time to operate, scale, and upgrade it.
Both use a Chrome-based engine for HTML and URLs, so modern CSS and JavaScript render the same way. Gotenberg also uses LibreOffice to convert Office documents.
Yes. Both use the pageNumber and totalPages classes. Send the HTML as the header and footer fields instead of uploading header.html and footer.html files, and set margin.top and margin.bottom to make room for them.
Not for PDF generation. PDFGate returns the PDF in the same request, or a download URL when you set jsonResponse to true, with a page load timeout of up to 15 minutes.

Start building with PDFGate today
Generate PDFs, send documents for signature, and automate your document workflows in minutes.
Free trial · No credit card required