Neatbo.

Compare typed registry exports

Compare two local .reg exports by ASCII key and typed value, preserving both complete snapshots, original SHA256 and every change in JSON/CSV.

Browser-local processingInputTwo V5.00 UTF-16LE BOM registry exportsOutputComplete typed snapshots and changes JSON/CSVUp to 10 MiB per file · File limit: 2
  1. 1Add input
  2. 2Review and run
  3. 3Get your result

Tool input and files are processed in this browser without being uploaded.

Your input

Inputs are kept temporarily in this tab when switching tools. Refreshing or closing clears them; large results may need to be regenerated.

⌘ / Ctrl + Enter to run

or drag and drop them here

Files stay on this device. Your originals stay unchanged.

Up to 10 MiB per file · File limit: 2

    Preparing the tool…

    Before you start

    Select exactly two complete Registry Editor V5.00 UTF-16LE BOM exports. Put the before export first and after export second with the queue arrows. Compare key and value identities while ignoring source ordering and ASCII letter case; review complete typed changes without accessing the live registry.

    How to use this tool

    1. Select the before and after exports, then use queue arrows to verify first = before and second = after.
    2. Compare the supported exports and check source names, SHA256, key/value totals and change kinds.
    3. Download registry-diff.json and registry-changes.csv for both complete typed snapshots and every change.
    4. Review values in JSON; keep the original exports for context. No importable .reg patch is generated.

    Supported inputs and limits

    Exactly two original files, each ≤ 10 MiB and combined ≤ 20 MiB. Source names ≤ 512 UTF-16 units. Both size limits apply before decoding. The combined ceiling is implied by two files at the individual ceiling; it is a protective guard, not another independent capacity. Filename suffix does not establish content; the original BOM, header and typed syntax are checked.

    At most 100,000 original key sections and 200,000 original typed values across both exports, counted before comparison. ASCII key/value names only; Unicode scalar string values are supported. Names use ASCII case folding, not Windows Unicode ordinal equivalence, hive-alias resolution or environment expansion.

    Supported strict types: quoted REG_SZ, eight-hex-digit DWORD, eight-byte little-endian hex(b) QWORD, hex: BINARY, terminated UTF-16LE hex(2) EXPAND_SZ and hex(7) MULTI_SZ. Standard supported HKEY roots, semicolon comments, source ordering and hex continuation are accepted. Duplicate identities, non-ASCII names, deletion/import commands, unknown types, malformed UTF-16 and unsupported export profiles refuse the complete comparison.

    Complete JSON and formula-protected CSV together ≤ 32 MiB, with no partial success. JSON includes every typed key/value in both snapshots, raw hex for hex types, original spelling/order, file SHA256 and all key/value additions, removals and changes. QWORD values are exact decimal strings. CSV includes every complete change; formula-leading literal cells gain an apostrophe, and exact literals remain in JSON.

    Preview: at most 200 change rows and 2,000 UTF-16 units per cell. The copied text is a labelled summary; complete snapshots and changes are in the downloads. This tool never reads a live hive, executes source, imports, applies a patch, or modifies originals. Full-machine dumps of 25 or 850 MB are outside this bounded task.

    Worked example

    Example input

    before.reg and after.reg: six supported types, reordered declarations, two whole-key changes and three value changes.
    Example options
    {}

    Example output

    5 changes; 4 original key sections and 20 original typed values across both. QWORD 18446744073709551615 stays exact; binary 00010203ff and multi-string [a,b] are preserved.

    When something does not work

    Correct the named profile, duplicate identity, encoding or budget issue, then rerun both original exports. Cancellation discards results; the same queue and file bytes can be used again.

    Frequently asked questions

    Does a reordered export create changes?

    Comparison uses ASCII key/value identities and exact typed normalized values. Original order and spelling remain visible in both snapshots, but those presentation changes alone do not create a value change.

    Why reject non-ASCII names when string values can contain Chinese?

    Value text is preserved as Unicode scalars. Name matching follows a smaller explicit ASCII rule. It cannot reproduce Windows Unicode ordinal behavior, so other name profiles are refused rather than silently matched.

    Can the result be imported to change Windows?

    Downloads are audit JSON/CSV only. The tool compares supplied exports and never reads the live registry, creates an import patch, runs PowerShell or applies changes.

    Documentation & further reading

    Related tools