Compare PDF
Compare two PDFs line by line and download a diff report. Text-based PDFs only in v0.1 — visual (image) diff coming in v0.2.
Select PDF A
or drop one here
Select PDF B
or drop one here
Text diff mode compares the text layer of both PDFs. It cannot detect visual-only changes (image edits, signatures, stamps). Use after a content review, not a visual review.
Your file is ready
Processed entirely in your browser — the file never left your device.
How Compare PDF works
Three steps. Both files stay in your browser.
Pick two PDFs
The original (A) and the new version (B). Both must have a text layer.
Run the diff
Text is extracted with PDF.js, then a line-level LCS diff identifies adds and removes.
Download the report
A new PDF lists added (green) and removed (red) lines with context. Use it for review or audit.
What "Compare PDF" actually does
Compare PDF answers a single, very common question: what changed between version A and version B? The use case is almost always a contract, a policy document, a research paper, or a report that has gone through one or more revision cycles, and you want to see at a glance which paragraphs were edited, added, or deleted — not by eyeballing two browser tabs side by side, but by getting a machine to do the boring part for you.
v0.1 of this tool runs a TEXT-level diff. We open both PDFs in your
browser using PDF.js, extract the text content one page at a time,
group items into lines, then run a classic LCS (longest common
subsequence) algorithm to find which lines match between A and B.
The result is rendered into a clean comparison-report PDF with green
highlights for added lines, red for removed, and grey for unchanged
context. The same approach used by tools like git diff,
applied to PDF text instead of source code.
What this version is good for
- Contract revisions. Spot every clause that changed between drafts.
- Policy updates. Show stakeholders exactly which sections moved.
- Editorial review. Comparing a research paper or article between two reviewers.
- Document audits. Quick proof of what changed (and what didn't) between archived copies.
What this version cannot do (yet)
- Visual / pixel diff. Image edits, layout shifts, signature stamps — those produce no text change and won't show up. Visual diff is on the v0.2 roadmap.
- Scanned PDFs. Image-only PDFs have no text layer; run them through OCR first, then compare the OCR'd copies.
- Table-cell granularity. Tables are flattened to lines of text; if a single cell changes, the whole row is reported as changed.
- Word-level highlights. Changes are flagged per line, not per word. Investigating a 100-character line where 5 characters differ still flags the whole line.
Privacy & security
Document comparison is often used on confidential material — contracts in negotiation, internal policies, legal pleadings, regulatory filings. Most online compare-PDF services upload both files to a server, run the diff there, and return a report. imisspdf does the entire diff inside your browser tab so neither version of the document ever leaves your device. You can confirm with the Network tab in your browser developer tools while running the comparison.
Frequently asked questions
v0.1 is a TEXT-LEVEL diff. We extract the text layer from both PDFs page-by-page, group items into lines by Y position, then run a line-level LCS diff. The output is a fresh PDF report listing added / removed / unchanged lines with green and red highlights. It works best on PDFs that have an actual text layer (most digital exports from Word, Pages, LibreOffice, browsers, etc.).
Visual pixel diffing requires rendering each page to a canvas and computing differences pixel-by-pixel, which only runs in the browser (Node has no canvas). It is on the v0.2 roadmap. The text diff covers ~90% of real-world "what changed in this contract?" questions; for the remaining 10% (visual-only edits like image swaps or signature additions), use the visual diff once we ship it.
Not directly in this version — scanned PDFs are pages of images with no text layer, so there is nothing to diff. Run them through our OCR tool first to add a searchable text layer, then compare the OCR'd copies. Accuracy depends on scan quality.
Yes. Both PDFs are read into your browser, parsed with the open-source PDF.js library, diffed in JavaScript, and the report is built with pdf-lib — all locally. Nothing is uploaded; you can confirm by disconnecting from the network before clicking Compare.
The current diff caps at 5000 lines per side (well over a 300-page report). Above that the LCS algorithm starts using a lot of memory in the tab. If you exceed that, split the documents and compare sections.