---
title: "Automated vs. Manual Traffic Counting"
description: "Store traffic accuracy, manual vs automated (sensor) based counting"
url: https://help.flow-insight.com/en/articles/580-automated-vs-manual-traffic-counting
collection: "Traffic & measurement definitions"
updated: 2026-08-06
language: en
alternates: [ja]
---

# Automated vs. Manual Traffic Counting

Store traffic accuracy, manual vs automated (sensor) based counting

> **Warning:** ⓘ Sensor capabilities vary by type. This article reflects how AI camera systems (like the one at this store) work. Stores with 2D or 3D lens sensors, or dome-mounted cameras, may behave differently — particularly around filter availability, crowd handling, and detection method.

### **Why Counting Store Traffic Is Essential**

Store traffic means the number of people entering your store. It represents your store's sales opportunity: the more accurately you understand traffic, the more clearly you can understand conversion rate, staffing effectiveness, promotion impact, and store performance.

A people counting sensor automatically measures store traffic by counting entrants at the store entrance.

A manual traffic count measures the same thing, but relies on staff counting entrants by hand. Throughout this article, "traffic" means people entering the store, and "conversion rate" means the percentage of those entrants who make a purchase.

### **How Manual and Automatic Sensor Counting Differ**

Manual traffic counts and people counting sensor counts both measure the same core metric: store traffic, or the number of people entering your store.

Both methods support the same business purpose: understanding sales opportunity and calculating conversion rate. However, they collect traffic data in very different ways.

A people counting sensor is always on and applies the same counting rules consistently. Every minute of every day, in every store, entrants are counted using the same methodology. Accuracy is important, but consistency is one of the biggest benefits of automated people counting.

A manual traffic count depends on the person doing the counting. Results can be affected by attention, timing, store conditions, and individual judgment about who should or should not be counted as an entrant.

**Manual traffic count**

-   Staff may miss entrants during busy moments or when distracted.
    
-   Groups may be counted inconsistently as one person instead of individual people.
    
-   Staff may forget to count staff members, or may exclude them inconsistently.
    
-   Counts may lose continuity when responsibility changes during a shift.
    
-   Customers with very short visits may not be counted manually.
    
-   Methodology can vary by person, shift, or store.
    

**People counting sensor**

-   Counts detections at the entrance continuously, without breaks or distractions.
    
-   Counts each person individually when the sensor can clearly detect them.
    
-   Staff movements can be filtered separately when staff filtering is available and enabled.
    
-   Runs continuously, with no shift handoff issues.
    
-   Short visits are still logged when the person crosses the sensor threshold.
    
-   The same methodology is applied consistently across stores.
    

* * *

### **How AI Filters Work**

Raw sensor data includes all detected entries, including customer entries, staff movements, and same-day repeat visits.

Filters run on a slight delay and again overnight to produce a filtered visitor total. Which filters are active depends on your store's configuration.

The two most common filters are staff exclusion and same-day repeat exclusion.

**Staff Exclusion**

The AI system identifies likely staff movement based on behavioral patterns such as frequent entries, longer dwell times, and repeated entrance and exit routines.

When staff movements can be identified, they are removed from the filtered visitor total. Cases that cannot be confirmed as staff remain included in the standard customer count.

In low-traffic stores, staff exclusion can have a meaningful impact on conversion rate accuracy because staff movement may represent a larger share of total entrance activity.

**Same-Day Repeat Exclusion**

If the same person enters, leaves, and returns on the same calendar day, only the first visit is counted in the filtered total.

This helps avoid inflating visitor numbers with repeat entries from the same person, which can make conversion rate look lower than it really is.

The day boundary resets at midnight.

* * *

### **Why the Numbers May Not Match**

A difference between your manual traffic count and the filtered system count is normal.

The sensor may detect entrants that staff missed during manual counting. At the same time, if filters are enabled, the system may remove staff movements and same-day repeat visits from the final filtered total.

This means the filtered total may be higher or lower than a manual count depending on store conditions, staff movement, repeat visits, and counting consistency.

A large difference does not always mean something is wrong. However, if the difference is larger than expected and there is no clear explanation, it may be worth requesting an accuracy check.

