Save_as_webp
The WebP saver whose own README says not needed
- images
Let me save you the suspense: the entire README for this pack is one sentence - "This is in Base comfy, and not needed." The author gave up on their own node. So why are you here? Because someone's shared workflow contains a node called Save_as_webp, ComfyUI threw a "missing node" error at you, and you just need it to stop. That's the honest reason 99% of people will ever install this.
What it actually does
Save_as_webp is a drop-in clone of ComfyUI's core SaveImage node, except it writes a .webp file instead of a .png. Same pattern: feed it an image, it writes to ComfyUI/output/, auto-increments the filename so it never overwrites, and hands the result to the frontend as a preview. Core ComfyUI's SaveAnimatedWEBP already covers the animated case (and will happily write a single-frame webp too), which is presumably what the author meant by "not needed."
Where it goes a step beyond core: it does the same trick ComfyUI does with PNGs - embedding the workflow JSON into the file so it can be dragged back and reconstructed. Only it uses EXIF instead of a PNG text chunk, wedging the prompt into tag 0x010f and the workflow into 0x010e. The pack's JS extension then patches the frontend so dropping a .webp back into the browser reloads the whole graph. Same "workflow included" culture the ecosystem runs on, just for a smaller file format.
The inputs that matter
All four inputs are required, but you'll touch two of them:
- images - the IMAGE tensor you want saved.
- filename_prefix - default
ComfyUI. Like core, it accepts%width%and%height%placeholders, and a subfolder path, sowebp/%seed%-style naming works. - mode -
lossyorlossless. Pick lossy for photos-style outputs at smaller sizes; lossless if you're archiving and hate artifacts. - compression - 1–100, default 80. In lossy mode this is the quality knob; 80 is a sensible starting point.
There are no data outputs - it's an output node, its job is writing the file.
Installing it
Easiest route is ComfyUI Manager: search ComfyUI-Saveaswebp and install. Or the manual way:
cd ComfyUI/custom_nodes
git clone https://github.com/Kaharos94/ComfyUI-Saveaswebp
Then restart ComfyUI. Good news: there's no requirements.txt and no model downloads - it only needs Pillow and numpy, both already in base ComfyUI. The install does copy a webpinfo JS file into ComfyUI/web/extensions/, which is how the drag-drop workflow loading works.
The gotcha that actually bites
The real failure mode isn't the node crashing - it's the node being missing. People share workflows that use this exact node name, and when you open one without the pack installed, ComfyUI refuses to load and reports the missing class. The fix is simply installing the pack; the error clears and the workflow imports. So even though the README calls it redundant, there are workflows in the wild that will not open without it. If that's your situation, install it, load the workflow, and feel free to swap the node out for core's SaveImage or SaveAnimatedWEBP before you generate anything.
Verdict
A fine little node, mildly redundant on day one and actively disowned by its author since. Zero risk to install, genuinely useful only if you want webp outputs that carry their own workflow metadata, and otherwise just the missing puzzle piece for importing someone else's graph. Install it, unblock yourself, move on.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| filename_prefix | STRING | ComfyUI | — |
| mode | COMBO | 2 options: lossy, lossless | |
| compression | INT | 801–100 | — |
Outputs (0)
No outputs