What is the Flock Map App?
Flock Map is a free, open-source mobile app for iOS and Android that helps you document surveillance cameras in your community. Whether you're tracking Flock Safety cameras, other ALPR systems, or general surveillance infrastructure, this app makes it easy to contribute to a public database on OpenStreetMap.
No mapping experience required. The app includes built-in camera profiles, works completely offline, and guides you through the entire process.
Key Concepts
New to mapping? Here are the essential terms you'll encounter:
Camera Profile: A preset template that automatically fills in the correct tags for different camera types (like "Flock Safety" or "Generic ALPR"). You can enable multiple profiles to see and tag different camera types.
Tile Provider: The source for your map background. Choose between street maps (OpenStreetMap), satellite imagery (Google, Esri), or hybrid views depending on what works best for spotting cameras.
Field of View (FOV) Cone: The triangular shape that shows which direction a camera is pointing and what area it can see.
Offline Area: A region you can download to your phone for mapping without internet connection. Includes both map tiles and existing camera data.
Upload Mode: Where your camera submissions go - Simulate (practice only), Sandbox (test server), or Production (live OpenStreetMap database).
How It Works
- Multiple map types: Choose from street maps, satellite imagery, or hybrid views from OpenStreetMap, Google, Esri, and Mapbox.
- Built-in camera profiles: Pre-configured profiles for Flock Safety, Motorola/Vigilant, Genetec, Leonardo/ELSAG, Neology, and generic ALPR cameras.
- Smart camera tagging: Point, click, set direction, choose profile - the app handles all the technical OpenStreetMap tags automatically.
- Full offline support: Download any area for mapping without internet. Submissions queue safely until you're back online.
- Camera editing: Update location, direction, or details of cameras you've previously mapped or that others have submitted.
- No tracking: The app never collects or transmits personal data. All activity is local unless you choose to upload to OpenStreetMap.
App Screenshots & Features

Main Map View: Explore cameras in San Francisco with your choice of map background. Blue dots show existing cameras, and the field-of-view cones indicate camera direction. The + button lets you add new cameras.

Map Layers: Switch between different map providers and tile types. Choose street maps for navigation, satellite imagery for spotting cameras, or hybrid views that combine both.

Tag New Camera: Position your marker precisely, set the camera direction with the slider, and choose from built-in profiles like Flock Safety, Motorola, or Genetec. The app handles all the technical tags.

Camera Details: Tap any camera to see its full information, including manufacturer, surveillance type, and other technical details. This helps verify camera identification.

Edit Cameras: Drag existing cameras to fix their location, adjust direction, or update their details. Essential for improving map accuracy over time.

After Editing: Cameras you've edited appear in orange until uploaded. The app tracks your changes and queues them for submission to OpenStreetMap.

Offline Areas: Download any region for offline mapping. The app calculates exactly how many map tiles and how much storage you'll need before downloading.

Settings Overview: Manage your camera profiles, choose upload destination (simulate, sandbox, or production), and configure map providers all in one organized interface.

Advanced Settings: Control offline mode, manage downloaded areas, view upload queue, and access privacy settings. Everything needed for professional-grade mapping.
Quick Start Guide
- Download the app using the links below and grant location permission if you want GPS centering.
- Choose your map type in Settings → Tile Providers. Satellite imagery often works best for spotting cameras.
- Set upload mode in Settings → Upload Destination. Start with "Simulate" to practice without making real uploads.
- Enable camera profiles in Settings → Camera Profiles. Turn on "Flock Safety" and any other manufacturers you want to map.
- Find a camera in your area and tap the + button to start tagging.
- Position the marker, set direction with the slider, choose the right profile, and submit!
Understanding Upload Modes
- Simulate – Practice all features with no uploads or accounts needed. Perfect for learning the interface and testing workflows.
- Sandbox – Upload to OpenStreetMap's test server. Requires separate sandbox account registration. Data resets periodically. Great for testing tags and procedures.
- Production – Upload to live OpenStreetMap where your contributions help everyone. Requires your normal OSM account. Use only after successful sandbox testing.
Privacy & Offline Features
- Complete offline operation: Download custom map areas with camera data included. All submissions queue safely and upload when reconnected.
- No personal data collection: The app never tracks, stores, or transmits personal information. OpenStreetMap authentication uses secure OAuth with nothing stored locally.
- Local-first design: All map browsing, camera viewing, and editing happens locally. Only camera submissions require network access.
Download
Note: App Store releases coming soon. For current beta downloads, see the GitHub Releases page.
Source Code
This app is fully open source under the GNU Affero General Public License v3.0. View the code, report issues, or contribute on GitHub: https://github.com/stopflock/osm-mapper-app
Privacy Policy
This app does not collect or transmit any personal data. All map data comes directly from OpenStreetMap. If you authenticate with OpenStreetMap to submit cameras, your credentials are handled via OAuth and never stored. Your location is used only locally to center the map and show nearby cameras.
Terms and Conditions
This software is provided as-is under the GNU Affero General Public License v3.0. By using this app, you agree to use it responsibly and comply with OpenStreetMap's terms when uploading data.