How to use Text Diff Checker
The Text Diff Checker provides a clean, focused interface for spotting differences between two text passages with character-level precision. It highlights changed words inline within each line, making it easy to spot subtle wording changes — a single letter difference in a legal clause, a transposed number in a configuration value, or an altered email address in a contact list — that line-level diffs might present as complete replacements.
- Enter or paste the original text in the "Before" panel on the left.
- Enter or paste the revised text in the "After" panel on the right.
- Differences are highlighted immediately: red background for removed content, green for added content.
- Toggle "Character diff" to see exactly which characters changed within each word.
- Toggle "Ignore case" to suppress differences that are only a matter of capitalisation.
- Click "Copy diff" to copy a plain-text summary of all changes to the clipboard.
Your data never leaves your device — 100% private processing.
Character-level vs line-level diffing
Line-level diffing marks an entire line as deleted and replaced when even one character changes, which makes it hard to spot subtle edits. Character-level (or word-level) diffing goes deeper: within a changed line, it identifies exactly which characters or words were removed or inserted. This is implemented by running a second diff pass on the changed line pairs. Character diff is most useful for prose, configuration files and data records where minor changes carry significant meaning. Line diff is more useful for code, where any change to a line often requires reading the whole line in context.
Comparing structured text and data
When comparing structured formats like JSON, XML, CSV or YAML, raw text diff can be misleading because equivalent data may be expressed in different ways (different key ordering in JSON, different indentation in YAML, different column ordering in CSV). For best results with structured data, format or sort the content consistently before diffing — use the JSON Formatter to canonicalise JSON before pasting it into the diff checker. For CSV, ensure columns appear in the same order in both versions.
| Format | Normalisation step | Tool to use |
|---|---|---|
| JSON | Sort keys + pretty-print with 2 spaces | JSON Formatter |
| YAML | Use consistent indentation (2 spaces) | YAML linter |
| CSV | Sort rows by key column, align column order | Spreadsheet / sort command |
| HTML | Format and alphabetise attribute order | HTML formatter |
| SQL | Format with consistent capitalisation and indentation | SQL formatter |
| Prose / plain text | Trim trailing spaces, normalise line endings | Find & Replace (\r\n → \n) |
Worked examples
One-character change
Inputs: "color" vs "colour"
Result: inserts "u" — the rest is unchanged
Word-order swap
Inputs: "big red" vs "red big"
Result: both words flagged as changed
Ignore case
Inputs: "Hello" vs "hello"
Result: no difference with ignore-case on
Glossary
- Inline diff
- A diff view where additions and deletions are shown within the same text flow, highlighted in colour.
- Character diff
- A diff that operates at the character level within changed lines, identifying the exact characters that changed.
- Patch
- A file containing diff output that can be applied to the original to reproduce the revised version.
- Context lines
- Unchanged lines displayed around changed lines in a diff to help orient the reader.
- Semantic diff
- A diff that understands the structure of a format (e.g., JSON, XML) and compares semantically equivalent representations as identical.
Related reading
Frequently Asked Questions
Why use Text Diff Checker?
- Character-level inline highlighting reveals single-letter differences invisible to standard line-level tools
- Ignore-case toggle prevents capitalisation-only changes from cluttering the diff view with false edits
- Instant side-by-side rendering with no file upload or software installation needed
- Plain-text diff summary can be copied and pasted into a review comment or issue tracker ticket
Common use cases
- Catch a transposed digit in a contract value that looks identical when comparing whole lines
- Confirm only the intended email address changed when updating a bulk-generated contact list
- Compare two JSON snippets before and after a manual key rename to see every character affected
- Check that normalising line endings in a config file introduced no unintended character changes
- Verify a corrected press release differs from the original in exactly the intended sentences
Get weekly tool tips & updates
New tools, power-user tips, and productivity hacks — delivered free every Friday.
No spam, ever. Unsubscribe with one click.
Related Text Tools
Word Counter
Count words, characters, sentences, and paragraphs, and estimate reading time. Free, instant, and private — ideal for essays, articles, and posts.
Case Converter
Convert text to camelCase, PascalCase, snake_case, kebab-case, UPPERCASE, lowercase, Title Case, and Sentence case instantly.
Remove Duplicate Lines
Remove duplicate lines from text online. Case-sensitive or insensitive matching. Preserves order or sorts alphabetically. Free online tool.
Reverse Text
Reverse text online by characters, words, or lines. Flip your text backwards instantly. Free, private text reverser that runs in your browser.
Morse Code Translator
Translate text to Morse code and Morse code to text instantly. Supports letters, numbers, and punctuation. Free online Morse code translator.
Lorem Ipsum Generator
Generate Lorem Ipsum placeholder text by paragraph, sentence, or word count. Optionally output wrapped HTML paragraph tags.
Explore all Text Tools.