Open an .xmp file and see the edit

Drop a photo with its RAW and .xmp (and optionally the .cube) — the Deconstruction Engine takes the sidecar apart and replays the edit as a step-by-step timeline you can scrub, compare and learn from. Everything runs locally.

This view takes an edit apart. To build one instead — point tone curves, colour wheels, HSL mixer and brush masks — open the editor.

Drop photo, before image & .xmp

Drag a batch, or add each file below — any order.

Edited photo*

Before / RAW (optional)

Lightroom .xmp (optional)

No sidecar? No problem. Drop a single edited photo — RawCut estimates the recipe from the image and deconstructs it instantly. Add the .xmp for the exact edit.

Have the LUT too?

What a deconstruction actually shows you

A before-and-after tells you that an edit happened. It does not tell you which decision did the work, and that is the only part worth learning. Most looks turn out to rest on one or two moves and a dozen small ones that barely matter — but you cannot see that from the finished frame, because every change has already been summed into it.

The Deconstruction Engine takes the recipe apart and replays it in six cumulative stages, each independently rendered through the same colour pipeline that produced the original. Scrub between them and the contribution of each stage is visible on its own.

This is deliberately not a settings panel. Tools that read a sidecar will print you the numbers — Contrast +34, Shadows +18 — and leave you to imagine what they did. Reading a value tells you what was set; seeing the frame before and after that one step tells you what it was for. The Studio renders every stage rather than listing it, which is the entire difference.

  1. 1. RAW — the file as the sensor recorded it, before any interpretation
  2. 2. Light — exposure, contrast, highlights, shadows, whites and blacks
  3. 3. Curves — the master and per-channel tone curves, plotted rather than described
  4. 4. Colour — HSL per band, split toning and the three-way grade
  5. 5. Masks — local adjustments, with a red overlay showing exactly what each one covers
  6. 6. Finish — grain, vignette and the baked LUT if one is applied

What to drop on it

The edited photograph is the only required file. Everything else deepens what the engine can show:

  • The edited image — JPEG, PNG or WebP. Its EXIF is read for camera, lens and exposure.
  • The original — optional. Without it the engine estimates a starting point statistically and labels the result as approximated rather than passing it off as the real RAW.
  • The .xmp sidecar — this is what turns a comparison into a deconstruction. Without it there are no exact numbers, only an estimate.
  • A .cube LUT — optional, applied as the final stage.

Nothing is uploaded. Parsing, rendering and export all happen on your own machine — the page works with the network disconnected once it has loaded, which is also why there is no account and no file-size limit beyond your own memory.

How to open an .xmp file

Double-clicking one usually does nothing useful. An .xmp has no default application on Windows or macOS, and the programs that do claim it — Bridge, Lightroom — will apply it to a photo rather than show you what is in it. To read one:

  1. Find it next to the RAW. A sidecar lives in the same folder as the image it belongs to and shares its name — DSC_0148.NEF and DSC_0148.xmp. If there isn’t one, Lightroom hasn’t written it yet; select the photo and press Ctrl/Cmd-S.
  2. Drop it on this page, together with the edited photograph. The sidecar alone is a list of numbers; paired with the image it becomes a rendered, stage-by-stage account of the edit.
  3. Read the values, or take them with you. Every setting is listed as text, and the whole recipe exports as a fresh .xmp or as a .cube LUT for video software.

A text editor will also open one — it is plain XML, and what the tags mean is documented here. That tells you the file contains Exposure2012="+0.35". It does not tell you what +0.35 did to the photograph, which is the part this page exists to show.

Lightroom doesn’t save history to the sidecar. So what are the stages?

Correct, and worth being precise about. An .xmp holds the final state of every develop setting — the values as they stand when you saved. It does not record that you tried +40 contrast, went back to +18, and adjusted the curve twice. That history lives only in Lightroom’s catalogue.

The six stages here are not your undo history and are not presented as it. They are the pipeline — the fixed order in which any raw processor applies the settings it has been given. Exposure is applied before the tone curve; the curve before the HSL mixer; masks after the global work. That order is a property of the renderer, not of how you happened to work, which is why it can be reconstructed exactly from the final values.

What you get is therefore better than a replay of somebody’s fumbling: it is the edit decomposed into the parts that actually compose it. Turn off the colour stage and you see precisely what the colour work contributed — which is the question worth asking, and the one a list of slider values cannot answer.

What it cannot do

Adobe’s process versions and camera profiles are proprietary and are not part of a sidecar, so a rendering here is a faithful reading of the recipe rather than a pixel-identical reproduction of Lightroom. Healing, cloning and any pixel-level retouching leave no trace in the sidecar at all and therefore cannot appear. And without the original file, the RAW stage is a reconstruction — informative, but an estimate, and always labelled as one.

Building a look, not just reading one

The Studio above is read-only by design — it explains an edit that already exists. The editor is the other half: a point tone curve you drag, three-way colour grading wheels, an HSL mixer, the full slider stack and brush masks, all writing into the same recipe format. Whatever you build there exports as a real Lightroom .xmp or a 33³ .cube LUT.

Open the editor

Frequently asked questions

Can I see what settings were used on someone else's photo?

Only if you have the sidecar. A JPEG on its own carries EXIF — camera, lens, exposure — but nothing about the develop settings, because those live in the .xmp or in Lightroom's catalogue rather than in the image. With the .xmp, every value is readable exactly. Without it, the Studio estimates a starting point statistically and labels the result as approximated rather than presenting a guess as fact.

Why does my .xmp not contain any develop settings?

Lightroom only writes them when you ask it to. Either enable 'Automatically write changes into XMP' in Catalog Settings → Metadata, or select the photos and press Ctrl/Cmd-S to write them on demand. A sidecar written before you made the edits contains the state at that moment, which is a common reason one looks empty.

Does this work with JPEG, or only RAW?

Both. The edited image can be a JPEG, PNG or WebP — the sidecar is what carries the recipe, and Lightroom will write one for a JPEG as readily as for a RAW. Supplying the original as well is optional and only affects whether the RAW stage is exact or reconstructed.

Is this the same as opening the preset in Lightroom?

No, and the difference is the point. Loading a preset shows you sixty slider positions at once, which tells you what the values are and not which of them mattered. The Studio applies them in pipeline order and renders each stage separately, so you can see the contribution of the tone curve on its own, then the colour work on its own.

Will it match Lightroom exactly?

Close, not identical. Adobe's process versions and camera profiles are proprietary and are not part of a sidecar, so any renderer outside Lightroom is working from the instructions without the whole of Adobe's interpretation of them. For creative looks the difference is usually invisible; for a preset leaning hard on a specific camera profile it can show.

Are my files uploaded?

No. The image, the sidecar and any LUT are read with the browser's File API and rendered on your own GPU. You can disconnect from the network after the page loads and everything still works. Publishing to the community is the only thing that transmits anything, and only when you press publish.

Related