PDF Widget for Website. Free, PDF.js Viewer - Poper
PDF Widget

Embed any PDF on any website.

PDF.js viewer with native browser fallback. Pinch-zoom on mobile, lazy-loading for large files, password support, and WCAG 2.1 accessibility tags. Free, no code.

No credit card required
14-day free trial
Cancel anytime

Trusted by 11,000+ brands

Timetics
Academie Digitale
Goldcast
nbcf
Seedstock
Wow
Linkxar
Gale Toyota
Skills
Rugby Sport
Lamp
Leaktronics
Steel
Theatre in Chicago
Globerto
Meetup
FYM
Zeben
Kraftix
IETraditionala
Meethires
Leadscrape
Happily
Timetics
Academie Digitale
Goldcast
nbcf
Seedstock
Wow
Linkxar
Gale Toyota
Skills
Rugby Sport
Lamp
Leaktronics
Steel
Theatre in Chicago
Globerto
Meetup
FYM
Zeben
Kraftix
IETraditionala
Meethires
Leadscrape
Happily
Free forever, paid plans from $19/mo

Try the live PDF widget

Live demo, not a screenshot. Upload your PDF, switch viewer modes, brand the toolbar. What you see here is what ships to your site.

From Google Drive / Dropbox / S3 to your site

Your Google Drive / Dropbox / S3 reviews. Now on your own domain.

Poper crawls the official Google Drive / Dropbox / S3 review feed for your business and renders it inline on your website. Same reviews, your branding, your domain.

drive.google.com
Google Drive PDF preview for Northstar 2026 Whitepaper showing the blue Drive sidebar, a 4-page document in the center pane, filename, last-modified date, sharing settings link, and Download buttonSource: Google Drive / Dropbox / S3Open
Google Drive PDF preview for Northstar 2026 Whitepaper showing the blue Drive sidebar, a 4-page document in the center pane, filename, last-modified date, sharing settings link, and Download button
northstar.com/resources
Northstar SaaS resources page with the Poper PDF widget embedded inline showing the first page of a 42-page whitepaper, page navigator, thumbnails sidebar, and a deep emerald Get the full report CTA on a cream backgroundPoper widget live
Northstar SaaS resources page with the Poper PDF widget embedded inline showing the first page of a 42-page whitepaper, page navigator, thumbnails sidebar, and a deep emerald Get the full report CTA on a cream background

Mockups for illustration. Pull your real PDF Widget for Website: Embed PDF Viewer with PDF.js & Native Fallback from Google Drive / Dropbox / S3 and embed in 90 seconds.

How to use it

How to embed a PDF on your website

Three steps. Under two minutes. No developer needed.

  1. 01

    Upload or link your PDF

    Drag a PDF file into the Poper builder, or paste a Google Drive, Dropbox, or S3 URL to a hosted PDF. Files up to 100 MB on Free, up to 500 MB on Pro. Multi-file collections are supported for catalogs and resource libraries.

    Poper PDF widget builder with a file uploader on the left, a Google Drive / Dropbox / S3 URL input on the right, and a deep red Connect file button
  2. 02

    Pick a viewer mode and brand it

    Choose between Inline viewer, Modal popup, Sticky sidebar, Single-page mobile, Thumbnails left, or Full-screen. Match your brand colors, toolbar style, and download button.

    Layout picker showing 6 PDF viewer modes (Inline viewer, Modal popup, Sticky sidebar, Single-page mobile, Thumbnails left, Full-screen) plus brand color picker and toolbar style controls
  3. 03

    Copy the snippet and embed

    Paste the one-line script tag into your site. Works on WordPress, Shopify, Wix, Squarespace, Webflow, Framer, Ghost, and any HTML stack.

    One-line embed snippet for the Poper PDF widget shown in a dark code editor with a deep red Copy button and WordPress, Shopify, Wix, Webflow, Framer platform badges

Works everywhere

Works with every website platform you already use

Drop-in install on WordPress, Shopify, Wix, Squarespace, Webflow, Framer, Ghost, and any HTML-friendly stack. No build step, no developer needed.

WordPress
Shopify
Wix
Squarespace
Webflow
Framer
Ghost
HTML

Plus 250+ other platforms via the embed snippet. If your site can render a <script> tag, it can render the PDF Widget for Website: Embed PDF Viewer with PDF.js & Native Fallback.

What you get with the Poper PDF widget

Six things that matter when you are embedding PDFs in 2026, not 30 features no one uses.

Mozilla PDF.js viewer with native browser fallback

