5.0 · 500+ Projects Delivered 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
defaultsubtype
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
defaultfloattype
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
defaultmath-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.