Nodes/ComfyUI-Image-Process/Save Image Advanced
ComfyUI Node

Save Image Advanced

One save node, seven formats, ICC profiles, and a filename that does math

By wakaura-asaho·Created 5 months ago·Updated 2 months ago· 1
Save Image Advanced
  • images
  • masks
  • icc_profile
    disable_metadatatrue
    join_alphafalse
    invert_alphafalse
    dpi300
    compress_level4
    quality90
    tiff_compressionnone
    tga_rletrue
    formatpng
    filename_prefixComfyUI
    save_to_input_folderfalse

    This is the flagship of ComfyUI-Image-Process: one node that can write PNG, JPG, WebP, TIFF, BMP, TGA, or AVIF, with alpha, ICC color profiles, DPI metadata, compression controls, and filename tokens - all in a single graph node. If you only install one save node from this pack, make it this one.

    The name is worth a moment. The display name is "Save Image Advanced," but the class is SaveImageAdvancedCustom because core ComfyUI shipped its own SaveImageAdvanced in version 0.24.1, and this pack's author renamed the class to keep the schemas from colliding. If a workflow references the node by that internal name, this is the one.

    What you actually set

    • Format - the combo that decides everything: png, jpg, webp, tiff, bmp, tga, avif. The frontend disables the irrelevant widgets per format, which is a nice touch you don't usually get.
    • Compression Level (0–9, default 4) - PNG only. Lower is bigger files, faster writes.
    • Quality (1–100, default 90) - JPG/WebP/AVIF.
    • TIFF Compression - none, tiff_lzw, tiff_deflate, tiff_adobe_deflate, packbits, jpeg, tiff_jpeg, tiff_ccitt. For photos use LZW or Deflate; tiff_ccitt is a fax-style bilevel codec that only works on black-and-white line art (the node converts to 1-bit and warns if you try it on anything else).
    • DPI (1–600, default 300) - mostly irrelevant on screens, very relevant if these images are going to a printer or an art site that reads DPI.
    • Join Alpha Channel + Masks - clips the image with your mask. Doesn't work on JPG (no alpha in the format, obviously). Invert Alpha flips the mask before it's applied.
    • ICC Profile - feed it the ICC_PROFILE output from this pack's Load ICC Profile node to embed a color profile. Dropped with a warning on BMP/TGA, which don't support it.
    • Disable Metadata - default on, which flips the usual ComfyUI habit: your workflow JSON is not embedded unless you turn this off. On it saves smaller, cleaner files for sharing; off it writes the workflow (PNG pnginfo, or EXIF UserComment / TIFF tag 270) so you can drag the image back to rebuild the graph.

    The filename tokens

    This is the pack's signature feature and it's genuinely handy. In Filename Prefix you can use %date:yyyy-MM-dd%, %year%, %month%, %day%, %hour%, %minute%, %second%, plus %width% and %height% of the image. So renders/%date:yyyy-MM-dd%/%hour%-%minute% becomes renders/2026-08-16/21-05. Right-click the node and pick "Insert Filename Token" to append them without typing. Tokens resolve inside this pack's own helper, independent of ComfyUI core.

    Save to Input Folder copies the file into your input folder too, so a downstream workflow can pick it up with a Load Image.

    Installation

    cd ComfyUI/custom_nodes
    git clone https://github.com/wakaura-asaho/comfyui-image-process
    pip install -r comfyui-image-process/requirements.txt
    

    or just find ComfyUI-Image-Process in ComfyUI Manager. The requirements are the usual scientific stack (numpy, Pillow 12.1+, scipy, opencv, scikit-image) and there are no model files. The README's --upgrade-strategy only-if-needed hint exists because a forced pip upgrade here can quietly break other custom nodes. Modern ComfyUI required (frontend ≥ 1.37, base ≥ 0.12).

    Gotchas

    AVIF needs a Pillow build with libavif - the pinned 12.1+ floor is where that support lives, so a fresh install is fine. TIFF and TGA files won't preview properly in ComfyUI's UI; the node saves a PNG preview copy for display while the real file lands on disk in your chosen format. And remember: the class rename happened specifically because core ComfyUI added a conflicting node - if your install is old, update it before this pack makes sense.

    CategoryWakaura

    Inputs (14)

    NameTypeDefaultDescription
    imagesIMAGEThe images to be saved.
    disable_metadataBOOLEANtrueWhether to include the metadata to the saved image.
    join_alphaBOOLEANfalseClip the image with the provided mask. Please note this does not work on JPG format.
    invert_alphaBOOLEANfalseWhether to invert the alpha channel before saving.
    dpiINT3001–600The DPI to use when saving images.
    compress_levelINT40–9The compression level to use when saving images as PNG (0-9).
    qualityINT901–100The quality to use when saving images as JPEG or WebP (1-100).
    tiff_compressionCOMBOnoneThe compression to use when saving images as TIFF.
    tga_rleBOOLEANtrueWhether to use RLE compression when saving as TGA.
    formatCOMBOpngThe format to save the image in.
    filename_prefixSTRINGComfyUIThe 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.
    save_to_input_folderBOOLEANfalseWhether to sync the image to the input folder.
    masksoptMASKOptional alpha channel masks to clip the saved images. If provided, these masks will be applied to the corresponding images before saving.
    icc_profileoptICC_PROFILEOptional ICC color profile to embed into the saved images.

    Outputs (0)

    No outputs