# I Built a LaTeXdiff Online tool – using Claude Code (Reddit users Loved it)

> Source: <https://thelatexlab.com/latexdiff-online/>
> Published: 2026-06-17 08:13:22+00:00

[5.0 · 500+ Projects Delivered](/cdn-cgi/l/email-protection#8be3eee7fba5ffe3eee7eaffeef3e7eae9cbece6eae2e7a5e8e4e6)

# LaTeXdiff Online

Free Tool, No Perl install, No Terminal

Use LaTexdiff Online to compare two .tex files and instantly see what changed. Paste your original and revised LaTeX files, then generate a marked-up version for journals, supervisors, or co-authors.

## How it works

`\DIFadd{...}`

around additions and `\DIFdel{...}`

around deletions. Compile it with pdflatex to see additions in blue and deletions in red strikethrough.## Options explained

`type`

How additions are marked. UNDERLINE wavy-underlines them, CHANGEBAR puts a vertical bar in the margin, CFONT uses a different font. Switch to CHANGEBAR if your journal asks for marginal change marks rather than inline markup.`UNDERLINE`

default`subtype`

How deletions are marked. COLOR uses red strikethrough, FONTSTRIKE strikes through without colour, SAFE is the most conservative. Use SAFE if `\DIFdel`

is breaking your document, since some journal classes redefine commands that conflict.`COLOR`

default`floattype`

How figures and tables are handled. IDENTICAL leaves them alone unless content changed, FLOATSAFE wraps every float in protective commands. Use FLOATSAFE if floats are silently disappearing in the diffed output.`IDENTICAL`

default`math-markup`

How equations are diffed. coarse marks any changed equation as one block, fine diffs inside the equation, whole always marks the whole equation, off ignores math changes. Use fine to see exactly which symbols changed, though it is fragile.`coarse`

default## Limitation

`\input{}`

or `\include{}`

to pull in chapters, the tool will not flatten them automatically. Inline everything first, or wait for the multi-file version.`ulem`

package.## What latexdiff actually does

### Marks every change

`latexdiff`

is a Perl script that compares two LaTeX source files and produces a third LaTeX file with the changes marked up using two macros: `\DIFadd{...}`

for insertions and `\DIFdel{...}`

for deletions. When you compile that third file with pdflatex, the additions appear in blue and the deletions appear in red strikethrough. The `ulem`

package handles the strikethrough.

### It understands LaTeX

It is not a text diff. A plain `diff`

tool would compare your files line by line and miss the LaTeX structure entirely — it would flag a renamed `\section{}`

as a complete rewrite even if you only changed one word. `latexdiff`

understands LaTeX. It diffs paragraphs, sentences, equations, and citations as separate units, and it leaves the document compilable on the other side.

### Why researchers use it

This matters because most researchers use latexdiff for one of three reasons: tracking what changed between drafts when working with co-authors, generating a revision file for journal resubmission, or sanity-checking changes during a thesis revision pass. Many journals require authors to upload both a clean manuscript and a marked-up revision showing all changes — `latexdiff`

is the standard way to produce that second file. None of these workflows work with a generic text diff.

### Why run it online

The catch is installation. `latexdiff`

ships with TeX Live and MiKTeX on most Linux and Mac setups, but Windows users almost always hit a wall — `latexdiff`

is a Perl script, and Perl is not preinstalled on Windows. You end up installing Strawberry Perl, then pointing TeX Live at it, then dealing with path issues. Overleaf users hit a different wall: `latexdiff`

is built into Overleaf's Track Changes feature, but that feature is gated behind their paid Premium plan. For a one-off comparison, neither path is worth the effort. That is the gap this tool fills — a free, online `latexdiff`

that works in any browser, with no install and no subscription.

## Frequently asked questions

No. Perl runs server-side on our end. You just paste the two files and get a result.

No. `diff`

is a generic text comparison tool that does not understand LaTeX structure. `latexdiff`

parses the LaTeX, then diffs at the paragraph and equation level, then writes a compilable LaTeX file with markup macros. The two are not interchangeable.

The most common cause is a missing `ulem`

package on your local install. `latexdiff`

adds `\RequirePackage[normalem]{ulem}`

to the diffed file's preamble — if you do not have it, the compile fails on that line. Install it from your TeX distribution and the file will compile.

The second most common cause is template incompatibility. Some journal classes (`elsarticle`

, `acmart`

, `sn-jnl`

) redefine commands that conflict with `\DIFadd`

and `\DIFdel`

. Switch the `subtype`

option to `SAFE`

and try again.

Yes, if your Overleaf project is a single .tex file. Download both versions from Overleaf (Menu → Download → Source), open the .tex files, and paste each into the box above. The tool produces the same diff Overleaf's paid Track Changes feature would, without the subscription.

For comparing two completed file versions, yes. Overleaf's Track Changes is a live, interactive editor on the Premium plan. This tool generates a static diff of any two `.tex`

files in seconds, free, without a subscription. If your Overleaf project uses multiple files via `\input{}`

or `\include{}`

, you currently need to flatten them first — a multi-file version of this tool is coming.

Yes, free. It runs on a small server-side service and serves a few thousand requests a month comfortably. No signup, no paid tier.

## Need the manuscript formatted for IEEE, Springer, Elsevier, ACM, or another journal template?

We handle submission-ready LaTeX typesetting from $49. Send the source files, get back a paper that compiles cleanly and matches the journal spec.
