Someone sends you "contract_v3_final.pdf" and says only a couple of things changed since v2. Maybe that's true. Reading two 20-page documents side by side to check is slow, and your eyes will skip exactly the sentence that matters.
Compare PDF does that reading for you. It pulls the text out of both files, lines it up word by word and shows what was added and removed on each page. Both files are processed in your browser and nothing is uploaded.
What the comparison actually looks at
A PDF doesn't store paragraphs. It stores drawing instructions: put these characters, in this font, at these coordinates. To compare two of them, the tool first reads each page's text layer and turns it into a list of words, with markers where the lines end.
Then it runs a diff on those two lists. It's the same kind of algorithm programmers use to compare versions of source code, working on words instead of lines. It finds the smallest set of insertions and deletions that turns the original page into the revised one. Everything else counts as unchanged.
That has consequences you should know before you trust the result:
- It compares wording, not appearance. A word that went bold, a new font, a moved logo or a different colour won't show up.
- Images aren't compared at all. If someone swapped a signature image or replaced a chart that's stored as a picture, the tool won't see it.
- A scanned page has no text layer, so there's nothing to compare until you run OCR (more on that below).
How to compare two versions
- Open Compare PDF.
- Drop the earlier file in the box marked "Original" and the later one under "Revised". The order matters, because words that only exist in the revised file are reported as added.
- If either file has a password, you'll be asked for it, and the file is opened in your browser.
- Click "Compare".
- Work through the "Differences" list. Click any entry, or use "Previous" and "Next", to jump to that change in the text.
The bar at the top gives you totals such as "+14 added", "-9 removed" and "3 pages changed". In the text, added words are green and underlined and removed words are red and struck through. Each entry in the list is labelled "Added", "Removed" or "Changed" with its page number. "Changed" means some words were taken out and others put in their place, so you see the old wording right next to the new.
Only pages with differences are shown by default. Tick "Show unchanged pages" if you want to read a change in its full context.
Hiding changes that don't matter
"More options" has three checkboxes. Each one throws away a kind of difference before the comparison runs.
"Ignore case" treats "Total" and "total" as the same word. Handy when someone restyled the headings in capitals.
"Ignore punctuation" strips commas, quote marks, dashes and similar characters before comparing. It's good for files that went through a different word processor and came back with curly quotes instead of straight ones. Be careful with contracts, though. A moved comma can change what a clause means, and with this option on you won't see it.
"Ignore line breaks" compares each page as one flow of words. This is the one I turn on most often. If the revised file has slightly different margins or a different font size, every line wraps in a new place, and without this option the result fills up with text that only moved to the next line. The cost is that the result is shown without line breaks, so it's a little harder to read.
Why one new paragraph can light up every page after it
This is the main limit, and it catches people out. Pages are compared in order: page 1 with page 1, page 2 with page 2, and so on. The tool doesn't try to work out that the text which used to sit at the bottom of page 4 is now at the top of page 5.
So if someone added a paragraph on page 2 of a long document, the text it pushed down shows up as removed from the end of page 2 and added at the start of page 3. Then the same happens on the next page, and the next. When the page counts differ, the tool says so ("The original has 12 pages and the revised file has 13") so you know to expect this.
There are two ways to deal with it. If a whole page was inserted or removed, use Extract pages or Delete pages to make the two files line up, then compare again. If the text only reflowed, find the first page with differences, read that change carefully, and treat the matching remove-and-add pairs at the page edges after it as moved text. Which is what they are.
One more edge case. If a page changed so much that well over two thousand words would have to be added or removed, the tool stops matching word by word and shows the whole page as replaced, marked "(too different to compare word by word)".
Scans and files from different sources
If either file is a scan, you'll see a note such as "The original file contains no selectable text." A scan is a photo of a page, so there are no words in it to read. Run the file through OCR PDF first (the guide to making a scanned PDF searchable covers the settings), then compare.
OCR isn't perfect. Comparing a Word export with a scanned, signed copy of the same contract works after OCR, but expect a few false differences where the scan was read as "rn" instead of "m" or lost a full stop. A difference in an account number is worth checking against the paper. A missing comma in a footer probably isn't.
The order of the text also depends on how each PDF was made. Two files exported from the same Word document usually compare cleanly. A Word export against a file printed to PDF from another app can store columns, headers and footnotes in a different order, and that shows up as text that moved. "Ignore line breaks" helps with some of it, but not all.
What to do with the result
There's no output file. The differences are shown on screen and stay in your browser. If you need to reply with a list of what you accept or reject, write down the page numbers and the wording as you go, because the entries in the list are shortened to fit.
And when someone says "only minor edits", read every "Changed" entry, including the tiny ones. The edits that matter in a contract tend to be short: a date, an amount, "may" turned into "shall".
Also useful: OCR PDF · Extract pages