Throughout my 20s, I have lived with different roommates in many different apartment setups. And every single time, the same conversation happens:
how do we split rent, FAIRLY?
-
I am not alone in this. Browse any personal finance or roommates threads and you will find hundreds of heated debates about the right way to divide rent.
Here is the core issue: splitting a $4,000 apartment equally 3 ways means each person pays the same price for a fundamentally different product. Room A has an en-suite bathroom, a walk-in closet, and floor-to-ceiling windows. Room C has a reach-in closet, a shared bathroom down the hall, and one small window facing a brick wall. Charging both roommates $1,333 is not fairness - it is just quick math applied to an unequal situation.
But making it fair is harder than it sounds, and here is why: you cannot simply assign a static dollar value or premium % to each feature easily. People have different preferences, different lifestyles, and - as we say in Econ 101 - different utility functions. Someone who works from home full-time will pay a premium for large windows, natural light, and a balcony. That same balcony is worth nothing to someone grinding 12+ hours a day at the office who just needs a quiet place to sleep. A pet owner cares deeply about ground floor access and outdoor space. A frequent traveler barely cares about the room at all - they want low rent and a good location. A feature worth an extra $200 to one person might genuinely not be worth a single dollar to another.
This is what makes rent splitting hard. It is not a math problem - it is a preference aggregation problem dressed up as a math problem. Equal splits ignore it entirely. Back-of-napkin negotiations anchor on whoever argues loudest. Neither approach feels fair when you are signing a long-term lease and living with the consequences every day.
-
I did what a finance person does: I built a spreadsheet. 😊 Formulas, weighted allocations, dynamic charts, scenario comparisons, sensitivity tables - the things FP&A nerds do daily, you know the vibe.
I live in spreadsheets: splitting group trip expenses with friends, budgeting for vacations, tracking personal milestones, etc. I sell my Excel/Gsheet templates on Etsy, because the marginal cost of distributing a high-quality product you have already built for yourself is essentially zero. If it solved my problem well, it will probably solve someone else's too.
But what really got me excited about this project was something bigger than solving a roommate debate. For the first time, I had the opportunity to take a methodology I built, turn it into a real product, and put it in front of real users - not just share a Google Sheet link with a friend. With AI coding tools now accessible to someone like me - a finance person, not a software developer - that gap between "I have a great idea" and "I shipped a thing" has collapsed dramatically. Fair Divide is my first app. It will not be my last. I have a whole library of spreadsheets waiting their turn. 😊
How Do Most Roommates Split Rent?
There are several common approaches people use. Each has its merits — and its blind spots.
| Method | How it works | Pro | Con | Best for | Fairness |
|---|---|---|---|---|---|
| Equal Split | Everyone pays the same amount | Simple | Completely ignores room size and quality | Friends who do not want to overthink it |
|
| By Room Size | Pro-rate by square footage | Accounts for how much space you get | Ignores features, occupants, pets | Most basic roommate situations |
|
| By Income | Higher earner pays proportionally more | Feels equitable for people who share finances | Awkward with strangers, penalizes success, irrelevant to what you actually get | Couples or family members only |
|
| Negotiation | Argue until someone gives in | Flexible, can account for anything | Creates resentment, no logic, no transparency, whoever is more assertive wins | Nobody |
|
| Fixed % to Features | Assign a set % premium to en-suite bath, balcony, etc. before anyone moves in | Faster than full negotiation | Who decides the %? A balcony means completely different things to different people. A fixed % ignores individual preferences entirely. | When everyone already agrees on values |
|
|
★ FairDivide Room size + everyone rates every feature + occupants + pets — all weighted together |
Transparent, mathematical, every voice counts, market-based pricing driven by real preferences | Every voice counts equally. No single roommate can game the result. The math is fully visible. | Requires about 10 minutes of setup | Any roommate situation |
|
The Methodology: How FairDivide Actually Works
The goal was simple: build a model that is mathematically defensible, transparent enough that every roommate can see exactly how their number was calculated, and flexible enough to capture individual preferences rather than imposing a one-size-fits-all answer.
The model works in three steps.
-
Every roommate deserves to pay proportionally for the private space they occupy. FairDivide starts by calculating each room's share of total private square footage in the apartment. If you have an exclusive use area - a WFH desk setup in the living room, a pet corner, a workout machine taking up common space - that square footage gets added to your room's base before the calculation runs.
This gives everyone a starting number that is purely objective. No opinions, no negotiation - just space.
-
Here is where it gets interesting.
Each roommate independently distributes 100 utility points across all the features in the apartment - en-suite bathroom, balcony, natural light, closet size, floor level, and so on. You decide what matters to you. The group average becomes the shared feature weight.
But raw scores alone are not enough - people game systems, consciously or not. Someone might dump 80 points on the one feature their room has, artificially inflating their room's value. To prevent this, FairDivide shifts and normalizes every roommate's raw utility scores before blending them. This ensures the math reflects genuine relative preferences, not strategic point allocation. Every voice counts equally - and no single voice can tilt the outcome unfairly.
This is the part I am most proud of methodologically. Instead of someone arbitrarily deciding that a balcony is worth 15% more rent, the market decides - where the market is the people who actually have to live there. If three out of four roommates work from home and love natural light, that feature gets weighted heavily. If nobody cares about the balcony, it barely moves the needle.
Negative features work the same way. No window? Ground floor facing a busy street? Roommates can assign negative utility scores, which reduces that room's share accordingly.
-
The final rent for each room is a weighted blend: 70% driven by square footage, 30% driven by the feature score. The 70/30 ratio keeps the model grounded in objective reality - space is still the dominant factor - while giving preferences enough weight to matter.
There is one more nuance worth calling out: feature scores are scaled by each room's private square footage before blending. This reflects a compounding reality - a large room with an en-suite bathroom and a balcony is not just the sum of its parts. The premium features feel more premium precisely because you have the space to enjoy them. Conversely, a tiny room with a "nice" feature does not command the same premium as the same feature in a spacious room. The model captures that interaction naturally.
Additional adjustments are layered on top for rooms with multiple occupants (more people use more common areas) and pets (same logic).
The output is a single number per room: your fair rent. Every component of the calculation is visible, every assumption is explicit, and any roommate can go back and see exactly why their number landed where it did. That transparency is the whole point.
The Build: 5 Days, 2 WorkSTREAMS
Let me be specific about the timeline because I think it illustrates something important about what AI-assisted development actually looks like in practice.
-
Before a single line of code was written, I spent two full days stress-testing the methodology in Excel. This was the most critical part of the entire project.
FP&A work has taught me that models with closely related variables are where errors hide. FairDivide has several: raw square footage versus effective square footage (which adds exclusive use areas), raw utility scores versus shifted-and-normalized scores. Each derived variable flows from the one before it. Get one wrong and the error compounds silently downstream.
I ran hundreds of scenarios: edge cases, adversarial inputs, situations where a roommate might try to game the scoring system by dumping all their points on the one feature their room has. I found the failure modes, fixed the logic, and documented the rules before touching any code. The spreadsheet became the source of truth - the spec the app had to match exactly.
This is standard FP&A discipline applied to product development. You do not build the model and test later. You validate the logic first, then build.
-
Three days of solid AI-assisted development. The workflow looked less like traditional coding and more like product management: describe the behavior clearly, review the output carefully, test against my validated scenarios, push back when something was wrong.
And things did go wrong. The most frustrating recurring issue: Claude Code would accidentally change something I did not ask it to touch. Update the formula for normalized scores - and suddenly the effective square footage calculation behaves differently. Fix the feature weighting logic - and the UI for a completely separate input breaks.
This is where domain knowledge saved me. Because I had the spreadsheet as a benchmark and understood every variable and its relationship to every other variable, I could catch these unintended changes immediately.
The lesson I took from this: AI coding tools are extraordinarily powerful - 3 days to build a production web app that would have taken me months to learn from scratch, if ever. But they require a human who understands the problem deeply enough to know when the output is wrong. The AI writes the code. You still have to be right about the logic.
What This Means Beyond the App
Fair Divide is a rent calculator. But building it taught me something more useful than how to ship a web app.
The same instincts that drove this project - identifying a problem others were living with too, mapping the full solution space before building anything, designing a methodology rigorous enough to withstand edge cases and adversarial inputs, then iterating until the output was something real people could trust - are the same instincts I bring to FP&A work every day.
In corporate finance, the tools look different but the problem is the same: take a messy, contested question and replace it with a transparent, defensible framework that stakeholders can actually align around. A rent split where roommates argue in circles. A forecast where every team has a different version of the truth. The skill is the same - structure the problem, design the logic, make the math visible enough that people trust it instead of fighting it.
What AI tools have changed for me is the distance between having an idea and testing it in the real world. I have always built things - spreadsheets, models, frameworks - for myself and my team. The constraint was never the thinking. It was the last mile: making it accessible, distributable, usable by someone who was not me. That gap has collapsed. And I intend to use that aggressively.