* * *

### **Sensor types compared**

Different sensor types vary in accuracy, available filters, AI features, and installation requirements.

<table data-id="34f7050c-eb98-4e19-9cc5-0ddd3978e4e8" style="min-width: 150px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><td colspan="1" rowspan="1"><p data-id="c01fbd68-fda5-4fc2-90de-e6e3e015a595">Feature</p></td><td colspan="1" rowspan="1"><p data-id="208a7e5e-3d16-4ef7-960a-74bd185ff010"><strong>Vion Vision (G5/G6/D1/D2)</strong><span style="color: rgb(136, 136, 136);"><strong>Overhead camera</strong></span></p></td><td colspan="1" rowspan="1"><p data-id="bf7da3f1-522d-44c1-b7c3-14b1febc3d74"><strong>Brickstream (2510)</strong><span style="color: rgb(136, 136, 136);"><strong>3D stereo sensor</strong></span></p></td><td colspan="1" rowspan="1"><p data-id="be8b63a3-3154-448d-b264-7f60238ea364"><strong>Brickstream (2500/2300/2310)</strong><span style="color: rgb(136, 136, 136);"><strong>3D stereo sensor</strong></span></p></td><td colspan="1" rowspan="1"><p data-id="260e94d4-c29d-44a9-b299-755e575d1384"><strong>TDI (2000 series)</strong><span style="color: rgb(136, 136, 136);"><strong>3D stereo sensor</strong></span></p></td><td colspan="1" rowspan="1"><p data-id="353c63d8-9f73-457c-83c5-954301c021d4"><strong>TDI (1000 series)</strong><span style="color: rgb(136, 136, 136);"><strong>2D video sensor</strong></span></p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="89504bee-83cd-4222-8376-ea63d4270355"><strong>Detection</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="dd858c43-b18c-4d13-9719-fdc5a5bd8b62">AI body shape &amp; movement, top-down</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="14b38591-ab43-413b-a1a8-9cb45e7b7b4a">Depth mapping via dual lenses</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="c2e88f87-2c1c-4f4a-9807-26e876aac0a2">Depth mapping via dual lenses</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="56b0cc98-661c-4922-9815-d91e6feb040d">Depth mapping via dual lenses</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="405b77bf-f168-42ae-8217-8edfe5792ad5">Line-crossing motion detection</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="e20f5ab0-f026-47be-941c-b633fd5aa020"><strong>Mounting</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="8802458f-d5d4-4ce9-85d1-c2168df0764b">Top-down, Angled</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="3942b394-9443-45fd-bae8-5d40bb157d2e">Top-down, Angled</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="067aa12e-a520-407c-8758-7cc73b0b159a">Top-down, Angled</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="889cc413-e05b-48f2-8c80-76a329dda228">Top-down</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="4ed88c10-4ef6-4fe1-bbdf-ba9c083bb95c">Angled</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="33e13535-c805-46f9-add9-a243b6c914ed"><strong>Crowd performance</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="cc2074de-7555-4ab9-8ac8-e1d696145093">Top-down ★★★ Excellent</p><p data-id="0f9b8dc0-b967-41ef-9dd8-505c3b17c54a">Angled ★★ Good</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="39981d95-a541-4551-8d6f-66715f4b08fd">Top-down ★★★ Very Good</p><p data-id="03f895f7-4195-49ca-a0c2-3170264190ab">Angled ★★ Good</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="e831e9b1-1c90-4ee3-80f0-5319da585d23">Top-down ★★★ Very Good</p><p data-id="c5b25845-19e3-4769-810e-47f974b8926d">Angled ★★ Good</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="8f7d429b-8630-42bb-a6f4-f1a77c665f5b">Top-down ★★★ Very Good</p><p data-id="6bd23d30-1023-41f0-8e6c-346837fdc7b5">Angled ★★ Good</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="02f91a93-1860-4daf-9869-bc8a79084dd3">★★ Moderate</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="dd0fb078-021d-4d5a-aa80-83315896dd76"><strong>Group counting</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="b0b99e9e-0641-45f6-9161-8a5b2a82265b">Individual</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="c396886e-5e4d-4f91-85f9-3e8c53525497">Individual</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="3c888e32-e8d6-401b-b0b7-f0b879e5a3ac">Individual</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="16362f39-3766-49fe-bb53-6cb57e4502d7">Individual</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="0844bad3-aa24-448d-b7eb-d135c281991c">May group as one</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="0c593ebb-3b06-4828-b0f5-458f6bcf3143"><strong>People overlapping</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="9ddc9dc0-f0cd-4495-ad22-a69bb31d9ade">Rarely misses — top-down view separates people</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="b2ad9db6-5064-4ac5-b9cd-1c4c729f5927">Rarely misses — top-down view separates people</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="b1014975-e7f6-4ed4-a98c-50aa74aa6c48">Rarely misses — top-down view separates people</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="2747d348-2149-4c19-9737-4689867017ca">Rarely misses — top-down view separates people</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="20f8912e-c650-41b0-a4aa-f14698370da6">May miss people hidden behind others</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="0cfa8d9d-08a5-4ae3-9fd6-b9956ef312e1"><strong>Staff filter</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="d07cde3b-638e-47e0-a9a0-5fe6cee78fbf">Available</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="2b142a27-0c5d-4f85-b202-41516c8647c6">Available *Not applicable for pathlinked sensors</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="d1a9c615-70e9-45d9-ac9d-d5bad2c0af58">Not Available</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="4ec9c409-053f-4683-ac56-1cd6409c8c74">Not Available</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="dcc0f465-db18-4d11-8a5a-916e42c0f398">Not Available</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="23ace53c-1cba-45ae-8ef1-3a588a674d55"><strong>Repeat visit filter</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="3135ee75-e8f7-4fa8-856a-efb9e14ddb6d">Available</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="8e991148-89a6-4f8c-bbef-d5d2411ced1c">Not Available</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="fa8d82fe-fa65-44ce-a51f-ec785cbeba33">Not Available</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="d217f70a-f4e8-4be8-a279-c669270731aa">Not Available</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="96471b8c-6b1d-4919-ada4-5fb59b4d4eed">Not Available</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="31b4acf5-d502-4b41-bf1d-3cd13366c668"><strong>Minimum Detection Height</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="4993a123-8ec6-4f64-ae16-2ffcee3f4d73">Varies by entrance environment</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="a2119745-a0e9-46e5-9817-db80b4a73e80">Default 120cm+</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="70d67e82-ae9c-44d2-9f5c-0d178bbce696">Default 120cm+</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="a14b52d9-1e16-4df4-a04e-2c8a33de2643">Default 120cm+</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="7800b4ab-dbdc-4a11-b008-d6d9fce505d0">Varies by entrance environment</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="5aa781a2-d340-40d5-bb42-339d02a5bcb6"><strong>U-turn: outside → inside</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="b1bc07d8-c5f7-4fd5-8dab-bbb0ea3b1f40">U-turn cancel zone — U-turns will be counted after 3 seconds of crossing count line</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="6662703d-d421-4e90-ae5d-5f52ff5beacc">U-turn cancel zone — U-turns will be counted once countline is crossed and customer exits view range</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="f6ffaf06-72a5-42a1-871b-29ce6fddfe7d">U-turn cancel zone — U-turns will be counted once countline is crossed and customer exits view range</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="97c4a7d3-ce7b-40b4-9c67-4c5a06ccb17c">U-turn cancel zone — U-turns will be counted once countline is crossed and customer exits view range</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgb(240, 240, 240);"><p data-id="878a9db2-f852-4ee6-89bd-6d3978a32b9d">Counted immediately on line cross</p></td></tr><tr><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(51, 51, 51); vertical-align: top; line-height: 1.4; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; border-bottom-width: initial; border-bottom-style: none; border-bottom-color: none;"><p data-id="836adca6-9d74-4a52-92b6-9107dcb27b29"><strong>U-turn: inside → outside</strong></p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: initial; border-bottom-style: none; border-bottom-color: none;"><p data-id="658728a6-f4b2-4962-b21e-f3d47a0638b0">AI-determined</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: initial; border-bottom-style: none; border-bottom-color: none;"><p data-id="941cd258-5a85-4b7a-b5e0-69a1bddecdd5">U-turn cancel zone — U-turns within the detection zone are not counted</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: initial; border-bottom-style: none; border-bottom-color: none;"><p data-id="fd98a520-b708-4863-a6b4-ccba7db4a307">U-turn cancel zone — U-turns within the detection zone are not counted</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: initial; border-bottom-style: none; border-bottom-color: none;"><p data-id="bff30683-e3aa-48a2-8a8d-d05035fc9650">U-turn cancel zone — U-turns within the detection zone are not counted</p></td><td colspan="1" rowspan="1" style="box-sizing: border-box; margin: 0px; padding: 6px 7px; color: rgb(68, 68, 68); vertical-align: top; line-height: 1.4; border-bottom-width: initial; border-bottom-style: none; border-bottom-color: none;"><p data-id="ef845961-38ca-4600-8d3d-8058a95be799">Counted immediately on line cross</p><p data-id="7c36a946-7ed4-4422-8688-4dd9d095f1fe"></p></td></tr></tbody></table>

