An ad appeared every time we logged an expense.
It was the ledger app we shared. A well-made app, and the ads were the price of using it for free, so there was nothing to complain about.
Still, the arithmetic was strange. Each ad took a few seconds. Three or four a day makes maybe fifteen seconds. A whole month barely adds up to ten minutes.
And yet we started putting off the recording.
What a few seconds do
Nobody builds an app to save ten minutes. So the thing we were avoiding wasn't time.
Logging an expense is a very small action repeated several times a day. Attach a very small friction to a very small action, and what disappears isn't time. It's the action itself.
You walk out of a convenience store, start to enter 3,000 won, then think "I'll do it all later" and put the phone away. Later never arrives. A few days slip, memory blurs, and a blurred ledger loses its credibility. A ledger you don't trust tells you nothing at all.
Killing a habit turned out not to require much force. A few seconds was enough.
The first feature wasn't entry. It was import
Once we decided to build it, my first thought wasn't about screens.
My wife had been recording in that app for months already. Months of our spending sat there — not the app's asset, but our record.
So the new app's first feature became import, not input. Pull the data out of the old app and carry it into our own ledger, intact.
Building it gave me an odd feeling. The very first job of a brand-new tool was to connect the past.
But of course it was. A ledger's value isn't in noting today's expense. Meaning appears only when today lands on top of the last several months. A ledger without a past is just a memo.
Numbers get computed. Language only comments
Before adding any AI, I fixed one rule. AI never touches an amount.
Sums, averages, trends — the database computes all of it. The AI's only job is turning numbers that already exist into human sentences.
The reason is simple. If a ledger gets an amount wrong even once, you start doubting the correct numbers too. Trust collapses in a single error, and after the collapse, accuracy doesn't bring it back.
That's usually how tools earn trust from people. Not through one impressive feature, but through repetition without error.
A service with two users
Something I only learned after building it: with two users, there are no metrics.
No retention, no funnels. There's the reaction at dinner that evening instead. One "this is kind of annoying" is the entire backlog, and the next day's "oh, that's better" is the only KPI there is.
Features grew inside that loop. Search for past spending, automatic entry of the fixed costs that repeat monthly, date editing for when you log yesterday's expense today. And in the other direction — a feature that seemed clever while building it, and that nobody used, got cleared off the screen.
The list looks trivial. But every item actually gets used. The gap between a feature you imagined and a feature you lived through shows up honestly in usage.
What two people started, eight now use
It was meant for the two of us. Then a few friends heard about it, we opened accounts for them, and now several households share it.
Growth taught us something too. What felt natural to us needed explaining to others, and inconveniences we never hit showed up daily in another couple's life. The recurring-entry feature arrived as one of those requests.
That was also when I learned how differently couples handle money. Households that pool everything, households that manage separately and split only shared costs, and everything in between. Whether our way can stay the default while still holding other ways — that's a question we're still answering.
What lingers
While building this, I asked myself more than once: with so many good apps out there, is there a reason to build another?
Here's my answer now. What we built wasn't a ledger. It was the amount of friction that fits us.
Apps on the market are tuned for hundreds of thousands of people. What strikes me is that we now live in a time where, instead of fitting ourselves to that average, we can hold a tool shaped for exactly two.
And this probably isn't only about ledgers. Which of the things you do daily are you quietly postponing because of some small friction — and is that friction really something you have to endure?
One thing stays certain. Both of us can now answer "how much did we spend this month?"