AxB Compare
A/B your generations right in the canvas, not in a folder
- image_a
- image_b
The standard way to compare two ComfyUI generations is terrible: save both, open them side by side in an image viewer, and squint. AxB Compare removes the squinting. It's an output node that takes two images and drops a draggable split-view comparison straight into the ComfyUI canvas, so you can slide a divider back and forth between image A and image B and see exactly where they differ - the same trick photo editors have used for before/after comparisons for decades, now inside the graph.
It's from MKRShift Nodes, the production-focused pack by Cris K B, and it ships one of the pack's custom frontend extensions to make the interactive UI possible.
How it works
Feed it image_a and image_b and choose orientation (horizontal or vertical) - horizontal puts the divider as a vertical line, vertical puts it as a horizontal line. The node is marked is_output_node, meaning it terminates the branch: it produces no image outputs, because its whole purpose is to render an interactive comparison in the UI. Under the hood it writes small temporary previews of both inputs and hands the frontend a compare_state payload describing orientation, split position, and the canvas size.
The frontend does the rest. You get a slider you can drag to scrub the boundary between the two images, which is dramatically better than eyeballing two tabs for spotting subtle differences - a seed change that altered the lighting in the corner, a sampler that shifted the whole color balance, a LoRA that changed texture on one side of the face. The compare_state in the source also exposes swap_inputs and fit_mode knobs internally, so the extension can flip the images or change how they're fit to the canvas.
Inputs
Only three, and you'll set them all:
image_a- first image (the "before" / baseline)image_b- second image (the "after" / variant)orientation- horizontal or vertical divider
Installation
cd ComfyUI/custom_nodes
git clone https://github.com/criskb/MKRShift_Nodes
Restart ComfyUI - the custom frontend extension for the interactive slider loads via the pack's WEB_DIRECTORY, so a plain restart is all it takes. ComfyUI Manager works too: search "MKRShift Nodes." No extra pip dependencies.
Common issues
The first thing people hit: because it's an output node with no image outputs, you can't chain it into a save node. If you want to keep the comparison as a file, branch a save node off the images before they reach AxB Compare. Second, if the divider doesn't appear and you just see a static preview, the frontend extension isn't loading - check the browser console for WEB_DIRECTORY errors, which usually means you restarted ComfyUI's backend but the browser page is stale; a hard refresh fixes it. And a genuinely useful habit: this is the fastest way to check "did this prompt change actually matter" without reading the workflow JSON like a detective. Run A through one branch, B through another, and slide - if you can't find the difference with a slider, the difference doesn't matter.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image_a | IMAGE | — | |
| image_b | IMAGE | — | |
| orientation | COMBO | horizontal | 2 options: horizontal, vertical |
Outputs (0)
No outputs