What it is
Frigate NVR is a complete and local network video recorder built for Home Assistant, with AI object detection. It uses OpenCV and Tensorflow to run realtime object detection locally on IP cameras, so video analysis happens on your own hardware instead of a vendor cloud. Project lives in the Home Assistant home-automation ecosystem, with tight integration through a custom component, and it talks over MQTT so other systems can consume its events. Written mainly in TypeScript, MIT licensed, 8 years old, 35,896 stars and 3,596 forks on GitHub.
Problem it solves: typical NVR setups either ship video to a remote service or record everything and leave you to scrub through hours of footage. Frigate keeps detection local and looks for objects only when and where they are needed. Low-overhead motion detection first decides where object detection should run, then TensorFlow detection runs in separate processes for maximum FPS. GPU or AI accelerator highly recommended — accelerators beat even the best CPUs with very little overhead. Supported object detectors listed in Frigate docs.
Key capabilities
- Realtime local object detection on IP camera streams using OpenCV and Tensorflow, with a GPU or AI accelerator recommended.
- Motion detection gate that limits object detection to relevant regions, keeping resource use low.
- Multiprocessing design weighted toward realtime performance rather than processing every frame.
- Recording with retention settings based on detected objects, plus 24/7 recording mode.
- Re-streaming via RTSP to cut the number of direct connections to each camera.
- WebRTC and MSE support for low-latency live view.
- MQTT communication for integration into other systems, alongside a Home Assistant custom component.
Who uses it and how
- Home Assistant users who want camera events and detections surfaced inside their home-automation dashboards.
- Self-hosters running IP cameras over RTSP who want object detection to stay on local hardware.
- Automation builders who subscribe to MQTT topics and trigger their own logic from detection events.
- Operators juggling many cameras who use RTSP re-streaming to reduce camera connection load.
- Reviewers working through recorded footage with multi-camera scrubbing, a streamlined review workflow, a live dashboard, and a built-in mask and zone editor.
Getting started
Configuration and installation guidance live in the Frigate documentation at docs.frigate.video. Home Assistant users add the custom component from the frigate-hass-integration repository, and translation contributions go through Weblate.
When to use it — and when not to
Frigate is MIT licensed and local, so it replaces paid cloud NVR subscriptions only in the sense that detection and recording stay on hardware you own — no paid product comparison is stated in the project facts. A self-hoster must supply cameras, a host with a GPU or AI accelerator for best results, and integrate through Home Assistant or MQTT; the README does not spell out database, storage, or SMTP requirements, so check the docs before committing. Weakness evident in the facts: GPU or AI accelerator is highly recommended, so CPU-only hosts will underperform, and the project carries 95 open issues at last push.
project readme (upstream, from github) — read inline
Frigate NVR™ - Realtime Object Detection for IP Cameras

[English] | 简体中文
A complete and local NVR designed for Home Assistant with AI object detection. Uses OpenCV and Tensorflow to perform realtime object detection locally for IP cameras.
Use of a GPU or AI accelerator is highly recommended. AI accelerators will outperform even the best CPUs with very little overhead. See Frigate's supported object detectors.
- Tight integration with Home Assistant via a custom component
- Designed to minimize resource use and maximize performance by only looking for objects when and where it is necessary
- Leverages multiprocessing heavily with an emphasis on realtime over processing every frame
- Uses a very low overhead motion detection to determine where to run object detection
- Object detection with TensorFlow runs in separate processes for maximum FPS
- Communicates over MQTT for easy integration into other systems
- Records video with retention settings based on detected objects
- 24/7 recording
- Re-streaming via RTSP to reduce the number of connections to your camera
- WebRTC & MSE support for low-latency live view
Documentation
View the documentation at https://docs.frigate.video
Donations
If you would like to make a donation to support development, please use Github Sponsors.
License
This project is licensed under the MIT License.
- Code: The source code, configuration files, and documentation in this repository are available under the MIT License. You are free to use, modify, and distribute the code as long as you include the original copyright notice.
- Trademarks: The "Frigate" name, the "Frigate NVR" brand, and the Frigate logo are trademarks of Frigate, Inc. and are not covered by the MIT License.
Please see our Trademark Policy for details on acceptable use of our brand assets.
Screenshots
Live dashboard

Streamlined review workflow

Multi-camera scrubbing

Built-in mask and zone editor

Translations
We use Weblate to support language translations. Contributions are always welcome.
Copyright © 2026 Frigate, Inc.