Empty Latent Image
Welcome to the mysterious void—the Empty Latent Image node. This deceptively simple, no-frills node is the unsung hero of countless ComfyUI workflows. It doesn't load an image, it doesn't encode a prompt, and it doesn't play with your samplers. Instead, it spawns a blank canvas directly in latent space, ready for generation to sculpt it into anything your prompt (and sampler) desires.
Whether you're initializing from scratch or want to detach completely from any prior visual influence (bye bye, conditioning!), this node is your clean slate.
🧠 What Does It Do?
The Empty Latent Image
node generates a blank latent tensor—think of it like an invisible image placeholder—of a specified size, batch count, and shape. It does not represent visible pixel data but instead prepares a tensor that will serve as the initial input to the KSampler node or other latent-aware modules.
This is useful in workflows where you're not starting from a real image or encoded input (like VAE Encode
) but instead want to generate something from noise based purely on a text prompt or conditioning.
⚙️ Node Type
- Node Name:
EmptyLatentImage
- Outputs:
LATENT
: Latent image tensor that can be passed to a KSampler or decoded via a VAE.
🧩 Node Parameters and Their Purpose
Let's get into the knobs and sliders. This node may look basic, but these settings shape your generated outputs from the ground up.
🔹 width
(integer)
- Definition: The width (in pixels) of the image you want to end up with, but in latent space.
- Default: Usually 512.
- Required: Yes.
- Effects: Affects the horizontal size of the latent tensor.
- Importance: Your model's resolution matters. Mismatched width can cause warping, cropping, or wasted GPU memory.
- Changing it means: Higher widths = higher GPU use, more detail; lower widths = faster generation, less spatial resolution.
- Tip: Stick to multiples of 8 or 64 depending on your VAE/model combo. 512, 768, 1024—these are your friends.
🔹 height
(integer)
- Definition: The height (in pixels) of your intended image output in latent space.
- Default: Usually 512.
- Required: Yes.
- Effects: Controls the vertical resolution.
- Changing it means: Tall images? Big
height
. Square images? Match width/height. But again—stay divisible by 8 at minimum, ideally 64. - Tip: If using ControlNet (e.g., depth or canny), make sure your width/height match the conditioning image dimensions.
🔹 batch_size
(integer)
- Definition: Number of blank latent images to generate in one go.
- Default: 1
- Required: No (but 1 is safest if you don’t know what you’re doing).
- Effects: Produces multiple latent tensors simultaneously.
- Changing it means:
1
: Classic. Single image per run.>1
: Great for variations, automation, or batch generation.
- Warning: Crank this up and you’re begging for a CUDA out-of-memory error. Know your GPU limits.
🧪 Workflow Setup & Integration
Typical usage involves this node when:
- You're building prompt-to-image workflows from scratch.
- You don’t want to use an actual image as input, nor do you need prior image features.
- You want total control over resolution and composition.
- You're piping into a
KSampler
(because that’s where the magic happens).
🔁 Basic Workflow Example
mermaid
graph TD; A[CLIP Text Encode] --> B[KSampler]; C[Empty Latent Image] --> B; B --> D[VAE Decode];
CLIP Text Encode
: Processes the prompt.Empty Latent Image
: Creates the initial noise tensor.KSampler
: Transforms the latent with your model and prompt.VAE Decode
: Turns the final latent into a visible image.
💡 Use Cases
- Prompt-to-image generation: Your usual starting point if you're not inpainting or using an init image.
- Batch generation: Set
batch_size
to 4 and run multiple images at once with identical prompts/settings. - Latent-space experimentation: For testing new samplers, schedulers, or workflows.
- Workflow consistency: Create reproducible results with a fixed size and structure.
🧠 Prompting Tips
- This node doesn’t care what the prompt is—that’s up to
CLIP Text Encode
. - It’s just the stage. You still need actors (prompt) and a director (KSampler).
- Don't feed this into a VAE Decode directly. That’s like printing on invisible ink.
🔥 What-Not-To-Do-Unless-You-Want-a-Fire
Look, this node may seem innocent—it’s literally generating nothing—but don’t underestimate how quickly it can turn your workflow into a flaming wreck if misused. Here’s what not to do unless you enjoy watching your VRAM beg for mercy:
🚫 Set batch_size
to 16+ with 1024x1024 resolution on a 6GB GPU
Unless you enjoy crashes, freezes, or your GPU sounding like it's preparing for liftoff, don’t push your batch size beyond what your hardware can actually handle. Rule of thumb: know your VRAM limit and stay humble.
🚫 Mismatch your width/height with your ControlNet or VAE
If you're piping this latent image into a ControlNet that expects a 512x512 input but you set this node to 768x1024? Boom—dimension mismatch. Errors everywhere. The kind that don’t explain themselves clearly either, because ComfyUI just assumes you know better. (Spoiler: it was you.)
🚫 Feed this directly into VAE Decode
Yes, technically you can. But also—no, don’t. It’s a blank latent tensor. Decoding it without any generation step (like KSampler
) will result in... a blurry, colorless soup. This is not abstract art. Just use KSampler
first.
🚫 Use non-divisible-by-8 values for width or height
You want to see a model cry? Try using 513x513. Some VAEs and samplers will pad it. Others will just crash silently or throw you a cryptic tensor-shape error. Unless you enjoy debugging shape mismatches, stick to multiples of 8 (or better yet, 64).
🚫 Assume this node does something visual
If you're sitting there wondering why no image is showing up after decoding this node on its own—congrats, you've just decoded air. This node does not represent pixels. It is latent space. Invisible. Abstract. Conceptual. Don’t expect pretty pictures without a full pipeline.
🧾 Summary
Setting | Description | Tips |
---|---|---|
width | Horizontal size of latent image (in pixels) | Stick to 512, 768, 1024. Must be divisible by 8 or 64 |
height | Vertical size of latent image (in pixels) | Match to width for square, or adjust to desired aspect ratio |
batch_size | How many latent images to generate at once | Use >1 for batch gen, but check your GPU RAM first |
🧯 Final Thoughts
The Empty Latent Image
node is like a clean sheet of paper for latent artists. It doesn’t do much on its own, but paired with the right nodes—chef’s kiss. Treat it as your silent but essential co-pilot on any prompt-to-image adventure.