Privacy Policy — Tracc

Effective date: 8 May 2026

Last updated: 6 June 2026

This policy explains what data Tracc collects, why, where it lives, and the choices you have. We've tried to write it in plain English. If anything is unclear, email kartikkhandelwal95@gmail.com or anuragsarda956@gmail.com and we'll explain.

A note on the name. Tracc was previously known as CashFlowVoice. The home-screen icon, store listing, and all in-app branding now say "Tracc". Some legacy technical identifiers retain the old name for backward compatibility (the Android package name com.cashflowvoice.app and the Firebase project ID cashflow-voice-kart) — renaming either would orphan existing users' data. They refer to the same app this policy describes.


1. The 30-second summary


2. Who runs Tracc

Tracc is operated by Kartik Khandelwal and Anurag Sarda, two independent developers based in India.

Contact for privacy questions or data deletion requests: kartikkhandelwal95@gmail.com or anuragsarda956@gmail.com


3. What data we collect, and when

We collect different categories of data depending on which features you use. We collect the minimum needed for each feature to work.

3.1 If you use Tracc without signing in

We do not have access to any of the above. None of it leaves your device unless you turn on a feature that explicitly sends data out (voice transcription, image scanning, sign-in).

3.2 If you sign in

When you create an account or sign in (email and password — Tracc does not currently offer Google or other social sign-in), we collect:

When sign-in is active, we additionally sync the following to your private Google Firestore document, scoped to your account ID:

This data is private to you. We do not read it. We do not use it for analytics, training, or any purpose other than syncing your devices and powering features you've enabled (Insights, Sharing).

3.3 Anonymous usage analytics (PostHog)

We use PostHog to understand how Tracc is used in aggregate (which features are popular, where users get stuck, which tutorials get completed). PostHog collects:

PostHog does not receive your transaction details, amounts, descriptions, voice recordings, or images. We've explicitly disabled PostHog's autocapture and masked all input fields in session replays so financial values are never recorded. Where we surface a transaction count or category in an event, it's the aggregate count, not the contents.

If you sign in, your PostHog anonymous ID is associated with your Tracc account ID so we can measure feature usage per logged-in user — but we still don't send PostHog your transaction contents.

3.4 Voice transcription (Groq)

When you tap the microphone and speak a transaction, the audio recording is sent to Groq for speech-to-text transcription. The transcribed text is then sent back through Groq for AI categorization (e.g., classifying "₹120 lunch" into the Food category).

3.5 Receipt scanning (Groq)

When you photograph a receipt or pick one from your gallery, the image is sent to Groq (via the same /api/groq-proxy Vercel endpoint) for OCR and field extraction (amount, date, merchant).

3.6 Sharing transactions with friends (signed-in users only)

If you use the "Share Transactions" feature, the transactions you select are written to a temporary, scoped document in Firestore that the recipient can pull from. When the recipient imports the share, the source document is automatically deleted in the same atomic Firestore commit as the import-completion update — there's no separate cleanup step that could leave orphans (verified in sharing/transaction-share.js). Firestore security rules prevent any user other than the named sender and recipient from reading the share document while it exists.

3.7 AI Behavioral Insights (signed-in users only)

If you sign in, Tracc can generate behavioral insights (spending pattern detection, overrun warnings, savings nudges) on demand. The flow is:

  1. Your browser builds a prompt summarising your own transactions for the selected period.
  2. The prompt is sent through our /api/groq-proxy Vercel endpoint to Groq's LLM, which returns the analysis.
  3. The insights are cached in your private Firestore document so subsequent views don't re-query Groq.

We do not run this analysis on our own servers — Vercel only proxies the call to Groq with auth and rate-limiting; the actual processing is done by Groq's models. Your transaction text is included in the prompt sent to Groq; per Groq's policy, API content is not used to train their models. Insights are generated only when you explicitly view the Insights tab, never in the background.

3.8 Push notifications

If you opt in, Tracc may send you reminders to log transactions. We use Firebase Cloud Messaging to deliver these. Notification content is generated on your device — we don't include transaction details in push payloads.

3.9 Currency conversion (exchange-rate API)

If you log a transaction in a currency other than your base currency, Tracc converts the amount using live exchange rates fetched from ExchangeRate-API (api.exchangerate-api.com). To do this:


4. What data we do NOT collect

To be explicit:


5. Where your data is stored

DataLocation
Local transactions (no sign-in)Your device only
Synced transactions (signed-in)Google Firestore in the project's default GCP region (set when the Firebase project was created and immutable thereafter — Firebase project: cashflow-voice-kart). Google-managed; encrypted at rest.
Account email + sign-inGoogle Firebase Authentication
Voice / image AI processingGroq's servers (US) — transient, not stored by us
Anonymous usage eventsPostHog (US)
API responses (AI categorization)Vercel edge / serverless (US/EU) — not retained
Currency exchange ratesExchangeRate-API — only a currency code is sent; no personal or financial data

All data in transit between your device and any of these services is encrypted with TLS. Data at rest in Firestore is encrypted by Google.


6. Third-party services we use

Each of these has its own privacy policy. By using Tracc you also agree to their terms.

We don't share your data with anyone other than these processors, and only the minimum needed for each to do its job.


7. Your choices and controls

7.1 Use Tracc without an account

You can use the full local-only experience indefinitely. No sign-up required.

7.2 Stop syncing

If you signed in and want to stop syncing, sign out from Settings → Account. Your local data stays on your device. Cloud copies remain in your Firestore document until you delete them (next section).

7.3 Delete your data

7.4 Opt out of analytics

PostHog respects the browser's "Do Not Track" header — enable it in your browser/system settings and analytics events stop firing. You can also block the PostHog domain (us.i.posthog.com) at the network or DNS level. An in-app opt-out toggle is on our roadmap; until then, the Do-Not-Track and network-level options above are the available controls.

7.5 Revoke microphone, camera, or notification permissions

You can revoke any permission Tracc requested via your device's settings. The corresponding feature will simply stop working.


8. Data retention


9. Children's privacy

Tracc is not directed at children under 13. We do not knowingly collect data from children. If you believe a child has used Tracc and provided personal data, email us and we'll delete it.


10. Security

We rely on Google's and our other processors' security infrastructure. In addition:

That said, no system is 100% secure. If we discover a breach that affects your data, we'll notify affected users by email within 72 hours of confirming the incident.


11. International users

Tracc is built in India. If you use it from outside India, your data may be processed in countries that have different data-protection laws than yours (commonly: India, the United States, the European Union, depending on which third-party processor handles a given operation). By using Tracc, you consent to this transfer.

If you're in the EU/UK and want to exercise your GDPR rights (access, rectification, erasure, objection, portability), email kartikkhandelwal95@gmail.com or anuragsarda956@gmail.com.

If you're in California, you have similar rights under CCPA — same email.

If you're in India, you have rights under DPDPA 2023 (access, correction, erasure, grievance redressal). Same email.


12. Changes to this policy

We may update this policy when Tracc adds new features or changes data flows. The "Last updated" date at the top will reflect the most recent change. Material changes will be announced in-app.

If you keep using Tracc after a policy update, you accept the new policy. If you don't, you can stop using it and request data deletion.


13. Contact

For any privacy question, data deletion request, complaint, or grievance, you can reach either of us:

We aim to respond within 7 days.