HomeEveryday Life › Rent Split Calculator

Rent Split Calculator

Splits a total rent between housemates equally, in proportion to each person's room area (optionally dividing the common-area share equally) or in proportion to incomes, and returns per-person shares rounded to cents that add up exactly to the total.

When to use

Several people share a flat or house and need a defensible split of the rent by room size or income instead of a plain equal split.

Do not use when: You are splitting a one-off bill with a tip (use bill-split) or need utilities split by metered usage; this tool does not track deposits or running shared expenses.

Formula

equal: share_i = total_rent / n; by_income: share_i = total_rent × income_i / Σ incomes; by_room_area: common_rent = total_rent × common_area / (Σ areas + common_area) when common_area_share_equal else 0, share_i = common_rent / n + (total_rent − common_rent) × area_i / Σ areas; shares are rounded to cents with the largest-remainder method so that Σ share_i = total_rent

Proportional splits assume the rent scales with the chosen weight; the mixed rule (common-area rent shared equally, private rent by area) is the usual compromise for flats with unequal rooms. Percentages are shares of the total; fairness schemes based on bids (rental harmony) are not implemented.

Inputs

ParameterTypeUnitRequiredDescription
total_rentnumberyesTotal rent per period, in your currency. Range: ≥ 0, ≤ 100000000
methodenum: equal | by_room_area | by_incomedefault equalHow to divide the rent.
peopleintegernoNumber of tenants for the equal method (otherwise taken from the length of room_areas or incomes). Range: ≥ 1, ≤ 100
room_areasnumber_listnoPrivate room area per person in any one unit (m² or ft²), in tenant order; required for by_room_area.
incomesnumber_listnoIncome per person (same period and currency for everyone), in tenant order; required for by_income.
common_areanumberdefault 0Shared space (kitchen, living room, bathrooms) in the same unit as room_areas; used by by_room_area. Range: ≥ 0, ≤ 1000000
common_area_share_equalbooleandefault truetrue: the rent attributable to common_area is divided equally and only the private-room rent follows room size; false: the whole rent follows private room size.

Outputs

OutputTypeUnitDescription
sharesnumber_listRent per person in list order, rounded to cents so that they sum to total_rent.
shares_tablelistPer person: person, share, percent of the total and the weight used (1, room area or income).
per_person_averagenumbertotal_rent / number of people.
people_countintegerNumber of shares.
largest_sharenumberHighest individual share.
smallest_sharenumberLowest individual share.
method_usedstringDescription of the split that was applied.

Example

3000 by room area 12 / 15 / 18: {"total_rent":3000,"method":"by_room_area","room_areas":[12,15,18]}{"shares":[800,1000,1200],"per_person_average":1000,"people_count":3,"largest_share":1200,"smallest_share":800}

3000 by income 40,000 / 60,000: {"total_rent":3000,"method":"by_income","incomes":[40000,60000]}{"shares":[1200,1800],"per_person_average":1500,"people_count":2}

GET https://tttkmbb.com/api/v1/calculate/rent-split?total_rent=3000&method=by_room_area&room_areas=12%2C15%2C18

Machine access

Sources

FAQ

How is the common area handled?

With common_area_share_equal (default) the fraction of rent that corresponds to the shared space is split equally, and only the remainder follows room size: 3000 with rooms 12/15/18 m² and 30 m² of common space gives 880 / 1000 / 1120.

Why do the shares not equal total / people exactly?

Shares are rounded to whole cents; the largest-remainder method assigns the leftover cents to the people with the largest fractional parts so the shares still add up to the total.

Related calculators