Compare two texts, code files, or documents side by side with character-level highlighting. Free, private, and works entirely in your browser.
๐ Open Text Compare ToolFree ยท No signup ยท 100% private ยท No paywall
A text diff checker compares two pieces of text and highlights every difference โ lines that were added, removed, or changed. Developers use diff tools daily: for code reviews, comparing configuration files, checking what changed between document versions, and debugging why something that worked yesterday is broken today.
The ToolForge Text Compare tool runs a full LCS-based diff algorithm in your browser โ the same approach used by Git. It supports side-by-side and unified views, character-level highlighting within changed lines, file upload, ignore-case and ignore-whitespace options, and copy/export of the diff report. No paywall, no file size limits for typical use cases.
Modern diff tools use the Longest Common Subsequence (LCS) algorithm โ the same approach used by Git. The algorithm finds the longest sequence of lines that appear in both texts in the same order, then marks everything else as added or removed.
For character-level highlighting within changed lines, a second pass runs the same algorithm on individual characters of each modified line pair, pinpointing the exact characters that differ.
The alternative is the Myers diff algorithm (published by Eugene Myers in 1986), which finds the shortest edit script โ the minimum number of insertions and deletions to transform one text into the other. Git uses a variant of Myers internally. Both approaches produce nearly identical results for typical text comparisons.
The ToolForge Text Compare tool runs this algorithm entirely in your browser using JavaScript. No data is sent to any server, and the comparison completes in milliseconds for files up to 50,000 lines.
LCS-based diff algorithm โ same approach as Git
Character-level highlighting within changed lines
Side-by-side view with line numbers
Unified diff view (+/- prefix format)
File upload: .txt, .json, .csv, .js, .ts, .py, .html, .css, .xml
Ignore case and ignore whitespace options
Collapsible unchanged sections (3-line context)
Stats bar: lines added, removed, modified, unchanged
Copy diff report as plain text
100% private โ no data sent to servers
Type or paste your original text into the left panel. You can also click "Upload file" to load a .txt, .json, .js, .py, or other text file directly from your computer.
Add the updated or modified version in the right panel. Both panels accept any plain text format โ code, prose, configuration files, or structured data.
Check "Ignore case" if you only care about content differences, not capitalization changes. Check "Ignore whitespace" to skip differences caused only by extra spaces or indentation changes.
The diff runs instantly. The stats bar shows how many lines were added, removed, modified, and unchanged. Unchanged sections are automatically collapsed to keep the focus on changes.
Green lines are additions (right side only), red lines are deletions (left side only), yellow-highlighted text within lines shows the exact characters that changed. Switch to Unified view for a single-column format like git diff.
Click "Copy Report" to copy the diff as plain text, useful for pasting into pull request descriptions or team chat. Use the Swap button to reverse the comparison direction.
| Use Case | How This Tool Helps |
|---|---|
| Code review | Compare two versions of a function or file to see exactly what changed before approving a pull request |
| Document editing | Compare two drafts of a document to see which sentences were added, changed, or removed |
| Config file debugging | Compare a working config against a broken one to pinpoint the exact line that changed |
| Content audit | Check if a webpage was updated by comparing scraped text from two dates |
| JSON comparison | Paste two JSON objects to see which fields were added, changed, or removed โ use with our JSON Formatter for pretty-printed input |
| Plagiarism check | Compare two documents to see how similar they are and which parts were copied or paraphrased |
| Translation review | Compare a source document against a translated version line-by-line to catch missed segments |
For JSON comparison, use our JSON Formatter first to pretty-print both objects on separate lines โ this makes the diff far more readable.
Use "Ignore whitespace" when comparing code that was reformatted (e.g., after running Prettier) to see only semantic changes.
The Swap button lets you flip original and changed instantly โ useful when you accidentally pasted text in the wrong order.
For very long texts, use "Load Sample" to see how the tool handles a real comparison before pasting your data.
Character-level highlighting is most useful for lines with small edits โ a single renamed variable, a changed number, or a typo fix.
The collapsed unchanged sections (... N lines ...) keep the diff readable. The tool shows 3 lines of context around each change, matching the default Git diff behavior.
| Feature | ToolForge | Diffchecker Free | Diffchecker Pro ($9/mo) |
|---|---|---|---|
| Character-level diff | โ Free | โ Pro only | โ |
| File upload | โ Free | โ Free | โ |
| Side-by-side view | โ Free | โ Free | โ |
| Unified diff view | โ Free | โ Pro only | โ |
| Ignore whitespace | โ Free | โ Pro only | โ |
| Ignore case | โ Free | โ Pro only | โ |
| No signup required | โ | โ | โ |
| Data privacy | 100% client-side | Server-processed | Server-processed |
| Cost | Free forever | Free (limited) | $9/month |
ToolForge provides character-level diff, unified view, and ignore-whitespace options that Diffchecker locks behind a $9/month paywall โ completely free and without requiring any account.
This tool uses a line-by-line comparison algorithm similar to what Git uses internally. It identifies which lines were added, removed, or modified between the two texts. For modified lines, it runs a second character-level pass to highlight the exact characters that changed within each line.
Yes. This diff checker works with any text format including source code in JavaScript, Python, HTML, CSS, JSON, XML, SQL, and any other programming language. It preserves formatting, indentation, and special characters. It is ideal for code reviews, comparing different versions of a file, or debugging configuration changes.
All comparisons happen entirely in your browser using JavaScript. Your text is never sent to any server. No data is stored, logged, or transmitted. The tool works even when you are offline after the page has loaded.
Line-level diff shows which entire lines were added, removed, or changed. Character-level diff goes further โ within changed lines, it highlights the specific characters that differ. Character-level is more useful for catching small typos, variable name changes, or minor edits within long lines.
This tool handles files up to 50,000 lines per side efficiently. For very large files (100,000+ lines), performance may slow due to browser memory limitations. For such cases, use a desktop tool like VS Code's built-in diff viewer or the command-line diff utility.
This tool accepts any plain text format โ .txt, .json, .csv, .js, .ts, .py, .html, .css, .xml, and more. Upload files using the upload button on each panel, or paste content directly. For binary files (images, PDFs, compiled code), use a specialized comparison tool instead.
Yes. ToolForge Text Compare provides character-level diff, unified view, ignore whitespace, and ignore case โ features that Diffchecker locks behind their $9/month Pro plan. All features are free, with no account required and no usage limits. Your data never leaves your browser.
Free, private, no signup โ all processing in your browser.
Open Text Compare ToolFor JSON comparison, format both files first with our JSON Formatter for cleaner, more readable diffs.