Skip to main content

Metrics

Frigate exposes Prometheus metrics at the /api/metrics endpoint that can be used to monitor the performance and health of your Frigate instance.

Enabling Telemetry​

Prometheus metrics are exposed via the telemetry configuration. Enable or configure telemetry to control metric availability.

Navigate to Settings→System→Telemetry to configure metrics and telemetry settings.

Available Metrics​

System Metrics​

  • frigate_cpu_usage_percent{pid="", name="", process="", type="", cmdline=""} - Process CPU usage percentage
  • frigate_mem_usage_percent{pid="", name="", process="", type="", cmdline=""} - Process memory usage percentage
  • frigate_gpu_usage_percent{gpu_name=""} - GPU utilization percentage
  • frigate_gpu_mem_usage_percent{gpu_name=""} - GPU memory usage percentage

Camera Metrics​

  • frigate_camera_fps{camera_name=""} - Frames per second being consumed from your camera
  • frigate_detection_fps{camera_name=""} - Number of times detection is run per second
  • frigate_process_fps{camera_name=""} - Frames per second being processed
  • frigate_skipped_fps{camera_name=""} - Frames per second skipped for processing
  • frigate_detection_enabled{camera_name=""} - Detection enabled status for camera
  • frigate_audio_dBFS{camera_name=""} - Audio dBFS for camera
  • frigate_audio_rms{camera_name=""} - Audio RMS for camera

Detector Metrics​

  • frigate_detector_inference_speed_seconds{name=""} - Time spent running object detection in seconds
  • frigate_detection_start{name=""} - Detector start time (unix timestamp)

Storage Metrics​

  • frigate_storage_free_bytes{storage=""} - Storage free bytes
  • frigate_storage_total_bytes{storage=""} - Storage total bytes
  • frigate_storage_used_bytes{storage=""} - Storage used bytes
  • frigate_storage_mount_type{mount_type="", storage=""} - Storage mount type info

These gauges report the operating system's figures for the whole filesystem (the same numbers as df), not Frigate's own recording footprint. For how this differs from the recordings usage shown in the UI, see Understanding storage usage.

Service Metrics​

  • frigate_service_uptime_seconds - Uptime in seconds
  • frigate_service_last_updated_timestamp - Stats recorded time (unix timestamp)
  • frigate_device_temperature{device=""} - Device Temperature

Event Metrics​

  • frigate_camera_events{camera="", label=""} - Count of camera events since exporter started

Configuring Prometheus​

To scrape metrics from Frigate, add the following to your Prometheus configuration:

scrape_configs:
- job_name: "frigate"
metrics_path: "/api/metrics"
static_configs:
- targets: ["frigate:5000"]
scrape_interval: 15s

Example Queries​

Here are some example PromQL queries that might be useful:

# Average CPU usage across all processes
avg(frigate_cpu_usage_percent)

# Total GPU memory usage
sum(frigate_gpu_mem_usage_percent)

# Detection FPS by camera
rate(frigate_detection_fps{camera_name="front_door"}[5m])

# Storage usage percentage
(frigate_storage_used_bytes / frigate_storage_total_bytes) * 100

# Event count by camera in last hour
increase(frigate_camera_events[1h])

Grafana Dashboard​

You can use these metrics to create Grafana dashboards to monitor your Frigate instance. Here's an example of metrics you might want to track:

  • CPU, Memory and GPU usage over time
  • Camera FPS and detection rates
  • Storage usage and trends
  • Event counts by camera
  • System temperatures

A sample Grafana dashboard JSON will be provided in a future update.

Metric Types​

The metrics exposed by Frigate use the following Prometheus metric types:

  • Counter: Cumulative values that only increase (e.g., frigate_camera_events)
  • Gauge: Values that can go up and down (e.g., frigate_cpu_usage_percent)
  • Info: Key-value pairs for metadata (e.g., frigate_storage_mount_type)

For more information about Prometheus metric types, see the Prometheus documentation.