### Common Questions

**Does the sensor use face recognition?**

No. The sensor does not use facial recognition.

Detection is based on body shape, clothing, dwell time, and entrance/exit movement patterns. This means that a customer putting on or removing a mask inside the store does not affect how they are counted.

However, a major clothing change may affect whether the system recognizes the person as the same individual.

What if a store has multiple entrances?

Stores with multiple entrances have a separate camera or sensor at each monitored entrance. The total visitor count combines detections from all monitored entrances.

If your store uses AI cameras, deduplication may be applied across the full store. For example, if a customer enters through one door, exits through another, and later enters again, the system can still count that person once when the repeat visit filter is available and enabled.

Your store configuration shows how many entrances and cameras are monitored.

Stores using 3D sensors are highly accurate and very consistent, but they do not have the same filtering capabilities as AI cameras. For example, they may not be able to filter staff or identify customers who enter and exit multiple times.

How are groups or couples counted?

Each person is counted individually as they cross the sensor threshold, as long as the sensor can clearly detect each person.

Group counting, where a couple or family is counted as a single entry, is not enabled at this store.

If two people enter together, they are counted as two visitors.

**What if a staff member is shopping as a customer?**

An off-duty staff member shopping normally will usually be counted as a customer if they have not worked that day.

The staff filter is based on behavioral patterns such as frequent entries, long dwell time in staff areas, and repeated entrance/exit routines.

