Home › Developer Tools › Folder Compare Tool

Folder Compare Tool

Pick two folders on your computer to see which files were added, removed or changed. Files are matched by path and checked by SHA-256 hash, and any changed text file opens in a line-by-line diff. Nothing is uploaded.

Last updated:

A
Folder A original / left
Sample folder loaded
or drop a folder here
B
Folder B changed / right
Sample folder loaded
or drop a folder here
StatusPathSize ASize BModified A / BSHA-256
Advertisement
Advertisement

How to use the Folder Compare Tool

  1. Choose folder A (the original) and folder B (the changed copy), or drag each folder onto its box.
  2. Pick how files are compared: SHA-256 content hash for certainty, or size and date for a quick check of large folders.
  3. Adjust the ignore list to skip folders such as .git/ or node_modules/.
  4. Review the results with the Differences, Changed, Only in A and Only in B filters.
  5. Click Show diff on a changed text file to see the exact lines, or download the CSV report.

Comparison methods

MethodReads file contentsSpeedCatchesCan miss
Content (SHA-256)Yes, every byteSlowestAny change to any byteNothing (a SHA-256 collision has never been found)
Size and modified dateNoInstantMost edits and re-savesSame-size edits with preserved dates; flags copies whose date changed
Size onlyNoInstantFiles that grew or shrankAny edit that keeps the size the same

Reading the diff

When you open a changed text file, the two versions are compared line by line with the Myers diff algorithm, the same approach used by git diff and GNU diff. Removed lines are shown in red with a minus sign and their line number in A; added lines are green with a plus sign and their line number in B. Each block starts with a hunk header such as @@ -12,7 +12,9 @@, meaning 7 lines starting at line 12 in A became 9 lines starting at line 12 in B. The downloaded .patch file uses the standard unified format, so it can be applied with git apply or patch -p1.

Common uses

  • Checking a backup: compare the original folder with the backup copy to confirm every file arrived intact.
  • Before and after an upgrade: see exactly which files a plugin, theme or installer update changed.
  • Website deployments: compare a local build folder with a downloaded copy of the live site.
  • Finding duplicates after a reorganisation: moved and renamed files are recognised by identical hashes.

