Information We Collect
VoiceLedger has two modes. As a guest (the default), everything below stays on your device only. If you choose to sign in for cloud backup, a copy of your entries also goes to your account so it survives a lost phone.
| Information | When it's collected | What it's for |
|---|---|---|
| Email address & password | Only if you create an account | Signing in and password resets. Your password is never visible to us — Firebase Authentication handles it directly. |
| Expense & income entries | Whenever you add one, by voice or by hand | The ledger itself: amount, category, an optional note you type, the date, and how it was entered. |
| Budgets | Whenever you set one | Tracking your spending against the limit you chose. |
| Savings goals | Whenever you create one | The title, target amount, and progress you set for yourself. |
| App preferences | As you use the app | Dark/light mode, your daily streak, and which achievements you've unlocked. |
| Microphone audio | Only while actively recording an entry, after you grant permission | Converted to text on your device to create the entry. Full detail under Third‑Party Services. |
| Crash reports | Automatically, only if the release version of the app crashes | Finding and fixing bugs. Never generated by the development build. |
We do not collect your name, phone number, contacts, precise location, photos, or browsing history — the app has no code path that requests or reads any of these.
How We Use Information
Everything collected serves a feature you can see in the app:
- Recording, categorizing, and reporting your income and expenses.
- Letting you set and track budgets and savings goals.
- Backing up your data to your own account, if you sign in, so it survives a lost device or reaches a second one.
- Sending an optional daily reminder if you haven't logged anything that day.
- Finding and fixing crashes and bugs.
- Confirming requests to our servers come from a genuine, untampered copy of the app (device integrity check).
Data Storage
On your device (always): your entries, budgets, goals, and preferences are stored locally the moment you create them, using your device's own app storage. This works with no internet connection and no account.
In the cloud (only if you sign in): the same information is additionally mirrored to your account in Google Cloud Firestore, so it can be restored on a new device. Signing out or staying a guest means nothing ever leaves your device.
Local storage is protected by your device's standard app-sandboxing (other apps can't read it), but VoiceLedger does not apply its own additional encryption layer on top of that on-device.
Permissions
Every Android permission this app can request, and why. Nothing else is requested — no camera, location, contacts, storage, SMS, or Bluetooth access.
| Permission | Why VoiceLedger needs it |
|---|---|
| RECORD_AUDIO | The core voice-entry feature — turning your spoken words into an expense entry. |
| INTERNET | Needed only for optional cloud backup and crash reporting. |
| ACCESS_NETWORK_STATE | Lets the app know when you're back online, to retry a backup that didn't go through. |
| POST_NOTIFICATIONS | Shows the one optional daily reminder to log your spending. |
| RECEIVE_BOOT_COMPLETED | Re-schedules that reminder after your phone restarts, since Android clears scheduled notifications on reboot. |
| VIBRATE | Accompanies the reminder notification. |
Third-Party Services
VoiceLedger is built on Google Firebase. Each service below is used strictly for its stated purpose — none of them is an advertising or analytics network.
| Service | What it receives | When it's active |
|---|---|---|
| Firebase Authentication | Email address, password (handled directly by Firebase, never stored by us) | Only if you create an account |
| Cloud Firestore | Your entries, budgets, goals, and app preferences | Only while signed in |
| Firebase Crashlytics | Crash stack traces, device model, OS and app version, an anonymous installation ID | Release version only — never the development build |
| Firebase App Check / Google Play Integrity | A device‑and‑app integrity signal (not personal data) proving requests come from a genuine app install | Release version only |
| Your device's speech-recognition service | Microphone audio, transiently, to return text | Only while you're recording an entry |
On the last row: VoiceLedger hands your microphone audio to your device's built‑in speech‑to‑text engine (on Android, typically provided by Google) and uses only the text it returns. Whether that conversion happens fully on your device or briefly involves your OS provider's speech servers is controlled by your device and its settings, not by VoiceLedger's own code — we recommend checking your device's speech‑recognition settings if you want full control over this.
Data Security
- In transit: all connections to Firebase use HTTPS/TLS encryption by default — a platform guarantee of Firebase's SDKs, not a setting we can turn off.
- At rest, in the cloud: Google encrypts data at rest across its infrastructure as standard practice for all Firebase projects.
- At rest, on your device: protected by your operating system's own app-sandboxing; VoiceLedger does not add its own encryption layer on top of that locally.
- Access control: a security rule enforced on Google's servers — not just inside the app — restricts every cloud record to the one signed‑in account that created it. Nobody else's account can read or write it, even if they knew it existed.
Data Retention & Deletion
On your device: your data stays until you edit or delete it yourself, use "Clear All Data" in Settings, or uninstall the app.
Your account: Settings → delete account (after confirming your password) permanently deletes every entry, budget, and goal in your account, then the account itself. This is irreversible.
| System | After you delete |
|---|---|
| Cloud Firestore (your entries/budgets/goals) | Removed immediately and no longer accessible to you or us through the app. |
| Firebase Authentication (your account) | Cleared from Google's live and backup systems within 180 days. |
| Firebase Crashlytics (crash reports) | Automatically removed from Google's live and backup systems 90 days after being generated. |
These backend timelines come from Google's own published Firebase data-retention practices, not from VoiceLedger's code — we cannot make Google's infrastructure delete faster than they document.
Children's Privacy
VoiceLedger is a general‑audience personal‑finance tool. It is not directed at children, contains no child‑directed content or design, and does not knowingly collect information from children under 13 (or the relevant minimum age where you live). If you believe a child has provided us information, contact us using the details below and we will delete it.
Changes to This Policy
If this policy changes, we'll update the effective date at the top of this page. For a meaningful change to what we collect or how we use it, we'll also try to let you know inside the app. Continuing to use VoiceLedger after a change means you accept the updated policy.
Contact Information
Questions about this policy, or a request to access or delete your data, can be sent to: