Image Output (ComfyDeploy)
The SaveImage that actually gets your image back out of ComfyDeploy
- images
If you're deploying a ComfyUI workflow through Comfy Deploy and your images never show up in the dashboard, this is the node you were missing. "Image Output (ComfyDeploy)" is a terminal save node that looks like core ComfyUI's SaveImage but with one crucial extra job: it tells the ComfyDeploy backend that this output is the one worth returning to whoever called the API.
Plain SaveImage writes to your output folder and stops. This node writes the file the same way, then hands the filename to the ComfyDeploy upload machinery (the pack's custom routes), which pushes it to the S3-compatible storage your dashboard is configured with. Callers of your API get back a URL to that uploaded image instead of a path on your local disk.
What you actually set
images- the IMAGE tensor to save. Feed it the output of your VAE decoder.filename_prefix- defaultComfyUI. Like core SaveImage, it supports templates:%date:yyyy-MM-dd%, or%Empty Latent Image.width%to pull values from other nodes.file_type-png,jpg, orwebp. Default iswebphere, notpng. At quality 80, webp is much smaller for fast dashboard previews, but if you need lossless or shareable-metadata PNGs for the community, switch it.quality- 1–100, default 80. Only meaningful for jpg/webp.output_id- defaultoutput_images. This is the key that identifies the output in your API response. If you have multiple output nodes, give each a distinct id so callers can tell them apart.
No outputs - it's a terminal node. The useful result is the UI entry the dashboard picks up.
Installing it
Same pack install as everything else in ComfyUI Deploy:
cd ComfyUI/custom_nodes
git clone https://github.com/BennyKok/comfyui-deploy.git
Then restart ComfyUI. Or search "ComfyUI Deploy" in ComfyUI Manager. Dependencies are pip-installed on first load - aiofiles, pydantic, opencv-python, imageio-ffmpeg, brotli, tabulate. No models, no key required to run it locally.
Where people get burned
The classic stumble is dropping this node in and expecting it to behave exactly like SaveImage. It saves to the same place, sure - check your normal output folder - but the "upload to dashboard" half only fires when the workflow runs through a ComfyDeploy machine, not when you press Run in the editor. So if you're testing locally, it just writes files; that's normal, not a bug.
Second gotcha: PNG metadata. ComfyUI's workflow-embedding culture means people expect to drag a generated PNG back into the editor. This node does embed prompt metadata into PNGs (unless you launched ComfyUI with --disable-metadata), but if you leave the default webp selected you don't get that round-trip. Export a PNG if you plan to share the workflow inside the image.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | The images to save. | |
| filename_prefix | STRING | ComfyUI | The prefix for the file to save. This may include formatting information such as %date:yyyy-MM-dd% or %Empty Latent Image.width% to include values from nodes. |
| file_type | COMBO | webp | 3 options: png, jpg, webp |
| quality | INT | 801–100 | — |
| output_idopt | STRING | output_images | — |
Outputs (0)
No outputs