Why your expense data should never leave your phone
What local-first means for expense tracking — and why keeping everything on your device makes the whole experience better.
There’s something nice about an expense tracker that just works — no sign-up, no loading spinners, no “syncing…” banner. You open it, log what you spent, and move on. That’s what happens when your data stays on your device.
Local-first expense tracking isn’t just a privacy feature. It makes the whole experience faster, more reliable, and genuinely yours.
What “local-first” actually means
Local-first is a design approach where your device is the source of truth. Your phone isn’t caching data from a server — it is the database.
In practice, that means:
- No accounts. There’s nothing to sign up for. Open the app, start tracking.
- Works everywhere. Airplane mode, spotty hotel WiFi, underground metro — doesn’t matter. Everything runs on your phone.
- Instant everything. No round trips to a server. Search, analytics, even AI features respond immediately because they’re running on your hardware.
- Your data is portable. Export anytime as JSON or CSV. You’re never locked in.
It also means your expense data stays yours by default. Not as a premium feature — just as a natural consequence of how the app is built.
Why this matters for expense tracking specifically
Expense tracking is one of those habits that lives or dies on friction. If logging a coffee takes 10 seconds instead of 3, you’ll stop doing it within a week.
Local-first removes a whole class of friction:
No account wall. Most expense apps start with “Create an account” or “Sign in with Google.” That’s a server dependency disguised as a feature. When everything is on-device, you skip the sign-up entirely and start tracking in seconds.
No connectivity dependency. You’re most likely to log an expense right after spending — at a market, on a bus, in a country where your data plan doesn’t work. An app that needs internet at the moment of capture is working against you.
No sync conflicts. One device, one database, one source of truth. You’ll never see “unable to sync” or lose an expense to a merge conflict.
Faster AI. When receipt scanning, voice transcription, and search run on your iPhone’s processor instead of a remote server, they respond faster — and they work without internet too.
How Gastos does it
Gastos stores all your expenses, tags, receipts, and trip data using Apple’s SwiftData framework — an on-device database that lives entirely on your iPhone.
The AI features run on-device too:
- Vision extracts amounts, merchants, and currencies from receipt photos
- Speech turns “lunch twenty dollars” into a tagged expense
- NLEmbedding powers semantic search — “airport stuff” finds taxi rides and duty-free purchases
All three run on Apple Intelligence frameworks. No server calls, no API keys, no waiting for a response from somewhere else.
Gastos also has no analytics SDKs, no tracking pixels, and no telemetry. We don’t know how you use the app, how often you open it, or what you spend money on. That’s not a trade-off — it’s just how a local-first app works.
The one feature that touches the internet is Travel Mode’s exchange rate updates. Only the currency pair is sent (e.g., “PHP to USD”) — never your expense data. And rates are cached locally, so Travel Mode works offline too.
What you get
Here’s what local-first adds up to in daily use:
- Log an expense in under 3 seconds — type “coffee 4.50”, snap a receipt, or say it out loud
- Search your spending history instantly — semantic search means “food last week” actually works
- Track expenses while traveling — Travel Mode handles dual currencies with offline exchange rates
- Never worry about an outage — there’s no server to go down
- Leave whenever you want — export everything and take it with you
Your expense data is personal. Keeping it on your device means you’re always in control — of the data, of the experience, and of whether you stay or go.
Gastos is a local-first expense tracker for iPhone. Log expenses by text, receipt photo, or voice. On-device AI, Travel Mode, and everything stays on your phone.
Frequently asked questions
- What is a local-first expense tracker?
- A local-first expense tracker stores all your data on your device — not on a company's servers. Your expenses, receipts, and search history never leave your phone. Gastos uses Apple's SwiftData framework to keep everything on-device, with no accounts, no cloud sync, and no tracking SDKs.
- Can I use Gastos without an internet connection?
- Yes. Gastos works fully offline. Expense logging, receipt scanning, voice input, search, and analytics all run on your device. The only feature that uses the internet is Travel Mode's exchange rate updates, which are cached locally for offline use.
- Is Gastos really private if it uses AI?
- Yes. Gastos uses Apple Intelligence frameworks — Vision for receipt OCR, Speech for voice transcription, and NLEmbedding for semantic search. All of these run entirely on your iPhone's processor. No data is sent to external AI services.
- How do I export my data from Gastos?
- Gastos lets you export all your expenses as JSON or CSV at any time. Your data is yours — you can move it wherever you want.