Last updated: 29 July 2026
Expense Tracker is a local-first spending tracker. Your financial data lives on your device and is processed on your device. This policy explains exactly what the app does and does not do with your information.
Summary
- We do not run a server. Your expenses, categories, and the text of any payment notifications you let the app read are not transmitted to us.
- No account and no sign-in are required to use the app.
- The app makes a small number of outbound connections, each described below: a daily exchange-rate lookup, anonymous crash diagnostics, purchase and entitlement sync, and — to support the free, ad-supported version — third-party advertising. None of these carry your expenses or notification content.
What data the app handles, and where it stays
- Expenses you enter or confirm (amount, category, note, date) are stored only in a private database on your device.
- Payment notifications (optional feature): when you grant notification access, the app reads incoming notifications from payment apps you choose, on-device, to suggest an expense for you to confirm. The matched notification text is stored locally alongside the expense you confirm and is never transmitted off the device.
- On-device AI: payment notifications are parsed entirely on-device (Gemini Nano via ML Kit, with an on-device rules fallback). No notification content is sent to any AI service or server.
Data that leaves your device
- Currency exchange rates. To suggest a converted amount for a foreign-currency payment, the app fetches public exchange-rate data once per day from third-party rate providers (e.g. frankfurter.dev, European Central Bank data). These requests contain no personal or financial data — only the currency codes being looked up.
- Anonymous crash diagnostics. The official Google Play release build uses Google Firebase Crashlytics. If the app crashes, a diagnostic report (stack trace, device model, OS version, and an anonymous installation identifier) is sent to Crashlytics. These reports do not contain your expenses or any notification content and are not linked to your identity. See the Firebase Crashlytics terms and Google's Privacy Policy.
- Advertising. The free version of the app displays advertisements served by Google AdMob (the Google Mobile Ads SDK). To show ads, AdMob may collect and process data such as your device's advertising identifier, coarse/approximate device and network information, and ad-interaction events, in accordance with Google's Privacy Policy and Google's advertising policies. This advertising data does not include your expenses, categories, or the content of any payment notifications, which never leave your device. You can limit ad personalization at any time in your device's settings (Settings → Privacy → Ads), and you can remove ads entirely via the one-time in-app purchase (see below).
- Purchase and entitlement sync. To determine whether you own the ad-free unlock, the app uses RevenueCat, a third-party purchase-management service. RevenueCat receives an anonymous app-user identifier generated by the app (not linked to any account, name, or email address), your purchase and entitlement status from Google Play, and basic device and platform information. It never receives your expenses, categories, or notification content. See RevenueCat's Privacy Policy.
Purchases
The app may offer a one-time in-app purchase (for example, to remove ads or unlock premium features). Purchases are processed by Google Play Billing. We never see or store your payment card or billing details; Google processes the transaction and shares only confirmation that a purchase was made. Whether you own the ad-free unlock is then synced through RevenueCat, as described under "Data that leaves your device" above. Google's handling of payment data is governed by Google's Privacy Policy.
Permissions we request, and why
- Notification access (
BIND_NOTIFICATION_LISTENER_SERVICE): optional; only to read payment notifications you opt into so the app can suggest expenses. You can deny or revoke it at any time in system settings; the rest of the app works without it.
- Internet: for the daily exchange-rate lookup, crash diagnostics, purchase and entitlement sync, and ad serving described above.