Text & code comparison

Compare two texts, side by side.

Paste two versions of a document, a config file or a block of code. Every added, removed and rewritten word is marked in place — inside your browser, with nothing uploaded and no account.

Original
0 lines · 0 characters Drop a file here, or two at once
Changed
0 lines · 0 characters Drop a file here, or two at once

Nothing you paste is uploaded — the comparison never leaves this browser.

Method

Line up two versions and read only the difference

No setup, no accounts, no “upload your file to our server”. The comparison is a few milliseconds of arithmetic in the tab you already have open.

01

Paste or drop both versions

Two panes, always in the same order: the original on the left, the changed version on the right. Drop a file on either side, or drop two files at once and they land in the right panes.

02

Read the marks, not the whole file

Removed lines are marked red, added lines green, and inside a rewritten line only the words that actually changed are highlighted. Long stretches of identical lines fold away.

03

Take the result with you

Copy the comparison as a unified patch, download it as a .diff file, or copy a link that reopens the same two versions for someone else.

Why a browser-side diff is the honest one

Most diff tools upload both files to a server, compare them there, and hand the result back. That is fine for a shopping list and a problem for a client contract, an .env file or source code under NDA. Pikkola Diff has no server side: the comparison runs on your device, and the page makes no network requests after it loads. The only way text leaves the tab is the link you choose to copy — and even then the text lives after the # in the address, which browsers never send to a server.

What it handles

Built for the way files actually change

The same engine reads configuration, code and prose. Pick the options that match the kind of difference you care about.

Code and config

Indentation matters only when you say so. Ignore whitespace to see the real edits in YAML, JSON, Python or a Dockerfile.

Word-level marks

A rewritten paragraph is shown as a rewritten paragraph: the sentence stays, the changed words are highlighted.

Two layouts

Side by side on a wide screen, unified on a narrow one or when pasting into a ticket.

JSON in one click

Format both sides before comparing, so a minified payload and a pretty-printed one are compared by content, not spacing.

Files from your desktop

Drop .txt, .csv, .json, .md, .html, .xml, .yaml, .sql or any UTF-8 source file. Nothing is uploaded.

Shareable comparisons

A copied link carries both versions in its fragment, so a colleague sees exactly what you saw.

Privacy

The text never leaves your browser

No upload

There is no endpoint to receive a file. The page is static files; the comparison is JavaScript running on your device.

No account, no cookies

No sign-up, no tracking script, no advertising pixel. Preferences such as theme, language and options sit in this browser’s local storage.

You choose what is shared

A comparison is shared only when you copy a link or a patch yourself. Closing the tab clears the text.

Questions

The details people ask about

How do I compare two texts online?

Paste the original into the left pane and the new version into the right, then press Compare (or ⌘/Ctrl + Enter). Removed lines are marked red on the left, added lines green on the right, and rewritten lines are paired with the changed words highlighted.

Is my text uploaded to a server?

No. The page contains the whole diff engine and makes no requests after loading. Nothing you paste is stored, logged or sent anywhere; closing the tab ends it. The one exception is a link you deliberately copy, which carries the text in its fragment.

Which files can I compare?

Any file that is text: .txt, .md, .csv, .json, .xml, .html, .css, .js, .ts, .py, .yaml, .sql, .env and most source files. Binary files such as images, PDFs and archives are not text and cannot be compared.

Can I ignore whitespace or letter case?

Yes. Options lets you ignore all whitespace differences, ignore letter case, and switch word-level highlighting on or off. With whitespace ignored, an indent-only change disappears from the result and the page tells you how many lines were affected that way.

How large can a comparison be?

A few thousand lines per side is comfortable, and files up to 5 MB open in the panes. Very large comparisons still work but take a moment to render, and a link cannot carry megabytes.

Does it work on a phone or offline?

The layout switches to a single unified view on a narrow screen, and the whole tool is static files, so it keeps working offline once loaded. No app is needed.

What is a unified patch?

A plain-text description of the two versions that tools such as git understand: each changed region with a few lines of context, marked with -, + and a space. Copy patch or Download .diff gives you exactly that, ready for a ticket or a code review.