Nodes/ComfyUI FRED Nodes v2/πŸ‘‘ FRED Image Saver
ComfyUI Node

πŸ‘‘ FRED Image Saver

A save node that names files from your actual model, seed, and LoRAs

By PoukpalaovaΒ·Created about a year agoΒ·Updated 7 months agoΒ· 3
πŸ‘‘ FRED Image Saver
  • images
  • GRID_IMAGE
  • last_saved_path
  • help
β—„save_single_imagetrueβ–Ί
β—„filename%model_name_%date_dashβ–Ί
β—„pathFred_nodes/%date_dash/β–Ί
β—„time_format%Y-%m-%d-%H%M%Sβ–Ί
β—„extensionpngβ–Ί
β—„optimize_pngfalseβ–Ί
β—„lossless_webptrueβ–Ί
β—„quality_jpeg_or_webp100β–Ί
β—„save_workflow_as_jsonfalseβ–Ί
β—„embed_workflow_in_pngtrueβ–Ί
β—„width1024β–Ί
β—„height1024β–Ί
β—„scale1.40β–Ί
β—„denoise0.60β–Ί
β—„guidance2.20β–Ί
β—„clip_skip1β–Ί
β—„steps20β–Ί
β—„seed_value0β–Ί
β—„sampler_nameeulerβ–Ί
β—„scheduler_namesimpleβ–Ί
β—„positiveβ–Ί
β—„negativeβ–Ί
β—„model_namefluxβ–Ί
β—„lora_name_1β–Ί
β—„lora_weight_11.00β–Ί
β—„lora_name_2β–Ί
β—„lora_weight_21.00β–Ί
β—„lora_name_3β–Ί
β—„lora_weight_31.00β–Ί
β—„save_as_grid_if_multifalseβ–Ί
β—„grid_filename%lora_name_1_weight_%lora_weight_1_%datetime_%model_name grid_%img_countβ–Ί
β—„grid_pathTest/%model_name/Grid/%date_dash/β–Ί
β—„grid_column_max5β–Ί
β—„grid_row_max1β–Ί
β—„grid_extensionpngβ–Ί
β—„grid_quality_jpeg_or_webp100β–Ί

The stock Save Image node writes 00001_20260816_123456.png and calls it a day. If you generate a lot, those filenames are useless three days later. FRED_ImageSaver is the organized alternative: tokenized filenames and paths that expand to your model name, seed, LoRAs, date and more, plus A1111-style parameters text embedded in the file and optional grid saving. It's the node that makes an output folder actually browsable.

The tokens

The filename and path fields accept tokens that get expanded at save time. The ones you'll actually use:

  • %model_name / %basemodelname - which checkpoint made this
  • %date, %date_dash, %time, %datetime (the last uses time_format)
  • %seed - for reproducibility
  • %lora_name_1, %lora_weight_1 (through 3) - which LoRAs ran and at what strength
  • %width, %height, %steps, %cfg, %sampler, %scheduler
  • %img_count - batch/grid size

A counter is always appended for uniqueness, so filename: %model_name_%date_dash yields myModel_2026-08-16_0001.png. The default path is Fred_nodes/%date_dash/ relative to ComfyUI's output folder - your outputs self-organize by date under a Fred_nodes/ directory, and you can change that to %model_name-based organization instead.

Metadata embedding

