Last updated: 2026-06-26
BlueHeeler is a defensive counter-surveillance scanner. It passively detects nearby Bluetooth and Wi-Fi devices so you can spot trackers, hidden bugs, and devices that may be following you. It is built to protect at-risk people, and its core promise is simple:
We run no server, and your scan data is never sent to us.
BlueHeeler has no account, no sign-in, no analytics, no advertising, and no crash reporting. The app makes no network calls of its own. All detection happens on your phone.
To do its job, BlueHeeler reads radio signals that nearby devices broadcast publicly:
These identifiers belong to the devices around you. BlueHeeler reads them locally to judge whether something is following you. It does not look them up online and does not share them.
Everything BlueHeeler records is stored on your phone. There is no cloud copy.
For troubleshooting, the app can write plain-text diagnostic copies of recent events to its own folder in shared storage. This is off by default. You can turn it on under Settings if you need to share a bug report, and the panic wipe described below clears it.
The app makes no network calls of its own. The only networked component is Google Play Billing, used solely to process the optional one-time "Pro" unlock. Billing runs through Google's own libraries and privacy policy. BlueHeeler receives only a yes or no "is Pro unlocked" answer and stores no payment information. Your scan data is never part of this. (Because Google's billing libraries are bundled, the installed app does carry Android's INTERNET permission. BlueHeeler's own code never uses it.)
These features are off by default and act only when you turn them on:
If you turn it on and grant Android's Notification Access, BlueHeeler can read notifications only from the security apps you tick (for example your camera or alarm apps) and add them to your on-device security log, next to the radio detections from the same moment. This lets you see when a camera fired while an unknown device was nearby. It reads nothing from any other app, stores entries only on your phone, and is off by default. You can revoke Notification Access at any time in Android settings.
| Permission | Why |
|---|---|
| Bluetooth scan / connect / advertise | Detect nearby Bluetooth devices and trackers, and advertise to your own Pack peers |
| Nearby Wi-Fi devices | Detect nearby Wi-Fi access points and devices |
| Approximate location (optional) | Rough "where was this seen" for co-traveller detection, only if you enable it |
| Notification access (optional) | Log notifications from the security apps you choose (see above) |
| Foreground service and notifications | Keep scanning while the app is in the background, and alert you |
| USB host (optional) | Use an optional external Wi-Fi adapter for monitor-mode capture |
| Camera (optional) | Scan a QR code to pair with a Pack peer. You can deny it and the rest still works |
The published build is receive-only. It listens, and it does not transmit forged Wi-Fi frames. Active-transmit capability exists only in private research builds that are not distributed through the store.
BlueHeeler is not directed at children and collects no personal information to profile anyone.
Material changes will be reflected here with an updated date.
Questions: xredux@protonmail.com