Batch 12 Images
Batch 12 Images – ComfyUI Node Guide
- image_1
- image_2
- image_3
- image_4
- image_5
- image_6
- image_7
- image_8
- image_9
- image_10
- image_11
- image_12
- IMAGE
What it is
ComfyUI's built-in batching node - Batch Images - only takes two images at a time. Want to stack twelve into a single batch tensor? You're daisy-chaining eleven of them, one feeding the next, which is exactly the kind of tedious graph-plumbing that makes people write a custom node instead. Batch 12 Images is that custom node: twelve image inputs in, one batch tensor out, no chain required.
Use it whenever you've generated or loaded a fixed set of individual images and need them as one batch for a downstream step that expects batched input - a single upscale pass, a single save call, feeding a batch-aware sampler, or just tidying up a graph that would otherwise be a wall of stacked Batch Images nodes.
How it works
It takes twelve separate IMAGE tensors and stacks them along the batch dimension into one combined tensor. Conceptually it's just doing, in one node, what eleven chained core Batch Images nodes would do - no resizing logic, no reordering, just a stack.
Inputs and outputs
Twelve required inputs, all IMAGE type: image_1 through image_12. Every slot is required - there's no optional/skip mechanism described in the node's spec, so if you only have, say, eight images to batch, you'll need to fill the remaining four slots with something (a duplicate, a blank frame, whatever your workflow can tolerate) rather than leaving them empty.
One output: a single IMAGE, the twelve stacked into a batch.
Installing it
Same pack, same install as everything else here:
cd ComfyUI/custom_nodes
git clone https://github.com/Shadetail/ComfyUI_Eagleshadow
Or search "Eagleshadow Custom Nodes" in ComfyUI Manager. No models, no extra dependencies.
Common issues
Mismatched resolutions. Nothing in the node's spec suggests it resizes images to match before stacking, so if your twelve inputs aren't all the same width and height, expect a shape-mismatch error rather than a silent auto-resize. Standardize your resolutions upstream (a resize node on each source, or make sure whatever generated them used the same dimensions) before they hit this node.
All twelve slots are mandatory. If your use case sometimes has fewer than twelve images, this node won't gracefully handle a partial batch - you'll need a different approach (core Batch Images chained only as many times as you actually need) for variable counts, and save this node for the case where you genuinely, always have exactly twelve.
It's rigid by design, and that's the trade. A node called "Batch 12 Images" is never going to be flexible - it exists purely to save you eleven node placements in one very specific, very common case (the author was clearly working with fixed-size frame groups). If your batch size changes run to run, this isn't the tool; if it's always twelve, it's exactly the tool.
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| image_1 | IMAGE | — | |
| image_2 | IMAGE | — | |
| image_3 | IMAGE | — | |
| image_4 | IMAGE | — | |
| image_5 | IMAGE | — | |
| image_6 | IMAGE | — | |
| image_7 | IMAGE | — | |
| image_8 | IMAGE | — | |
| image_9 | IMAGE | — | |
| image_10 | IMAGE | — | |
| image_11 | IMAGE | — | |
| image_12 | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |