AI Product Engineer Copilot
A mobile app that helps roommates split and track shared utility bills fairly
Product Requirements Document (PRD)
1. Overview & Problem Statement
Splitting utility bills equally among roommates often causes friction when room sizes vary significantly. Existing bill-splitting tools rarely account for spatial proportions natively.
This mobile application enables roommates to calculate, split, and track utility bills fairly based on room square footage, track outstanding balances, and send gentle payment reminders without handling direct financial transactions.
2. Target Audience
- Primary Persona: Renters living in shared apartments or houses with unequal room sizes who want an objective, fair way to allocate utility costs.
3. Core Features & Functional Requirements
3.1 Household & Room Setup
- Household Creation: Users can create a household and invite roommates via a unique code/link.
- Room Proportion Configuration:
- Admin/Roommates input room dimensions or square footage (e.g., Room A: 200 sq ft, Room B: 150 sq ft, Room C: 100 sq ft).
- The app automatically calculates each member’s percentage share of the total private space.
- Common areas are treated as universally shared and distributed proportionally to the room ratios.
3.2 Manual Bill Entry & Splitting Engine
- Manual Entry Form:
- Fields: Bill Type (Electricity, Water, Gas, Internet, Trash, Other), Total Amount ($), Due Date, Paid By (select roommate), Billing Period.
- Split Customization:
- Default (By Room Size): Applies the calculated square footage percentage to the total bill.
- Equal Split (Override option): Option to split specific bills equally (e.g., fixed-rate Wi-Fi).
- Custom Exclusions: Ability to exclude specific roommates from a bill (e.g., if one person was away for the entire billing cycle).
3.3 Balance Tracking & Ledger
- Household Dashboard: Displays total household spend, upcoming bill due dates, and individual balance statuses.
- Individual Balances: Shows who owes whom (e.g., "Alex owes Jordan $45.20").
- Simplified Debts: Consolidates multi-bill debts into a single net balance per person to minimize transfers.
- Mark as Settled: Users can mark debts as "Paid" (manual reconciliation) once an external payment (e.g., Venmo, Zelle, Cash) is completed.
3.4 Notifications & Reminders
- Push Notifications:
- When a new bill is logged.
- 3 days before, 1 day before, and on the bill due date.
- Manual "Nudge" Feature: Roommates can send a polite in-app nudge/reminder for unpaid balances.
4. Out of Scope (Phase 1)
- In-app payment processing or digital wallet integration (Venmo/Stripe API).
- OCR / Receipt and paper bill scanning.
- Direct integration with utility provider accounts.
- Income-based or days-present dynamic splitting algorithms.
5. User Flows
Flow 1: Onboarding & Setup
- User A creates a household named "Apartment 4B".
- User A inputs room sizes: Room 1 (300 sq ft), Room 2 (200 sq ft) $\rightarrow$ calculates to 60% / 40%.
- User A invites User B via link; User B accepts and claims Room 2.
Flow 2: Adding a Bill & Tracking
- User A receives a $100 electric bill in the mail.
- User A opens the app, selects "Add Bill", enters
$100, category "Electric", due date, and selects split method: "By Room Size". - App calculates: User A owes $60 (paid already), User B owes User A $40.
- User B receives a notification: "User A added a $100 Electric bill. Your share: $40."
- User B pays User A via external app (e.g., Venmo) and User A taps "Mark as Settled" in the app.
6. Success Metrics (KPIs)
- Engagement: Number of bills logged per active household per month ($\ge 3$).
- Settlement Rate: % of logged bills marked as "Settled" within 7 days of the due date ($\ge 80%$).
- Household Retention: % of households active after 60 days.
- Run ID
- d9cab0cc-6a99-4a29-9609-b95b17d162c7
- Started
- 2026-08-20T23:42:21.338Z
- Ended
- 2026-08-20T23:44:18.238Z
- Total cost
- $0.0000
This run wasn't scored for quality. Only runs from the golden-set harness (npm run eval) are judged — see ARCHITECTURE.md §9.