Privacy
Nearby Signals privacy
This page describes Nearby Signals’ privacy practices. Check its App Store listing for current app availability.
Last updated: 20 October 2026
Apple versions
Bluetooth observations — the system-provided identifier, advertised name, company identifier, signal strength and reception times — stay in memory. A new scan session resets the list. While the dashboard is active, the app periodically checks observations and removes those received more than 120 seconds ago, including after scanning stops. On iPhone and iPad, cleanup resumes when the app returns to the foreground; backgrounding does not immediately clear the list. A name supplied by Core Bluetooth stays separate from the advertised name. The list is released when the app process ends and holds at most 100,000 observations; a new device then replaces the oldest one.
CSV log recording is off by default. Turn it on to record received measurements. Turning it off stops new entries but keeps the existing log; use Clear to remove it. Measurements stay in memory across scans and in the background until you clear them or the app process ends. The log is limited to 100,000 callbacks, 8 MiB of UTF-8 names in total and 512 combined name bytes per callback. A callback exceeding a limit is not recorded and is counted as dropped. CSV export is started manually. The log holds at most 100,000 callbacks overall and represents at most 100,000 distinct device identifiers per scan; measurements beyond either limit are omitted and counted as dropped. It contains timestamped callbacks, a temporary device number for each scan, signal strength, an optional company identifier and available names, which may belong to third-party devices. It does not include the device’s CoreBluetooth identifier. The file is saved where you choose; sharing and deletion then depend on that location. The CSV separates the advertised name from the name supplied by Core Bluetooth.
Names entered or imported from a class list, declaration status and declared devices are stored in a local app file. An imported name remains pending and is not a declaration. On iPhone and iPad, iOS file protection applies while the device is locked; on Mac, the file and its folder have restricted access permissions. Class records expire by 30 June; event and meeting records expire with their session. The organizer can also remove them manually.
The app does not sync declarations. The device's operating system may include their local file in backups; deleting them in the app does not necessarily erase earlier backup copies.
The current version has no account, app server, advertising or analytics tools. The app does not send these observations or declarations to the developer.
Android version 0.1.0
On Android, scanning runs while the app is open. Android 12 and later require Bluetooth permissions; Android 8–11 require precise location permission for scanning, without the app calculating a geographical position. Bluetooth addresses only distinguish observations in memory and are neither displayed nor exported. The advertised name, signal strength and reception time stay in memory, with at most 500 observations; entries older than 120 seconds are removed during scanning, and stopping clears the list. This version has no radio-log export. Declared names and devices are saved as JSON in private local storage without additional app-level encryption. The Android configuration disables their automatic backup and transfer. Class and session expiry rules still apply. No account or transmission to the developer is provided.
For questions about data: a8s.jacono@gmail.com