Tracking who paid what and computing a simplified 'who owes whom' balance across a group is genuinely well-specified arithmetic — a real, achievable weekend build.
Build it
Effort: a weekendRunning cost: $0/mo to start
Why CanICodeThis says Build it
A group with members and logged expenses (who paid, how it's split) is a straightforward data model
Computing net balances per person and simplifying them into the fewest necessary payments is a well-documented graph/arithmetic problem
A running history of settled and unsettled expenses is ordinary CRUD
The parts that'll cause problems
Actually collecting the money (not just tracking who owes what) needs a real Stripe integration if you want in-app settlement
Multi-currency groups (splitting a trip across countries) add real exchange-rate complexity
Recurring shared expenses (rent split every month) need a scheduling layer on top of one-off expense logging
How I'd build this
frontend
Next.js
database
Supabase
auth
Supabase Auth
hosting
Vercel
MVP scope
Create a group with members
Log expenses with who paid and how it's split
Compute simplified net balances per person
Mark a debt as settled
Postpone to v2
In-app settlement via Stripe
Multi-currency support
Recurring shared expenses
What it actually costs to build
AI agent — with a subscription (Claude Pro/Max, Cursor, etc.)
$0 marginal
AI agent — pay-per-use API, no subscription
$43–$86 one-time
Hosting, once it's running
$0/mo (free tier)
Domain name, if you want your own
~$12/yr
Existing tools solving a similar problem typically run $14.99–$14.99/mo — see how they compare below.
The build prompt
Genuinely one of the simpler builds in this library:
1. Create a group with members.
2. Log expenses (who paid, how it's split — equal or custom).
3. Compute simplified net balances showing who owes whom the least total number of payments — a well-documented debt-simplification algorithm, not something to invent.
4. Mark debts as settled manually.
Tracking balances is the real value; people can pay each other however they already do. Out of scope: in-app money transfer via Stripe, a real, separate payments integration, and multi-currency support, which needs real exchange-rate handling on top of the balance math.