A custom node for ComfyUI that automatically saves images while logging detailed generation metadata to help you track and reproduce your best results.
- πΎ Saves images just like the standard Save Image node
- π Automatically logs metadata to a text file with actual filenames
- βοΈ Captures KSampler settings (seed, steps, CFG, sampler, scheduler, denoise)
- β±οΈ Tracks generation time for each image
- π JSON output for live debugging with Show Text nodes
- π« Zero manual input required - everything is automatic!
- π Clean text format for easy searching and reading
Ever generated an amazing image and couldn't remember the exact settings? This node solves that problem by automatically logging every generation with:
- The actual filename of your saved image
- Full path to the file
- All KSampler parameters used
- Timestamp of generation
- How long it took to generate
All saved to an easy-to-read text file that you can search through anytime!
-
Navigate to your ComfyUI custom nodes directory:
cd ComfyUI/custom_nodes/ -
Clone this repository:
git clone https://github.com/Cordux/ComfyUI-SaveImageMetaData.git
-
Restart ComfyUI
- Download this repository as a ZIP file
- Extract it to your
ComfyUI/custom_nodes/directory - Make sure the folder name doesn't have
-mainat the end - Restart ComfyUI
No external dependencies required! This node uses only Python standard library modules.
- Add the "Save Image + Metadata Logger" node to your workflow
- Connect the image output (from VAE Decode) to the node's
imagesinput - Set your
filename_prefix(optional, defaults to "ComfyUI") - That's it! The node automatically captures everything else
[KSampler] β [VAE Decode] β [Save Image + Metadata Logger]
β
(metadata_json output)
β
[Show Text] (optional, for debugging)
The node automatically extracts from your workflow:
- Seed
- Steps
- CFG scale
- Sampler name
- Scheduler
- Denoise value
- Generation time
| Parameter | Type | Description |
|---|---|---|
| images | IMAGE | Input images to save |
| filename_prefix | STRING | Prefix for saved files (default: "ComfyUI") |
| enable_metadata_file | BOOLEAN | Toggle metadata logging on/off (default: True) |
| Output | Type | Description |
|---|---|---|
| metadata_json | STRING | JSON string containing all metadata (connect to Show Text for debugging) |
The node saves all metadata to ComfyUI/output/generation_metadata.txt:
================================================================================
Generated: 2026-01-10 17:45:32
File: ComfyUI_00001_.png
Path: Path\to\ComfyUI_outputs
Seed: 938261540729183
Steps: 20
CFG: 7.5
Sampler: dpmpp_2m
Scheduler: karras
Denoise: 1.0
Generation Time: 12.34s
================================================================================
================================================================================
Generated: 2026-01-10 17:48:15
File: MyProject_00002_.png
Path: Path\to\ComfyUI_outputs
Seed: 12345605789012
Steps: 30
CFG: 8.0
Sampler: euler_ancestral
Scheduler: normal
Denoise: 1.0
Generation Time: 15.67s
================================================================================
{
"timestamp": "2026-01-10 17:45:32",
"files": [
{
"filename": "ComfyUI_00001_.png",
"path": "Path:\\to\\ComfyUI_outputs"
}
],
"generation_time_seconds": 12.34,
"seed": 93826158075629183,
"steps": 20,
"cfg": 7.5,
"sampler_name": "dpmpp_2m",
"scheduler": "karras",
"denoise": 1.0
}- Search your metadata file - Use Ctrl+F (or Cmd+F on Mac) to quickly find specific seeds or settings
- Keep the file open - You can watch it update in real-time as you generate images
- Use Show Text - Connect the
metadata_jsonoutput to a Show Text node to see the data live - Organize by project - Use different filename prefixes for different projects
- Backup periodically - Copy the metadata.txt file to preserve your generation history
When you generate an image you love, immediately check the metadata file to find the exact settings used.
Try different settings and review the metadata file to see which combinations worked best.
When sharing images with the community, easily copy the exact settings from your metadata file.
Monitor how long different sampler/scheduler combinations take to optimize your workflow.
- Check that
enable_metadata_fileis set to True (it's on by default) - Make sure ComfyUI has write permissions to the output directory
- Check the console for error messages
- Make sure you have a KSampler or KSamplerAdvanced node in your workflow
- The node needs to be connected in the workflow (even indirectly)
- This is normal for very fast generations
- Time tracking starts when the node is initialized
Contributions are welcome! Feel free to:
- Report bugs
- Suggest new features
- Submit pull requests
Please check the Issues page before creating a new issue.
If you encounter any issues:
- Check the console/terminal for error messages
- Look through existing Issues
- Create a new issue with:
- Your ComfyUI version
- Steps to reproduce the problem
- Any error messages
This project is licensed under the MIT License - see the LICENSE file for details.
Created for the ComfyUI community to make tracking generation settings easier and more organized.
Note: This node is completely original and was built from scratch specifically for automatic metadata logging. If you find it useful, please star the repo! β