Image Saving v2
Control which Searge outputs get saved (and how)
- data
- data
Image Saving v2 is the settings panel for what the Searge workflow writes to disk. The workflow can produce up to three versions of an image - the base generated result, a high-res pass, and an upscaled final - and this node lets you decide, independently, which of those get saved, what they're named, and whether each embeds the workflow so you can drag it back into ComfyUI later.
It belongs to SeargeSDXL, the base-plus-refiner SDXL workflow pack Searge shipped when SDXL 1.0 launched in 2023. It's a current v4 node (note the Searge/UI/Inputs category, not _deprecated_) and it rides the pack's SRG_DATA_STREAM data bus rather than sitting inline in the image path - you configure it once and the actual save happens downstream based on these flags.
How it works
Instead of dropping three separate Save Image nodes on your canvas, you set your whole saving policy in one place. Each of the three image stages gets a matching trio of controls: a save toggle, a "embed workflow in the PNG" toggle, and a filename. So you can, say, skip the noisy intermediate generated image, keep the high-res, and save the final upscale with metadata embedded - all without rewiring anything. There's also an option to drop a plain-text parameters file next to the images recording the settings used, which is genuinely useful when you're batch-experimenting and want to know what made a good one.
The inputs and outputs that matter
There are a lot of booleans here, but they're repetitive by design - three stages, same pattern. The ones worth knowing:
save_folder(enum:none - don't save,output,output/%date%,output/Searge-SDXL-%date%,input) - where everything lands. The%date%templates auto-sort by day, which keeps a busy output folder sane.save_generated_image,save_high_res_image,save_upscaled_image(allBOOLEAN, default true) - the three master switches. Turn off the ones you don't want cluttering disk.embed_workflow_in_*(threeBOOLEANs, default true) - bake the full graph into each PNG so it's reloadable.generated_image_name/high_res_image_name/upscaled_image_name(STRING) - the filename stems.save_parameters_file(BOOLEAN, default true) - write the settings text file.datain/out (SRG_DATA_STREAM) - the config bus; thread it through.
How to install it
ComfyUI Manager: search SeargeSDXL, install, restart. Manual: cd ComfyUI/custom_nodes && git clone https://github.com/SeargeDP/SeargeSDXL.git, then restart. Manual installs need python -m pip install opencv-python in ComfyUI's Python environment first, or the README warns the nodes won't load. Saving itself needs no extra models, but the workflow that produces those three image stages does - SDXL base + refiner, the fp16-fix VAE, and upscale models like 4x-UltraSharp for the upscaled stage.
Common issues
The most common "where are my files" moment is save_folder set to none - don't save, or a per-stage toggle left off - check those first. If your upscaled image never appears, it's often because the upscale pass didn't run (no upscale model selected), not because saving failed.
Keep the workflow-embed toggles on if you ever want to recover a graph from a result - it's the single best habit in ComfyUI, and losing a good workflow because you saved a bare PNG stings. And the usual Searge caveat: match the latest workflow JSON to the latest node version to avoid phantom errors.
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| save_parameters_file | BOOLEAN | true | — |
| save_folder | COMBO | output/%date% | 5 options: none - don't save, output, output/%date%, output/Searge-SDXL-%date%, input |
| save_generated_image | BOOLEAN | true | — |
| embed_workflow_in_generated | BOOLEAN | true | — |
| generated_image_name | STRING | generated | — |
| save_high_res_image | BOOLEAN | true | — |
| embed_workflow_in_high_res | BOOLEAN | true | — |
| high_res_image_name | STRING | high-res | — |
| save_upscaled_image | BOOLEAN | true | — |
| embed_workflow_in_upscaled | BOOLEAN | true | — |
| upscaled_image_name | STRING | upscaled | — |
| dataopt | SRG_DATA_STREAM | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| data | SRG_DATA_STREAM | — |