All tools
Repair PDF
FreeFix mildly malformed PDFs by reparsing through pdf-lib and re-saving. Recovers from dangling xref, stale trailer dicts, bad object streams.
What you'll get: a re-saved clean copy of a mildly malformed PDF — fixes dangling xref pointers, stale trailers, and bad object streams via pdf-lib's permissive parser. For another use, try PDF Inspector.
Loading tool…
Stays in your browser
Free tools run fully on-device — nothing is uploaded to a server.
No watermarks
Clean output, no branding, no daily limits.
Free forever
No signup required. Seriously.
Why people repair PDFs
PDFs break in surprising ways — interrupted downloads, broken export pipelines, unusual generators that produce technically-invalid-but-mostly-fine files. pdf-lib’s permissive parser can rescue many of these without an Acrobat license.
Interrupted downloads
A network blip during download leaves the PDF with a corrupt xref. Reparse + re-save fixes it — no need to re-download.
Bad export pipelines
Some generators (older office suites, custom report tools) produce PDFs with stale trailer dicts that strict viewers reject. pdf-lib accepts them; the re-save makes them universally valid.
Pre-archive cleanup
Before archiving important docs, run them through repair so future viewers (10 years from now) can open them without quirks.
Email gateways
Some corporate email scanners reject PDFs with unusual structure. Repair normalizes them so they pass through.
Scanner output
Multifunction printers occasionally produce PDFs that open in Acrobat but break in browser viewers. Repair fixes the inconsistency.
Concatenated outputs
When you cat two PDF files together (sometimes done by sloppy automation), you get a structurally invalid result. Repair recovers the document tree.
How Repair PDF works
Three steps, no signup, no uploads.
- STEP 1Drop your PDFUp to 100 MB. Even files that other viewers can’t open often parse fine in pdf-lib.
- STEP 2Click RepairWe load with throwOnInvalidObject=false so pdf-lib swallows recoverable errors, then re-save with object streams for a clean output.
- STEP 3DownloadOutput is structurally clean: valid xref, well-formed trailer, normalized object streams. Page content is byte-identical.
What makes pdfcraft ai different
- Same engine Chrome usesPDFium is Google's PDF engine — the one that powers Chrome's built-in PDF viewer. We compile it to WebAssembly so it runs in your browser at near-native speed.
- 100% local processingMost free PDF tools upload your file to a server, process it, and stream the result back. We don't. Your file lives in your browser tab and never touches our infrastructure. Verifiable in your browser's Network panel.
- No watermark, no signup, no daily limitConvert 1 PDF or 1,000. We don't gate on volume because there's nothing to gate on — the engine runs on your machine.
- Honest about limitationsWhen something the tool can't do (encrypted PDFs, cross-reference streams), we tell you clearly instead of failing silently. Same for partial results: sampled vs exact, embedded vs not.
- Open standards, free enginesPDFium is BSD/Apache licensed (free for any use). We don't pay vendor license fees and pass that savings on to you (and to ourselves) as a free, ad-supported tool with no upgrade-to-pro pressure.
Frequently asked questions
What can’t this fix?
Truncated files (the bytes after the truncation just don’t exist), encrypted PDFs whose content streams are scrambled by a forgotten password, and content streams whose internal PostScript-style commands are themselves corrupt. For deeper damage, qpdf --repair (server-side) or Adobe Acrobat are the tools to try.
Will the page content change?
No. We re-save the structural envelope; the page content streams pass through pdf-lib’s parser into the new document unchanged. Visually identical.
Why does the output sometimes get smaller?
We re-save with modern object streams (compact format). Older PDFs without object streams can shrink 5-15% during repair without any quality loss.
Is anything uploaded?
No. pdf-lib parses + re-saves entirely in your browser.
Should I run this on every PDF as preventative maintenance?
No need. Most PDFs are fine. Only run when a viewer flags errors, when archiving important docs long-term, or when a downstream tool rejects the file.
Need to inspect the PDF first?
PDF Inspector tells you what’s inside before you repair — page count, encryption, metadata, mixed-orientation warnings.
Try PDF InspectorRelated PDF tools
Other tools in the Edit category — built on the same private, in-browser pipeline.
Booklet PDFFree
Saddle-stitch imposition — reorder pages so you can print double-sided, fold the stack in half, and staple along the fold to make a booklet.
Bates NumberingFree
Stamp legal-style sequential identifiers (LAW000001, LAW000002, …) on every page. Configurable prefix, digit count, start number, position. For litigation discovery and document production.
PDF OverlayFree
Stamp the first page of one PDF (letterhead / template / watermark) onto every page of another PDF. Front-or-behind layer, configurable opacity, fit-or-stretch, optional page subset.
Fill PDF FormFree
Visually fill PDF AcroForm fields — text, checkboxes, radio buttons, dropdowns, multi-select. Optional flatten to bake values so recipients can't edit.
Batch Process PDFsFree
Apply one operation (rotate, page numbers, watermark, remove metadata, flatten, strip links) across many PDFs at once. Output bundles into a downloadable zip.
Rotate PDFFree
Rotate selected pages by 90°/180°/270°. Lossless via pdf-lib's /Rotate adjustment — runs in milliseconds.