Trusted for 50M+ documents per year by 4000+ teams

Generate PDFs from HTML
Without Running Puppeteer

Doppio turns your HTML, templates, and app routes into pixel-perfect documents with managed Chromium, direct S3 upload, webhooks, and EU-hosted infrastructure.

  • No credit card required
  • 400 documents/month free
  • 99.995% uptime last year
★ 4.4/5 on G2Read customer reviews
One API call to your first document
const response = await fetch('https://api.doppio.sh/v1/render/pdf/sync', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <YOUR API KEY>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    page: {
      pdf: { printBackground: true },
      goto: {
        url: 'https://example.doppio.sh/information-booklet.html',
        options: { waitUntil: ['networkidle0'] }
      }
    }
  })
});
Modern Chromium renderingFlexbox, Grid, webfonts, charts, JavaScript and Paged.js all supported out of the box.
Direct S3 uploadPush files straight to your own bucket with presigned URLs.
Async + webhooksRun complex renders in the background and get called back when they are ready.
50M+documents per year
4000+companies using Doppio
99.995%uptime last year
EUhosted and privacy-first

Trusted by teams worldwide

YaleSmaplyAll AboardWegoSigmaJuiceboxMediaMarktOwnbitBigCommerceByteDanceIntel

From HTML or a URL to a Document Your Users Can Trust

Doppio renders your HTML with a modern Chromium engine and delivers production-ready files in seconds, whether you start from raw markup, a route in your app, or a saved template.

  • Modern rendering fidelity for CSS, JavaScript, charts, and webfonts
  • Pixel-perfect PDFs and PNG screenshots from the same API
  • Template-based generation with dynamic data injection
  • Direct delivery to your app, webhook workflow, or S3-compatible storage
Try it free Read the quickstart

Three Steps to Your First Document

No infrastructure to manage. Go from zero to production-ready PDF generation in minutes.

1

Send Your HTML

Pass a URL, raw HTML, or a template ID to the Doppio API using any HTTP client or SDK.

2

We Render It

Doppio spins up an isolated Chromium instance, executes your page, and generates the document.

3

Get Your PDF

You receive a file, a temporary URL, or it's uploaded straight to your S3 bucket.

Integrate in Minutes

Grab your API key and you're one API call away from your first PDF render. Doppio's REST API accepts a URL, a raw HTML string, or a saved template ID and returns a pixel-perfect PDF or PNG screenshot.

Configure page size, margins, headers, footers, and viewport dimensions directly from the request payload. Need the result stored? Pass a presigned S3 URL and Doppio uploads the file to your bucket with no extra step required.

Works with Ruby, Python, PHP, Node.js, Next.js, Nuxt and any HTTP client. Check our quickstart guide to ship your first document today.

const response = await fetch('https://api.doppio.sh/v1/render/pdf/sync', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <YOUR API KEY>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    page: {
      pdf: { printBackground: true },
      goto: {
        url: 'https://example.doppio.sh/information-booklet.html',
        options: { waitUntil: ['networkidle0'] }
      }
    }
  })
});
const pdf = await response.json();
console.log(pdf.documentUrl);

Works With Your Stack

Node.jsPythonPHPRubyGocURLNext.jsNuxtLaravelDjangoRailsJava

Whether you're building with a serverless function, a monolith, or a microservice, generating your first PDF takes just a few lines of code. Browse the documentation to find your quickstart guide.

Built for Real-World Document Workflows

From invoices to screenshots, Doppio powers document generation for teams of all sizes.

Invoices & Receipts

Automatically generate branded PDF invoices from your billing system. Send professional documents to customers without manual formatting.

Reports & Dashboards

Export data visualizations, charts, and analytics dashboards as pixel-perfect PDFs for stakeholders and compliance.

Certificates & Diplomas

Create personalized certificates at scale for online courses, events, or training programs using dynamic HTML templates.

E-commerce Order Confirmations

Generate order summaries and shipping labels as downloadable PDFs directly from your storefront.

Social Media Banners

Design and export marketing visuals as PNG screenshots using Doppio's template system and screenshot API.

Website Monitoring & Archiving

Take automated screenshots of web pages for visual regression testing, compliance archiving, or competitor monitoring.

Everything You Need to Generate Documents

Focus on your product while Doppio handles PDF and screenshot generation with built-in scalability, privacy, and storage.

Easy Debugging

Full observability with render logs. Debug any failed API call instantly while your data stays private.

Infinite Scalability

Distributed computing clusters handle workloads from hundreds to millions of documents without breaking a sweat.

Total Privacy

Every render runs in an isolated instance that is terminated after processing. Your documents are never stored on our servers.

Webhooks & Async

Choose synchronous responses or asynchronous webhooks. Fire-and-forget large batches and get notified when they're ready.

Direct S3 Upload

Pass a presigned URL and Doppio uploads the rendered document directly to your own S3-compatible object storage.

HTML Templates

Design templates in our built-in HTML editor with Paged.js support. Generate invoices, contracts, and banners by ID via the API.

