A mobile app for roommates to split utility bills by room square footage, with balance tracking and payment reminders. Target users are renters in shared apartments. No in-app payments; track only.
Product Requirements Document (PRD)
Product Name: UtilitySplit (Working Title)
Document Version: 1.0
Target Launch: MVP
Author: Product Management
1. Overview & Problem Statement
Splitting utility bills equally in shared apartments often leads to conflicts when bedroom sizes vary significantly. Existing bill-splitting apps only support flat splits or manual percentage adjustments, which require tedious math.
UtilitySplit automates fair bill splitting based on room square footage while dividing common spaces equally, giving roommates a transparent, hassle-free way to track balances and send payment reminders.
2. Target Audience
- Primary Persona: Renters in multi-bedroom shared apartments with unequal bedroom sizes.
- Secondary Persona: Primary tenants/leaseholders who manage and pay utility bills upfront and need to collect reimbursement from roommates.
3. Goals & Key Objectives
- Fairness: Provide an exact, automated split calculation based on bedroom square footage + shared area logic.
- Simplicity: Allow quick manual bill entry and easy multi-user household onboarding.
- Clarity: Maintain a clear ledger of who owes what without handling actual monetary transactions.
4. Key Functional Requirements
4.1. User Accounts & Household Onboarding
- FR-1.1 Account Creation: Users sign up using lightweight authentication (Email, Apple ID, or Google Sign-In).
- FR-1.2 Create Household: A user can create a household and define the total household name.
- FR-1.3 Invite Link: Household creator generates a unique invite link. Roommates joining via link are automatically added to the household.
4.2. Space & Calculation Setup
- FR-2.1 Square Footage Input:
- Input total shared/common area square footage (e.g., kitchen, living room).
- Input individual bedroom square footage assigned to each roommate.
- FR-2.2 Calculation Engine:
- Shared Space Cost: Divided equally among all active household members.
- Bedroom Cost: Divided proportionally based on the roommate's individual bedroom square footage relative to the total bedroom square footage.
- Formula:
$$\text{User Share} = \left(\frac{\text{Total Bill} \times \text{Shared SqFt %}}{\text{Number of Roommates}}\right) + \left(\text{Total Bill} \times \text{Bedroom SqFt %} \times \frac{\text{User Bedroom SqFt}}{\text{Total Bedroom SqFt}}\right)$$
4.3. Manual Bill Management
- FR-3.1 Add Bill: Any roommate can add a bill manually with the following fields:
- Title/Category (e.g., Electric, Internet, Gas, Water)
- Total Amount ($)
- Payer (Who paid the bill)
- Due Date
- FR-3.2 Bill Breakdown View: Displays how much each roommate owes for that specific bill based on the square footage calculation logic.
4.4. Balance Tracking & Reminders
- FR-4.1 Household Dashboard: Displays a aggregated ledger showing individual balances (e.g., "Alex owes Sam $45.20").
- FR-4.2 Manual Settlement: Users can mark balances as "Paid/Settled" once offline payment (Venmo, Zelle, cash, etc.) is completed.
- FR-4.3 Payment Reminders:
- Automated push notifications sent 3 days and 1 day before a bill's due date to members with outstanding balances.
- Manual "Send Reminder" button to trigger a nudge notification to specific roommates.
5. Non-Functional Requirements
- Platform Availability: iOS and Android (React Native or Flutter).
- Performance: Bill calculations must render instantaneously (<100ms).
- Security: Secure deep links for household invitations to prevent unauthorized access to household data.
6. Out of Scope (MVP)
- In-App Payments: Direct bank transfers, Stripe, or Venmo API integration. All settlement is tracked manually.
- Bill Scanning/OCR: Parsing PDF or photo receipts (planned for v1.1).
- Unequal Shared Spaces: Complex logic for private bathrooms or balcony access (deferred to post-launch feedback).
7. Success Metrics (KPIs)
- Onboarding Conversion: % of invited roommates who successfully join the household via link (>75% target).
- Engagement: Number of bills added per active household per month (Avg. 2–4 bills/month target).
- Resolution Rate: % of entered bills marked as "Settled" within 7 days of the due date.
- Run ID
- 41ec551d-1d38-4f9a-8809-75491b649113
- Started
- 2026-08-21T01:16:54.911Z
- Ended
- 2026-08-21T01:18:31.519Z
- Total cost
- $0.0753
This run wasn't scored for quality. Only runs from the golden-set harness (npm run eval) are judged — see ARCHITECTURE.md §9.