ecu

ecu

The expense tracker that actually keeps up with your finances.

iPhoneiPadMac
Download on the App Store

Multi-Account

Track multiple accounts with independent currencies. See your global balance across everything, converted in real time.

Multi-Currency

EUR, USD, GBP, JPY, CHF, CAD. Each account in its own currency with live exchange rates and foreign transactions.

Beautiful Charts

Income vs. expenses, spending by category, daily trends, balance forecasts. Seven charts, all fully accessible.

Recurring Transactions

Set it and forget it. Daily, weekly, monthly, or yearly, with smart clamping, pause, and resume.

Budgets

Set monthly limits per category. Visual progress bars show you exactly where you stand before you overspend.

Split Transactions

Break down purchases into line items. Individual names, amounts, and categories for each part of a transaction.

iCloud Sync

Your data lives across all your devices. Core Data with CloudKit keeps everything in sync seamlessly.

CSV & PDF Export

Export your transactions with a custom date range. Share reports in the format that works for you.

The Story Behind ecu

Before ecu existed, I tracked my expenses in an Excel spreadsheet. Then Notion. Both worked, until they didn't. I wanted something on my phone, something that could handle multiple accounts, forecast future transactions, and actually fit the way I think about money. I tried a few apps. Pennies came close, but always fell short on the features I needed.

In 2022, while finishing my Computer Science degree (3 year program), I had a final exam that required building a mobile app with an external database and a web interface. I saw an opportunity: instead of a throwaway school project, I'd build the app I actually wanted. That first version used SwiftUI with Firebase on the backend, paired with a read only Vue.js web interface (Express + Firebase, full auth system). It got me my diploma, and a tool I genuinely used every day.

After graduating, I realized Firebase was more of a constraint than a help for a personal finance app. So I rewrote everything from scratch using Core Data and CloudKit, Apple's native stack. No external servers, no web layer, just a clean iOS app that syncs seamlessly through iCloud. In 2025, I graduated from ESIEE Paris with an engineering degree in Computer Science and Applications, and ecu had grown alongside me the entire time.

This app has no ambition to top the charts. It's a fil rouge, a personal thread that runs through my career. I build it for myself, on my own time, because I use it every single day. If other people find it useful too, that genuinely makes me happy. It means something I built out of personal need resonates with someone else's.

It's been years since that first commit, and I'm proud of where ecu is today. I'll keep improving it for years to come, not because I have to, but because I want to.

Tristan NobreSoftware Engineer

What's New

2.8May 2026

Recurring Versioning

Editing a recurring no longer rewrites your whole history. Every field carries its own timeline with effective-from dates, plus a step chart for amount evolution and a proper subscription cancellation flow.

  • Per-field timeline. Every field on a recurring (amount, payment, merchant, categories, tags, name, notes) keeps its own ordered history of values with effective-from dates. Bumping your salary? Past transactions keep the old amount, future ones follow the new
  • Effective-from picker. Every edit reveals a date picker right under the field. Defaults to today for amount and payment (forward-only), to the template's start date for metadata fields (categories, tags, merchant, name, notes), which cascade across history by default. An "Advanced versioning" disclosure groups the less-common fields
  • Amount-over-time chart. A compact step-line chart in the recurring detail view shows how its amount evolved over time. Perfect for tracking subscription price creep or salary raises across years
  • Subscription cancellation flow. A dedicated "Cancel subscription" button opens a sheet with a date picker (past, present, or future). If transactions exist after the chosen date, a confirmation dialog offers three options: delete them, keep them (shown in red in history), or abort the whole operation
  • Post-cancellation marking. Generated transactions dated after the cancellation date appear in red on the recurring's detail view and get a "Post-cancellation" chip in the transaction details. No way to confuse them with active ones
2.8.1Settle a multi-installment recurring early (for example a PayPal 4x): records the remaining balance as one transaction, removes the upcoming installments, and closes the recurring. Search and sorting (alphabetical or custom) in the Categories, Payment Methods, Tags, and Merchants lists, with manual reordering fixed. Transaction duplication now copies every field: foreign currency, merchant, tags, split items, and the original date
2.7May 2026

Insights & Receipts

A new Insights view to drill into any dimension, receipts attached to your transactions, and a gallery to find them all.

  • Insights view. Pick a dimension (category, payment, tag, merchant), pick an item, pick a period, and see everything spent or earned. Totals, adaptive time-series chart, top 5, and a compare-with-previous-period toggle
  • Receipts attached to transactions. Take photos or import images and PDFs (Amazon, Fnac, anything). Multiple receipts per transaction, full-screen viewer with zoom, automatic iCloud sync
  • Account-wide gallery. A new toolbar entry opens the grid of every attachment in the account, sorted by date. Tap a thumbnail to jump to its parent transaction
  • Paperclip indicator. A paperclip badge appears on the transaction card whenever at least one receipt is attached. Visible at a glance
  • Long-press quick receipt. Long-press a transaction then "Add Receipt" opens the camera straight away. The captured photo is saved as a receipt on that transaction
