New in version 2.21.0
• App is now fully translatable — per-app language switching and Crowdin integration are live, with fresh translations already applied
• Loans are now listed by person, showing the net balance owed and a Settle up action
• Ignoring an account now correctly hides all its transactions everywhere in the app
• Budget cards show how much you can spend per day to stay within the limit
• Fixed UCO Bank SMS parsing — the account balance was being recorded as the debit amount
Your bank already texts you every transaction. PennyWise reads those SMS on your phone and turns them into an automatic expense tracker — no manual entry, no sign-up, nothing uploaded.
★ Why PennyWise asks for SMS permission
Reading bank SMS is how the app works — it is the entire product. Everything happens on your device: no server ever receives a message, there is no account to create, and the complete source code is public (AGPL-3.0) so anyone can verify exactly what it does. Would rather not grant it? You can still add transactions by hand or import a PDF statement.
★ Automatic expense tracking
• Every UPI payment, card swipe, ATM withdrawal and bank transfer becomes a categorized transaction
• 157 banks and payment services across 24 countries, with multi-currency support
• Works with any UPI app — it reads your bank's SMS, not the app
• A clean, searchable spending timeline that stays up to date on its own
★ Budgets and insights
• Set monthly budgets per category and watch progress as you spend
• Spending trends, category breakdowns and month-on-month comparisons
• Automatic subscription detection — finds the recurring payments you forgot about
• Smart rules to auto-categorize transactions your way
★ On-device AI assistant
Ask "what did I spend on food last month?" and get a real answer. The AI model (Qwen 2.5) runs locally on your phone — no API calls, no cloud, works offline.
★ Private by design
• No account, no login, no email required
• No ads, no trackers, no analytics on your financial data
• Nothing leaves your device
• Open source (AGPL-3.0) — read the code yourself
★ Free, with an optional Pro upgrade
PennyWise is free to use. Where in-app purchases are available, an optional Pro upgrade adds unlimited custom rules, PDF statement imports, CSV export and duplicate-account merge — and directly supports a solo developer building PennyWise independently. Builds distributed without in-app purchases have all of it unlocked from the start.
A money manager, budget planner and spending tracker in one — for people who hate typing in expenses.
Donate
Versions
Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.
Download F-Droid
-
arm64-v8a
armeabi-v7a
This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
show notifications
Allows the app to show notifications
-
read your contacts
Allows the app to read data about your contacts stored on your phone. Apps will also have access to the accounts on your phone that have created contacts. This may include accounts created by apps you have installed. This permission allows apps to save your contact data, and malicious apps may share contact data without your knowledge.
-
read your text messages (SMS or MMS)
This app can read all SMS (text) messages stored on your phone.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
receive text messages (SMS)
Allows the app to receive and process SMS messages. This means the app could monitor or delete messages sent to your device without showing them to you.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
com.pennywiseai.tracker.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
39 MiB
PGP Signature
|
Build Log
New in version 2.20.0
• Chat with PennyWise to add transactions from natural language — all processed on-device, nothing leaves your phone
• On-device AI runs 3x faster and a crash that affected some devices is fixed
• Sub-categories let you break spending into finer groups, with analytics that correctly filter and label them
• Balance discrepancy detection flags when an account balance is out of sync and lets you adjust it with one tap
• Credit-card purchases can now be split across multiple categories
-
arm64-v8a
armeabi-v7a
This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
show notifications
Allows the app to show notifications
-
read your contacts
Allows the app to read data about your contacts stored on your phone. Apps will also have access to the accounts on your phone that have created contacts. This may include accounts created by apps you have installed. This permission allows apps to save your contact data, and malicious apps may share contact data without your knowledge.
-
read your text messages (SMS or MMS)
This app can read all SMS (text) messages stored on your phone.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
receive text messages (SMS)
Allows the app to receive and process SMS messages. This means the app could monitor or delete messages sent to your device without showing them to you.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
com.pennywiseai.tracker.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
44 MiB
PGP Signature
|
Build Log
New in version 2.19.0
• Recurring transactions — schedule any manual or cash transaction to repeat automatically on your chosen cadence
• Transactions is now a permanent bottom-nav tab, so your full history is always one tap away
• Tag expenses inline from the notification quick-picker without opening the app
• Added Pluxee India meal-card parser — Pluxee SMS messages are now parsed automatically
• Added Banque Saudi Fransi (BSF) parser — BSF transactions are now parsed automatically
-
arm64-v8a
armeabi-v7a
This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
show notifications
Allows the app to show notifications
-
read your contacts
Allows the app to read data about your contacts stored on your phone. Apps will also have access to the accounts on your phone that have created contacts. This may include accounts created by apps you have installed. This permission allows apps to save your contact data, and malicious apps may share contact data without your knowledge.
-
read your text messages (SMS or MMS)
This app can read all SMS (text) messages stored on your phone.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
receive text messages (SMS)
Allows the app to receive and process SMS messages. This means the app could monitor or delete messages sent to your device without showing them to you.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
com.pennywiseai.tracker.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
45 MiB
PGP Signature
|
Build Log