This is the part A1111 refugees will feel at home with. The saver embeds an A1111-style parameters text chunk - positive prompt, Negative prompt: ... (only if non-empty, so it doesn't swallow the params), Steps:, Sampler:, CFG scale:, Seed:, model name, LoRA info - into the PNG, alongside the workflow JSON and ComfyUI version (toggle embed_workflow_in_png / save_workflow_as_json). That means the file carries its full generation recipe, which you can drag back into ComfyUI or read with any metadata viewer. It's the "workflow included" culture in your own archive.

To make those fields real rather than hand-typed, pair it with the extractor nodes in this pack: FRED_ExtractKSampler_parameter feeds the sampler settings, FRED_ExtractLora_parameter feeds the LoRA names/weights, FRED_CheckpointLoaderWithName feeds the model name. Keep one source of truth, let the saver record it.

Grid mode

save_as_grid_if_multi kicks in when your images input carries a batch: it arranges them into a grid (grid_column_max / grid_row_max auto-fit), writes it under grid_filename / grid_path, and emits it as GRID_IMAGE. There are separate extension/quality controls for the grid (png/jpeg/webp), so you can keep lossless singles and compact grids at the same time.

Outputs

  • GRID_IMAGE - the assembled grid (useful even if you also save it).
  • last_saved_path - the actual path written, for logs or further processing.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/Poukpalaova/ComfyUI-FRED-Nodes_v2.git

Restart, or "ComfyUI FRED Nodes v2" via ComfyUI Manager.

Gotchas

The quality_jpeg_or_webp slider is meaningless for PNG (PNG is lossless) - set it for jpeg/webp saves. And a token you spell wrong stays as literal text in the filename, which is how you end up with %model_nam_20260816.png; the pack's help output lists the exact token names, so check it once. If you're coming from a plain Save Image workflow, expect one-time fiddling with filename templates, then never again.

CategoryπŸ‘‘FRED/image

Inputs (37)

NameTypeDefaultDescription
imagesIMAGEimage(s) to save (list or batch).
save_single_imageBOOLEANtrueSave each input image as its own file.
filenameSTRING%model_name_%date_dashbase filename (counter appended)
pathSTRINGFred_nodes/%date_dash/relative to Comfy output (or absolute)
time_formatSTRING%Y-%m-%d-%H%M%Sused by %datetime token
extensionCOMBOpngoutput file format for single images
optimize_pngBOOLEANfalseoptimize PNG (lossless); smaller files but slower
lossless_webpBOOLEANtruesave WEBP in lossless mode (quality ignored)
quality_jpeg_or_webpINT1001–100JPEG/WEBP quality (ignored if WEBP lossless)
save_workflow_as_jsonBOOLEANfalsewrite a sidecar JSON next to image
embed_workflow_in_pngBOOLEANtrueembed workflow/prompt JSON into PNG metadata
widthINT10241–16384recorded in metadata; does not resize
heightINT10241–16384recorded in metadata; does not resize
scaleFLOAT1.400–100000record-only parameter
denoiseFLOAT0.600–1record-only parameter
guidanceFLOAT2.200–100record-only parameter (CFG/guidance)
clip_skipINT1-24–24record-only parameter
stepsINT201–4096record-only parameter
seed_valueINT00–18446744073709550000record-only parameter (seed)
sampler_nameSTRINGeulerrecord-only parameter (sampler name)
scheduler_nameSTRINGsimplerecord-only parameter (scheduler name)
positiveSTRINGpositive prompt (saved in metadata)
negativeSTRINGnegative prompt (saved in metadata)
model_nameSTRINGfluxrecord-only parameter (model name)
lora_name_1STRINGoptional LoRA name #1 (if empty: weight omitted everywhere)
lora_weight_1FLOAT1.00-10–10LoRA weight #1
lora_name_2STRINGoptional LoRA name #2 (if empty: weight omitted everywhere)
lora_weight_2FLOAT1.00-10–10LoRA weight #2
lora_name_3STRINGoptional LoRA name #3 (if empty: weight omitted everywhere)
lora_weight_3FLOAT1.00-10–10LoRA weight #3
save_as_grid_if_multiBOOLEANfalseAlso save a single tiled grid image of all inputs.
grid_filenameSTRING%lora_name_1_weight_%lora_weight_1_%datetime_%model_name grid_%img_countfilename prefix for the grid image
grid_pathSTRINGTest/%model_name/Grid/%date_dash/save folder for the grid image
grid_column_maxINT5x_size (columns).
grid_row_maxINT1y_size (rows).
grid_extensionCOMBOpngoutput file format for the grid image
grid_quality_jpeg_or_webpINT1001–100JPEG/WEBP quality for the grid image

Outputs (3)

NameTypeDescription
GRID_IMAGEIMAGEpath to last saved image
last_saved_pathSTRINGhelp / usage tips
helpSTRINGβ€”