Append Image Batch
Stitch image batches together, no resize magic
- base
- append
- image
- batch_count
Append Image Batch is the "just glue them together" node of Vantage Nodes' image utilities. You give it two IMAGE batches and it returns one bigger batch - base first, then append. That's the whole job, and it's refreshingly honest about it.
The reason this node exists is that ComfyUI's built-in batch handling gets awkward the moment you have results arriving from two different places: two VAE Decodes, two loader passes, an upscale that produced its own batch. You want one tensor to feed the next stage, not a pile of separate images you have to babysit.
How it works
Under the hood it's one call:
out = torch.cat([base, append], dim=0)
It joins along dimension 0 - the batch dimension - so a 4-frame batch plus a 3-frame batch becomes a 7-frame batch. Both inputs are optional: if either is unconnected it returns the other one as-is (both unconnected returns None with batch_count 0). That means you can build a workflow where the append branch simply doesn't exist yet and nothing explodes.
Inputs (both optional, per the author's tooltips: "Can be left unconnected."):
base(IMAGE) - the existing batch.append(IMAGE) - what goes on the end.
Outputs:
image(IMAGE) - the merged batch.batch_count(INT) - the resulting number of images, handy for loop control or wiring into a frame-count node.
The important caveat: it does not resize
Unlike the pack's Join Image Batch - which handles mixed resolutions with resize / pad / crop modes - this node is strict. If the two batches differ in height, width, or channel count, torch.cat raises a shape mismatch error and the graph stops. The author ships two siblings on purpose: Append when everything already matches, Join when you need resolution handling.
Where people get burned: VAE Decode can hand back batches that look the same but aren't - a latents tensor that got resized or upscaled between encoding and decoding will produce different pixel dimensions, and Append will tell you about it with a stack trace. If your pipeline mixes resolutions, either resize both sides to a common size first, or reach for Join Image Batch.
Where you'd reach for it
- Merge the output of two samplers before a single save/preview node.
- Accumulate frames across an iterative workflow - generate chunk by chunk, append as you go.
- Combine a base batch with a separately-processed pass (e.g., one denoised, one not) before feeding an unbatch or per-frame node.
Installation
Part of Vantage Nodes. Search "Vantage Nodes" in ComfyUI Manager, or:
cd ComfyUI/custom_nodes
git clone https://github.com/vantagewithai/Vantage-Nodes.git
pip install -r requirements.txt
Restart ComfyUI. No model downloads; the pack's heavy requirements.txt is for its GGUF and Qwen TTS nodes, not for this.
Troubleshooting
- "Sizes of tensors must match" error: the two batches have different dimensions. Check whether one side got resized. Fix by resizing to a common resolution, or use Join Image Batch with a resize/pad/crop mode.
- Append appears to do nothing: both inputs may be unconnected - double-check the wires actually landed on
baseandappend.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| baseopt | IMAGE | Existing base image batch. Can be left unconnected. | |
| appendopt | IMAGE | Image batch to append after the base batch. Can be left unconnected. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| batch_count | INT | — |