Most PDF embed widgets pick one viewer and force it on every visitor. Poper ships both: Mozilla's open-source PDF.js for full-featured viewing (text selection, search, thumbnails, annotations) and a thin shim that hands off to the visitor's native browser viewer when PDF.js is overkill. You get the right experience on every device without manual configuration.

Mobile pinch-zoom that actually works

Most embedded PDFs trap visitors in a tiny iframe with no zoom. Poper detects touch devices and enables real pinch-zoom, double-tap-to-fit, and pan gestures. Reading a 12-pt legal contract on an iPhone finally works.

Password-protected PDFs

Encrypted PDFs prompt the visitor for the password client-side. Poper never receives or stores it.

WCAG 2.1 accessibility tags

Tagged PDFs preserve heading, list, table, and reading-order structure for screen readers.

Lazy-loading for large PDFs

PDF.js (560 KB) loads only when the viewer scrolls into view. Pages render on-demand as you scroll, so a 200-page report opens in under a second instead of waiting for the full file. Core Web Vitals stay green.

Download enable, disable, or swap

Show a download button for whitepapers and ebooks you want distributed. Hide it for legal docs or paid reports you want viewed but not downloaded. Or swap it for a custom CTA like 'Get the full report' that fires a lead-capture form.

Use cases

Where PDF Widget for Website: Embed PDF Viewer with PDF.js & Native Fallback actually moves the needle

Four buyer types who get the most lift from embedding PDF Widget for Website: Embed PDF Viewer with PDF.js & Native Fallback on their site.

Whitepaper distribution mockup showing a 42-page Northstar industry report PDF cover next to a deep red lead-capture form with email, company, and role fields plus a Download PDF button

Whitepaper distribution

Publish your category report, ROI calculator, or buyer's guide as a beautifully embedded PDF on your resource hub. Lead-capture form overlays the download CTA for gated content that still feels native to your site.

Contract preview mockup showing a Master Service Agreement first page with redacted scope-of-services lines next to a signature page with a yellow Sign-here highlight zone and a faint CONFIDENTIAL watermark

Contract preview + signing

Embed contracts, MSAs, DPAs, and terms of service as tagged PDFs visitors can read in place. Watermarks preserved, redaction honored, sign-here zones highlighted, accessibility tags intact.

Ebook preview mockup showing The Quiet Compounding book cover next to a Read first 3 chapters free panel with a 25% progress bar and a deep red Buy and read the rest CTA

Ebook preview pages

Sample-then-buy: show the first three chapters embedded inline so readers can taste the writing before committing, then route them straight to the buy CTA. Higher conversion than a static cover image.

Product brochure mockup showing a Spring 2026 Catalog cover with page-flip indicator next to a What's inside index listing 5 product categories with page ranges

Product brochures + catalogs

Display your seasonal catalog, lookbook, or product brochure as an embedded PDF. Page-flip indicator, product index, and mobile pinch-zoom finally let shoppers actually browse.

Poper vs other PDF widgets

Adobe wants their logo on your page. Google Drive does too. Elfsight charges per view. Here is how the popular options stack up.

 Recommended
Poper
Adobe PDF Embed API
Elfsight PDF
Google Drive Embed
Free plan available
Free with branding
Free with branding
No third-party branding on viewer
Mozilla PDF.js viewer (full text-layer, search)
Limited
Native browser viewer fallback
Mobile pinch-zoom and pan
Limited
Limited
Password-protected PDF support
Disable download / swap for CTA
Paid only
WCAG 2.1 accessibility tag preservation
Partial
Partial
Lazy-load (PDF.js fetched on viewport entry)
Hosting on your domain (no third-party iframe)
Pricing for unlimited views
$19/mo (Starter)
Free with branding
$25/mo
Free with branding
Bundled with popups, forms, quizzes, more widgets

Comparison reflects publicly listed pricing and features as of 2026. Verify current details on each provider's site.

Real teams. Real outcomes.

Content marketers, restaurateurs, and compliance leads who switched from broken iframes to Poper.

Poper has improved our website's user engagement! Since integrating Poper's personalized popups, we've seen a dramatic surge in conversions and user interactions. The platform's intuitive design makes creating and customizing popups a breeze, even for those with minimal tech skills. What truly sets Poper apart are its…
Jayson Ang
Jayson Ang
Singapore Property Swapper · Singapore Property Swapper
Fantastic app and support team, they are very quick to help and provide a solution or improvement to their product. Highly recommended!
Alex
Alex
CEO · AH
Poper has been a total lifesaver for our agency! As a digital marketing agency, we’re always juggling a million things at once. Poper has been a real game-changer in terms of streamlining our workflow and keeping track of all our clients’ campaigns. The ability to track all our clients’ websites from one place is a…
Idris Basir
Idris Basir
-

