🛠️ Repair PDF WASM
Recover corrupted, damaged, or unopenable PDFs. Our repair pipeline parses the file with pdf.js's recovery mode and rebuilds a clean, working PDF you can actually open again.
Upload Damaged PDF
Drop your file below — we'll inspect it and tell you what's wrong before repairing.
Drop your damaged PDF here or click to browse
Only .pdf files • Works offline • Your file never leaves this device
document.pdf
—
Preview (page 1)
Preview of what we recovered from page 1 — if this looks right, the repair should work.
How to Repair a Damaged PDF
Upload the File
Drop your damaged PDF. We diagnose what's wrong first.
Repair
Auto mode tries lossless first, then falls back to rasterizing pages.
Download
See how many pages were recovered, then download your fixed PDF.
Frequently Asked Questions
Often, yes. Most "corrupted PDF" errors are caused by damaged cross-reference tables, truncated end-of-file markers, or bad metadata — not by the actual page content being destroyed. pdf.js (the same engine Mozilla Firefox uses) has an extremely tolerant parser that reads right through those problems. We then rebuild a fresh, valid PDF from the recovered pages.
What we can't do: recover data that physically isn't in the file. If a page's content stream was never written to disk, no tool can bring it back.
Lossless rebuilds the PDF while preserving the actual text, fonts, and vector graphics. The result is a valid PDF where text stays selectable and searchable — this is what you want if it works. Rasterize renders each page to a high-res image and creates a new PDF from those images. It's more forgiving of corruption but makes text non-selectable.
It tries Lossless rebuild first. If that fails (which happens when the PDF's internal structure is too damaged for pdf-lib to parse), it automatically switches to Rasterize mode — which only needs pdf.js to be able to render each page, which is a much lower bar. This gives you the best possible result with zero decisions to make.
Potentially, yes. With Skip unreadable pages enabled (the default), any page that can't be recovered is left out and the rest are kept. The result shows you exactly how many pages were recovered out of the total, so you'll know immediately. Turn the option off if you'd rather fail cleanly on a bad page.
No. If the file is password-encrypted, its content stream is mathematically unreadable without the key — no repair tool can bypass that. If you do know the password, use our Unlock PDF tool first, then run this repair on the decrypted result.
No. Everything runs in your browser using pdf.js and pdf-lib. Your file never leaves your device — which matters even more than usual here, since damaged PDFs often contain sensitive content you'd rather not hand over to a remote service.
We'll tell you honestly. If pdf.js can't even open the file, or if zero pages render, we show an error instead of pretending to fix it. In that case, try opening the file in a desktop tool like qpdf --check to see the specific error — sometimes a different version of the file exists that can still be recovered.