How to Compare Text
How to use DiffTool
What you can compare
DiffTool is a free tool for finding changed characters between two texts. You can use it to review a revised contract or an edited translation, for example. The comparison runs in your browser; your text is not sent to the server for comparison.
The Original and Changed fields start with slightly different sample texts. Select Compare to try them, or replace them with your own text.
Compare two texts
- Type or paste the earlier text into Original and the revised text into Changed.
- Select Compare. Editing an input does not start a comparison automatically.
- Review the Original and Changed results. If there are several changes, use Previous difference and Next difference to move between them.
- If you edit either input, select Compare again to update the result. Until then, the page tells you that the displayed result is out of date.
For example, if Original is "Delivery takes 5 days" and Changed is "Delivery takes 7 days", the result marks "5" as removed and "7" as added. DiffTool shows character-level changes; you should judge what those changes mean in the context of the original text.
Read the differences
Removed characters have a strikethrough and a red background. Added characters have a green background and border. You can select and copy the result text. Previous difference and Next difference move between changes without editing your text.
Changed spaces, tabs, and line breaks have markers so you can see them. Half-width and full-width spaces, and uppercase and lowercase letters, are treated as different characters. CRLF and LF line breaks are treated as the same line break during comparison; your original input is not changed.
When a result is unexpected
- No differences: the inputs match under this tool's comparison rules. Formatting and CRLF/LF differences are outside that conclusion.
- Many differences: check that you copied matching passages and that paragraph order or line breaks did not change. Moved paragraphs may appear as removals and additions rather than as moves.
- Editing does not update the result: select Compare again. The result represents the last comparison.
- An input exceeds the limit: compare matching sections with meaningful boundaries. Changes outside those sections will not be reviewed.
Before you start
Each input accepts up to 10,000 visible characters. Emoji and combined characters count as a single visible character. You can compare with one input empty. DiffTool does not support file uploads, saved comparison history, or shareable result URLs.
DiffTool helps you find changes. It cannot determine whether the content is correct or whether legal, translation, or other specialist decisions are appropriate. For important work, check the original text and the result yourself.
See Privacy for how inputs, results, and cookies are handled.
Use cases
Use DiffTool when you want to check text before and after an edit. The examples below explain what to enter and what to check after finding a difference. All sample texts are fictional.
Reviewing a contract revision
When you receive a revised contract, paste the same clause from both versions to check changes to amounts, deadlines, and conditions.
- Original: "Payment is due within 30 days of the invoice date."
- Changed: "Payment is due within 60 days of the invoice date."
The result shows "3" removed and "6" added. A single changed digit can alter a payment obligation. After finding a difference, read the whole sentence and any related clauses. DiffTool does not assess legal validity or decide whether a revision should be approved.
Copying from a PDF or word processor can also change spaces and line breaks. Compare the same passage from both versions and distinguish intended edits from copying artifacts. DiffTool does not compare files or document formatting.
Reviewing an edited translation
After a translation has been proofread, check which expressions were changed. Paste the earlier translation into Original and the revised translation into Changed.
- Original: "This feature is available."
- Changed: "This feature is not available."
Adding "not " reverses the meaning, even though only a few characters change. The number of differences does not measure their importance. Compare the earlier and revised translations, then check the source text for meaning and terminology.
To track translation edits, enter two versions in the same language. Comparing a source text with its translation does not align their meanings: DiffTool compares characters and does not translate.
Checking spaces and similar-looking characters
Use this when copied text does not match the original, or when checking inconsistent product codes or spelling conventions. Differences in spaces and character widths can be hard to spot by eye but appear in the comparison.
- "Item A" and "Item A" contain an ordinary space and a full-width space respectively. Changed ordinary spaces are marked with "·" and full-width spaces with "□".
- "Code A1" and "Code A1" use different character widths. DiffTool does not convert them to the same characters.
- Added or removed line breaks have a "↵" marker; changed tabs have a "→" marker. Unchanged spaces have no markers.
Hover over a marker or focus it with the keyboard to see the character name and code point. Markers are display annotations and are not included when you copy the text. A change from CRLF to LF alone does not produce a difference.
Characters can look identical while using different Unicode representations. For example, a single "é" and an "e" followed by a combining accent are not normalized to the same text. If a difference seems unexpected, check how the original application represents the characters.
Reviewing revisions to terms and specifications
When terms of use or a product specification change, compare the same clause or requirement in the old and new versions. Check the version identifiers and headings before selecting matching passages. The following examples are fictional.
Terms example: changing who a condition applies to
- Original: "This condition applies to paid-plan users."
- Changed: "This condition applies to all users."
Changing "paid-plan" to "all" broadens the group covered by the condition. After finding the edit, also check the definitions of those users, exceptions, and effective dates in both versions. DiffTool does not align clauses by meaning or assess whether a revision is legally valid.
Specification example: making an optional field mandatory
- Original: "The reference number is optional when submitting."
- Changed: "The reference number is required when submitting."
Changing "optional" to "required" affects a process that previously allowed submission without that field. Check whether the input screen, validation, connected systems, and instructions reflect the new requirement. Character differences cannot establish whether the implementation meets the specification.
If clauses are renumbered or requirements move, match passages by their headings and content rather than by numbers alone. Moved text may appear as removals and additions. Check cross-references and appendices in the original document too; reviewing a selected passage does not review the whole document.
Complete a revision review
After finding differences, work through them to decide whether they match the intended edit. Consider changing a notice from "Opening hours: 9 am to 5 pm." to "Opening hours: 10 am to 6 pm."
- Match the passages. Copy the same notice from both versions, including its heading and surrounding sentences. A heading present in only one input also appears as an addition or removal.
- Read each change. Use Next difference to check both the opening and closing times. Stopping after the first change can leave the other time unchecked.
- Read the unchanged context. Check nearby information about days or access arrangements. Character differences cannot establish whether the new hours agree with the rest of the notice.
- Apply corrections in the source document. Results cannot be edited. Correct the source, paste the latest version into Changed, and compare again. Do not finish a review using the result from before your correction.
- Check the version you will publish. In the original application, confirm that the publication matches the text you reviewed. Formatting, link destinations, and text within images are outside this comparison.
For a long document, use corresponding headings to split both versions into matching sections. Keep track of reviewed sections in the source document: DiffTool has no review history, and closing or reloading the page loses the inputs and results.