Privacy Policy

Effective date: August 2026  |  Contact: [email protected]

Overview

Precise Breath is designed from the ground up to keep your data on your device. We do not collect, transmit, or store any personal information on external servers. There are no accounts, no analytics, no advertising, and no cloud sync.

1. What Data the App Stores

All data described below is stored exclusively on your device. It never leaves your device unless you choose to export it yourself.

Session and HRV Data

When you complete a breathing session, the app stores:

This data is used solely to display your session history, calculate your optimal breathing rate over time, and generate CSV exports that you initiate.

App Preferences

The app stores your settings locally using Android DataStore / iOS UserDefaults:

We never transmit preference data off-device. Note that on iOS your preferences live in the system preferences store, which your own iCloud Backup includes — see “Device backups” in section 5 for how to control that.

If You Contact Us

The statements above describe the app. They do not describe email you choose to send us. If you write to [email protected] or [email protected], we necessarily receive and store whatever that message contains — your email address, your name if you give it, and anything you describe — and we process it for the sole purpose of answering you. We do not use it for marketing, we do not share it, and you can ask us to delete the correspondence at any time by writing to the privacy address. Please do not send us health data or patient information; we do not need it to answer a support question.

2. What the App Does NOT Collect

3. Bluetooth Communication

Precise Breath communicates with your heart rate monitor over Bluetooth Low Energy using the standard Android and iOS Bluetooth APIs — the same generic path for every chest strap, including Polar, Garmin, Wahoo, and any other Bluetooth SIG-compliant heart rate monitor. All communication is local only — between your phone and the sensor. No data is transmitted to any third party. The Bluetooth stack operates entirely within your device.

4. Permissions and Why They Are Needed

Permission Why it is needed
BLUETOOTH_SCAN / BLUETOOTH_CONNECT
(iOS: Bluetooth)
Required to discover and connect to your heart rate chest strap sensor. No Bluetooth data is shared with any server.
POST_NOTIFICATIONS Used only to deliver optional practice reminders that you set up yourself. If you do not enable reminders, this permission is not used.
SCHEDULE_EXACT_ALARM Required to deliver reminders at the precise times you configure. Android requires this permission for exact alarm scheduling.
RECEIVE_BOOT_COMPLETED Used to reschedule your practice reminders after the device restarts, so they continue to fire at the times you chose.
FOREGROUND_SERVICE /
FOREGROUND_SERVICE_MEDIA_PLAYBACK
Keeps breathing audio and the session timer running reliably while the screen is off or you switch apps mid-session.
WAKE_LOCK Prevents the device from sleeping during an active breathing session, so pacing and sensor capture are not interrupted.
VIBRATE Delivers optional haptic breathing cues. Unused if you set haptics to Off.
com.android.vending.BILLING
(Android only)
Required by Google Play to offer the one-time Premium in-app purchase. Grants access to the Play billing flow only.
com.precisebreath.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
(Android only)
A signature-level permission the app declares on itself, added automatically by the AndroidX libraries. It lets the app register internal broadcast receivers that no other app can reach. It grants nothing to anyone else and is listed here only because it appears in a raw permission dump.
INTERNET /
ACCESS_NETWORK_STATE
(Android only)
Declared by Google's Play Billing library, not by Precise Breath. Two Google components use it: the billing library, to process the one-time Premium purchase and to send Google its own operational diagnostics; and Play Integrity, which we call once when confirming a purchase to check that the app and device have not been tampered with. Precise Breath has no networking code of its own — no HTTP client, no server address, no sync path, and no server to talk to — and no session, HRV, or RR-interval data is passed to either component. These entries appear in the app's permission list because Android merges the permissions of every bundled library into the installed app; we cannot remove them while offering in-app purchase through Google Play. The iOS build has no equivalent, and uses Apple's StoreKit for the same purpose.

5. Your Rights and Controls

6. Children's Privacy

Precise Breath is not directed at children under 13 (or the applicable age of digital consent in your jurisdiction). We do not knowingly collect any information from children.

7. Third-Party Services

Precise Breath does not integrate with any analytics, advertising, social media, or data-brokering service, and we receive no data about how you use the app.

Two qualifications, for completeness, both on Android and both from Google.

First, the build includes the Google Play Billing library, required to sell the one-time Premium unlock through Google Play. It ships with Google's own diagnostics transport (com.google.android.datatransport) and is the reason the installed Android app lists the INTERNET permission. It reports to Google on the operation of Google's billing component.

Second, we call Google Play Integrity once when confirming a purchase, to check that the app and device have not been tampered with. Unlike the billing library this is our own code making the call, so we name it explicitly. The request carries a device- and app-integrity verdict plus a random value we generate; the answer is checked on your device and discarded. It carries no session data, no HRV scores, no RR intervals, and no identifier for you.

Neither component sends us anything — we operate no server to receive it. The iOS build uses Apple's StoreKit and contains no third-party SDKs, no analytics, and no networking libraries.

The app is distributed through the Google Play Store and Apple App Store. Those platforms have their own privacy policies that govern your use of their stores, independent of this policy.

8. Changes to This Policy

If we update this privacy policy, we will post the revised policy at precisebreath.com/privacy with an updated effective date. Continued use of the app after a policy change constitutes acceptance of the updated policy.

9. Contact

Questions or concerns: [email protected]

10. California Residents (CCPA)

Precise Breath, LLC does not collect or store any personal information on external servers. All session data and preferences remain exclusively on your device. As a result:

For questions, contact [email protected].

11. EU/UK Users (GDPR)

Because all data is stored locally on your device and never transmitted to Precise Breath, LLC or any server, the company does not collect or process your personal data. Traditional GDPR Data Controller obligations do not apply to this service.

Your data rights are self-service — you act directly, no request to us required:

You have the right to lodge a complaint with your national data protection authority (e.g., the ICO for UK users, or your EU member state’s DPA) if you believe your rights have been violated.

12. Brazilian Users (LGPD)

Because all data is stored locally on your device and never transmitted to Precise Breath, LLC or any server, the company does not collect or process your personal data centrally. Traditional LGPD Data Controller obligations do not apply to this service.

Your data rights are self-service — you act directly, no request to us required:

For questions, contact [email protected].