2.7.1Recurring bug fix. Editing the date of a pre-generated installment no longer causes a duplicate to be regenerated. One-time launch cleanup of existing duplicates: keeps the edited copy, removes the auto-regenerated one
2.7.2Recurring polish. Future transactions are colored in the generated list. Paid/Remaining amounts use the correct sign and color (red for expenses, green for income). "Spending" section renamed to "Earnings" for income recurrences. Estimated total now respects manually-edited installments in per-installment mode
2.7.3Attachment picker fix. The source menu (Photo / Library / File) no longer auto-dismisses. iOS simulator falls back to the photo library instead of using the broken simulated camera that crashed on capture
2.7.4Attachment cap dropped from 20 MB to 1 MB to fit under CloudKit's per-record budget. More aggressive image compression (cascading JPEG quality 0.85 → 0.3 until the result fits). Stop-gap until 2.8.0 moves attachments to detached CKAsset storage to lift the cap again
2.7.5Recurring polish. Auto-scroll-to-today removed. All four filter views (categories, payments, tags, merchants) now share the same grid layout with Clear Selection pinned at the top. Merchant is finally saved on recurring templates in per-installment mode. Recurring delete no longer crashes. Same-day transaction order is now stable. Edits to a recurring template propagate to every generated transaction field by field: any field you've manually overridden stays as-is, other fields follow the new template
2.6May 2026

The Big Recurring Update

A deep overhaul of recurring transactions, customizable forecast balances, auto-scroll to today, and tags.

  • Total-amount mode. Enter "$400 across 4 payments" instead of "$100 four times". A new picker on the recurring form
  • Already-paid offset. Tell ecu how many installments were paid externally before tracking started. ecu only generates the rest
  • Recurring spending tracker. See exactly what each recurrence has cost you, with a progress bar on finite plans
  • Customizable forecast balance. Show end-of-week, end-of-month, in-7-days or in-30-days balances on account cards
  • Auto-scroll to today. No more scrolling past future transactions every time you open an account. ecu jumps straight to today
  • Tags. Lightweight multi-select labels orthogonal to categories: perfect for cross-cutting themes like "vacation 2026"
  • Merchants. A fourth dimension alongside categories, payments and tags: one merchant per transaction (Amazon, Walmart, …) with its own filter
  • Per-account feature toggles. Enable or disable categories, payments, tags and merchants independently for each account. Existing values are preserved
  • Filter revamp. 3-position bank picker, plus "Uncategorized" / "Not tagged" / "No payment" / "No merchant" merged into their respective pickers
  • Skip an occurrence. Long-press a future generated transaction to remove just that one without affecting the rest of the series
  • Link to template. Tap straight from any generated recurring transaction to its parent template
2.5March 2026

Merge, Ignore & Stay Notified

Clean up your categories with merge, hide transfers from stats, and never miss a beat with fully customizable notifications.

  • Merge categories & payments. Reassign all transactions to another item and delete the duplicate
  • Ignore in Statistics. Flag categories or payments to exclude from charts (perfect for inter-account transfers)
  • Notifications overhaul. Daily reminders, weekly budget summaries, monthly recaps, and mid-month budget alerts
  • Expense filter. Show only income, expenses, or all transactions
  • 1-month stats period. New 1M option in statistics alongside 3M, 6M, 1Y, All
  • Granular notification settings. Each notification type individually configurable with time and day pickers
  • Emoji picker fix. All emojis now accepted, including symbols like 🅿️ and ℹ️
2.5.1New setting: choose which balance to display on account cards (Current, Forecast, or Bank)
2.5.2Reduction items in split transactions (coupons, discounts) and delete-from-edit-form for categories and payment methods
2.5.3Stats fixes for split transactions and a new "Recompute All Data" button in Settings
2.4March 2026

The Power User Update

Everything you need to take full control of your finances. Search, export, budgets, widgets, and more.

  • Full-text search. Find any transaction instantly across names, notes, amounts, and categories
  • CSV & PDF export. Generate reports with custom date ranges
  • Monthly budgets. Set spending limits with visual progress tracking and alerts
  • Home screen widgets. Glance at your balance and forecast without opening the app
  • Biometric lock. Protect your data with Face ID or Touch ID
  • Quick actions. Long-press the app icon to jump straight to adding a transaction
  • Haptic feedback. Subtle, satisfying responses to every interaction
  • Manual iCloud sync. One-tap sync button in Settings
  • Notifications. Budget alerts and recurring transaction reminders
2.4.1Native emoji keyboard. Removed last third-party dependency
2.4.2Dark mode fixes, custom color picker, redesigned category picker, smart toolbar pinning
2.3March 2026

Quality & Polish

A stronger foundation with split transactions, smarter navigation, and fully accessible charts.

  • Split transactions. Break purchases into detailed line items
  • Duplicate transactions. One tap to copy any transaction
  • Accessible charts. Full VoiceOver support on all 7 chart types
  • Persistent filters. Your view preferences saved across sessions
  • NavigationStack. Modernized navigation across the entire app
2.2March 2026

Autopilot for Your Bills

Recurring transactions that handle themselves. Set the rules, and ecu does the rest.

  • Recurring transactions. Daily, weekly, monthly, or yearly with flexible rules
  • Pause & resume. Put subscriptions on hold without deleting them
  • Smart generation. Transactions auto-created on app launch
  • Redesigned UI. Fresh transaction details, cards, and account views
2.1March 2026

See the Full Picture

Per-account and global statistics, multi-category transactions, and smarter filtering.

  • Per-account stats. Dedicated charts for each account
  • Global overview. Balance evolution, income trends, spending breakdown
  • Multi-category. Tag transactions with multiple categories
  • Settings page. Default currency picker and exchange rate management
2.0March 2026

Multi-Currency, From the Ground Up

A complete rewrite of the financial engine. Every account gets its own currency, with live exchange rates tying it all together.

  • Per-account currencies. EUR, USD, GBP, JPY, CHF, CAD
  • Live exchange rates. Global balance auto-converted in real time
  • Linked transactions. Seamless transfers between accounts
  • Precision engine. All amounts stored as integers, zero rounding errors