Nodes/ComfyUI-Image-Process/Save Image Advanced (TIFF)
ComfyUI Node

Save Image Advanced (TIFF)

TIFF saving with real compression choices, EXIF, DPI, and alpha

By wakaura-asaho·Created 5 months ago·Updated 2 months ago· 1
Save Image Advanced (TIFF)
  • images
  • masks
    disable_metadatafalse
    join_alphafalse
    invert_alphafalse
    filename_prefixComfyUI
    dpi300
    tiff_compressionnone
    save_to_input_folderfalse

    Save Image Advanced (TIFF) is where this pack's TIFF story gets serious. The simple Save Image (TIFF) writes lossless-but-huge uncompressed files; this one adds the compression codes that make TIFF actually practical - plus EXIF-style workflow metadata, DPI, alpha, and mask handling. If your AI art is going into a print or archival pipeline, this is the node you'll park at the end of the graph.

    The control that matters most is TIFF Compression, a dropdown with the usual suspects:

    • none - baseline, huge files.
    • tiff_lzw, tiff_deflate, tiff_adobe_deflate - lossless, sensible file sizes, this is where you should live for photography. The README is blunt about it: use these for photos.
    • packbits - old Mac-era lossless compression, marginal on modern content.
    • jpeg, tiff_jpeg - lossy, for TIFF files that are really photos with a TIFF wrapper.
    • tiff_ccitt - a fax codec. This one is a trap: it only works on bilevel (1-bit black-and-white) images, i.e. line art and documents. Feed it a photo and the node converts to 1-bit and warns you, and you'll get a document, not a picture. For anything photographic, ignore it entirely.

    The rest of the inputs

    • Join Alpha Channel + Masks - clip a mask into the alpha channel (TIFF supports RGBA fine; the tooltip's "doesn't work on JPG" note is a copy-paste from the shared save code, and doesn't apply here). Invert Alpha flips the mask.
    • DPI (1–600, default 300) - print-relevant metadata; 300 is the standard.
    • Disable Metadata (default off) - when on, it discards the workflow data. When off, the node embeds the workflow JSON into TIFF tag 270, so the file still carries your graph for reconstruction. If you're shipping to a print lab, consider turning it on - some prepress tools get weird about unknown tags.
    • Save to Input Folder - copies the TIFF into your input folder for downstream reuse.

    Standard terminal-save shape beyond that: Images, optional Masks, Filename Prefix with token support (%date:yyyy-MM-dd%, %hour%, %minute%, %width%, %height%).

    Two gotchas that will actually bite

    The preview pane shows a PNG copy, not your TIFF - ComfyUI can't render TIFF in-browser, and the README warns about this explicitly. Your file is on disk and correct; the thumbnail is a stand-in.

    And the CCITT trap above deserves a repeat: tiff_ccitt on a normal image silently produces a 1-bit output that looks like a fax of your photo. If your TIFF suddenly looks destroyed, that's why. Stick to LZW or Deflate.

    Install

    Ships in ComfyUI-Image-Process: git clone https://github.com/wakaura-asaho/comfyui-image-process into custom_nodes, pip install -r comfyui-image-process/requirements.txt, restart - or ComfyUI Manager. Dependencies are numpy, Pillow 12.1+, scipy, opencv, scikit-image; no model downloads. Modern ComfyUI required (frontend ≥ 1.37, base ≥ 0.12). If you've ever been burned by a save node silently writing 4 MB-per-image TIFFs, this is the one that lets you stop.

    CategoryWakaura

    Inputs (9)

    NameTypeDefaultDescription
    imagesIMAGEThe images to be saved.
    disable_metadataBOOLEANfalseDisable embedding EXIF data into the saved images. Embed into `UserComment`.
    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.
    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.
    dpiINT3001–600The DPI to use when saving images.
    tiff_compressionCOMBOnoneThe compression to use when saving images as TIFF.
    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.

    Outputs (0)

    No outputs