NoOweNoOwe

Expense splitting,
without the setup.

No account. No loading screen. No cloud sync.

Open the app and split. Everything runs locally on your device. Works offline, always.

View on GitHub
9:41
NoOweNoOwe

Outstanding

$107.67

across 2 bills

In Progress

Late night pizza

3 people · 2 items

IN PROGRESS

Recent Bills

Scroll

Why we built this

Bill splitting should be faster than passing cash.

Someone pays for the table. Nobody's on the same app. The group chat becomes a debt tracker. It always goes this way.

So we built something that stays out of the way.

Offline-firstNo accountsOpen sourceGPL-3.0
every_other_app.txt

The usual friction

Wait, what app do you use again?

Hold on — I need to make an account first.

No signal here. It won't sync.

Still loading. It's been five minutes.

NoOwe: open it, split it, done.

Why NoOwe

Not just another split-the-bill app.

Most expense apps depend on accounts, syncing, and internet. NoOwe works without them.

Works anywhere

No signal, no Wi-Fi, airplane mode. Everything runs on-device. No internet, ever.

Instant to open

No loading screen, no account flow. Open it and start splitting immediately.

No account needed

Enter a name and payment handle. Nothing to verify, nothing to remember.

Scan any receipt

Point at a receipt. ML Kit reads it on-device. No upload, no waiting.

SMS reminders

Sends through your native Messages app. You review and approve before anything goes out.

Open source

GPL-3.0. Built in the open. Read it, fork it, build on it.

How it works

Open. Split. Done.

No tutorial required. NoOwe is immediately obvious.

01

Set up once

Add your name and payment handle. Stored locally on-device.

Saved to device storage
02

Create a bill

Scan a receipt or enter items manually. Assign who ordered what.

OCR runs on-device via ML Kit
03

Track balances

See who owes what, calculated instantly on-device.

All calculations happen locally
04

Send a reminder

NoOwe drafts the message. Your native Messages app sends it.

Uses your device SMS directly

Built for real life

Wherever people split costs.

Works where other apps struggle. On planes, at festivals, and off the grid.

✈️Airports
Camping
🎵Festivals
🍽️Group dinners
🚗Road trips
🏔️Off the grid
🎿Ski trips
🏖️Beach houses
🎸Concerts
Coffee runs
🎉Bachelor trips
🌍Traveling abroad
🍻Bar tabs
🚂Train rides
🏈Tailgates
✈️Airports
Camping
🎵Festivals
🍽️Group dinners
🚗Road trips
🏔️Off the grid
🎿Ski trips
🏖️Beach houses
🎸Concerts
Coffee runs
🎉Bachelor trips
🌍Traveling abroad
🍻Bar tabs
🚂Train rides
🏈Tailgates
✈️Airports
Camping
🎵Festivals
🍽️Group dinners
🚗Road trips
🏔️Off the grid
🎿Ski trips
🏖️Beach houses
🎸Concerts
Coffee runs
🎉Bachelor trips
🌍Traveling abroad
🍻Bar tabs
🚂Train rides
🏈Tailgates
✈️Airports
Camping
🎵Festivals
🍽️Group dinners
🚗Road trips
🏔️Off the grid
🎿Ski trips
🏖️Beach houses
🎸Concerts
Coffee runs
🎉Bachelor trips
🌍Traveling abroad
🍻Bar tabs
🚂Train rides
🏈Tailgates
🛖Cabin weekends
📵Offline mode
📶Spotty Wi-Fi
🏠Airbnb stays
🍴Split checks
🌲Hiking trips
🛫Delayed flights
🏟️Packed venues
📚Study groups
🏕️Campgrounds
〰️Weak Wi-Fi
🏡Shared rentals
📡Remote areas
🧾Group tabs
🚌Long drives
🛖Cabin weekends
📵Offline mode
📶Spotty Wi-Fi
🏠Airbnb stays
🍴Split checks
🌲Hiking trips
🛫Delayed flights
🏟️Packed venues
📚Study groups
🏕️Campgrounds
〰️Weak Wi-Fi
🏡Shared rentals
📡Remote areas
🧾Group tabs
🚌Long drives
🛖Cabin weekends
📵Offline mode
📶Spotty Wi-Fi
🏠Airbnb stays
🍴Split checks
🌲Hiking trips
🛫Delayed flights
🏟️Packed venues
📚Study groups
🏕️Campgrounds
〰️Weak Wi-Fi
🏡Shared rentals
📡Remote areas
🧾Group tabs
🚌Long drives
🛖Cabin weekends
📵Offline mode
📶Spotty Wi-Fi
🏠Airbnb stays
🍴Split checks
🌲Hiking trips
🛫Delayed flights
🏟️Packed venues
📚Study groups
🏕️Campgrounds
〰️Weak Wi-Fi
🏡Shared rentals
📡Remote areas
🧾Group tabs
🚌Long drives

Works the same whether you have 5 bars or none.

Architecture

Local-first,
by design.

NoOwe has no server because it doesn't need one. Bills and balances never leave your phone.

Network Monitor
idle
Outbound API Requests
Cloud Sync Events
Analytics Pings
Auth Token Refreshes
All quiet. No outbound traffic.0 B sent
☁️

Cloud app

Sends data to servers

📱

NoOwe

Everything stays local

~/Documents/NoOwe/ (on your device)

📄

bills.json

Completed bills

< 10 KB

local only
📄

draft_bills.json

In-progress entries

< 10 KB

local only
📄

settings.json

Profile and payment handles

< 0.5 KB

local only
📄

preferences.json

Theme setting

0.1 KB

local only
🚫

No server endpoint

Nothing to call. It doesn't exist.

Privacy

Private by architecture,
not just policy.

Most apps ask you to trust their privacy policy. NoOwe removes the need for trust.

Your data, your device.

Everything is a local file. No path exists for it to leave.

Zero analytics.

No tracking SDKs. No crash reporters. The app doesn't phone home.

Open to audit.

GPL-3.0. Every claim here is checkable in the source.

Nothing to breach.

No server to compromise. No database to dump. That infrastructure was never built.

Skeptical? Good. The source is public. Read it on GitHub and verify every claim yourself.

The Team

Six students.
One shared problem.

A senior design project at Stevens Institute of Technology that became something we actually wanted to use.

AG
Arjun Gore

Arjun Gore

Local Systems Developer

Built the offline core that keeps the app working when everything else doesn't.

OU
Owen Ungaro

Owen Ungaro

Dashboard Gremlin

Built the balance tracker and dashboard. Somehow also became the website person.

JC
Jacob Choi

Jacob Choi

Group Chaos Management

Made splitting with disorganized people slightly less painful.

AK
Aditya Kumaran

Aditya Kumaran

App Infrastructure Guy

Built the app architecture and the part everyone blamed when scanning broke.

AS
Ananya Shrivastava

Ananya Shrivastava

Design Department

Designed every screen and the visual system. If it looks intentional, that's her.

GO
George Oliynyk

George Oliynyk

OCR Wizard

Built the on-device OCR. The app reads receipts so you don't have to.

Stay in the loop

Get notified when we launch.

No spam. Just a note when the app is ready.