Spendy Offline-First
/

Privacy Policy for Spendy

Last Updated: June 21, 2026 3 min read

100% Offline-First Privacy Pledge

Spendy is built with a zero-cloud-footprint architecture. All financial transaction tracking, SMS interception, local AI model analysis, and database storage are performed entirely on your local device. No transactional data is ever transmitted, uploaded, shared, or sold to remote servers or third parties.

No Login Required
Works Fully Offline
100% Encrypted Backups

1. Introduction

This Privacy Policy describes how Spendy ("we," "our," or "the Application"), developed by NidhinV, processes, stores, and protects your information. By using Spendy, you consent to the data practices described in this policy.

What is Offline-First? It means the core database, ML classification engines, and storage reside completely inside your phone's sandbox storage. No user accounts are tracked on our servers.

2. Types of Data Processed

Because Spendy is offline-first, all data processed remains strictly within the application's local sandbox storage directory. The app does not transmit this data to us or any third parties.

Financial Transactions

Records of your income, expenses, accounts, categories, and savings goals mapped and classified locally.

SMS Transaction Logs

Parsed text metadata (such as amount, transaction type, and merchant name) extracted from incoming SMS bank alerts.

Account Details

Wallet names, custom bank names, and the last 4 digits of your account/card suffix to help group alerts.

3. Device Permissions & How They Are Used

To enable intelligent tracking and automated workflows, Spendy requires specific Android system permissions. The application uses these permissions exclusively on-device, as detailed below:

SMS Permissions

RECEIVE_SMS & READ_SMS
Local-Only Processing

Usage: Used to automatically intercept and parse incoming bank transaction alerts in real time.

Privacy Guard: Incoming SMS content is filtered locally on your device. Only alerts matching specific financial patterns (like debited/credited alerts) are analyzed. The SMS text is parsed by our local regular expression engines and on-device AI algorithms. No SMS data ever leaves your device or is seen by developers.

Camera Access & OCR Scanning

CAMERA
Local-Only Processing

Usage: Used to capture photos of physical store purchase receipts to scan, extract items, and create structured itemized entries.

Privacy Guard: Optical Character Recognition (OCR) is performed entirely on-device using local ML Kit models. Images are processed in RAM and are not uploaded to any cloud server or analytics tracker.

Microphone Access & Speech-to-Text

RECORD_AUDIO
Local-Only Processing

Usage: Used to record voice logs of manual expenses to let you log transactions hands-free.

Privacy Guard: Speech-to-text recognition is processed locally on your phone. Audio waveforms are analyzed locally and transcripts are converted to structured transaction parameters directly in the app. No audio recordings are transmitted or stored remotely.

Biometric Authentication

USE_BIOMETRIC
Local-Only Processing

Usage: Used to unlock your personal App Vault and Settings lock to prevent unauthorized physical access to your financial data.

Privacy Guard: Biometric verification is managed entirely by your Android operating system's secure element (Keystore API). Spendy never gains access to, processes, or stores your biometric credentials (fingerprints or face models).

Local Storage (Read/Write)

READ_EXTERNAL_STORAGE / WRITE_EXTERNAL_STORAGE
Local-Only Processing

Usage: Used to export transaction logs as CSV or PDF documents to your device storage, and to save backup files locally.

Privacy Guard: The app only accesses folder paths that you explicitly choose. It does not scan your personal media library or files.

4. On-Device AI Processing (Qwen/Gemma LLM)

Spendy utilizes local Large Language Model (LLM) inference (Qwen/Gemma) running natively on your device's CPU/GPU. The semantic classification of your transaction descriptions into budget categories happens completely offline, ensuring your reading and spending habits are never exposed to commercial AI servers.

On-Device AI Architecture (Zero Cloud Footprint)
Inputs (SMS, Receipts, Voice)
Local AI Model (Qwen/Gemma LLM)
Processing strictly on CPU/GPU
Secure Local SQLite DB
Sandbox encrypted storage
Commercial AI Cloud
🔒 No Connection Allowed

5. Optional Cloud Backup (Google Drive Integration)

You may voluntarily connect your Google Account to back up your database to your personal Google Drive storage space:

AES-256

Military-Grade Local Encryption

Prior to being uploaded, your backup file is encrypted on-device using AES-256 standard encryption. Your database is unreadable without your local credentials. Even if someone accesses your Google Drive, they cannot decrypt your database file without your unique security keys which never leave your device.

Direct Sync

Direct Synchronization

Data is transferred directly from your device to your personal Google Drive storage space. We do not host intermediate servers, store your files, or have access to your backups, Google OAuth tokens, or decryption keys.

6. Data Retention & Deletion

Since all data is stored locally, it is retained until you choose to delete it. You can instantly wipe your entire local SQLite database, custom categories, budgets, and keys by using the "Wipe All Data" button inside the settings page.

Local Data Control Simulator

Active Database Connected

Test how Spendy handles data removal. Clicking the button below simulates the local SQLite database wiping sequence inside the mobile app sandbox.

Account Details ✓ SECURE
SMS Parsed Logs ✓ SECURE
Local LLM Cache ✓ SECURE
AES Backup Keys ✓ SECURE

7. Children's Privacy

Our Application does not address anyone under the age of 16. We do not knowingly collect or store personal information. Since all processing is local, parents can manage the local device databases directly and inspect any stored data using device managers.

8. Changes to this Privacy Policy

We may update our Privacy Policy from time to time. We will post any updates directly in the repository and update the "Last Updated" date at the top of this document. We recommend visiting this page occasionally to check for updates.

9. Contact Us

If you have any questions or feedback regarding our local privacy architecture, encryption standards, or offline processing algorithms, feel free to reach out to us:

Developer & Support Contact

NidhinV — Lead Architect