HomeTechOps

Cameras

Frigate false alerts: detection tuning

Cut Frigate false positives the right way — min_score vs threshold, object area, zones, and the limits of motion masks.

Problem summary

Frigate false alerts are tuned in layers: motion → object detection → zones → object filters → review (alerts vs detections). The knobs that matter most are min_score vs threshold (they're different), object min/max area, and zones — and a motion mask only suppresses motion-triggering, not an object once it's tracked.

Operator snapshotEvidence first
First proof

Decide whether you're getting false OBJECTS or just noisy motion.

Screen to open

Frigate UI > Settings > Debug (enable zones)

Expected signal

You can tell from the UI whether bogus objects are detected or motion is just busy.

Stop boundary

Don't expect a motion mask to suppress an already-tracked object.

Layer path

1False alerts in Frigate are tuned in layers: motion detection → object detection → zones → object filters → review (alerts vs detections). Each layer has a distinct knob.
2The two filters people confuse: min_score drops any single detection below it; threshold is the score the object's median computed score must reach to count as a real object. They are different and both matter.
3Masks are not magic: a motion mask only suppresses motion-triggering in that region — once an object is tracked it's no longer hidden by the mask.
4Zones define where an object must be to matter; debugging with zones/debug view shows exactly what Frigate sees.
Runbook

Step-by-step runbook

Start here. Do each check in order, compare it to the expected result, and stop when the evidence explains the failure or the safe stop point applies.

1

Watch the debug view first

Check: Enable Debug with zones and observe the false detections live.

Expected result: You can see scores, box sizes, and zones for the bad hits.

If not: This tells you which layer to tune instead of guessing.

2

Tune score filters

Check: Raise min_score to drop weak hits; set threshold for the object's median confidence.

Expected result: Weak false objects stop appearing while real ones remain.

If not: Remember min_score and threshold are different gates.

3

Add area limits

Check: Set min_area/max_area to reject wrong-sized boxes for that camera.

Expected result: Leaf-sized and whole-frame false objects are filtered.

If not: Use pixels or a 0–1 fraction of the frame.

4

Define zones and require them for alerts

Check: Draw zones for the areas that matter and require in-zone presence.

Expected result: Alerts only fire for objects where you care.

If not: Detections outside zones no longer notify.

5

Mask perpetual motion, then split alerts vs detections

Check: Add motion masks only for trees/flags/timestamps, and rely on review (alerts vs detections) for notifications.

Expected result: Notification noise drops to real, in-zone, well-scored objects.

If not: Re-evaluate over a full day/night before tightening further.

Decision tree

Decision tree

If: Weak/low-confidence false objects.

Then: min_score too low.

Action: Raise min_score for that object type and re-evaluate over a day.

If: Wrong-sized false objects (tiny/huge).

Then: Missing area filters.

Action: Set min_area/max_area (pixels or a 0–1 fraction of the frame).

If: Real objects, but alerting everywhere.

Then: No/incorrect zones.

Action: Define zones and require in-zone presence for alerts.

If: Constant motion in part of the frame.

Then: Perpetual-motion region (trees/flag/timestamp).

Action: Add a motion mask for that region only — not where you want objects detected.

Safe stop: Don't expect a motion mask to suppress an already-tracked object.

Evidence

Evidence table

SymptomEvidence to collectLikely layerNext action
Lots of low-confidence false hits.Object scores vs min_score/threshold.Score filtersRaise min_score; tune threshold.
Tiny or frame-sized false boxes.Bounding-box area vs min/max area.Area filtersSet min_area/max_area for the scene.
Alerts from areas you don't care about.Whether zones are defined and required.ZonesDraw zones; require in-zone for alerts.
Motion spam from trees/flags/timestamp.Where motion triggers in the debug view.Motion mask regionMask only the perpetual-motion region.
Reference

Commands and settings paths

Use the debug view with zones

Frigate UI > Settings > Debug (enable zones)

Where: In the Frigate web UI on the live camera.

Expected: You see bounding boxes, scores, and zone entry in real time.

Failure means: It reveals whether the issue is score, area, or zone placement.

Safe next step: Tune the matching filter and watch the debug overlay update.

Inspect object scores

Frigate UI > Explore/Events — read the score on false events

Where: Against recent false detections.

Expected: You can see the actual scores the false objects received.

Failure means: Scores near your threshold show where to set min_score/threshold.

Safe next step: Set min_score just above the false-hit band; keep true objects above threshold.

Review the config filters

Frigate config: objects.filters.<label>.min_score / threshold / min_area / max_area; zones

Where: In the Frigate config (validate against current docs).

Expected: Filters and zones reflect your intent for each camera.

Failure means: Schema changes between versions — confirm keys against the live docs.

Safe next step: Apply, restart Frigate, and re-evaluate over a full day/night cycle.

Hardware boundary

Hardware and platform boundary

Change only when

  • Invest in better camera placement/lighting and a capable detector before over-tuning — clean input beats aggressive filters.

Evidence that matters

  • A camera with a good substream for detection, sensible field of view, and a detector with headroom (see the Frigate hardware planner).

Evidence that does not matter

  • Chasing a single 'magic' setting — false-positive control is the combination of score, area, zones, and masks.

Avoid

  • Over-masking (hides real objects) or treating every detection as an alert (notification fatigue).

Related tool/calculator

Use the linked calculator or tool to turn this runbook into numbers for your exact setup.

Frigate hardware planner

Related problems

Last reviewed

2026-06-02 · Reviewed by HomeTechOps. Built from June-2026 research verified against the Frigate object-filters, masks, and zones docs; centers the min_score-vs-threshold distinction (which most guides get wrong) and the motion-mask limitation. The alerts-vs-detections (Review) terminology is recent-version-specific — verify against the live docs before publishing exact keys.

Sources/assumptions

  • Assumes a working Frigate install already detecting objects (if you get no frames, fix that first).
  • Frigate's filter/zone/review terminology is version-specific — verify keys against the current docs before applying.
  • Tuning reduces false positives; it can't fully compensate for poor camera placement or lighting.

Source-backed checks

HomeTechOps turns official docs and conservative safety rules into a shorter runbook. These links are the source trail for the page direction.