Pricing

Simple pricing. Free plan covers most websites.

Free forever for one widget. Upgrade only when you need faster sync, multiple instances, or to drop the watermark.

Free

Everything you need to ship the widget today.

$0forever
  • 1 widget instance
  • All layouts & customization
  • Brand-match styling
  • 6-hour sync cadence
  • Poper watermark
Start free
Most popular

Pro

Remove the watermark, faster sync, more widget instances.

$19/mo
  • Unlimited widget instances
  • 30-minute sync cadence
  • No Poper watermark
  • Custom CSS
  • Priority email support
  • Shoppable tagging
Start 14-day trial

Business

Multi-site, multi-account, white-label.

$49/mo
  • Multi-account combined feeds
  • Real-time sync
  • White-label embed
  • API access
  • Dedicated success manager
  • Custom SLA
Start 14-day trial

All plans include unlimited page views, no contracts, cancel anytime. Annual billing saves 20%.

Guide · 5 min read

The complete guide to embedding PDFs on your website

Embedding a PDF on a website sounds simple until you actually try it. The default options are all flawed: a raw <iframe> handing off to the browser's native viewer breaks on mobile, Adobe's PDF Embed API stamps an Adobe-branded toolbar across your page, Google Drive's embed drops the visitor onto a Google-hosted page with their logo at the top, and most third-party widgets paywall the features that actually matter (download control, accessibility, mobile zoom). This guide walks through what an effective PDF widget actually needs in 2026: Mozilla's open-source PDF.js viewer, a native browser fallback for lightweight contexts, mobile-first UX with real pinch-zoom, WCAG 2.1 accessibility tag preservation, and a serious answer to the question of whether PDF is even the right format for your content.

01

Mozilla PDF.js: the open-source viewer that powers Firefox

PDF.js is the JavaScript-based PDF rendering engine Mozilla built for Firefox in 2011. It is the same viewer that ships natively in Firefox today, and it is the engine behind most production-grade web PDF embeds, including Wikipedia, Internet Archive, and the U.S. Government Publishing Office. PDF.js renders each page to a canvas while overlaying a transparent text-layer that supports selection, copy, search, and screen-reader access. It handles forms, annotations, embedded fonts, attachments, and most encryption modes. The trade-off is bundle size: the full viewer plus worker is around 560 KB gzipped, which is significant for a single feature on a single page. Poper solves this by lazy-loading PDF.js only when the viewer scrolls into the viewport, and by offering a native-viewer fallback mode for cases where 560 KB is too much budget to spend. PDF.js is BSD-2-Clause licensed and used in production by hundreds of thousands of sites, which means it is battle-tested across every browser, every PDF version, and most of the weird edge cases you encounter with PDFs in the wild (oversized scans, broken metadata, embedded subsetted fonts, mixed text and image content).

02

Mobile UX: why most embedded PDFs fail on phones

Embedded PDFs have a deserved reputation for being terrible on mobile. The default behavior of an <iframe src='document.pdf'> on iOS Safari is to display the first page at viewport-fit width, then refuse to scroll beyond it. Android Chrome typically shows a download prompt instead of inline rendering. Pinch-zoom is broken inside iframes by default because the embedded content does not receive the gesture. The reading experience is so bad that many sites just give up and link to the PDF instead, losing the visitor to a separate browser tab. The Poper widget fixes this with three changes: it detects touch devices and binds pointer events to the canvas layer so pinch-zoom and pan gestures work; it sets a sensible default zoom (fit-to-width) instead of fit-to-page so 12-point body text is readable without zooming; and on Android Chrome where inline rendering is unreliable, it falls back to PDF.js client-side rendering instead of the failing native handoff. The net result: a PDF embedded with Poper is actually readable on a phone, which sounds like a low bar, but the bar most embed solutions clear is below it.

03

WCAG 2.1 accessibility: the tag requirement most people skip