Occasional customer-like behavior is not usually flagged as staff movement.

What about delivery drivers or contractors?

It depends on frequency and behavior pattern.

A delivery driver who visits once or twice, uses the front entrance, and stays only briefly will typically be counted as a customer.

Contractors who are on-site multiple times per day and show staff-like movement patterns may be filtered, but this is not guaranteed.

What happens during very busy periods, such as events, sales, or fire drills?

Your sensors are designed to handle high-volume traffic in normal store conditions.

Top-down ceiling-mounted sensors generally perform better in crowds than angled or dome cameras because they are less likely to miss people hidden behind others.

If many people enter at once and one person is completely blocked from view, some undercounting is possible regardless of sensor type. However, these cases are usually infrequent and typically do not have a major impact on overall accuracy.

Filter logic continues to apply as normal.

**Does the repeat visit filter apply across midnight?**

No. The day boundary resets at midnight.

If a customer enters at 11:50 PM and returns at 12:10 AM the next day, the second visit is counted as a new entry. It is not treated as a same-day return.

How are children and babies counted?

Older children who walk through the entrance independently are counted the same way as adults.

Babies and toddlers in a pushchair or stroller are typically not counted separately. In most cases, the sensor detects the adult pushing the stroller, not the stroller itself.

A baby being carried may occasionally register as a separate detection, but in most cases babies are not counted independently.

Are pets counted?

No. The AI is trained to detect human body shapes and movement patterns, so animals typically do not trigger a count.

A large dog walking through the entrance on a lead may occasionally cause a false detection, but this is rare and unlikely to have a meaningful effect on your traffic totals.

* * *

If you have any questions or feedback, please contact support at [support@flow-solutions.com](mailto:support@flow-solutions.com).
