Why We Built Splitorium

The expense app built for group organizers — virtual users, family mode, and trip cost tracking

Last summer, I was on a trip with friends when the inevitable happened: the "who owes who" conversation.

We'd been using a popular expense app — you probably know the one. Green logo, rhymes with "Spitwise." It worked fine for years. But somewhere along the way, features we'd relied on suddenly required a $40/year subscription.

"Can someone scan this receipt?"
"Sorry, that's a Pro feature now."
"Can we add a recurring expense for the Airbnb?"
"That's Pro too."
"Can we settle up with minimum transactions?"
"Also Pro."

I'm a software engineer. I looked at my friends. I said the words that would consume my next year:

I could build this.


The Problem with "Freemium" Expense Apps

Here's the thing about expense splitting: it's a solved problem.

The math isn't complicated. You add up expenses, track who paid, divide by participants, calculate balances. A few database tables, some arithmetic, done.

So why do expense apps charge $40/year?

The business model is simple: make the free version frustrating enough that you pay to escape the frustration.

The Freemium Trap

  • Free users can't scan receipts (a feature that costs pennies per scan)
  • Free users can't set up recurring expenses (literally just a cron job)
  • Free users deal with ads and "upgrade" prompts
  • Free users are the product, not the customer

It's not that these companies are evil. They have employees, servers, investors expecting returns. The freemium model works — for them.

But it means that every time your roommate splits the electric bill, or your friend covers dinner, you're either:

  1. Paying $40/year for basic functionality
  2. Dealing with a deliberately hobbled experience
  3. Going back to Venmo request chaos

There had to be a better way.


Why Splitorium Is Different

When I started building Splitorium, I focused on solving real problems that organizers face:

Rule 1: Offline First

The moment that crystallized this: standing in a restaurant in rural Spain, no cell signal, trying to add an expense before I forgot who paid.

The app just... spun. Forever.

Most expense apps require internet for everything. They're web apps wrapped in a mobile shell. Your data lives on their servers, and if you can't reach their servers, you can't use the app.

Splitorium works differently. Everything lives on your phone first. Add expenses in airplane mode. Create groups in a subway tunnel. Track costs on a camping trip with zero bars.

When you have internet again, everything syncs automatically. You don't even notice.

This took 10x longer to build than a regular app. But it's the right way to build expense tracking.

Rule 2: Solve Real Problems

During development, I kept running into issues that existing apps don't solve:

"My friend won't download another app"

Sound familiar? You want to track expenses with someone, but they have App Fatigue. They're not downloading another thing.

So I built Virtual Users. Add "Mike" to your group even if Mike doesn't have Splitorium. Track his expenses. Calculate his balance. When it's time to settle, you just tell him what he owes.

No more "can you just download the app first?" conversations.

"I'm traveling with my family and the kids are complicating the math"

My sister mentioned this. She takes trips with her husband and two kids. Everyone's technically a separate person in the expense app, but one parent handles all the payments.

So I built Family Mode. Group people into "families" within a trip. One person is the responsible party who handles settlements. The kids' expenses roll up to the parent.

It's such a simple concept, but no other app does it.

"We need a shared grocery list, not just expenses"

Groups that split expenses often need to coordinate other things. What to buy, what to pack, what to do.

So I built Shared Lists. Create to-do lists within your group. Assign items. Check them off. It's like having a shared notes app built into your expense tracker.

Trips become much smoother when you're not juggling three different apps.


The Technical Stuff (For Fellow Nerds)

If you're curious about the stack:

Backend
Go (Golang) with PostgreSQL
iOS
Native Swift with SwiftUI
Android
Native Kotlin with Jetpack Compose
Sync
Custom cursor-based sync system for offline-first reliability

No React Native. No cross-platform shortcuts. Each app is built specifically for its platform, which means better performance, better battery life, and a native feel.

The sync system deserves its own blog post. It handles conflict resolution, offline queuing, and multi-device sync without losing data. It took months to get right, but it's bulletproof.


The Business Model

Splitorium isn't a startup chasing unicorn status. I'm a developer who wanted a good expense app — one that works offline, lets you add anyone, and handles the messy reality of group trips.

We're focused on building features that matter to organizers: virtual users for friends who won't download the app, family mode for trips with kids, shared lists for groceries and packing, and full offline support for camping and travel.


What's Next

Splitorium is available now on iOS and Android. It has everything you need:

  • Multiple split types (even, percentage, weighted, custom)
  • Virtual users (add friends without the app)
  • Family mode (group settlements)
  • Shared lists (groceries, packing, to-dos)
  • Recurring expenses
  • All world currencies (150+)
  • 6 languages (EN, ES, FR, DE, AR, FA)
  • Full offline support
  • Receipt scanning
  • Payment method tracking

Coming soon: more currencies, data export, widget support, and whatever users ask for.


Try It

If you've read this far, you probably have the same frustrations I did.

Download Splitorium and try it on your next trip, your next dinner out, or your next month of roommate expenses.

And if you have feedback — features you want, bugs you found, things that could be better — I'm listening. This isn't a faceless corporation. It's me, reading every review and responding to every email.

Let's make expense splitting a solved problem.