Online Text Tools for Developers
Compare, transform, preview, and analyze text with fast browser-based developer utilities.
Choose a tool
Most text bugs are invisible characters, so pick the tool that shows you the difference.
Six tools here split cleanly into three jobs: comparing two bodies of text, previewing markup as it will render, and transforming text under an explicit rule. The rule is the part people skip. Whether case matters, whether surrounding whitespace counts, whether duplicates collapse, and what a line ending is all change the answer, and none of them are visible in the input.
Comparing: Text Compare against List Compare
Text Compare & Diff Checker is ordered. It answers what changed between two versions of the same thing, at character, word, or line granularity, and position is part of the answer. That is the tool for a configuration file before and after a deploy, two API responses, or a paragraph someone edited without telling you which sentence.
List Compare is set-based. Order and position are irrelevant; it answers which entries appear on both sides and which are unique to one. That is the tool for two exports of user identifiers, a list of proxies against a list of known-good ones, or feature flags in staging against production. Asking a diff tool that question produces noise.
Previewing: Markdown Previewer against HTML Previewer
Markdown Previewer renders Markdown so you can see structure while you write. HTML Previewer runs actual HTML inside a restricted browser sandbox so you can see a fragment without deploying it. The first is for authoring, the second is for inspecting markup you were handed.
Neither preview is a promise. Markdown is a family of dialects, so tables, footnotes, and raw HTML support differ between this renderer and your CMS or your static site generator. The HTML sandbox deliberately blocks capabilities a real page would have, which makes it safe and also makes it an incomplete rendering. Treat both as reading aids, never as a security scan or a browser-compatibility check.
Transforming: String Escape and Text Workbench
String Escape & Unescape applies one specific rule set at a time, for JSON, JavaScript, HTML, or URL. Pick the one matching the parser at the destination, and watch for double escaping: a value that is already JSON-escaped and then escaped again arrives with literal backslashes in it, which is the single most common way this tool gets misused.
Text Workbench is the general workspace for case conversion, sorting, deduplication, and counting. Make the rules explicit before you trust the numbers. CRLF against LF is the classic silent failure: two files that look identical will differ on every line, and a sort that ignores trailing whitespace is a different sort from one that does not.
Before you rely on a result
- Choose the diff granularity that matches the question: line for configuration, word for prose, character for a single mangled token.
- Normalize line endings before comparing anything, or a CRLF file against an LF file will differ on every line.
- Decide explicitly whether case, surrounding whitespace, and duplicates count before running a list comparison.
- Escape once per destination, and check the result for literal backslashes that indicate a value was already escaped.
- Treat a Markdown or HTML preview as a rendering aid, never as proof that the target renderer or browser will agree.
Frequently asked questions
Text Compare or List Compare?
Ask whether order matters. If you want to know what changed between two versions of the same document, that is Text Compare. If you want to know which entries the two sides share and which are unique, that is List Compare, and the positions of those entries are irrelevant.
Why do two identical-looking files show every line as changed?
Almost always line endings. A file saved on Windows ends lines with CRLF and one saved elsewhere with LF, so every line differs by an invisible character. A trailing newline at the end of one file and not the other produces a similar surprise. Normalize first, then compare.
Does the HTML Previewer run my JavaScript?
It renders inside a restricted sandbox, so the fragment is isolated from the rest of the page and from your session. That isolation is the point, and it also means the preview is not a faithful reproduction of how the same markup behaves on a real origin with real network access.
Is my text uploaded anywhere?
No. Comparison, escaping, transformation, and rendering all happen in this browser tab, and nothing is stored between visits. Documents pasted for comparison often contain customer data or credentials, so redact them rather than relying on local processing as permission to paste.
Browse all developer tools or read the developer tool guides for worked examples.