Pflugerville ultimately rejected the updated Flock Safety Master Services Agreement. This post analyzes the final version Flock agreed to put before the City for consideration, including the concessions we secured and the protections that remained outside the contract.
Three of us on the Pflugerville City Council raised concerns during the contract review. We did add some important protections. The final package still left the City carrying most of the financial risk and without a practical way out if the technology, law, ownership, or public risk changed.
This analysis goes hand in hand with my other post, A Field Guide for Elected Officials to Investigate Flock. That post covers the questions officials should ask about effectiveness, data use, camera placement, outside-agency access, and police policy. This post focuses on the contract itself, the terms a city can actually enforce against Flock.
For local officials reviewing a Flock contract, the lesson is straightforward: negotiate the promises into the agreement. Flock's website and public-relations materials are not a substitute for enforceable terms. Council postponed our renewal vote on August 11, 2026. One day later, on August 12, Flock launched a nationwide campaign about trust, safety, and privacy, cutting its recommended retention period and introducing new audit tooling. Separately, on August 21, Flock announced an updated Information Security Addendum and revised terms and conditions. For Flock, trust has become a slogan more than something the company has earned.
If you only read one section, read this
The single largest problem: Flock capped its own liability at 12 months of fees, with no carve-out for gross negligence, willful misconduct, or a serious data breach, and no obligation to cover the City's response costs. Beyond that, the four items that matter most for another city negotiating this same contract:
- No practical exit. Flock would not agree to termination for convenience or for a material change in law, ownership, or risk.
- Rules Flock can change unilaterally. The Privacy Policy, Implementation Guide, and Reinstall Fee Schedule are incorporated by reference to a live webpage Flock can edit "at any time," with no requirement to flag material changes to the City.
- Interagency access left largely uncontrolled. The proposal did not require written City authorization, access logs, or periodic review of which outside agencies could reach Pflugerville's data, the exact gap that ended up driving the final vote.
- Undefined terms that gut enforcement. Security Incident, External Access, Subcontractor, and Personal Information were never defined, which means every protection built on those words is only as strong as whichever lawyer argues about them first.
Flock agreed to an annual SOC 2 audit, a non-appropriation clause, and a data license limited to the contract term with no AI training. Other cities should demand each of those protections. The unresolved terms still left too much risk with Pflugerville.
What Flock agreed to add
We negotiated to add a slightly modified version of our City's standard contract rider, which added protections that did not appear in Flock's standard Master Services Agreement:
- Flock would have been required to notify the City within 48 hours after discovering an actual or suspected cybersecurity incident that may compromise City information.
- Flock would have been required to cooperate with the City's investigation and provide information about the scope, affected data, corrective action, and steps the City could take.
- Flock would have been required to maintain an annual SOC 2 Type II audit covering security, availability, confidentiality, and privacy.
- Flock would have been required to provide the audit to the City, address relevant deficiencies, and provide additional security assurance if the audit was missing or inadequate.
- Failure to meet the SOC 2 requirements could have become a material breach of the contract.
- The City could have left at the end of a fiscal year if Council did not appropriate enough money to continue.
Flock also agreed to better data-use language than it now publishes in its online standard terms. Our proposed MSA would have limited Flock's data license to the contract term and expressly prohibited using City data to train or improve artificial-intelligence or machine-learning models.
Those protections did not appear by accident. Local officials can ask for changes, and Flock can agree to put them on paper.
What remained unresolved
Flock's liability would have been capped at the amount the City paid during the previous 12 months. The proposed contract did not create an exception for a serious data incident, gross negligence, willful misconduct, or a confidentiality failure. It also did not require Flock to cover the City's response costs or defend the City against third-party claims caused by Flock or its subcontractors.
That was the largest remaining problem. A breach could require forensic work, legal review, resident notices, system recovery, evidence review, and additional staff time. One year of contract fees would have covered only a fraction of those costs. Flock carried $5 million in insurance, but insurance describes what coverage may be available. The liability cap states what Flock actually agreed to pay Pflugerville. It would not have covered the financial cost of a serious incident or the resulting loss of public trust.
Flock capped its risk. Pflugerville taxpayers had no comparable cap. The proposal transferred risk from Flock to Pflugerville residents.
The proposed contract also lacked a practical exit. The City could have terminated for an uncured material breach or a failure to appropriate funding. It could not have terminated for convenience, a major change in law or policy, reduced privacy protections, poor effectiveness, or a change in Flock's ownership. Flock could have assigned the agreement during a merger, change in control, or sale of relevant assets, provided it gave notice.
The proposed contract also incorporated Flock's Privacy Policy, Customer Implementation Guide, and Reinstall Fee Schedule through links to Flock's website. It did not identify a dated version, attach a copy, or clearly state that the version in effect when the City signed would control.
These are material contract terms. The Privacy Policy addresses training data, sharing, deletion, security, subprocessors, legal demands, and who receives privacy rights. The Implementation Guide assigns work and costs to the customer, identifies services that cost extra, and points to the "then-current" reinstall policy. The Reinstall Fee Schedule determines what the City pays to move or replace equipment.
Flock's Privacy Policy is clear about this. It says Flock may revise the policy "at any time" by updating the webpage. It promises to post changes there and recommends that customers periodically return to see how Flock collects, uses, and shares information. That is not an acceptable way to manage material terms for a high-risk law-enforcement tool. A city should not have to monitor a vendor's website to learn whether its legal rights changed.
Flock kept the power to change the rules while Pflugerville would have kept the obligation to live with them. My cellphone and home internet providers let me cancel when they change their terms. Flock would not give Pflugerville that protection for a law-enforcement surveillance system.
Definitions were another major issue. The proposed MSA defined Customer Data, Authorized End Users, Retention Period, and other basic terms. It still did not define several terms that determine whether the City can enforce the protections: Security Incident, External Access, Subcontractor, De-identified Data, Audit Log, Personal Information, Criminal Justice Information, and Change of Control.
Those would have mattered in a dispute. A 48-hour notice requirement is weaker if the parties can fight over what counts as an incident. A deletion requirement is weaker if it doesn't cover "de-identified data" and backups. A change-of-control right cannot work if the triggering transaction is unclear. Definitions determine where the protection starts and where Flock can argue that it ends.
What Flock says publicly and what its terms say
Flock's plain-language data guide says customers own their data "full stop" and describes Flock's license as giving the company enough access to provide and improve its service.
Flock's current standard terms give the company an irrevocable, perpetual, worldwide license to use customer data to provide services and improve its products. Those terms also treat derivative outputs, analyses, reports, and models as Flock property. The same standard terms cap Flock's liability at 12 months of fees and define permitted use broadly enough to include business purposes and "prevention of commercial harm." The raw image may begin as city data, while the value-added outputs become Flock property. Owning the input is not the same as controlling it end to end.
Flock announced new terms on August 21 and described them as stronger customer protections. The new Information Security Addendum includes commitments covering encryption, United States storage, vendor review, Flock workforce access, penetration testing, backups, and incident notice.
Flock also states that these updates do not change executed static agreements. The proposed Pflugerville MSA would not have automatically received the new addendum. Flock can announce a stronger privacy or security position while existing customers remain governed by older language. A city receives the improvement only if Flock signs an amendment or the existing agreement already incorporates the updated term. Flock's media campaign about moving to a seven-day retention period is a good example. Existing customers are not automatically switched, and Flock's new privacy controls do not automatically amend their contracts.
One important comparison favors Pflugerville. Flock's new online terms claim a perpetual license to use customer data to improve its products. The final proposed Pflugerville MSA would have limited the license to the contract term and prohibited AI-model training with City data.
The distinction between "Customer Data" and "Personal Information" also matters. Flock's Privacy Policy says it may use less than 1% of images captured through its services as machine-learning Training Data after removing metadata and identifying information. The policy then says footage captured in public spaces does not contain Personal Information connected to an identifiable person. Flock says it therefore cannot process individual access, correction, or deletion requests for people whose license plates appear in that footage.
That classification means Flock's promises to protect or delete "Personal Information" do not necessarily protect the raw vehicle imagery its cameras collect. The controlling contract must say what Flock may do with Customer Data, footage, derived data, and Training Data. Flock agreed to an express prohibition on using City data to train or improve AI or machine-learning models in the proposed renewal. The proposed MSA did not require Flock to identify or remove any Pflugerville imagery that may already have entered a training dataset under an earlier agreement.
The full negotiation checklist
These were the full set of contract priorities we identified. The status below reflects Flock's final proposal to Pflugerville, which Council rejected. Each item also carries a priority tag: High means it directly affects financial exposure, an enforceable exit, or a category of data misuse Pflugerville actually experienced; Medium means it strengthens enforcement or closes a real gap but isn't load-bearing on its own; Lower means it's worth having but wouldn't change the outcome of a dispute by itself.
Every protection Flock agreed to for Pflugerville is something another city can demand. Those concessions should become the starting point for the next negotiation. Cities should keep pressing for the protections Flock left out so each contract improves on the last.
Financial risk and liability
- Not agreed: Liability cap (High). Raise the cap for data, security, and confidentiality failures, and exclude gross negligence and willful misconduct. Flock kept the proposed Pflugerville cap at 12 months of fees.
- Not agreed: Indemnification and incident costs (High). Require Flock to pay response costs and defend the city against third-party data and intellectual-property claims caused by Flock or its subcontractors. Flock did not include that protection.
- Not agreed: Cyber insurance (Medium). Require a dedicated cyber limit appropriate for the city's exposure. Flock offered a $5 million limit shared with professional-liability claims.
Security controls, auditing, and compliance
- Partly agreed: Breach notice and cooperation (Medium). Flock agreed to notify Pflugerville within 48 hours after discovering an actual or suspected incident, provide known details, and cooperate with the City. Flock did not agree to cover the City's response costs, and the proposal did not require every continuing update, evidence-preservation step, or root-cause report we sought.
- Agreed: Independent security assurance (Medium). Flock agreed to annual SOC 2 Type II audits, delivery of the reports, remediation plans for relevant deficiencies, and a material-breach consequence for specified failures. Other cities should demand at least the same terms.
- Not agreed: Specific security controls (Medium). Put encryption, multifactor authentication, role-based access, penetration testing, monitoring, and secure development requirements in the agreement itself. Flock's new online security addendum covers portions of this, but Flock did not add it to Pflugerville's proposed static MSA.
- Not agreed: Criminal Justice Information Services compliance (High). Require Flock to identify covered Criminal Justice Information and comply with the applicable FBI security requirements. Flock relied on a general reference to applicable law instead of allocating those duties.
Data rights, use, and retention
- Not agreed: Data-collection limits (Medium). Limit collection to the automated license plate reader data the city approved: the plate, rear vehicle image, time, location, and specifically defined metadata. Flock continued to define Customer Data broadly enough to include audio and video.
- Not agreed: Narrow permitted use (Medium). Limit use to defined law-enforcement and public-safety purposes. Flock kept general business purposes and "prevention of commercial harm" in the proposal.
- Partly agreed: Narrow Flock's data license (High). Flock agreed to end its license with the contract term and prohibit AI or machine-learning model training with City data. It kept the words "irrevocable" and "worldwide" during the term and did not agree to identify or delete City imagery previously placed in Training Data or derived datasets. Other cities should demand the no-training language and keep negotiating the rest.
- Not agreed: New surveillance features (High). Prohibit facial recognition, biometric or occupant identification, audio capture, and other expanded surveillance features without separate approval. Flock did not put those limits in the proposed MSA. City policy can control City users, while the contract must control Flock.
- Partly agreed: City ownership and access (Medium). Flock agreed that Pflugerville would own Customer Data. Flock still claimed derivative outputs, analyses, reports, and models as Flock property, and did not give the City complete rights to search logs, audit logs, alerts, sharing records, and other operational outputs.
- Not agreed: Retention and verified deletion (High). Cover active systems, backups, derived records, de-identified copies, Training Data, and data held by subcontractors. Flock did not provide complete deletion or verification requirements in the proposal.
- Not agreed: Usable data export (Medium). Require export in a usable, non-proprietary format before termination or expiration. Flock kept control over the method, timing, and format of access.
Interagency access and sharing
- Not agreed: Interagency access and sharing (High). Require written City authorization, access logs, onward-sharing limits, periodic review, and removal of access that is no longer needed. Flock did not fully address those controls in the proposed MSA. This is the gap that ended up mattering most: it's the same category of failure behind the 459 outside agencies and roughly 1.6 million searches the City later discovered against its own data.
Exit, termination, and ownership changes
- Not agreed: Termination for convenience and changing risk (High). Give the city an exit if the technology, law, policy, effectiveness, or security risk changes materially. Flock did not agree to those off-ramps.
- Agreed: Non-appropriation (Lower). Flock agreed that Pflugerville could leave at the end of a fiscal year if Council did not appropriate sufficient funding. Cities should include this standard government term, though it does not restrain Flock's behavior during an active contract term.
- Not agreed: Change of ownership or control (High). Let the city terminate if Flock is acquired, reorganized, or sold. Flock offered notice, not an exit right.
Contract mechanics, definitions, and enforcement
- Not agreed: Fixed incorporated terms (High). Attach the controlling Privacy Policy, security terms, Implementation Guide, and Reinstall Fee Schedule. Identify the version and date. Require written City consent before a material change takes effect. Flock's Privacy Policy says it can change at any time and tells customers to check the webpage periodically. Flock did not close that loophole for Pflugerville.
- Not agreed: Order of precedence (Medium). Prevent an Order Form from overriding data, security, liability, deletion, and termination protections. Flock's proposal would have let signed Special Terms override the MSA.
- Partly agreed: Complete definitions (High). The final proposal included basic definitions for Customer Data, Authorized End Users, and Retention Period. Flock did not add definitions for Security Incident, External Access, Subcontractor, De-identified Data, Audit Log, Personal Information, Criminal Justice Information, or Change of Control. Undefined terms weaken every other protection on this list that depends on them, which is why this item ranks higher than its single-clause size suggests.
- Not agreed: Subcontractors (Medium). Bind every company handling City data to the same security, confidentiality, deletion, incident-response, and audit duties. Flock did not include a complete flow-down requirement.
- Partly agreed: Legal demands for City data (Medium). The proposal required reasonable prior notice before a legally compelled disclosure when notice was permitted. Flock did not agree to the fuller requirement we sought for subpoenas, public-information requests, and other demands involving City data.
City policy can control how City employees use Flock. It cannot increase Flock's liability, bind Flock's subcontractors, make Flock pay breach costs, or give the City a contractual exit. Those protections have to be in the agreement.
This is a policy and contract-negotiation analysis, not legal advice.
Source record
- The final proposed Pflugerville Master Services Agreement and City contract rider.
- Flock’s Privacy Policy, data ownership guide, standard terms, and Information Security Addendum linked in the article.
- The City’s full list of contract priorities and Flock’s final responses.