Rent vs Buy Skill
Rent-vs-buy arguments are usually two people comparing different questions: one counts equity and forgets transaction costs and carry; the other counts rent as "thrown away" and forgets the renter can invest the difference. This skill runs the symmetric model — both paths get their real costs and their real compounding — and delivers a breakeven horizon, because the honest answer is almost always "it depends how long you stay."
What This Skill Produces
- The year-by-year table — owner net position (equity minus selling costs) vs renter net position (invested savings), per year
- The breakeven year — before it, renting won; after it, buying won, on the stated assumptions
- The assumption ledger — every input labeled, defaults flagged as defaults
- The not-modeled list — taxes/deductions, renovation risk, the non-financials — stated up front
Required Inputs
Ask for these if not provided:
- Home price and comparable monthly rent — same home, same neighborhood; comparing a condo rent to a house purchase is the classic apples-to-oranges error
- Down payment %, mortgage rate, term (defaults 20% / 6.5% / 30yr, labeled)
- How long they expect to stay — the single most decision-relevant input
- Growth assumptions — appreciation, rent growth, investment return (defaults 3/3/5%, labeled)
Programmatic Helper
python3 scripts/rent_vs_buy.py --price 450000 --rent 2200
python3 scripts/rent_vs_buy.py --price 450000 --rent 2200 --horizon 10 --appreciation 2 --json
Deterministic. The renter's pot starts at the down payment + closing costs (the money a buyer parts with on day one) and each year absorbs the difference between owner outflow and rent. Selling costs are applied at every horizon — equity you can't access without paying 7% isn't fully yours.
Framework: The Symmetry Rules
- The renter invests the difference — the model's load-bearing assumption; a renter who spends the difference makes buying win almost automatically, and that's a behavior question, not a math question. Say so.
- Carry costs are real — tax, insurance, maintenance (~2%/yr of value) never build equity; "my mortgage is like rent" omits them
- Transaction costs decide short horizons — ~3% in and ~7% out is why breakeven is measured in years, not months
- Appreciation is an assumption, not a birthright — vary it before trusting a conclusion; a 1-point change often moves breakeven by years
- The output is a horizon, not a verdict — "buying wins if you stay past year N" is the honest deliverable
Output Format
Rent vs Buy: [scenario]
The Table and the Breakeven
[Script output: year-by-year net positions, breakeven year]
What the Breakeven Means
[Two sentences: how the user's expected stay compares to the breakeven, and which assumption the conclusion is most hostage to.]
What This Model Ignores
Taxes and deductions (jurisdiction-specific) · renovation and repair surprises · rate refinancing · the non-financials (stability, flexibility, the yard) — which are allowed to outvote the math.
Educational model, not financial advice — verify with a licensed professional before acting on it.
Quality Checks
Anti-Patterns
1---2name: rent-vs-buy3description: Model rent-vs-buy honestly — year-by-year net position for both paths including the assumption everyone drops (the renter invests the difference), with a breakeven horizon instead of a verdict. Use when asked should I rent or buy, does buying beat renting in my city, when does buying break even, or run the rent-vs-buy numbers. Produces the year-by-year comparison table, the breakeven year, the assumption list with defaults labeled, and the not-modeled list.4---5
6# Rent vs Buy Skill
7
8Rent-vs-buy arguments are usually two people comparing different questions: one counts equity and forgets transaction costs and carry; the other counts rent as "thrown away" and forgets the renter can invest the difference. This skill runs the symmetric model — both paths get their real costs and their real compounding — and delivers a breakeven *horizon*, because the honest answer is almost always "it depends how long you stay."
9
10## What This Skill Produces
11
12- **The year-by-year table** — owner net position (equity minus selling costs) vs renter net position (invested savings), per year
13- **The breakeven year** — before it, renting won; after it, buying won, on the stated assumptions
14- **The assumption ledger** — every input labeled, defaults flagged as defaults
15- **The not-modeled list** — taxes/deductions, renovation risk, the non-financials — stated up front
16
17## Required Inputs
18
19Ask for these if not provided:
20- **Home price** and **comparable monthly rent** — same home, same neighborhood; comparing a condo rent to a house purchase is the classic apples-to-oranges error
21- **Down payment %, mortgage rate, term** (defaults 20% / 6.5% / 30yr, labeled)
22- **How long they expect to stay** — the single most decision-relevant input
23- **Growth assumptions** — appreciation, rent growth, investment return (defaults 3/3/5%, labeled)
24
25## Programmatic Helper
26
27```bash
28python3 scripts/rent_vs_buy.py --price 450000 --rent 2200
29python3 scripts/rent_vs_buy.py --price 450000 --rent 2200 --horizon 10 --appreciation 2 --json
30```
31
32Deterministic. The renter's pot starts at the down payment + closing costs (the money a buyer parts with on day one) and each year absorbs the difference between owner outflow and rent. Selling costs are applied at every horizon — equity you can't access without paying 7% isn't fully yours.
33
34## Framework: The Symmetry Rules
35
36- **The renter invests the difference** — the model's load-bearing assumption; a renter who spends the difference makes buying win almost automatically, and that's a behavior question, not a math question. Say so.
37- **Carry costs are real** — tax, insurance, maintenance (~2%/yr of value) never build equity; "my mortgage is like rent" omits them
38- **Transaction costs decide short horizons** — ~3% in and ~7% out is why breakeven is measured in years, not months
39- **Appreciation is an assumption, not a birthright** — vary it before trusting a conclusion; a 1-point change often moves breakeven by years
40- **The output is a horizon, not a verdict** — "buying wins if you stay past year N" is the honest deliverable
41
42## Output Format
43
44---
45
46# Rent vs Buy: [scenario]
47
48## The Table and the Breakeven
49[Script output: year-by-year net positions, breakeven year]
50
51## What the Breakeven Means
52[Two sentences: how the user's expected stay compares to the breakeven, and which assumption the conclusion is most hostage to.]
53
54## What This Model Ignores
55Taxes and deductions (jurisdiction-specific) · renovation and repair surprises · rate refinancing · the non-financials (stability, flexibility, the yard) — which are allowed to outvote the math.
56
57*Educational model, not financial advice — verify with a licensed professional before acting on it.*
58
59---
60
61## Quality Checks
62
63- [ ] The renter-invests-the-difference assumption is stated explicitly
64- [ ] Selling costs are inside the owner's net position at every horizon
65- [ ] The breakeven year is compared against how long the user expects to stay
66- [ ] At least one sensitivity note (appreciation or investment return varied)
67- [ ] The disclaimer line appears in the artifact
68
69## Anti-Patterns
70
71- [ ] Do not declare a universal winner — the deliverable is a breakeven horizon
72- [ ] Do not count rent as "thrown away" without counting interest, tax, and maintenance the same way
73- [ ] Do not compare non-comparable homes (rent a 1BR vs buy a 3BR)
74- [ ] Do not model jurisdiction-specific tax benefits — name them as unmodeled instead
75- [ ] Do not let the math silently overrule stated non-financial priorities — surface the tension