Privacy Policy

Last updated: 2026-10-18

This Privacy Policy explains how Nushirvan Naseer ("we", "us", "our") collects, uses, discloses, and safeguards information in connection with the ExTrack mobile application and this website (together, the "Service"). By creating an account or using the Service, you agree to the practices described in this policy. If you do not agree, please do not use the Service.

1. Scope and overview

ExTrack is an expense tracking application that reads transaction notifications from the apps you choose on your device, such as your Messages app and your banking and payment apps, and classifies them into a personal expense log. With a Pro subscription you can also add a transaction from a picture of a receipt, or by sharing a receipt to ExTrack from another app. ExTrack does not connect to your bank account, does not request your online banking credentials, and cannot initiate, authorize, or move funds on your behalf. ExTrack does not request permission to read your SMS inbox.

This policy covers information collected through the app, through this website, and through your interactions with our customer support channels.

2. Information we collect

Account information. When you sign in with Google, we receive your name, your email address, and a unique identifier for your Google account. We use your name or email address to create a username for your account. We never receive or store your Google password. This information is stored on our servers.

Older accounts. ExTrack no longer offers sign-up or sign-in with a password, and our servers no longer accept either. Accounts created before Google Sign-In was introduced may still have a phone number and a password stored. Passwords are stored only as a one-way cryptographic hash, never in plain text. When the owner of such an account first signs in with Google, it is linked to that Google account only if Google has verified the same email address.

Subscription information. We store whether your account has a Pro subscription, when it expires, and an identifier that links your account to RevenueCat, the service that manages subscriptions. Payment itself is handled by Google Play. We do not receive or store your payment card details. Our server confirms whether your subscription is active by asking RevenueCat directly, using your account identifier, rather than relying on what the app reports.

Usage counts. To apply the free plan limits, we store three numbers for your account: how many bank accounts you have added, how many apps you track, and how many automatically detected transactions have counted toward this month's free allowance. A detected transaction counts once the app is sure about it, or once you confirm it when it was sent to review. Transactions you add by hand are never counted. To keep the account count accurate, we also note how many different accounts of yours are listed with each message we classify, and keep only that number. These are counts only, not the transactions or the accounts themselves.

Notification content, processed but not stored. When ExTrack captures a notification from an app you chose to track, the text of that notification is sent over an encrypted connection to our server, which passes it to Google's Gemini API so that it can be classified into a merchant, amount, category and transaction type. The result is returned to your device. We do not store the notification text or the result on our servers, and we do not write them to our logs. The same applies to a message or receipt text you choose to share to ExTrack from another app. Under the terms that apply to our paid Gemini API account, Google does not use this content to improve its products, but Google may keep it for a limited period, solely to detect and prevent abuse and for legal reasons, and may process it in any country where Google operates.

One-time codes. Messages that look like one-time passwords, PINs, or verification codes are filtered out on your device and are never sent to us. This filter is automatic and may occasionally miss an unusual format, so please do not track apps that deliver security codes you are not comfortable sharing.

Details sent with a notification. To help recognise transfers between your own accounts, each notification is sent together with the names of the bank accounts you added, the last four digits of their account numbers, and your own name as you entered it for those accounts. If you track your Messages app, texts that are not about money also reach the classification step and are discarded.

Receipt pictures (Pro), processed but not stored. If you add a transaction from a receipt picture, either by choosing a screenshot or by sharing an image to ExTrack, your device first shrinks the picture and then sends it over an encrypted connection to our server, which passes it to Google's Gemini API to read the text on it. The text that was read is returned to your device and then treated like a notification, as described above, including being sent once more for classification. We do not store the picture or the text on our servers, and we do not write them to our logs. ExTrack does not keep a copy of the picture. Google handles it under the same terms as notification text, described above. Please do not add pictures that show more than you are comfortable sharing, such as other people's details or full card numbers.

Messages waiting on your device. If ExTrack cannot read a message straight away, for example because you are offline or signed out, the message is kept in the app's private storage on your device until it has been read, or until you discard it. On Android, ExTrack can read these waiting messages in the background and shows a progress notification while it does. Each message is sent to our server and processed as described above, and the result is kept on your device until you next open the app. Waiting messages are held in the app's private storage and are not covered by the encrypted database, so please discard any you do not want kept.

Installed app names. When you ask ExTrack to suggest which apps to track, the names and package identifiers of the apps installed on your device are sent to our server and to Google's Gemini API, to identify banking and payment apps. This happens when you open the app selection for the first time, before you have saved a selection.

Prices and exchange rates. To show investment values, the app asks our server for current crypto and precious metal prices, which our server obtains from CoinGecko and Metals.dev. These requests do not include your holdings or other personal information. To convert currencies, your device requests exchange rates directly from exchangerate-api.com, which can see your device's IP address as with any web request.

Data stored only on your device. Your transactions, merchants and their other spellings, bank account details and balances, budgets, investment holdings, and settings are stored in an encrypted database on your device. This information is not retained on our servers.

Contacts (optional). If you link a merchant or person to a contact, ExTrack reads the contact you choose on your device. This information stays on your device.

