A ComfyUI extension that tracks model usage frequency, helping you identify abandoned or underutilized models to manage storage efficiently.
- Automatic Tracking - Monitors usage of all model types: checkpoints, LoRAs, VAEs, ControlNets, CLIP, UNETs, upscalers, GGUF, and more
- Sidebar Panel - View usage statistics directly in ComfyUI's sidebar
- File Size Display - Shows model file sizes (GB/MB) to help identify storage-heavy models
- Time Filtering - View usage for all time, this month, or this week
- Smart Sorting - Sort by last used, usage count, or name
- Stale Detection - Models unused for 30+ days are highlighted (configurable threshold)
- Category Grouping - Models organized by type with collapsible sections
- Reset Tracking - Clear all usage data from the settings panel
- Zero Dependencies - Uses only Python standard library
Search for "ModelPulse" in ComfyUI Manager and click Install.
cd ComfyUI/custom_nodes
git clone https://github.com/Setmaster/ComfyUI-ModelPulse.gitRestart ComfyUI after installation.
- Click the chart icon in the ComfyUI sidebar to open ModelPulse
- Run workflows as usual - model usage is tracked automatically
- Use the tabs to filter by time period (All Time / Month / Week)
- Use the dropdown to sort by Last Used, Usage Count, or Name
- Click category headers to collapse/expand sections
| Category | Loader Nodes |
|---|---|
| Checkpoints | CheckpointLoaderSimple, CheckpointLoader |
| LoRAs | LoraLoader, LoraLoaderModelOnly |
| VAEs | VAELoader |
| ControlNets | ControlNetLoader |
| CLIP | CLIPLoader, DualCLIPLoader |
| UNETs | UNETLoader |
| Upscalers | UpscaleModelLoader |
| Style Models | StyleModelLoader |
| GLIGEN | GLIGENLoader |
| GGUF | UnetLoaderGGUF, CLIPLoaderGGUF, DualCLIPLoaderGGUF, TripleCLIPLoaderGGUF, QuadrupleCLIPLoaderGGUF |
Custom node loaders (Impact Pack, Efficiency Nodes, etc.) are also detected via pattern matching.
ModelPulse exposes REST endpoints for programmatic access:
| Endpoint | Method | Description |
|---|---|---|
/modelpulse/usage |
GET | Get all usage data (supports ?timeframe= and ?sort= params) |
/modelpulse/model/{id} |
GET | Get detailed data for a specific model |
/modelpulse/categories |
GET | Get category list with counts |
/modelpulse/reset |
POST | Reset all tracking data (requires {"confirm": true}) |
Usage data is stored in:
ComfyUI/user/default/modelpulse/usage_data.json
The data persists across ComfyUI restarts and can be backed up or edited manually.
- ComfyUI 0.3.0 or later (Vue 3 frontend)
- Python 3.10+
- No external Python dependencies
MIT License - see LICENSE for details.
Contributions are welcome! Please feel free to submit issues and pull requests.