ComfyUI Node

Record Models

The node that quietly logs every checkpoint and LoRA you actually use

By Gipphe·Created about a year ago·Updated 2 months ago· 0
Record Models
  • image
  • IMAGE
out_filemetadata-statistics/stats.json

Record Models is the one node in ComfyUI Metadata Statistics, and it exists for a surprisingly specific problem: you have 400 checkpoints and 800 LoRAs in your models folder, and no idea which ones you actually reach for. You know some favorites by feel. The rest is a blur, and the blur is why you can't bring yourself to delete anything.

This node is the answer to that. Drop it into a workflow and it keeps a running tally - which checkpoint and which LoRAs ran, how many times, and when - written to a plain JSON file you can open anytime. It won't prune your models folder for you, but it gives you the data to do it yourself. In a "workflow included" ecosystem where images carry their whole graph as metadata, this is that metadata made into a usage log.

How it works

On every run the node reaches into ComfyUI's extra_pnginfo (the hidden workflow blob that gets embedded in your output PNG) and walks the node list, looking for two specific node types:

  • Power Lora Loader (rgthree) - for each LoRA entry that's toggled on (on: true), it logs the LoRA name, the strength it ran at, and a UTC timestamp. Toggled-off entries are ignored, which is the right call.
  • CheckpointLoaderSimple - logs the checkpoint name and a timestamp.

So this is a deliberate taste, not an oversight: it only tracks the LoRAs you stack in rgthree's loader (the pack the ecosystem actually reaches for when stacking more than one LoRA), and plain stock checkpoint loaders. Then it merges everything into the output file - counts add up across runs, and uses is a growing list of timestamps, so you can see when you last touched a model.

The inputs that matter

There are only two inputs, and one of them is a pass-through:

  • image (IMAGE) - "Image pass-through input." The node doesn't look at, alter, or save the image; it just needs to sit in your graph so it executes alongside a generation.
  • out_file (STRING) - where the log lands, as a path relative to your ComfyUI install. Default is metadata-statistics/stats.json.

The output is the same IMAGE you fed in, unchanged. That means you can wire it anywhere without breaking anything - it's a side effect wrapped in a pass-through.

Install

Straightforward, no model downloads, no pip dependencies - this pack's pyproject.toml declares an empty dependency list, which is refreshing. In ComfyUI Manager, search for ComfyUI Metadata Statistics, or:

cd ComfyUI/custom_nodes
git clone https://github.com/Gipphe/comfyui-metadata-statistics

Then restart ComfyUI. You'll find Record Models under the metadata category.

Common issues

  • Nothing shows up in the JSON. The two most likely causes, both visible in the source: you're using the stock LoraLoader instead of rgthree's Power Lora Loader (it won't be recorded), or you're loading checkpoints through UNETLoader/DualCLIPLoader (only CheckpointLoaderSimple is watched).
  • "Missing extra_pnginfo" in your console. This fires when the workflow blob isn't available - typically when you run a bare API prompt without embedding the workflow. Run it from the ComfyUI UI with workflow saving enabled and the message goes away.
  • The file appears where you didn't expect. The default path resolves to ComfyUI/metadata-statistics/stats.json (relative to your ComfyUI root, not the node's folder).

The honest take

This is a young node - version 0.1.0, zero community footprint, README still cookiecutter boilerplate. If you need a serious model manager, there are heavier tools; if you just want to know what you actually run, this drops into a workflow in thirty seconds and gives you an answer in a plain JSON file. For that, it's quietly useful. Just know its two blind spots: only two loader types get recorded, and it only works when your workflow metadata survives the run.

Categorymetadata

Inputs (2)

NameTypeDefaultDescription
imageIMAGEImage pass-through input
out_fileSTRINGmetadata-statistics/stats.json

Outputs (1)

NameTypeDescription
IMAGEIMAGE