What envy-free rent division does not fix
The guarantee is specific: nobody prefers anyone else’s bed at its price, judged by the numbers people submitted. Three important things sit outside that sentence, and a group deciding whether to use this should know what they are.
Fairness claims tend to get stated without their boundary conditions, which makes them impossible to evaluate. These are ours.
1. It does not erase wealth
Envy-freeness is defined over reported dollar valuations. Someone who earns more can afford to say a room is worth more to them, and they are not lying when they do. The outcome still correlates with income.
The requirement that adjustments sum to zero helps, but less than it appears to. It fixes the mean of each person’s bids — you cannot simply bid high on everything — while leaving the spread free. And spread is exactly where wealth gets in. A person comfortable swinging $400 between their best and worst room can express a preference that a person swinging $80 cannot, even if the second person cares just as much.
So the honest description is: this removes the arbitrariness and the uncompensated losses from the allocation. It does not remove the fact that money is one of the inputs.
Fair here means nobody wants to swap. It does not mean money stopped counting. Someone who can comfortably move $400 between their best and worst bed can say more with their numbers than someone who can only move $80 — even when the two of them care exactly as much. What goes away is the arbitrariness. What stays is that the answer is denominated in dollars.
The stronger version is equal bidding budgets: everyone gets the same 100 points to distribute across the rooms, the allocation runs on points, and points convert to dollars only at the end. That removes wealth from the allocation entirely, because everyone’s spread is identical by construction. It is not implemented here. If your group has a wide income range, this is the limitation to weigh most heavily.
2. It is not strategyproof
Rent division is manipulable in principle. A participant who correctly guessed what everyone else was going to submit could, in some situations, submit something other than their true valuations and end up better off.
We are not going to claim otherwise, and it is worth understanding why we are also not going to fix it. Mechanisms that are strategyproof exist, and they buy that property by producing substantially worse allocations — a guarantee against a form of manipulation that requires information nobody in a group of friends actually has.
What holds this together in practice is not the mathematics:
- Nobody sees anyone else’s bids, so the guessing that manipulation requires has nothing to work from.
- These are people who know each other and will do this again next year. Social enforcement is a stronger constraint than any incentive condition, and it does not degrade the outcome for everyone else.
The practical consequence for a participant is simple, and it is the advice we would give regardless: submit what the rooms are actually worth to you. Bidding strategically requires knowing things you do not know, and the result stops being defensible the moment the numbers stop being real.
One route is worth naming precisely, because we went looking for it rather than reasoning about it. The obvious way to game a ballot is not to underbid the room you want — that just loses you the room. It is to inflate a room you do not want, pushing cost onto whoever takes it, while your own bill falls.
We measured it. On a five-person test scenario, one participant swinging her price on a room she had ranked fourth and never received moved $27.29 onto the person who did receive it, and saved herself $13.77. The cause was that the pricing rule listened loudest to the biggest bidder on a room, whether or not they wanted it. It now listens loudest to the person who ends up in the room, and the same swing moves a fraction of that.
It is not eliminated, and we are not going to say it is. Two things limit it. A household that did not want a room now carries little weight in what it costs. And the ballot is zero-sum, so inflating one room deflates the others — you cannot raise everything. What remains is small and it is a number we can quote, which is a better position than a claim we could not check.
There is a related consequence for the guarantee itself. The result is envy-free over what was submitted. If someone shades their bids, the allocation is still correct with respect to the numbers they gave — which may not be the numbers they meant. The mechanism cannot tell the difference, and neither can anyone else.
3. It widens the price spread
On the real trip we reran, the gap between the cheapest and most expensive bed went from $354 under the old algorithm to $425.
That is not incidental. It is the direct consequence of how the property is achieved. Envy-freeness makes the premium on a desirable room large enough that the people who did not get it genuinely prefer the money. A small premium leaves them still wanting the room, which is the situation the whole exercise is meant to avoid. Making nobody want to trade requires the prices to move apart.
Some groups will find the resulting spread uncomfortable — $1,000 for one room and $575 for another in the same house reads as stark, even when every person prefers their own deal. That discomfort is a real position, and it is worth naming what it is an argument for. It is an argument for equal budgets, or for capping the spread and accepting that some people will envy others. It is not an argument for the weighted-score approach, which produced both a narrower spread and nine of twelve parties in a state of envy.
Smaller things worth knowing
Couples take one bed
Two people sharing are treated as one participant taking one bed. A couple cannot be allocated two separate singles as a bundle. This is not a missing feature so much as the boundary of where the existence guarantee holds: bundles create complementarities, and under those, envy-free prices can fail to exist at all. A couple can be split into two single parties when the house has no shareable bed left for them, described below, but that makes them two buyers rather than one buyer holding two beds.
Two people sharing a bed count as one. They submit one set of numbers, they get one bed, they pay one price and split it however they like. What they cannot do is ask for two separate singles as a package — the moment a party wants a combination of beds rather than one bed, the guarantee that a fair set of prices exists at all stops holding.
A group can fail to fit, and that is arithmetic
Two conditions have to hold before any allocation is possible: every couple needs a bed that sleeps two, and every party needs a bed. Write the group as C couples and K singles, and the house as N beds of which S can be shared, and those are exactly C ≤ S and C + K ≤ N. Nothing subtler is going on. There are only two kinds of party here, so whether everyone can be seated has a closed-form answer rather than needing a search.
Both can fail on a house that is plainly big enough. A lodge that sleeps twelve with five shareable beds cannot seat six couples. Five king beds sleep ten people but are five beds, so they cannot seat six singles. In both cases the beds are there and the parties are the wrong shape for them.
So the remedy is composition, not the mechanism: one couple takes two single beds instead of sharing, or two singles take one bed between them. The organizer makes that call before the allocation runs, and it changes who counts as one party, not what a bed is or how it is priced. Which couple splits cannot matter to whether the group fits, since every couple carries the same constraint, so there is nothing for the allocator to optimise there and no reason for it to decide.
The tempting shortcut is to let a bed hold two unrelated people and price the halves separately. That changes the thing being sold from a bed to a seat, and a couple then needs two seats in one bed, a combination, and that is the exact boundary described above where envy-free prices can stop existing. Joining two people into one party keeps every buyer wanting exactly one thing.
It needs real numbers to work with
The allocation is only as meaningful as the input. A group where everyone submits identical rankings and no adjustments has given the allocator nothing to distinguish them with, and the result will be envy-free in a trivial and unsatisfying way. The mechanism rewards people saying what they actually think.
It does not decide who is in the house
Every hard question about who gets invited, who booked it, and whether the person who found the place deserves something for that is outside the model entirely. This divides a fixed set of beds among a fixed set of people at a fixed total cost.
Who is willing to share a bed with whom sits outside it too. That is settled among the people going, before anybody opens the form, and an allocator is the wrong instrument for it. There is no number a person could submit that would make it a fair thing to compute.
How to split a vacation rental without an argument — the practical version: what to do, in order, before and during the trip.
If those limits are acceptable for your group, the tool is free and takes a few minutes to set up.
Set up a trip