Assigning Chores in a Shared House
Housemates track totals over months. A weekly random draw does not survive that.
A shared house is the setting where people keep a running mental ledger over months, so the fairness being judged is cumulative — a draw that is unbiased every single week can still hand one person the bathroom five times in a row and be remembered as rigged.
Housemates keep a running mental ledger, and they keep it with more accuracy than anyone expects. A rota that is unbiased every single week can still hand one person the bathroom five times in two months, and that is the version they will remember.
The fix is not a better draw. It is a rota generated in blocks with the totals printed, so the accounting is visible before anyone starts keeping score privately.
Why a fresh weekly draw fails
Generating a new random allocation each week means every week is independent, which sounds fair and produces exactly the outcome that ends rotas. Over ten weeks with four people and four chores, the totals will spread, and somebody will have drawn the worst job three or four times.
The arithmetic is the same square-root behaviour that shows up everywhere on this site. The expected number of bathroom weeks per person over ten weeks is 2.5, with a standard deviation of about 1.4 — so somebody getting five is under two standard deviations out and entirely ordinary.
Ordinary is not the same as acceptable. The person with five weeks experiences a run of bad luck as a broken system, and they are not being unreasonable — they are correctly observing that the outcome was unfair, even though the process was not.
Four people, ten weeks, one bad job
- Expected: 2.5 bathroom weeks each. Standard deviation: about 1.4.
- Somebody getting 5: under two standard deviations out, so it happens routinely.
- Somebody getting 0: equally ordinary, and equally noticed by everyone else.
Generate in blocks and print the totals
The chore rota assigner builds a multi-week rota in one operation, deals the jobs round-robin within each week, and enforces one rule: nobody takes the same job in consecutive weeks. Round-robin dealing does most of the balancing work that independent weekly draws leave to chance.
It then prints the totals for the whole period, which is the column the house actually cares about. Twenty-four jobs across four people is six each; a rota showing 7, 6, 6, 5 is fine and a rota showing 9, 6, 5, 4 is not, and you can see which you got before it goes on the fridge.
Generate once for the whole term or the whole quarter, print it, and stop regenerating. A rota regenerated weekly has no memory of what it said last week, which defeats both the consecutive-week rule and the totals.
Weighting the jobs nobody wants
Not all chores are equal, and pretending otherwise is the second most common way a rota loses legitimacy. The bathroom and the bins are not the same job, and a rota that counts them identically is fair on a measure nobody uses.
Two workable approaches. Split the bad job into more slots — list the bathroom twice in a four-week rota so it rotates faster — or handle it separately with the straw picker each week, which makes the unpleasantness explicit and shared rather than buried in a table.
The third approach, weighting the draw so people who did it recently are less likely to get it again, is what the weighted picker is for. It works and it requires somebody to maintain the weights, which in practice is the same person who was already keeping score.
- List an unpopular job twice so it rotates through the house faster.
- Or draw it separately each week with the straw picker, so it is visible rather than buried.
- Or weight the draw against whoever did it recently — effective, and needs maintaining.
- Whatever you choose, agree it before generating rather than after the first complaint.
What actually keeps a rota alive
Almost every rota dies for a non-mathematical reason: it stops being visible. A printed rota on the fridge survives; a rota in a group chat scrolls away within four days and stops existing.
The second killer is a job whose completion is ambiguous. "Kitchen" means different things to different people, and a rota with ambiguous jobs generates arguments about whether a turn was done rather than about who has it.
Neither of those is solved by a generator. What a generator solves is the allocation being suspected of favouritism, which is a real problem and a smaller one than most houses think.
Frequently asked questions
Why not generate a new rota every week?
Because independent weekly draws let the totals drift. Over ten weeks with four people, somebody getting five bathroom weeks against an expected 2.5 is entirely ordinary.
What does the tool actually guarantee?
That nobody does the same job in consecutive weeks, and that jobs are dealt evenly within each week. It reports the totals rather than enforcing them.
How long a rota should I generate?
As long as you are willing to print — a term or a quarter. Regenerating weekly defeats both the consecutive-week rule and the totals.
How do I handle a job everyone hates?
List it twice so it rotates faster, draw it separately with the straw picker, or weight the draw against whoever did it recently.
Should all chores count equally?
They do in the tool, and often they should not. A rota that counts the bathroom and the bins identically is fair on a measure nobody actually uses.
Is the rota saved anywhere?
No. Generate once and print it — that is also the arrangement that makes the constraints meaningful.
Why do rotas usually fail?
They stop being visible, or a job's completion is ambiguous. Neither is a problem a generator solves.
What does a generator actually fix?
The suspicion that the allocation favoured someone. That is real, and smaller than most houses assume.
Tools for this job
Background reading
The Law of Large Numbers, Practically
What 'it evens out' actually promises, on what timescale, and what it never promises.
Constraint Satisfaction in Fair Draws
What happens when the rules and the randomness disagree — and when there is no answer.
Coin Flip Streaks and What They Mean
How long a run of heads you should expect, as a function of how many times you flip.