Dedicated Technical Support

Our engineering team provides live chat support directly within your dashboard. Whether you need help with your first integration, debugging a complex render, or optimizing performance at scale, we're here. Average response time under 2 hours during business hours.

Screenshot API

Capture full-page or element-level PNG screenshots with custom viewports, retina scaling, and clip regions.

Every Detail, Faithfully Rendered

Webfont Support

Accurate typography with full Google Fonts and custom webfont rendering.

Responsive Design

Set any viewport width for perfect rendering on desktop or mobile layouts.

Charts & Graphs

Full support for Chart.js, D3, and any canvas/SVG-based visualization.

Image & SVG

Background images, inline SVGs, and retina-quality screenshots.

Full CSS Support

Flexbox, Grid, animations, variables, and media queries all work.

SPA Frameworks

React, Vue, Angular, and Svelte render after JavaScript execution completes.

Paged.js

Precise page margins, headers, footers, and page numbers for complex documents.

Emoji & Unicode

Full Unicode, multilingual text, and native emoji rendering out of the box.

What Our Users Say

Real feedback from developers who switched to Doppio.

★★★★★
"We implemented Doppio in a couple of hours! Great documentation and clear pricing. It's been rock solid for us."
N
Neil P.
Software Consultant · G2 Review
★★★★★
"Thank goodness for Doppio. The amount of suffering I went through with other PDF libraries was unreal."
A
Avery M.
CEO, SaaS Company · G2 Review
★★★★★
"The async render mode is the cherry on top. I throw documents at Doppio and it calls me back when everything's ready."
S
Simon R.
Software Engineer, FinTech · G2 Review

Enterprise-Grade Security & Compliance

Doppio is engineered for demanding tech companies that need airtight data handling and regulatory compliance.

GDPR Compliance

All data processing is fully GDPR compliant. No document content is retained after rendering is complete.

EU-Hosted Infrastructure

All servers and data processing are located in the European Union, ensuring data sovereignty and reduced latency for EU customers.

Isolated Rendering

Every document is rendered in a dedicated, sandboxed Chromium instance that is destroyed immediately after processing.

HDS Certified

Our infrastructure is HDS (Hébergeur de Données de Santé) certified, which is a strong differentiator over US-based competitors for healthcare data.

Automatic Data Expiration

Rendered documents are automatically deleted after processing. No data lingers on Doppio servers.

Presigned URL Upload

Documents upload directly to your own S3 bucket via presigned URLs, so they never transit through Doppio servers.

Start Free, Scale When Ready

No trial period. No hidden fees. Test as long as you need and upgrade when you ship to production.

Most Popular

Basic

Free
  • Up to 400 docs / month
  • 1 template
  • No credit card required
Try for free

Premium

$16/month
  • Up to 4,000 docs / month
  • 5 templates
  • Async renders
  • Medium rate limit
  • Presigned URL upload
Get started

Premium+

$48/month
  • Up to 12,000 docs / month
  • 10 templates
  • Async renders
  • High rate limit
  • Presigned URL upload
Get started

Pro

$129/month
  • 36,000 docs / month + $0.0037 each extra
  • 40 templates
  • Async renders
  • Higher rate limit
  • Presigned URL upload
Get started

Custom

Contact us
  • Unlimited templates
  • Custom document volume
  • Custom rate limits
  • Multi or single-tenant
  • Volume discounts
  • Priority support
Contact sales

Frequently Asked Questions

Can't find your answer? Contact our support team.

Yes. Our Basic plan is completely free with up to 400 documents per month. No credit card required, no time limit.
The default timeout is 30 seconds per render, which covers most use cases. For complex documents, use asynchronous render mode with extended timeouts.
No. You can pass raw HTML content directly in the API request, use saved templates, or add authentication headers to access private URLs.
Yes. We support any S3-compatible storage including Google Cloud Storage, DigitalOcean Spaces, and MinIO via presigned URLs.
Each render runs in a fully isolated instance that is terminated immediately after processing. Documents are never persisted. Our infrastructure is GDPR compliant and hosted in the EU.
Doppio uses managed Chromium instances running the latest stable version. This ensures full HTML5, CSS3, and JavaScript support with the same rendering fidelity as Google Chrome.
Unlike wkhtmltopdf which relies on a deprecated WebKit engine, Doppio uses modern Chromium for superior CSS support (Flexbox, Grid, variables). It's a fully managed API, so there is no server installation, maintenance, or scaling to worry about.
Yes. Doppio supports the full Google Fonts library out of the box, plus any custom font loaded via CSS @font-face in your HTML. Webfonts render accurately in both PDF and screenshot outputs.
Yes. Doppio has full Paged.js support for advanced PDF layouts including custom headers, footers, page numbers, margins, and page breaks via CSS Paged Media.
Yes. Doppio fully supports single-page applications built with React, Vue, Angular, or Svelte. Configurable wait strategies ensure JavaScript rendering completes before the document is generated.