You Only Hear About It When Someone Gets Charged
One Mooresville officer was charged, and the public learned everything — the searches, the count, the reason codes. Ten more officers in the same department were found to have violated policy, and the public will learn nothing. Same audit, opposite visibility. The dividing line is not how serious the conduct was. It is whether a prosecutor filed a charge.

In August 2026, a Mooresville police officer named Elizabeth Snowman was dismissed and criminally charged for running the Flock database 31 times to track a private citizen. Because she was charged, the record is open: the search count, the dates, and the fact that she logged 29 of the 31 as “motor vehicle infractions” — a reason field filled in every time, catching nothing. A resident can read all of it in the court file.
The same department audited ten more officers. On August 10 it closed that review with no additional criminal charges — but it found “several policy violations,” which it moved into an internal personnel review it says it cannot discuss. Same cameras, same audit log, same kind of conduct. The public learns everything about the one officer a prosecutor charged and nothing about the ten it did not. That is not an accident of this case. In North Carolina, it is the rule.
Why the line falls exactly there
North Carolina’s personnel statutes decide what the public may see. Under § 160A-168 for city employees and § 153A-98 for county employees, a public employee’s disciplinary record is confidential. The public may learn the date and type of a dismissal, demotion, or suspension — and the specific acts behind it only if they led to dismissal. A “policy violation” handled with a warning, a suspension, or a quiet resignation stays sealed by operation of law.
A criminal charge runs the opposite way. It creates a public court file — a warrant, an affidavit, a docket — that anyone can read. So the only event that reliably forces disclosure of ALPR misuse is a prosecutor’s decision to charge. Everything short of that — the misuse an agency handles internally, or never notices — is invisible to the people being surveilled. The question is never whether the tool is misused. It is whether anyone outside the department will ever be allowed to know.
The portals were supposed to close that gap
Flock and the agencies that buy its cameras have an answer to this: the “transparency portal.” Each is a public web page where an agency can post its policy, its camera count, and — sometimes — a downloadable log of its own officers’ searches. Marketed as the public’s window into the system, the portal is offered as the reason residents do not need to worry about what happens between the rare criminal cases.
We tested that promise the direct way. We pulled every North Carolina Flock transparency portal that offers a downloadable search audit — 26 agencies — and read all 2,795 searches logged in the roughly 30-day window they cover (mid-July to mid-August 2026). One clarification before the findings, because it matters: these are organization audits — each agency’s record of its own officers’ searches. None of them is a network audit, the separate record that would show who else searched that agency’s cameras. That record is never on the portal; it comes only through a public-records request. So this is the friendliest possible test — an agency’s own account of its own conduct. Here is what a resident actually gets.
Start with the failure that disqualifies all of them
Before the blank fields and the barred codes, there is a more basic problem, and it applies to all 26 without exception: not one portal publishes the network audit. Every downloadable file is an organization audit — the agency’s record of its own officers’ searches. None publishes the network audit: the far larger log of who else reached into that agency’s cameras through Flock’s shared national network. That is not a footnote. It is the whole ballgame.
The portals show the wrong tenth of the system. In the five North Carolina network audits we have obtained by public-records request — New Hanover County, Carolina Beach, Kure Beach, NC A&T, and UNC Pembroke, never from any portal — about 90% of the searches came from agencies outside North Carolina, led by the Houston, Texas Police Department, the single largest searcher of our cameras. The portal shows you the roughly one-in-ten searches an agency runs on itself and hides the nine-in-ten run by everyone else — the out-of-state and federal users a local monthly audit has no authority to review.
New Hanover’s own portal is the clean example. It reports 815 of the Sheriff’s own searches and omits the network audit entirely — the record we are now in pre-litigation mediation to pry loose. We fact-checked that portal in full: a page that calls itself transparency while withholding who is searching you.
A transparency portal that omits who is searching you is not partial transparency. It publishes the half the agency controls and withholds the half that would let a resident check anyone else. Measured against what the word promises, all 26 fail at the threshold — before we ever ask whether the searches they do show carry a reason. The findings below are what is left standing after that first, disqualifying omission.
Finding 1 — Half the agencies with a portal give you nothing to download
Only about half of the North Carolina agencies that run a Flock transparency portal offer a downloadable audit at all. The rest publish a policy page and a few headline statistics — nothing a resident could use to check a single search. Mount Holly, Pender County, Raleigh, Greensboro, Asheville, and Boone all run portals with no audit file. The 26 below are the complete set that lets you download anything.
Finding 2 — Most of what you can download does not say why
Of the 2,795 searches these 26 agencies published, 1,145 — 41% — carry no stated reason at all. Three agencies publish no reason field whatsoever: Hillsborough, Wilkesboro, and Mint Hill — whose officers ran 186 searches in a single month with zero stated purpose on the record. Among the seventeen agencies that do expose a free-text “reason,” most entries are blank or a single word — “investigation,” “stolen veh,” “query.” The field an agency would point to as proof of accountability is, more often than not, empty.
Finding 3 — Where the reason is visible, the barred use is sitting right there
Six of the 26 agencies use Flock’s structured category dropdown instead of free text, and that dropdown includes an option called “Traffic Infraction.” North Carolina law — § 20-183.31(b) — forbids using plate readers for traffic enforcement. Across those six agencies, officers labeled 19 of their own searches “Traffic Infraction,” in their own published audits: New Hanover County 11, Duck 4 (of just 22 searches — 18%), Apex 2, Davidson 1, Waxhaw 1. These are not accusations we are inferring — they are the reason codes the agencies chose and posted. And not one of them will produce a charge. They sit in public, admitted, and unaddressed. (We set aside searches coded “city planning / traffic analysis” and “criminal motor-vehicle offense,” which may be lawful; the 19 are the verbatim barred category only.)
One fair caveat, and we will state it plainly: an agency could argue some of these were miscodes — a wrong menu pick, thin training, careless data entry — rather than deliberate traffic stops. The New Hanover Sheriff’s Office has already made that argument about its own logs. But the accountability failure is the same either way. The agency published these codes, in its own audit, as the reason for the search. If its own labels cannot be trusted, then the audit everyone points to as the safeguard does not reliably record why any search was run — which is the larger problem, not a smaller one.
Every portal we could download, in one place
All 26 agencies that publish a downloadable audit, sorted by search volume in the ~30-day window. “Reason field” shows how — or whether — each records why a search was run.
| Agency (County) | Searches | Reason field | “Traffic Infraction” |
|---|---|---|---|
| New Hanover County SO (New Hanover) | 878 | Category | 11 |
| Cleveland County SO (Cleveland) | 848 | Free text | 0 |
| Mint Hill PD (Mecklenburg) | 186 | None | — |
| Apex PD (Wake) | 169 | Category | 2 |
| Whiteville PD (Columbus) | 129 | Free text | 0 |
| Nashville PD (Nash) | 71 | Free text | 0 |
| Roxboro PD (Person) | 69 | Free text | 0 |
| Hamlet PD (Richmond) | 63 | Free text | 0 |
| St. Pauls PD (Robeson) | 63 | Free text | 0 |
| Waxhaw PD (Union) | 63 | Category | 1 |
| Craven County ABC Board (Craven) | 52 | Free text | 0 |
| Davidson PD (town) (Mecklenburg) | 45 | Category | 1 |
| Hudson PD (Caldwell) | 37 | Free text | 0 |
| Columbus PD (Polk) | 24 | Free text | 0 |
| Wilkesboro PD (Wilkes) | 24 | None | — |
| Duck PD (Dare) | 22 | Category | 4 |
| Tabor City PD (Columbus) | 18 | Free text | 0 |
| Appalachian State Univ. PD (Watauga) | 11 | Category | 0 |
| Chadbourn PD (Columbus) | 9 | Free text | 0 |
| Polkton PD (Anson) | 6 | Free text | 0 |
| Bessemer City PD (Gaston) | 5 | Free text | 0 |
| Sharpsburg PD (Nash) | 3 | Free text | 0 |
| Connelly Springs PD (Burke) | 0 | Free text | — |
| Elizabethtown PD (Bladen) | 0 | Free text | — |
| Franklinton PD (Franklin) | 0 | Free text | — |
| Hillsborough PD (Orange) | 0 | None | — |
Rolling ~30-day window, pulled Aug 13, 2026. “Category” = Flock’s structured dropdown (the only field where “Traffic Infraction” appears verbatim). “Free text” = an open field officers type themselves, most often left blank. “None” = the portal publishes no reason field at all. Four portals (Connelly Springs, Elizabethtown, Franklinton, Hillsborough) offer the download but returned no searches in the window.
On the window: a single month is a snapshot, not a trend — but it is the only window these portals publish. Each shows a rolling ~30 days and nothing before it, so a longer study is not something an agency withheld from us; it is something the portal design makes impossible for anyone. That a resident cannot pull last quarter’s searches, only the last thirty days’, is itself part of the point.
What the portals actually prove
Put the two halves together. Snowman labeled her stalking searches “motor vehicle infractions,” and the reason field caught nothing. The portals show the same lesson at scale: the reason is blank 41% of the time, absent entirely at three agencies, and — where it does record a use the law forbids — carries no consequence at all. A record that is empty four times in ten, missing at three agencies, and without consequence where it is full is not oversight. It is a brochure.
None of this is the agencies’ worst conduct laid bare. It is their own account of their own searches, on the record they chose to publish — and it still shows barred use and unexplained access. The misuse that never gets coded, or gets coded honestly and then handled as a “policy violation,” stays exactly where the Mooresville ten are: sealed. The public sees it only if a prosecutor decides to charge, and by then a private citizen has already been tracked.
Some portals don’t just hide — they reassure
Omission is the quiet failure. A few portals go further and post affirmative “Myths vs. Facts” reassurances that the record contradicts. Our own Cape Fear neighbor is the clearest case: the Pender County Sheriff’s Office portal offers no downloadable audit at all — instead of records, residents get a myth-busting page. When it launched (we read it Aug. 16, 2026) the page had exactly two sections and neither delivered Pender’s records: a “Community Impact” feed of Flock success stories from other counties — Lincolnton, Rockingham, Gastonia, Huntersville — not one from Pender, and a “Policy & Trust” tab that reproduces Flock’s corporate boilerplate rather than the Sheriff’s actual ALPR policy. It does publish a handful of headline numbers — 30-day retention, 8 cameras, roughly 284,000 reads and 80 searches in 30 days — but nothing a resident could use to check a single search, and no list of who else can. Three of its myth-busting claims do not survive contact with the evidence.
“Flock has never been breached”
Pender’s portal says: “Flock’s cloud environment has never been breached,” and lists SOC2, ISO 27001, FedRAMP, and HECVAT compliance.
The record says: The claim leans on a narrow word. No one had to “hack” anything: in 2026, security researchers and technologist Benn Jordan found Flock had left camera feeds — live streams plus roughly 30 days of archived Condor video — wide open on the public internet, discoverable through the Shodan search engine, including footage of children at a playground. 404 Media verified it in person; Flock conceded a “misconfiguration” and said it was fixed. Compliance badges do not prevent a misconfiguration, and to a resident whose video ended up in a stranger’s browser the distinction between “breached” and “left exposed” is academic. (The reporting.)
“Flock does not sell or share your data”
Pender’s portal says: “Your community owns 100% of your data and it will never be sold. Only your agency decides who to share your data with, not Flock.”
The record says: We do not yet hold Pender’s contract, so we say what we can prove. Every Flock contract we have obtained — New Hanover’s #25-0364 and Flock’s standard terms — lets Flock disclose footage to “law-enforcement authorities, government officials, and/or third parties” on a mere “good-faith belief,” and keeps a perpetual right to an anonymized derivative of the data for training its AI. Owning the data and controlling it are not the same thing. And the portal quietly concedes the leak in its own answer: “Other agencies who you share footage with have been responding to FOIA requests and sharing this search data.” The data does leave — through everyone the agency shared it with. (The clauses, side by side.)
“Your data is not fed into a national database”
Pender’s portal says: “Each agency controls access to its own data… nothing is shared automatically. Participation is opt-in.”
The record says: “Opt-in” is doing all the work in that sentence. Once an agency turns sharing on — and the audit volume shows most have — a single search sweeps every network it can reach at once, and a returning hit sends that plate data straight to the searching agency, routinely in another state. Across the five North Carolina network audits we hold, about 90% of searches came from outside North Carolina. “Nothing is shared automatically” is technically true and practically empty: the setting is on, so in effect it is automatic — and once your data crosses a state line, North Carolina’s protections do not follow it. (Who is searching North Carolina’s cameras.)
What would actually make this transparent
Three changes would turn the portal from a brochure into a record. First, an external audit — state law today requires only an annual self-review reported to the head of the agency, which is how misuse goes unnoticed for months. Second, produce the reason for every search — New Hanover County redacts that field in all 2.98 million of its rows, so no resident can check whether barred use is happening here. Third, release the network audit — the record of who else searches these cameras — which no portal shows and which five NC agencies have already produced on request. Until then, the honest description of a “transparency portal” is a page that tells you everything except what you would need to hold anyone accountable.
Your county commissioners or town council can ask for all three, from the dais, at their next meeting. The record is already public in 26 other North Carolina towns. The only question is whether ours joins them — or waits for the next criminal charge to find out what the log already knows.
A note on fairness and right of reply. Every figure here comes from an agency’s own published portal, downloaded on the date noted; we did not seek advance comment, because the record is the agencies’ own. The offer is open and standing: any agency that can show a search coded “Traffic Infraction” was not traffic enforcement, explain a blank reason field, or correct anything on this page — write to mark@deflockilm.org and we will publish the response prominently, with the correction.
Sources
- DeFlockILM analysis of 26 North Carolina Flock transparency-portal organization audits (
public_search_audit.csv), downloaded Aug 13, 2026; the full directory of NC portals is here. - Mooresville PD cases: the Snowman warrant, analyzed · the NC misuse tracker (Aug 10, 2026 audit closure).
- N.C. Gen. Stat. § 160A-168 and § 153A-98 (personnel-record confidentiality); § 20-183.31 (ALPR use limits and audit requirement).
- Pender County SO Flock transparency portal, “Myths vs. Facts” section (transparency.flocksafety.com), captured Aug. 13, 2026. Flock camera exposure: 404 Media / Benn Jordan, reported Aug. 2026 (syndicated report). Contract discretion clauses: New Hanover County contract #25-0364, analyzed here.
General information for public discussion, not legal advice. Criminal charges are accusations; each named officer is presumed innocent unless proven guilty. Search totals reflect each portal’s rolling ~30-day window as downloaded Aug 13, 2026.
You’re not a suspect. So stop being tracked like one.
It takes one minute. Add your name — then tell the officials who represent you to take the cameras down.
