Your data, explained plainly

Privacy Policy

How the Charm City Scanner app handles information, and the choices you have.

Effective date: October 17, 2026

Charm City Scanner ("the app", "we", "us") is operated by Charm Stack Technologies. It shows delayed, redacted Baltimore Police radio activity and public City of Baltimore data. There are no accounts: you never give us your name, email or phone number to use the app. This policy describes everything the app does handle.

Information the app handles

Location (stays on your phone)

If you use My district, the app asks for "While Using the App" location once, works out which police district you are in on your device, and keeps only that district. Your location is never sent to our servers or stored. You can also pick a district by hand and never grant location at all.

On Android, the phone's address lookup (used by History address search) only works with the location permission turned on, so the app may ask for it there. It still never reads or sends your location.

Address search

When you search an address in History, the text you type goes only to your phone's built-in geocoder (Apple's on iPhone, Google's on Android) to turn it into a map point. Our servers receive only that point, rounded to about 11 meters, to look up nearby public 911 and crime data. Your last five searches are saved on your phone so you can repeat them, and you can clear them in the app.

Channel alerts (push notifications)

If you turn on channel alerts (Premium+), the app sends our server your device's push token, the channels you picked and your quiet hours, so we can send a short heads-up like "New activity on Southeast District". Alerts never contain call details, places or anything said on the radio. Notifications are delivered through Expo's push service and Apple or Google. Turning alerts off, or a plan that no longer includes them, deletes your registration from our server. A registration the app stops refreshing (for example, after you delete the app) expires on its own after 90 days.

Followed calls and settings

Calls you follow, your Updates inbox, your channel picks, your district and your appearance settings are stored only on your phone. Deleting the app deletes them.

Advertising

The free version shows ads from Google AdMob. Before any ad loads, the app shows Google's consent form where the law requires it, and on iPhone Apple's App Tracking Transparency prompt. AdMob may use your device's advertising identifier (Apple's IDFA, only if you allow tracking, or Google's Advertising ID), approximate location derived from your IP address, and device and usage information to show and measure ads. If you decline tracking you still see ads, but not personalized ones. You can change your ad choices any time under Settings → Ad privacy choices. Any paid plan, or Remove Ads Forever, turns ads off.

Purchases and subscriptions

Subscriptions and the Remove Ads purchase are processed by the App Store or Google Play and managed through RevenueCat, which uses an anonymous app user ID to validate purchases and restore them on your devices. We never receive your payment card details.

What our servers receive with every request

Like any internet service, our servers (on Amazon Web Services) receive standard technical information with each request, such as your IP address, the time and the page of data asked for. We use it only to answer the request and keep the service reliable and secure. Server logs are kept for about a week.

What we don't do

About the radio content

The app's calls come from the Baltimore Police official radio, rebroadcast about 15 minutes after the fact. Before anything reaches the app, the radio is transcribed and personal details (names, phone numbers, plate numbers, dates of birth and similar) are removed. Calls involving medical, mental-health, domestic, juvenile or sexual-offense situations are shown without a precise location or with no location at all. We do not keep raw radio audio or unredacted transcripts. History data comes from the City of Baltimore's public Open Baltimore datasets, with the same location rules applied. If you see something in the app that identifies a person and shouldn't, email us and we'll remove it.

Who information is shared with

Only the service providers that make the app work, each under its own privacy terms:

We may also disclose information if the law requires it, or to protect the rights, safety or property of our users or the public.

Your choices

Children's privacy

The app is not directed to children under 13, and we do not knowingly collect personal information from them. If you believe a child has provided us information, contact us and we'll delete it.

Data retention and security

Push registrations are deleted when you turn alerts off and expire after 90 days without a refresh. Server logs are kept for about a week. Radio-derived call data is kept for about 35 days. We use encrypted connections and the security practices of the providers listed above. No method of transmission or storage is completely secure, but we take reasonable steps to protect information.

Changes to this policy

We may update this policy. Material changes will be posted here with a new effective date and, where appropriate, noted in the app.

Contact

Questions about this policy or your data? Email info@charmstack.dev.

Email info@charmstack.dev