What it is
An expense splitter for one trip and four people, built to prove that general group-finance apps are often more hassle than help. There are no accounts and no onboarding.
A one-trip expense splitter built to prove that generic group-finance apps are often more hassle than help.
An expense splitter for one trip and four people, built to prove that general group-finance apps are often more hassle than help. There are no accounts and no onboarding.
I kept it narrow. Hardcoding the people and the trip made the build quick, and stopped it turning into a product.
A Replit web app in React with expense-splitting logic and a mobile-first layout, backed by Postgres.
It worked, and the group still went back to Splitwise, because everyone was already on it.
Vegas Split came from frustration with a whole category of app. Splitwise has always felt like a false economy to me: everyone needs an account, nobody remembers their login, and you still have to sort out the actual payments somewhere else. For this Vegas work trip, Monzo Tabs would have been the obvious answer, except two people in the group didn’t have Monzo.
So I hardcoded it for the four people on the trip. I wanted a working prototype fast enough that the group might actually use it in Vegas instead of going back to Splitwise out of habit. Fixing the users and the use case made the build easy. I skipped accounts, onboarding, permissions and everything else that turns a small utility into a product treadmill.
It worked, but I don’t think the group used it. That makes it a dead project, and I’ve no interest in reviving it, because I don’t think “build a better Splitwise” has been a real opportunity for at least a decade.
Even with a simpler tool right there, people stayed with the familiar mess, partly out of habit and partly because everyone was already on Splitwise. It also made me curious that Splitwise still has a real team behind it. From the outside that’s surprising. From the inside, distribution and habit probably matter more than a cleaner product.
The image above is a reconstruction of the real screen, because the app needs a Postgres database I’m not running locally.