Ignore patterns are comma-separated. A pattern ending in / skips a folder anywhere in the tree (node_modules/), a pattern without a slash matches file names (*.log, .DS_Store), and a pattern with a slash matches the full relative path (build/*.map).

Frequently asked questions

How does the folder comparison work?

Every file in both folders is matched by its path relative to the folder, for example css/style.css. A file that exists on one side only is listed as Only in A or Only in B. When a file exists on both sides, its content is checked: with the default setting both copies are hashed with SHA-256 and the file is Identical only if the hashes match.

Are my files uploaded anywhere?

No. The browser gives the page read access to the folders you pick, and all reading, hashing and diffing happens on your device with the Web Crypto API. Nothing is sent over the network, so it is safe for private or confidential folders.

Why use SHA-256 instead of size and date?

Two files can have the same size and even the same modified date and still differ, while copying a file can change its date without changing its content. A SHA-256 hash reflects every byte, so equal hashes mean identical content. Size-only and size-and-date checks are much faster for very large folders but can miss changes.

What does "line endings differ" mean?

Windows text files usually end lines with CRLF and macOS and Linux files with LF. Git or editors can silently convert between them, which changes the bytes and the hash but not the text. With the option on, text files whose only difference is the line ending style are counted as identical and labelled.

Can it compare very large folders?

Yes, but hashing reads every byte of every file, so the time depends on the folder size, your disk and your browser. Files over 512 MB are compared byte by byte in chunks instead of hashed. Use Size and modified date for a quick first pass over folders with many gigabytes, and the Stop button to cancel a long run.

Which browsers support choosing a folder?

Choosing or dropping a folder works in current desktop versions of Chrome, Edge, Firefox, Safari and Opera. On phones and tablets folder selection is often unavailable, so use a desktop browser for folder comparisons.

How are renamed or moved files shown?

A file that is only in A and a file that is only in B with exactly the same SHA-256 hash are linked with a note such as "same content as B: docs/guide/watering.txt", so you can tell a move or rename apart from a deletion.

Are all the tools on FreeToolCabin tested for quality and accuracy?

Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.

Related tools

Text CompareFind the differences between two texts.File Hash CheckerGet MD5, SHA-1, SHA-256 and SHA-512 checksums of files and verify them against a hash.SHA-256 Hash GeneratorSHA-256 and HMAC-SHA256 hashes of text, lines or files, in hex or Base64.JSON CompareCompare two JSON documents and see every added, removed and changed path.Online Python CompilerRun Python 3 in your browser with input(), numpy, pandas, charts and share links.JSON EditorEdit JSON in a tree and as code side by side: add, rename, drag, change types, undo and download.Unzip FilesOpen and extract ZIP files online.RAR & 7z ExtractorOpen RAR, 7z and other archives online and extract files.Regex TesterTest and debug regular expressions live.File Info ViewerCheck file size, type, date and MD5/SHA hashes.SQLite ViewerOpen .db and .sqlite files in your browser, browse tables and run SQL queries.DOCX ViewerOpen and read Word .docx files in your browser, then print or save them as HTML.EPUB ReaderOpen and read EPUB e-books in your browser with pages, a table of contents and font controls.What Is My BrowserSee your browser, version, OS, engine, screen and which web features it supports.Font ViewerPreview TTF, OTF, WOFF and WOFF2 fonts with sample text, waterfall, glyphs and metadata.Markdown EditorWrite Markdown with a toolbar, live split preview, autosave and .md or HTML export.Regex Cheat Sheet75+ ready-to-use regex patterns for emails, URLs, IPs and dates, each with a live test box.JavaScript Keycode FinderPress any key to see its JavaScript key, code, keyCode, which, location and modifiers.QR Code ScannerScan QR codes with your camera or from an image and safely read the link or text.RAID CalculatorUsable capacity, efficiency and fault tolerance for RAID 0, 1, 5, 6, 10, 50 and 60 arrays.JSONPath TesterTest JSONPath expressions live: filters, slices, wildcards and recursive search, with matches highlighted.Mermaid Diagram EditorWrite Mermaid code and see flowcharts, sequence, Gantt and ER diagrams live. Export SVG or PNG.Country Codes ListSearch ISO 3166 alpha-2, alpha-3 and numeric country codes with calling codes and TLDs.CSS Selector TesterTest CSS selectors on your HTML: highlighted matches, match count and specificity.Git Cheat SheetSearchable Git command reference by task, with copy buttons and an undo/rename/fix wizard.HAR File ViewerOpen a .har file to see a waterfall timeline, headers, bodies, timings and size totals.jq PlaygroundRun jq filters on JSON in your browser with live output, flags and an example library.Markdown Cheat SheetInteractive Markdown syntax reference: edit every example and see the live rendered preview.Regex ExplainerPaste a regular expression and get a plain-English breakdown, railroad diagram and flag notes.XPath TesterTest XPath expressions on XML or HTML: highlighted matches, node paths, values and examples.EML File ViewerOpen .eml email files to read the message, headers and raw source and save attachments.Graphviz Online ViewerWrite Graphviz DOT code and render graphs live; switch layout engines, export SVG or PNG.JavaScript Online CompilerWrite and run JavaScript in your browser with a console, timing, error lines and share links.Jupyter Notebook ViewerOpen .ipynb files and read code, Markdown, math, tables, plots and errors without Python.LaTeX Table GeneratorEdit a table like a spreadsheet or paste from Excel and get LaTeX tabular or booktabs code.Log File ViewerOpen huge log files with level colors, regex and time filters, JSON pretty-print and tail -f.Logic Gate SimulatorBuild logic circuits with AND, OR, NOT, XOR gates and flip-flops; see live outputs and truth tables.MSG File ViewerOpen Outlook .msg emails in your browser: sender, recipients, body, headers and attachments.Semantic Version CalculatorBump, compare, sort and test SemVer versions against npm ^, ~ and x ranges.XSLT TesterRun an XSLT 1.0 stylesheet on XML in your browser and see the output as HTML, XML or text.ASCII Diagram EditorDraw boxes, arrows and text on a character grid and copy plain-text diagrams for code and READMEs.DBF File ViewerOpen dBase .dbf files and shapefile tables, search and sort records, export CSV or XLSX.MBOX File ViewerOpen .mbox mail archives: list and search messages, read them, save attachments, export EML.MDB File ViewerOpen Access .mdb and .accdb databases in your browser: list tables, view rows, export CSV.Shapefile ViewerView zipped shapefiles on a map with the attribute table, then export to GeoJSON or CSV.Online Code EditorVS Code-style editor in your browser: tabs, 50+ languages, find/replace, autosave.Online Hex EditorOpen any file as hex and ASCII, edit bytes, search, inspect values and save the result.PHP Online CompilerRun PHP 8 code in your browser with output, HTML preview, error lines and share links.PlantUML EditorWrite PlantUML and see sequence, class, activity and more diagrams live. Export SVG or PNG.Sorting Algorithm VisualizerWatch bubble, insertion, merge, quick, heap and radix sort step by step with live counters.Lottie ViewerOpen Lottie JSON or .lottie files to play, pause, scrub frames, change speed and see details.Diff ViewerPaste a git diff or .patch file and view it side by side or inline, with file navigation.EditorConfig GeneratorBuild an .editorconfig with indent, charset, line endings and trim rules per file pattern.Glob Pattern TesterTest glob patterns like **/*.js, {a,b} and !exclusions against a list of file paths.JMESPath TesterEvaluate JMESPath expressions against JSON live, the query language used by the AWS CLI.MongoDB Query TesterTest MongoDB find filters, projections and aggregation pipelines on sample JSON documents.
See all 53 Code Playgrounds & Testers →