HTML to PDF in Laravel
Generate pixel-perfect PDFs from HTML or any URL in Laravel — without running Puppeteer yourself. One POST to RenderKit returns a signed PDF URL with real Chromium print CSS.
Self-hosting headless Chrome in Laravel means a memory-leaking browser process you restart at 2am. RenderKit's /v1/pdf endpoint is the managed alternative: POST a JSON spec, get a signed PDF URL back. Print CSS, custom page size, margins, and running headers/footers are all supported.
Laravel example
$pdf = Http::withHeaders(['x-api-key' => config('services.renderkit.key')])
->post('https://api.renderkit.tech/v1/pdf', ['url' => $url, 'format' => 'A4'])
->json();
return redirect($pdf['url']);What's included
- Chromium print pipeline — real @media print, not an HTML approximation
- Custom page size, margins, landscape/portrait, print-background
- Running headers/footers with page numbers
- Signed CDN URL response — stream it or redirect to it
- Same key also does screenshots and markdown extraction
More
See the full HTML to PDF API reference, JSX-to-PDF for component-native documents, or compare RenderKit vs PDFShift.
Common questions
POST your URL or raw HTML to RenderKit's /v1/pdf endpoint with your API key. The response is a signed URL to the generated PDF — no headless browser to install or host in Laravel.
No. RenderKit hosts the browser fleet. You send a JSON request and receive a finished PDF, which removes the memory and concurrency problems of self-hosting.
Ship your first render in 60 seconds.
500 free renders to start. No card. Cancel by ignoring it.