Technical and diagnostic information. Our servers log technical information about each request for security and troubleshooting: your IP address, account identifier, a request identifier, the time, the type of request, the result, your device's user agent, and any error that occurred. For notifications, logs also record technical details such as the length of the text, the package name of the sending app, how many tokens the AI request used, and whether it succeeded, but never the text itself. For receipt pictures, logs record the size and type of the picture and how much text was read, never the picture or the text. These logs are kept for a limited period.

Permissions. ExTrack asks for notification access, to read notifications from the apps you choose, and for permission to send notifications, for your optional daily summary and for progress and "ready" notices while ExTrack reads waiting messages. On Android, reading waiting messages in the background runs as a visible foreground service, which is why a progress notification appears. ExTrack also appears in your phone's share menu, and receives only what you choose to share to it. Contacts access is requested only if you link a contact. ExTrack does not request SMS permissions. You can withdraw any permission at any time in your phone's settings.

3. How we use information

We use the information described above to:

  • Create and authenticate your account, and allow you to sign in;
  • Classify transaction notifications, shared messages and receipt pictures into structured expense and income records;
  • Enforce free tier usage limits and manage Pro subscription entitlements;
  • Provide customer support and respond to your requests;
  • Detect, investigate, and prevent fraud, abuse, and security incidents;
  • Comply with legal obligations that apply to us.

We do not use your data to build advertising profiles beyond the standard functionality of the third party advertising network described below, and we do not sell your personal information.

4. Third party service providers

We rely on the following third party providers to operate the Service. Each processes data under its own privacy terms, to the extent necessary to provide its respective service to us:

  • Google Sign-In, for account authentication.
  • Google Gemini API, for automated classification of notification text, the text of receipt pictures, and installed app names, and for reading the text on receipt pictures, as described in Section 2.
  • RevenueCat, for subscription entitlement and billing management. RevenueCat receives an account identifier and your purchase information, and our server asks RevenueCat whether your subscription is active, using that identifier.
  • Google AdMob, for the advertisements shown on the free plan: ads shown within the Activity and Shops & people lists, and the optional ad you can watch to unlock one section of Insights (Income, Shops or Trends). Pro removes these ads. AdMob may use device and advertising identifiers to serve and measure advertisements in accordance with its own privacy policy and your device's ad personalization settings.
  • CoinGecko and Metals.dev, which supply cryptocurrency and precious metal prices to our server, and exchangerate-api.com, which supplies exchange rates to your device.
  • Google Cloud, which runs our servers, Contabo, which hosts our database, and Cloudflare, which hosts this website.

5. How we share information

We do not sell your personal information. We disclose information only in the following circumstances:

  • With the third party service providers listed in Section 4, solely to provide the Service;
  • If required by law, subpoena, court order, or other legal process;
  • To protect the rights, property, or safety of Nushirvan Naseer, our users, or the public, including to prevent fraud or security threats;
  • In connection with a merger, acquisition, or sale of assets, subject to this policy continuing to apply to previously collected information, or a materially equivalent successor policy;
  • With your consent, or at your direction.

6. Data retention

We retain account, subscription, and usage count information for as long as your account remains active. If you delete your account, this information is permanently removed from our servers, as described in Section 8. Server logs are kept for a limited period and may still contain your account identifier and IP address until they expire. Notification text is not retained. Locally stored transaction data remains on your device until you delete it, delete your account from within the app, or uninstall the app, since we do not hold a copy of it.

7. Data security

We use industry standard technical and organizational measures designed to protect information against unauthorized access, alteration, disclosure, or destruction, including an encrypted on-device database, encrypted connections to our servers, and one-way hashing of the passwords still held for older accounts. No method of transmission or storage is completely secure, and we cannot guarantee absolute security.

8. Your rights and choices

You can see the basic account information we hold, your name and email address, in the app, and you can ask us for a copy at any time. You may delete your account at any time, either from within the app or through this website, which permanently removes your account identity, subscription status, and usage counts from our servers. Deleting your account from within the app also erases the data stored on your device. Deleting your account through this website does not remove data stored only on your device, since we never received a copy of it. To remove locally stored data, use the delete option inside the app, or uninstall the app from your device.

Depending on your jurisdiction, you may have additional rights regarding your personal information, such as the right to request a copy of the information we hold about you, or to object to certain processing. You can exercise these rights by contacting us using the details in Section 12.

9. Children's privacy

The Service is not directed at children and is not intended for use by anyone under the age of 13 (or the minimum age required in your jurisdiction to consent to data processing without parental approval). We do not knowingly collect personal information from children. If we become aware that we have collected personal information from a child without appropriate consent, we will take steps to delete that information.

10. International data transfers

Your information may be processed and stored in countries other than the one in which you reside, including where our hosting providers and third party service providers operate their infrastructure. By using the Service, you understand that your information may be transferred to and processed in such countries, which may have data protection laws different from those of your own country.

11. Changes to this policy

We may update this Privacy Policy from time to time to reflect changes in our practices or for legal, operational, or regulatory reasons. We will post the updated policy on this page with a revised "Last updated" date. Material changes will be communicated through the app or by other reasonable means where required by law. Your continued use of the Service after an update constitutes acceptance of the revised policy.

12. Contact us

If you have questions, concerns, or requests regarding this Privacy Policy or our data practices, please contact us at bhindeedev@gmail.com.