Frigate face recognition tools

Frigate is the best open-source NVR because it is honest about what it does: object detection for people, cars, and packages, at high FPS on modest hardware. It deliberately does not do face recognition, because faces are a different model and a different privacy conversation. If you want your doorbell notification to say “Sarah is at the door” instead of “person detected,” you need to add a face recognition layer that plugs into Frigate.

The seven best apps for Frigate face recognition below run as extra Docker containers on the same NAS or homelab box, ingest Frigate’s snapshots via MQTT or a REST hook, and return a named identity that Home Assistant then routes to a notification, a lock unlock, or a light scene. Everything is self-hosted and runs on Linux. Nothing sends face data to a third party.

What to look for

Quick comparison table

App Best for Platforms Free plan Starting price/mo Rating
Double Take Orchestrator for Frigate + face providers Docker Fully free (OSS) Free The connecting glue
CompreFace Highly accurate face recognition Docker Fully free (OSS) Free Best accuracy in tests
DeepStack Long-running detection with face mode Docker Free Paid model add-ons Older but stable
Facebox Machine-Box’s face API Docker Free (limited) Paid support Historical mainstay
Home Assistant Automation front-end for the pipeline Docker Fully free (OSS) Free The hub
Frigate+ Frigate’s own paid model service Docker Frigate is free $50/year Improves object detection
Immich Face Search Face DB from your photo library Docker Fully free (OSS) Free Free training data source

The apps

1. Double Take – best orchestrator

Double Take is the connector between Frigate and one or more face recognition backends. It subscribes to Frigate’s MQTT events, pulls the snapshot for each detected person, sends it to CompreFace or DeepStack for identification, and republishes an MQTT message with the person’s name and confidence. Home Assistant then does whatever you want with that.

Where it falls short: Single point of failure in the pipeline. If Double Take crashes, face recognition stops (Frigate keeps detecting people). Config is YAML and matters.

Pricing:

Platforms: Docker.

Download: skrashevich Double Take

Bottom line: Every self-hosted Frigate face setup uses Double Take. Start here.

2. CompreFace – best accuracy

CompreFace from Exadel is the accuracy leader among free, self-hosted face recognition backends. Enrol 8-15 photos per person, verify recognition rates, and iterate. Ships REST and gRPC APIs; Double Take talks to it out of the box.

Where it falls short: Docker Compose stack has several services (API, database, workers). Runs comfortably on 8 GB RAM; smaller boxes struggle. GPU inference needs the CUDA-enabled image.

Pricing:

Platforms: Docker.

Download: CompreFace GitHub

Bottom line: CompreFace is what to point Double Take at first.

3. DeepStack – best long-running detection engine

DeepStack predates most of this list and still runs well. Face mode enrols identities via API, returns confidence scores, and holds up under continuous polling. Docker image is small; runs on ARM64 too (older Synology, Raspberry Pi 5).

Where it falls short: Development slowed after the original team moved on. Newer alternatives (CompreFace, InsightFace) beat it on accuracy for lookalikes.

Pricing:

Platforms: Docker (x86 and ARM).

Download: DeepStack docs

Bottom line: DeepStack is the pick if you need a light backend on ARM hardware.

4. Facebox – historical mainstay

Facebox from Machine-Box is a REST-based face recognition container that Double Take has supported since day one. Enrol identities via API, POST snapshots, get names back. Simple, stable, and still supported after Veritone’s acquisition.

Where it falls short: Newer projects have overtaken it on accuracy for edge cases (siblings, twins). Free tier limits identities.

Pricing:

Platforms: Docker.

Download: Machine-Box Facebox

Bottom line: Facebox is the “it just works” fallback if CompreFace fights your setup.

5. Home Assistant – best automation front-end

Home Assistant is where the named-person MQTT message from Double Take turns into “unlock the porch door for Sarah, dim the hallway lights, ping Slack with a snapshot.” Frigate integration installs from HACS. MQTT integration is built in.

Where it falls short: Setting up templates for the announcement takes a first evening. HA breaks less than it used to, but a major release occasionally shifts an automation syntax.

Pricing:

Platforms: Docker, Home Assistant OS, bare metal.

Download: Home-Assistant.io

Bottom line: Home Assistant is the layer that makes face recognition useful instead of decorative.

6. Frigate+ – best for improving object detection first

Frigate+ is Blake Blackshear’s paid service that trains a custom model on your camera streams to reduce false positives before face recognition ever runs. It does not do face recognition itself, but a Frigate with fewer “person” false positives means Double Take asks CompreFace about real people, saving CPU.

Where it falls short: $50/year is not free (though it does support the project). Not a face solution on its own.

Pricing:

Platforms: Docker.

Download: Frigate.video/plus

Bottom line: Frigate+ is the “reduce noise upstream” pick before you tune the face pipeline.

7. Immich Face Search – best free training data source

Immich (your self-hosted Google Photos replacement) already runs face clustering across your family photo library and groups faces by identity. Export a folder of high-quality reference images per person to seed CompreFace or DeepStack. Saves an hour of pointing your phone at family members.

Where it falls short: Immich’s face model differs from the recognition backends, so exported clusters need a manual cull. Not a real-time recognition engine.

Pricing:

Platforms: Docker.

Download: Immich.app

Bottom line: Immich cuts enrolment from an evening to a coffee break.

How to pick the right one

Do not enable face recognition on a public-facing camera without thinking about who might walk past. In many jurisdictions that turns your Frigate box into a data controller under privacy law.

FAQ

Does Frigate have built-in face recognition?

Not natively. Frigate detects objects (person, car, dog, package). Face recognition is a separate pipeline via Double Take plus a backend such as CompreFace or DeepStack.

Can face recognition run on a Raspberry Pi?

DeepStack runs on a Raspberry Pi 5 with acceptable latency for a doorbell use case. CompreFace works too but is heavier; expect a few seconds per detection on Pi hardware. On an Intel N100 mini PC or a Synology Plus-series NAS, both run comfortably in real time.

How many enrolment photos does a face need?

CompreFace and DeepStack both improve up to about 15 photos per person, taken in different lighting and angles. Beyond that returns diminish. Fewer than 5 photos usually produces low-confidence matches.

Is a Coral TPU needed for face recognition with Frigate?

The Coral TPU accelerates Frigate’s object detection, not face recognition. Face recognition uses different models. A GPU (or a modest CPU) is enough for CompreFace and DeepStack.

Can I run Double Take and Frigate on the same Docker host?

Yes; that is the standard deployment. Give each its own MQTT topic prefix, mount the same clips folder to both if you want Double Take to read Frigate snapshots directly, and put both behind the same reverse proxy.