Image Compare (Advanced)
An A/B slider for pitting two images against each other
- image_a
- image_b
- image_a
- image_b
- pairs
Every serious workflow reaches the "is this actually better than before?" question, and eyeballing two images side by side in separate preview nodes is a lousy way to answer it. Image Compare is the version where you drag a divider straight across one image to reveal what's underneath - the classic A/B wipe - and it's marked "(Advanced)" mostly because it handles whole batches and sits inline in your graph rather than being a throwaway preview.
It comes from WAS Node Suite, WASasquatch's sprawling MIT pack (457 nodes in v3). This node lives under WAS Suite/Image/Analyze and is a "compare on the node" utility: the imagery renders right there in the graph, no separate preview window to juggle.
How it works
Two image inputs, image_a and image_b. On the node you get a panel with a divider you drag left and right - one side shows A, the other shows B, and the reveal happens live. When the input is a batch, frames are paired frame-by-frame (A's frame 0 against B's frame 0, and so on) and each pair gets its own tab, so a 10-frame clip becomes 10 swipeable comparisons. Where the batches differ in length, the shorter one holds its last frame so every pair has a partner. The pairs output tells you how many comparisons you're looking at - that's the length of the longer batch.
The subtle part is what it passes through: image_a and image_b come back out unchanged. That means the node can sit in the middle of a chain - you branch your graph, run two competing paths, and let this node tee them up for inspection while the data keeps flowing downstream. It's also flagged as an output/display node, so ComfyUI treats it as a place to look, not just compute.
When you'll actually use it
The cases that make it indispensable:
- Two seeds of the same prompt - which composition actually worked?
- A filter or upscaler before/after, especially when the change is subtle and only visible with the divider right on the detail.
- A checkpoint or LoRA swap where you want to A/B the same latent.
- Two video passes, compared frame by frame to check a temporal fix didn't break something elsewhere.
The divider matters more than it sounds like. Side-by-side images hide differences because your eyes dart between two screens; a wipe puts both versions at the same spot on the retina, and changes in texture or brightness announce themselves. It's the same reason image-comparison tools everywhere default to this interaction.
Practical notes
Install is standard WAS Node Suite: ComfyUI Manager, search "WAS Node Suite v3", or git clone https://github.com/WASasquatch/was-node-suite-comfyui into ComfyUI/custom_nodes and restart. Needs ComfyUI 0.14.0+ and Python 3.10+. v3 installs no Python packages and downloads nothing - a genuinely different situation from v2, whose bundled dependencies were a known source of import failures when ComfyUI updated.
Worth knowing before wiring it in: the comparison renders at the images' native size, so pairing a 2048×2048 image with a 512 one makes for an awkward panel - resize them to a common size upstream if the wipe feels lopsided. And because it's a compare-on-the-node tool, it's for you, the operator, mid-workflow - if you're archiving proof that two renders differ, you'd still export them separately. But for the everyday "did the change help?" question, it's the fastest honest answer in the graph.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image_a | IMAGE | The image the divider reveals on the left; IMAGE. A batch is paired with image_b frame by frame. | |
| image_b | IMAGE | The image the divider reveals on the right; IMAGE. Where the batches are different lengths, the shorter one holds its last frame. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image_a | IMAGE | image_a unchanged, so the node can sit in the middle of a chain. |
| image_b | IMAGE | image_b unchanged. |
| pairs | INT | How many pairs the comparison holds; INT, the longer of the two batches. |