Breath Up
Privacy Policy
Last updated · July 25, 2026
Breath Up keeps your breathing data on your phone. Your sessions, streaks, preferences, and goals are stored only on your device and are never sent to us. What does leave your phone is limited and anonymous: usage statistics that tell us which parts of the app people actually use, crash reports when something breaks, and the purchase data needed to manage your subscription. There are no ads and no advertising ID. We do not collect your name, email, precise location, or any personal identifiers — and you can turn the usage statistics off in Settings.
Who we are
Breath Up is made by Hapo Apps, an independent developer (Ivan Haponiuk). You can reach us at ivanhaponiuk01@gmail.com.
What the app stores on your device
The following is saved only on your phone. It stays there and is never uploaded:
- Breathing session records: timestamp, technique, duration, and how much of the session you completed. Used for your streak, heatmap, and stats.
- Your preferences: reminder time, audio cue pack, haptics on or off, theme, language, and whether you finished onboarding.
- Program progress: which day of a multi-day program you are on.
- An optional goal you can pick during onboarding (sleep, anxiety, focus, stress, or energy).
If you uninstall the app or use "Delete account" in Settings, this data is gone.
What data leaves your device
Four services receive something. None of them receives your name, your email, or the content of anything you write.
- Google Analytics for Firebase receives anonymous usage events so we can see how the app is actually used — which screens are opened, where people stop during onboarding, which techniques get started and finished, and how the subscription screen performs. These events are tied to a randomly generated app instance ID, not to you. Firebase also records your device model, operating system version, app version, language, and an approximate location (country or region) derived from your IP address. We have deliberately excluded the advertising-ID component from this SDK, so no advertising identifier is collected. You can turn this off — see "Your choices" below. Google's handling is covered by Firebase's privacy documentation.
- Firebase Crashlytics receives a report when the app crashes: the stack trace, your device model, operating system version, available memory, and the app version. This exists so we can fix what breaks. It is tied to a Crashlytics installation identifier, not to you. This is covered by the same Firebase privacy documentation, and it is switched off by the same toggle.
- RevenueCat manages whether you are on the free or premium plan. It receives an anonymous user ID that it generates and the purchase receipt that Google Play provides. We do not send it your name, email, or any personal details. RevenueCat's handling of this is covered by its privacy policy: https://www.revenuecat.com/privacy/
- Google Play Billing processes the actual purchase. Google Play handles all payment details. We never see your card number or billing information. This is governed by Google's Play policies.
Your breathing data itself never leaves your phone. Analytics records that a session of a given technique was started or finished — it does not upload your session history, your streak, your heatmap, or your stats. Those exist only on your device.
We keep analytics data for no longer than 14 months, after which Google deletes it automatically.
What we do not collect
To be clear about the absence:
- No ads, no ad networks, and no advertising ID (AAID). We removed the advertising-ID component from the analytics SDK rather than leaving it on by default.
- No account system. You do not create an account or log in.
- No name, email, phone number, or other personal identifiers.
- No precise or GPS location. Analytics infers a country or region from your IP address, and nothing finer than that.
- No contacts, photos, files, or microphone access.
- No upload of your breathing history. Your sessions, streak, heatmap, stats, and the goal you pick stay on your device.
- No selling of personal data, and no sharing of it with data brokers or advertisers.
- No cross-app or cross-site tracking, and no user profiling for advertising.
Permissions and why we ask for them
- Notifications (POST_NOTIFICATIONS): to send the optional daily reminder, if you turn it on.
- Foreground service (FOREGROUND_SERVICE, FOREGROUND_SERVICE_MEDIA_PLAYBACK): to keep the audio and the breathing animation running while your screen is off during a session.
- Vibrate (VIBRATE): for the haptic cues that mark each breathing phase.
- Internet (INTERNET): used only for the four services listed above — usage statistics, crash reports, subscription status, and purchases. The app itself is fully functional offline; every technique, program, and session works with no connection.
The app does not ask for contacts, photos, files, the microphone, or location.
Children's privacy
Breath Up is not directed at children under 13, and we do not knowingly collect data from children. We collect no personal identifiers from anyone, so we do not collect them from children either. If you believe a child has used the app and you want the associated anonymous analytics removed, contact us and we will delete it. This is consistent with the U.S. Children's Online Privacy Protection Act (COPPA).
Your choices and rights
- Turn off usage statistics: Settings has a "Share usage data" toggle. Switching it off stops all analytics and crash reporting from that point on. The app works exactly the same either way — nothing is gated behind it.
- Delete your data: "Delete account" in Settings immediately wipes all local data — sessions, program progress, preferences, and onboarding state. Analytics data is anonymous and not linked to you, so we cannot look it up by name; if you want it removed, contact us and we will delete the records for your app instance.
- Cancel your subscription: handled through Google Play using the standard Play store flow. You can also restore a purchase from the paywall.
- California (CCPA/CPRA): California residents have rights to know, delete, and opt out of the sale or sharing of personal information. We do not sell or share personal information. The analytics we collect is anonymous usage data; you can opt out of it with the Settings toggle, and the in-app delete removes your local data.
- EU and UK (GDPR): you have rights to access, correct, delete, port, and object to the processing of your personal data. Our lawful basis for the anonymous usage statistics is legitimate interest in understanding and improving the app; you can object at any time by switching off the Settings toggle. We hold no account or profile about you, so access and portability are satisfied by the in-app data plus this document. Contact us for anything else.
Subscriptions and payments
Breath Up offers a premium subscription. All payments are processed by Google Play. We do not see or store your card details or billing information. Subscription status is managed by RevenueCat as described above. Cancellation and refunds follow Google Play's standard process.
Changes to this policy
If we change this policy, we will update the "Last updated" date at the top. If a change is significant, we will show a notice inside the app.
Contact
Questions about this policy: ivanhaponiuk01@gmail.com