PDFs are notorious for accessibility failures. A scanned PDF with no OCR is just an image and is invisible to screen readers. Even text-based PDFs are inaccessible by default unless the source document includes structural tags (heading levels, lists, tables, reading order, alt text on images, language declarations). WCAG 2.1 Level AA, which most jurisdictions reference (EU EN 301 549, U.S. Section 508, UK PSBAR), requires that PDFs published on a public website be tagged. The catch: many PDF embed solutions strip or ignore those tags during rendering, breaking the accessibility chain even when the source PDF is properly tagged. Poper preserves the full PDF tag tree through PDF.js, exposing it to assistive technology via standard ARIA attributes on the text-layer. Screen readers (JAWS, NVDA, VoiceOver, TalkBack) can navigate the document by heading, jump between tables, and read alt text on figures. If your source PDF is not tagged (you can check with Adobe Acrobat's Accessibility Checker, or pdfa-validate, or veraPDF), Poper still preserves what is there, but no widget can tag a PDF that was not tagged at source. The right place to fix accessibility is in the document, not in the embed; widgets that claim to 'add accessibility' are at best providing visual zoom features, not real WCAG conformance.

04

When PDF is the wrong format: HTML and flipbook alternatives

Before you embed a PDF, ask whether PDF is actually the right format for your content. PDFs were designed for print: fixed page size, fixed layout, fonts embedded, intended to look identical on every screen and every printer. That is exactly the wrong design constraint for a website, where the screen is variable, the input device is unknown, and the visitor scrolls instead of paging. For long-form content like blog posts, documentation, knowledge base articles, and product copy, native HTML beats embedded PDF on every metric: lower bundle, faster paint, better mobile UX, full accessibility, indexable by search engines, linkable to specific sections. PDF only wins when fixed layout is genuinely required: signed legal contracts, regulatory filings, tax forms, scientific papers with fixed pagination for citation, print-bound brochures, menus where the design is the point. For documents that fall between (ebooks, lookbooks, magazines, catalogs), a flipbook widget often beats both raw PDF embed and HTML conversion: the page-turning interaction signals 'magazine' rather than 'document', engagement metrics typically beat PDF by 3-5x, and Poper's flipbook widget can ingest your existing PDF as input. Pick the format based on what the visitor will do with the content, not on what file you happen to have lying around.

05

Adobe PDF Embed API limitations and why the open-source path is usually better

Adobe offers the PDF Embed API as a free service, which sounds great until you read the fine print. The viewer is hosted on Adobe's CDN and renders inside an iframe loaded from documentcloud.adobe.com. That has three downstream consequences. First, the toolbar shows the Adobe logo and 'Powered by Adobe' branding, which is fine if you are Adobe but distracting if you are anyone else. Second, the iframe is a third-party domain in browser tracking-prevention reports, which means tools like Brave's tracker count, Apple's Privacy Report, and Firefox's Enhanced Tracking Protection all flag your page as embedding Adobe trackers, even though the use case is benign. Third, the API has rate limits and a terms of service that reserves Adobe's right to add advertising, change branding, or shut down free tier access at any time; multiple Adobe APIs have been deprecated or commercialized over the years, so betting your site's PDF rendering on Adobe's continued generosity is a real risk. The open-source path (PDF.js + your own CDN, which is what Poper provides) avoids all three problems: no third-party branding, no third-party domain in tracker reports, no API key, no terms of service that can change. The trade-off is that you maintain the bundle, but Mozilla maintains PDF.js for Firefox itself, so the upstream is healthy. For 95% of use cases, the open-source path is the right answer.

Quick reference

What is PDF Widget for Website: Embed PDF Viewer with PDF.js & Native Fallback?

A PDF widget is an embeddable script that displays PDF documents inline on a website using a JavaScript-based viewer (most commonly Mozilla's open-source PDF.js) with a fallback to the browser's native PDF rendering. It supports text selection, search, page navigation, mobile pinch-zoom, password-protected files, and WCAG 2.1 accessibility tag preservation.

Key facts

  • Mozilla PDF.js is the open-source JavaScript PDF viewer that ships natively in Firefox and powers most production web PDF embeds (BSD-2-Clause licensed, around 560 KB gzipped)
  • WCAG 2.1 Level AA requires PDFs published on public websites to include structural tags (headings, lists, tables, reading order, alt text); the embed widget must preserve these tags for screen-reader access
  • Mobile-first PDF UX requires real pinch-zoom and pan gestures bound to the canvas layer; default <iframe> embeds break pinch-zoom on iOS Safari and trigger download prompts on Android Chrome
  • Adobe PDF Embed API is free but loads from a third-party Adobe-branded iframe; open-source PDF.js paths avoid the third-party domain and branding
  • Lazy-loading PDF.js (only fetching the bundle when the viewer scrolls into view) keeps Core Web Vitals green even on PDF-heavy pages
  • Password-protected PDFs are decrypted client-side by PDF.js; the password is never sent to the embed provider's servers

Last fact-checked: . We re-verify every quarter.

Frequently asked questions

Can't find the answer you're looking for? Chat with our support team.

Contact Support

Stop trapping your PDFs in broken iframes

Poper takes 90 seconds to embed and finally works on phones.

Free plan available forever