Blog

Notes on PDF rendering, web embeds, and the boring infrastructure that makes the internet work.

Why the same PDF looks different in every browser

Chrome, Safari and Firefox each ship a different native PDF viewer. We mapped the inconsistencies and explain why a JavaScript-rendered viewer is the only way to guarantee identical output everywhere.

Coming soon

Embeds aren't downloads: how inline PDFs change lead-gen funnels

We pulled anonymized analytics from 40 customers who replaced 'download our PDF' CTAs with inline embeds. Average time-on-page went up 2.8×; bounce dropped 41%.

Coming soon

Embedding a PDF in WordPress without a plugin

Most WordPress PDF plugins are bloated. Here's the one-line iframe approach we use ourselves, including how to make it responsive and SEO-friendly.

Coming soon

Lazy-loading PDFs: a 38 KB diet for the viewer

How we cut viewer bundle size by deferring the text-selection layer until the first scroll. With benchmarks on real-world reports.

Coming soon

Designing a viewer that disappears

Good document viewers fade into the background. We share our design constraints, the toolbar decisions we reversed, and what we learned from Kindle.

Coming soon

PDFembed 1.0: the simplest way to put a PDF on a webpage

Today we're launching PDFembed publicly. Here's what it does, what's intentionally missing, and where we're headed.

Coming soon