Quantify the renter-for-longer thesis. Show the Millennial and Gen Z share of home purchases over time nationally and across the 25 largest metros, what they're paying, and what they're putting down, then tell me how much of the shift looks like affordability versus preference and what it implies for renter household formation
Good, I have all 250 rows across 5 benchmark dates × 25 metros × 2 generations. Now let's process this in the sandbox to build national (population-weighted) aggregates and metro-level tables.
import json
# Population weights (top 25 metros)
pop = {
"35620":19940274,"31080":12927614,"16980":9406924,"19100":8344032,"26420":7796182,
"33100":6457988,"47900":6437907,"12060":6409047,"37980":6330422,"38060":5186958,
"14460":5025517,"40140":4744214,"41860":4648486,"19820":4400578,"42660":4145494,
"33460":3757952,"45300":3424560,"41740":3298799,"19740":3050512,"36740":2940513,
"16740":2883370,"12580":2859024,"41180":2809527,"41700":2763006,"12420":2550637
}
names = {
"35620":"New York","31080":"Los Angeles","16980":"Chicago","19100":"Dallas-Fort Worth","26420":"Houston",
"33100":"Miami","47900":"Washington DC","12060":"Atlanta","37980":"Philadelphia","38060":"Phoenix",
"14460":"Boston","40140":"Riverside","41860":"San Francisco","19820":"Detroit","42660":"Seattle",
"33460":"Minneapolis-St Paul","45300":"Tampa","41740":"San Diego","19740":"Denver","36740":"Orlando",
"16740":"Charlotte","12580":"Baltimore","41180":"St. Louis","41700":"San Antonio","12420":"Austin"
}
raw = json.load(open("gen_data.json"))
dates = ["2019-01-31","2021-01-31","2023-01-31","2025-01-31","2026-08-31"]
# Build nested: date -> gen -> metro -> {share, price, dp}
recs = {}
for row in raw:
mid = row["id"]
d = row["home_price_mortgage_ts_by_gen"]["date_of_report"][:10]
gen = row["home_price_mortgage_ts_by_gen"]["generation"]
share = float(row["home_price_mortgage_ts_by_gen"]["share_of_purchases"])
price = row["home_price_mortgage_ts_by_gen"]["purchase_price_median"]
price = float(price) if price is not None else None
dp = row["home_price_mortgage_ts_by_gen"]["downpayment_pct_median"]
dp = float(dp) if dp is not None else None
n = row["home_price_mortgage_ts_by_gen"]["purchase_sample_size"]
n = float(n) if n else 0
recs.setdefault(d, {}).setdefault(gen, {})[mid] = {"share": share, "price": price, "dp": dp, "n": n}
print("=== National (population-weighted across top 25 metros) ===")
natl = {}
for d in dates:
natl[d] = {}
for gen in ["MILLENNIAL","GEN_Z"]:
metros = recs.get(d, {}).get(gen, {})
tot_pop = sum(pop[m] for m in metros)
w_share = sum(metros[m]["share"]*pop[m] for m in metros)/tot_pop
# weight price/dp by sample size n instead (more accurate for $ metrics)
tot_n = sum(metros[m]["n"] for m in metros if metros[m]["price"] is not None)
w_price = sum(metros[m]["price"]*metros[m]["n"] for m in metros if metros[m]["price"] is not None)/tot_n if tot_n else None
w_dp = sum(metros[m]["dp"]*metros[m]["n"] for m in metros if metros[m]["dp"] is not None)/tot_n if tot_n else None
natl[d][gen] = {"share": w_share, "price": w_price, "dp": w_dp, "coverage": len(metros)}
print(f"{d} {gen}: share={w_share:.1%} price=${w_price:,.0f} dp={w_dp:.1%} (n_metros={len(metros)})")
print()
print("=== Combined Millennial+GenZ national share ===")
for d in dates:
tot = natl[d]["MILLENNIAL"]["share"] + natl[d]["GEN_Z"]["share"]
print(f"{d}: {tot:.1%}")
print()
print("=== Metro-level latest (2026-08-31) vs earliest (2019-01-31), Millennial+GenZ combined share, median price, median downpayment ===")
metro_rows = []
for mid in pop:
row = {"metro": names[mid], "pop": pop[mid]}
for d in ["2019-01-31","2026-08-31"]:
mrec = recs.get(d,{})
mshare = mrec.get("MILLENNIAL",{}).get(mid,{}).get("share",0) + mrec.get("GEN_Z",{}).get(mid,{}).get("share",0)
mprice_m = mrec.get("MILLENNIAL",{}).get(mid,{}).get("price")
mprice_z = mrec.get("GEN_Z",{}).get(mid,{}).get("price")
mdp_m = mrec.get("MILLENNIAL",{}).get(mid,{}).get("dp")
mdp_z = mrec.get("GEN_Z",{}).get(mid,{}).get("dp")
row[f"combined_share_{d}"] = mshare
row[f"mill_price_{d}"] = mprice_m
row[f"genz_price_{d}"] = mprice_z
row[f"mill_dp_{d}"] = mdp_m
row[f"genz_dp_{d}"] = mdp_z
metro_rows.append(row)
for r in sorted(metro_rows, key=lambda x: -x["pop"]):
print(r["metro"],
f"share19={r['combined_share_2019-01-31']:.1%}", f"share26={r['combined_share_2026-08-31']:.1%}",
f"mill_price19=${r['mill_price_2019-01-31']:,.0f}" if r['mill_price_2019-01-31'] else "mill_price19=NA",
f"mill_price26=${r['mill_price_2026-08-31']:,.0f}" if r['mill_price_2026-08-31'] else "mill_price26=NA",
f"mill_dp19={r['mill_dp_2019-01-31']:.1%}" if r['mill_dp_2019-01-31'] is not None else "NA",
f"mill_dp26={r['mill_dp_2026-08-31']:.1%}" if r['mill_dp_2026-08-31'] is not None else "NA")
json.dump(natl, open("natl_summary.json","w"), indent=2)
json.dump(metro_rows, open("metro_summary.json","w"), indent=2)
cat > /tmp/save_raw.py << 'EOF' EOF echo "will write via python heredoc"
[
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"15356","share_of_purchases":"0.466975","purchase_price_median":"460000","downpayment_pct_median":"0.0835"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"6188","share_of_purchases":"0.403180","purchase_price_median":"555000","downpayment_pct_median":"0.1013"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"22498","share_of_purchases":"0.498482","purchase_price_median":"252000","downpayment_pct_median":"0.0341"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"16107","share_of_purchases":"0.489470","purchase_price_median":"270000","downpayment_pct_median":"0.0506"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"20107","share_of_purchases":"0.457195","purchase_price_median":"240000","downpayment_pct_median":"0.1988"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"929","share_of_purchases":"0.021124","purchase_price_median":"214000","downpayment_pct_median":"0.1975"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"712","share_of_purchases":"0.025098","purchase_price_median":"320000","downpayment_pct_median":"0.0936"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"9952","share_of_purchases":"0.350805","purchase_price_median":"299000","downpayment_pct_median":"0.0523"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1442","share_of_purchases":"0.017908","purchase_price_median":"440000","downpayment_pct_median":"0.2000"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"36590","share_of_purchases":"0.454404","purchase_price_median":"440000","downpayment_pct_median":"0.1649"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"611","share_of_purchases":"0.013012","purchase_price_median":"550000","downpayment_pct_median":"0.0860"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"18846","share_of_purchases":"0.401363","purchase_price_median":"600000","downpayment_pct_median":"0.1996"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"17284","share_of_purchases":"0.381503","purchase_price_median":"256000","downpayment_pct_median":"0.0347"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"771","share_of_purchases":"0.017018","purchase_price_median":"227000","downpayment_pct_median":"0.0438"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"29523","share_of_purchases":"0.455757","purchase_price_median":"248000","downpayment_pct_median":"0.0514"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"781","share_of_purchases":"0.031275","purchase_price_median":"265000","downpayment_pct_median":"0.0500"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"387","share_of_purchases":"0.011760","purchase_price_median":"239000","downpayment_pct_median":"0.0474"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"8179","share_of_purchases":"0.466811","purchase_price_median":"302000","downpayment_pct_median":"0.1996"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"375","share_of_purchases":"0.011404","purchase_price_median":"375000","downpayment_pct_median":"0.0944"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"11823","share_of_purchases":"0.391218","purchase_price_median":"365000","downpayment_pct_median":"0.0314"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"582","share_of_purchases":"0.019258","purchase_price_median":"340000","downpayment_pct_median":"0.0222"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"9478","share_of_purchases":"0.421826","purchase_price_median":"885000","downpayment_pct_median":"0.2000"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"213","share_of_purchases":"0.009480","purchase_price_median":"720000","downpayment_pct_median":"0.1425"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"9164","share_of_purchases":"0.476919","purchase_price_median":"195000","downpayment_pct_median":"0.0339"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"15079","share_of_purchases":"0.476249","purchase_price_median":"450000","downpayment_pct_median":"0.1013"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"996","share_of_purchases":"0.018642","purchase_price_median":"243000","downpayment_pct_median":"0.1995"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"13874","share_of_purchases":"0.488452","purchase_price_median":"409000","downpayment_pct_median":"0.0671"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"11580","share_of_purchases":"0.475799","purchase_price_median":"300000","downpayment_pct_median":"0.0310"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"820","share_of_purchases":"0.028869","purchase_price_median":"416000","downpayment_pct_median":"0.0531"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"673","share_of_purchases":"0.021256","purchase_price_median":"470000","downpayment_pct_median":"0.1750"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1118","share_of_purchases":"0.017259","purchase_price_median":"213500","downpayment_pct_median":"0.0382"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"166","share_of_purchases":"0.010816","purchase_price_median":"516000","downpayment_pct_median":"0.1054"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"23338","share_of_purchases":"0.436804","purchase_price_median":"275000","downpayment_pct_median":"0.1992"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"301","share_of_purchases":"0.015665","purchase_price_median":"148000","downpayment_pct_median":"0.0323"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"897","share_of_purchases":"0.029027","purchase_price_median":"235000","downpayment_pct_median":"0.0504"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"11250","share_of_purchases":"0.364054","purchase_price_median":"225000","downpayment_pct_median":"0.0348"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"621","share_of_purchases":"0.013759","purchase_price_median":"224000","downpayment_pct_median":"0.0303"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"10676","share_of_purchases":"0.422611","purchase_price_median":"245000","downpayment_pct_median":"0.0479"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"357","share_of_purchases":"0.014668","purchase_price_median":"289000","downpayment_pct_median":"0.0226"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"945","share_of_purchases":"0.017302","purchase_price_median":"215000","downpayment_pct_median":"0.0241"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1142","share_of_purchases":"0.033112","purchase_price_median":"190000","downpayment_pct_median":"0.0370"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"612","share_of_purchases":"0.024226","purchase_price_median":"249500","downpayment_pct_median":"0.0308"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"260","share_of_purchases":"0.014839","purchase_price_median":"269000","downpayment_pct_median":"0.1990"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7655","share_of_purchases":"0.425160","purchase_price_median":"222000","downpayment_pct_median":"0.1972"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"16768","share_of_purchases":"0.486184","purchase_price_median":"189000","downpayment_pct_median":"0.0471"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"764","share_of_purchases":"0.014560","purchase_price_median":"372000","downpayment_pct_median":"0.0302"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"22410","share_of_purchases":"0.427085","purchase_price_median":"410000","downpayment_pct_median":"0.0347"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"21780","share_of_purchases":"0.398762","purchase_price_median":"239000","downpayment_pct_median":"0.0333"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"9797","share_of_purchases":"0.392319","purchase_price_median":"255000","downpayment_pct_median":"0.0496"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2019-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"397","share_of_purchases":"0.022049","purchase_price_median":"218000","downpayment_pct_median":"0.1970"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1583","share_of_purchases":"0.037288","purchase_price_median":"239000","downpayment_pct_median":"0.0476"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1263","share_of_purchases":"0.019186","purchase_price_median":"388000","downpayment_pct_median":"0.0496"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"931","share_of_purchases":"0.024698","purchase_price_median":"460000","downpayment_pct_median":"0.1111"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1393","share_of_purchases":"0.035063","purchase_price_median":"410000","downpayment_pct_median":"0.0517"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"40687","share_of_purchases":"0.541591","purchase_price_median":"282000","downpayment_pct_median":"0.0591"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"15191","share_of_purchases":"0.524189","purchase_price_median":"960000","downpayment_pct_median":"0.2000"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"13495","share_of_purchases":"0.540405","purchase_price_median":"225000","downpayment_pct_median":"0.0521"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"20614","share_of_purchases":"0.565154","purchase_price_median":"570000","downpayment_pct_median":"0.1507"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1345","share_of_purchases":"0.037028","purchase_price_median":"240000","downpayment_pct_median":"0.0514"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1160","share_of_purchases":"0.032042","purchase_price_median":"312000","downpayment_pct_median":"0.0727"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"863","share_of_purchases":"0.031399","purchase_price_median":"227000","downpayment_pct_median":"0.0116"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"20133","share_of_purchases":"0.555362","purchase_price_median":"232000","downpayment_pct_median":"0.0526"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1922","share_of_purchases":"0.029476","purchase_price_median":"229000","downpayment_pct_median":"0.1983"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1005","share_of_purchases":"0.016786","purchase_price_median":"590000","downpayment_pct_median":"0.1218"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"15330","share_of_purchases":"0.423446","purchase_price_median":"345000","downpayment_pct_median":"0.0556"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"40915","share_of_purchases":"0.517374","purchase_price_median":"302000","downpayment_pct_median":"0.1995"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"344","share_of_purchases":"0.011870","purchase_price_median":"810500","downpayment_pct_median":"0.2000"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"35286","share_of_purchases":"0.536017","purchase_price_median":"465000","downpayment_pct_median":"0.0520"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2131","share_of_purchases":"0.028004","purchase_price_median":"235000","downpayment_pct_median":"0.0335"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1027","share_of_purchases":"0.026133","purchase_price_median":"382000","downpayment_pct_median":"0.0381"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"11361","share_of_purchases":"0.514864","purchase_price_median":"617000","downpayment_pct_median":"0.1100"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"23458","share_of_purchases":"0.590450","purchase_price_median":"450000","downpayment_pct_median":"0.1000"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"13749","share_of_purchases":"0.500236","purchase_price_median":"250000","downpayment_pct_median":"0.0168"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"373","share_of_purchases":"0.016904","purchase_price_median":"550000","downpayment_pct_median":"0.0680"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"660","share_of_purchases":"0.018095","purchase_price_median":"437500","downpayment_pct_median":"0.0523"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"19112","share_of_purchases":"0.486323","purchase_price_median":"425000","downpayment_pct_median":"0.0510"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"908","share_of_purchases":"0.036361","purchase_price_median":"156000","downpayment_pct_median":"0.0506"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"15274","share_of_purchases":"0.478134","purchase_price_median":"292000","downpayment_pct_median":"0.0506"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1355","share_of_purchases":"0.042417","purchase_price_median":"268000","downpayment_pct_median":"0.0495"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"18468","share_of_purchases":"0.508424","purchase_price_median":"290000","downpayment_pct_median":"0.0530"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"22288","share_of_purchases":"0.591256","purchase_price_median":"530000","downpayment_pct_median":"0.1506"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1254","share_of_purchases":"0.023696","purchase_price_median":"235000","downpayment_pct_median":"0.0487"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"30510","share_of_purchases":"0.576531","purchase_price_median":"290000","downpayment_pct_median":"0.0518"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"30646","share_of_purchases":"0.511876","purchase_price_median":"690000","downpayment_pct_median":"0.2000"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"49530","share_of_purchases":"0.534016","purchase_price_median":"495000","downpayment_pct_median":"0.1513"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1125","share_of_purchases":"0.026356","purchase_price_median":"255000","downpayment_pct_median":"0.0502"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"34696","share_of_purchases":"0.532106","purchase_price_median":"268000","downpayment_pct_median":"0.1993"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2027","share_of_purchases":"0.021854","purchase_price_median":"455000","downpayment_pct_median":"0.1461"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"765","share_of_purchases":"0.028725","purchase_price_median":"284000","downpayment_pct_median":"0.0324"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"597","share_of_purchases":"0.022589","purchase_price_median":"299000","downpayment_pct_median":"0.1994"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"14416","share_of_purchases":"0.541304","purchase_price_median":"339000","downpayment_pct_median":"0.0504"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"37614","share_of_purchases":"0.494303","purchase_price_median":"282000","downpayment_pct_median":"0.0507"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2113","share_of_purchases":"0.028126","purchase_price_median":"226000","downpayment_pct_median":"0.0510"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1984","share_of_purchases":"0.054728","purchase_price_median":"185000","downpayment_pct_median":"0.0514"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"24312","share_of_purchases":"0.569568","purchase_price_median":"310000","downpayment_pct_median":"0.0536"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2081","share_of_purchases":"0.031999","purchase_price_median":"273000","downpayment_pct_median":"0.0333"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"30281","share_of_purchases":"0.465625","purchase_price_median":"315000","downpayment_pct_median":"0.0514"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"18651","share_of_purchases":"0.439333","purchase_price_median":"263000","downpayment_pct_median":"0.0501"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2188","share_of_purchases":"0.027667","purchase_price_median":"256000","downpayment_pct_median":"0.1991"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2021-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"14661","share_of_purchases":"0.554732","purchase_price_median":"342000","downpayment_pct_median":"0.2000"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"35279","share_of_purchases":"0.564329","purchase_price_median":"550000","downpayment_pct_median":"0.0993"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"33156","share_of_purchases":"0.570485","purchase_price_median":"352000","downpayment_pct_median":"0.1000"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"14257","share_of_purchases":"0.511719","purchase_price_median":"328000","downpayment_pct_median":"0.1975"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2546","share_of_purchases":"0.043807","purchase_price_median":"279500","downpayment_pct_median":"0.0511"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"17167","share_of_purchases":"0.567485","purchase_price_median":"377000","downpayment_pct_median":"0.0515"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"16427","share_of_purchases":"0.483389","purchase_price_median":"555000","downpayment_pct_median":"0.0556"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"539","share_of_purchases":"0.030842","purchase_price_median":"670000","downpayment_pct_median":"0.0738"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"466","share_of_purchases":"0.017061","purchase_price_median":"844000","downpayment_pct_median":"0.2000"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1303","share_of_purchases":"0.038343","purchase_price_median":"501000","downpayment_pct_median":"0.0488"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"24712","share_of_purchases":"0.475743","purchase_price_median":"455000","downpayment_pct_median":"0.0708"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"14896","share_of_purchases":"0.588496","purchase_price_median":"481000","downpayment_pct_median":"0.2000"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1093","share_of_purchases":"0.033434","purchase_price_median":"542000","downpayment_pct_median":"0.1002"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"13395","share_of_purchases":"0.493861","purchase_price_median":"400000","downpayment_pct_median":"0.0732"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"34953","share_of_purchases":"0.518683","purchase_price_median":"399000","downpayment_pct_median":"0.0750"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"17677","share_of_purchases":"0.528350","purchase_price_median":"410000","downpayment_pct_median":"0.1000"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1475","share_of_purchases":"0.048759","purchase_price_median":"315000","downpayment_pct_median":"0.0381"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2155","share_of_purchases":"0.064411","purchase_price_median":"315000","downpayment_pct_median":"0.0516"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"40672","share_of_purchases":"0.527324","purchase_price_median":"410000","downpayment_pct_median":"0.1997"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"10830","share_of_purchases":"0.538431","purchase_price_median":"280000","downpayment_pct_median":"0.0769"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"17515","share_of_purchases":"0.456405","purchase_price_median":"385000","downpayment_pct_median":"0.0656"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"19763","share_of_purchases":"0.604539","purchase_price_median":"725000","downpayment_pct_median":"0.1963"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1423","share_of_purchases":"0.051075","purchase_price_median":"288000","downpayment_pct_median":"0.0121"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"14663","share_of_purchases":"0.536831","purchase_price_median":"1190000","downpayment_pct_median":"0.2000"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1404","share_of_purchases":"0.069802","purchase_price_median":"200000","downpayment_pct_median":"0.0514"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1527","share_of_purchases":"0.056299","purchase_price_median":"350000","downpayment_pct_median":"0.0535"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"4300","share_of_purchases":"0.052463","purchase_price_median":"260000","downpayment_pct_median":"0.0560"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"9140","share_of_purchases":"0.523003","purchase_price_median":"790000","downpayment_pct_median":"0.1515"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"3315","share_of_purchases":"0.033756","purchase_price_median":"535000","downpayment_pct_median":"0.1884"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2203","share_of_purchases":"0.035240","purchase_price_median":"417000","downpayment_pct_median":"0.0509"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"23760","share_of_purchases":"0.573885","purchase_price_median":"375000","downpayment_pct_median":"0.1000"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"33960","share_of_purchases":"0.532180","purchase_price_median":"350000","downpayment_pct_median":"0.1995"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"3097","share_of_purchases":"0.090157","purchase_price_median":"215000","downpayment_pct_median":"0.0519"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"3000","share_of_purchases":"0.044518","purchase_price_median":"315000","downpayment_pct_median":"0.0507"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2981","share_of_purchases":"0.046715","purchase_price_median":"296000","downpayment_pct_median":"0.1992"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1478","share_of_purchases":"0.040817","purchase_price_median":"510000","downpayment_pct_median":"0.1500"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"994","share_of_purchases":"0.039270","purchase_price_median":"415000","downpayment_pct_median":"0.2000"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2601","share_of_purchases":"0.050073","purchase_price_median":"399000","downpayment_pct_median":"0.0507"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"21799","share_of_purchases":"0.602016","purchase_price_median":"645000","downpayment_pct_median":"0.2000"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"24459","share_of_purchases":"0.510019","purchase_price_median":"850000","downpayment_pct_median":"0.2000"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1042","share_of_purchases":"0.021728","purchase_price_median":"683500","downpayment_pct_median":"0.1037"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1313","share_of_purchases":"0.042175","purchase_price_median":"382000","downpayment_pct_median":"0.1023"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2624","share_of_purchases":"0.063379","purchase_price_median":"301500","downpayment_pct_median":"0.0521"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"3601","share_of_purchases":"0.046688","purchase_price_median":"347000","downpayment_pct_median":"0.1994"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"24142","share_of_purchases":"0.632089","purchase_price_median":"595000","downpayment_pct_median":"0.1356"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2416","share_of_purchases":"0.063256","purchase_price_median":"500000","downpayment_pct_median":"0.0748"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"17889","share_of_purchases":"0.520771","purchase_price_median":"280000","downpayment_pct_median":"0.0652"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"13454","share_of_purchases":"0.432160","purchase_price_median":"460000","downpayment_pct_median":"0.1085"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"44941","share_of_purchases":"0.548308","purchase_price_median":"335000","downpayment_pct_median":"0.1009"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"53714","share_of_purchases":"0.546952","purchase_price_median":"610000","downpayment_pct_median":"0.2000"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2023-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2156","share_of_purchases":"0.056181","purchase_price_median":"325000","downpayment_pct_median":"0.0514"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"857","share_of_purchases":"0.049409","purchase_price_median":"607000","downpayment_pct_median":"0.1064"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7673","share_of_purchases":"0.569890","purchase_price_median":"1300000","downpayment_pct_median":"0.2006"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1631","share_of_purchases":"0.060233","purchase_price_median":"340000","downpayment_pct_median":"0.0524"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"18904","share_of_purchases":"0.579309","purchase_price_median":"652000","downpayment_pct_median":"0.1162"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"15454","share_of_purchases":"0.570722","purchase_price_median":"445000","downpayment_pct_median":"0.1320"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"11446","share_of_purchases":"0.467909","purchase_price_median":"420000","downpayment_pct_median":"0.0629"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"8375","share_of_purchases":"0.551204","purchase_price_median":"465000","downpayment_pct_median":"0.0762"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"861","share_of_purchases":"0.051715","purchase_price_median":"460000","downpayment_pct_median":"0.1000"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1802","share_of_purchases":"0.085052","purchase_price_median":"360000","downpayment_pct_median":"0.0520"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"11142","share_of_purchases":"0.525889","purchase_price_median":"449500","downpayment_pct_median":"0.1011"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"3204","share_of_purchases":"0.067622","purchase_price_median":"358000","downpayment_pct_median":"0.1990"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"20775","share_of_purchases":"0.551163","purchase_price_median":"425000","downpayment_pct_median":"0.1935"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"25325","share_of_purchases":"0.534497","purchase_price_median":"433000","downpayment_pct_median":"0.1995"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"15199","share_of_purchases":"0.610108","purchase_price_median":"625000","downpayment_pct_median":"0.1455"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"759","share_of_purchases":"0.031339","purchase_price_median":"760000","downpayment_pct_median":"0.1590"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"10237","share_of_purchases":"0.520199","purchase_price_median":"330000","downpayment_pct_median":"0.0915"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1824","share_of_purchases":"0.074565","purchase_price_median":"350500","downpayment_pct_median":"0.0500"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"318","share_of_purchases":"0.023619","purchase_price_median":"800000","downpayment_pct_median":"0.2000"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"12523","share_of_purchases":"0.617109","purchase_price_median":"745000","downpayment_pct_median":"0.2000"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"18356","share_of_purchases":"0.533775","purchase_price_median":"375000","downpayment_pct_median":"0.1994"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"13139","share_of_purchases":"0.542508","purchase_price_median":"960000","downpayment_pct_median":"0.2000"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2040","share_of_purchases":"0.085488","purchase_price_median":"339000","downpayment_pct_median":"0.0558"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2203","share_of_purchases":"0.064061","purchase_price_median":"313000","downpayment_pct_median":"0.1984"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"21250","share_of_purchases":"0.551404","purchase_price_median":"730000","downpayment_pct_median":"0.2000"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1209","share_of_purchases":"0.076948","purchase_price_median":"287000","downpayment_pct_median":"0.0101"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2130","share_of_purchases":"0.069273","purchase_price_median":"413000","downpayment_pct_median":"0.0340"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7478","share_of_purchases":"0.482763","purchase_price_median":"600000","downpayment_pct_median":"0.0538"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"754","share_of_purchases":"0.048677","purchase_price_median":"525000","downpayment_pct_median":"0.0313"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"5434","share_of_purchases":"0.564924","purchase_price_median":"895000","downpayment_pct_median":"0.2000"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7899","share_of_purchases":"0.475299","purchase_price_median":"457000","downpayment_pct_median":"0.0883"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"8024","share_of_purchases":"0.510692","purchase_price_median":"332000","downpayment_pct_median":"0.0109"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1166","share_of_purchases":"0.086223","purchase_price_median":"250000","downpayment_pct_median":"0.0515"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1035","share_of_purchases":"0.068119","purchase_price_median":"360000","downpayment_pct_median":"0.0504"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1594","share_of_purchases":"0.041362","purchase_price_median":"600000","downpayment_pct_median":"0.2000"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2196","share_of_purchases":"0.058260","purchase_price_median":"314000","downpayment_pct_median":"0.1010"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"13393","share_of_purchases":"0.561245","purchase_price_median":"415000","downpayment_pct_median":"0.1024"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1211","share_of_purchases":"0.072868","purchase_price_median":"380000","downpayment_pct_median":"0.0512"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2262","share_of_purchases":"0.090800","purchase_price_median":"524000","downpayment_pct_median":"0.0698"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"14389","share_of_purchases":"0.467965","purchase_price_median":"490000","downpayment_pct_median":"0.0727"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2116","share_of_purchases":"0.107526","purchase_price_median":"250000","downpayment_pct_median":"0.0519"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"11127","share_of_purchases":"0.641511","purchase_price_median":"827000","downpayment_pct_median":"0.2000"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"409","share_of_purchases":"0.042520","purchase_price_median":"718000","downpayment_pct_median":"0.1086"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"2164","share_of_purchases":"0.060893","purchase_price_median":"354000","downpayment_pct_median":"0.0506"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"986","share_of_purchases":"0.065406","purchase_price_median":"394500","downpayment_pct_median":"0.1994"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"8611","share_of_purchases":"0.571211","purchase_price_median":"475000","downpayment_pct_median":"0.1997"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7220","share_of_purchases":"0.533905","purchase_price_median":"340000","downpayment_pct_median":"0.0891"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7655","share_of_purchases":"0.459787","purchase_price_median":"566000","downpayment_pct_median":"0.1503"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1606","share_of_purchases":"0.049215","purchase_price_median":"491000","downpayment_pct_median":"0.0514"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"18653","share_of_purchases":"0.524875","purchase_price_median":"450000","downpayment_pct_median":"0.1000"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2025-01-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1232","share_of_purchases":"0.060711","purchase_price_median":"588000","downpayment_pct_median":"0.1508"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"3687","share_of_purchases":"0.497437","purchase_price_median":"512000","downpayment_pct_median":"0.1044"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"4800","share_of_purchases":"0.432355","purchase_price_median":"560000","downpayment_pct_median":"0.1005"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"969","share_of_purchases":"0.071635","purchase_price_median":"385000","downpayment_pct_median":"0.1033"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2074","share_of_purchases":"0.445160","purchase_price_median":"665000","downpayment_pct_median":"0.1007"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"555","share_of_purchases":"0.082113","purchase_price_median":"630000","downpayment_pct_median":"0.1867"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1121","share_of_purchases":"0.075943","purchase_price_median":"386000","downpayment_pct_median":"0.1994"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"816","share_of_purchases":"0.067673","purchase_price_median":"395500","downpayment_pct_median":"0.0625"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2592","share_of_purchases":"0.457627","purchase_price_median":"615000","downpayment_pct_median":"0.1507"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"125","share_of_purchases":"0.027914","purchase_price_median":"900000","downpayment_pct_median":"0.2001"}},
{"id":"16980","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7422","share_of_purchases":"0.548680","purchase_price_median":"490000","downpayment_pct_median":"0.2000"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"3147","share_of_purchases":"0.532577","purchase_price_median":"538000","downpayment_pct_median":"0.1005"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2733","share_of_purchases":"0.546381","purchase_price_median":"505000","downpayment_pct_median":"0.2000"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7686","share_of_purchases":"0.568407","purchase_price_median":"824000","downpayment_pct_median":"0.2000"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2018","share_of_purchases":"0.587653","purchase_price_median":"974500","downpayment_pct_median":"0.2000"}},
{"id":"14460","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"4105","share_of_purchases":"0.607338","purchase_price_median":"800000","downpayment_pct_median":"0.2000"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"4488","share_of_purchases":"0.578649","purchase_price_median":"1129500","downpayment_pct_median":"0.2000"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1014","share_of_purchases":"0.099451","purchase_price_median":"540000","downpayment_pct_median":"0.1000"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2050","share_of_purchases":"0.463382","purchase_price_median":"387000","downpayment_pct_median":"0.0136"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"5234","share_of_purchases":"0.546233","purchase_price_median":"515000","downpayment_pct_median":"0.1907"}},
{"id":"41740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"178","share_of_purchases":"0.051835","purchase_price_median":"834500","downpayment_pct_median":"0.1044"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2846","share_of_purchases":"0.473387","purchase_price_median":"483000","downpayment_pct_median":"0.1000"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"714","share_of_purchases":"0.062082","purchase_price_median":"550000","downpayment_pct_median":"0.0714"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"4400","share_of_purchases":"0.600601","purchase_price_median":"856500","downpayment_pct_median":"0.2000"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"779","share_of_purchases":"0.089819","purchase_price_median":"368000","downpayment_pct_median":"0.0505"}},
{"id":"40140","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"274","share_of_purchases":"0.058811","purchase_price_median":"575000","downpayment_pct_median":"0.0505"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2343","share_of_purchases":"0.509569","purchase_price_median":"380000","downpayment_pct_median":"0.1000"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"4217","share_of_purchases":"0.501546","purchase_price_median":"369000","downpayment_pct_median":"0.1000"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"5597","share_of_purchases":"0.555423","purchase_price_median":"470000","downpayment_pct_median":"0.1494"}},
{"id":"35620","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"705","share_of_purchases":"0.052137","purchase_price_median":"660000","downpayment_pct_median":"0.2000"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"704","share_of_purchases":"0.067511","purchase_price_median":"343000","downpayment_pct_median":"0.1988"}},
{"id":"12420","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"333","share_of_purchases":"0.066573","purchase_price_median":"402000","downpayment_pct_median":"0.1997"}},
{"id":"12060","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"5814","share_of_purchases":"0.482170","purchase_price_median":"515000","downpayment_pct_median":"0.1026"}},
{"id":"26420","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"5120","share_of_purchases":"0.490986","purchase_price_median":"421000","downpayment_pct_median":"0.1995"}},
{"id":"33100","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"370","share_of_purchases":"0.065325","purchase_price_median":"493500","downpayment_pct_median":"0.1007"}},
{"id":"41180","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"437","share_of_purchases":"0.095041","purchase_price_median":"310000","downpayment_pct_median":"0.0524"}},
{"id":"41860","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"2806","share_of_purchases":"0.626619","purchase_price_median":"1357500","downpayment_pct_median":"0.2004"}},
{"id":"37980","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"706","share_of_purchases":"0.073680","purchase_price_median":"395000","downpayment_pct_median":"0.0942"}},
{"id":"41700","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"328","share_of_purchases":"0.074141","purchase_price_median":"297000","downpayment_pct_median":"0.0105"}},
{"id":"42660","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"445","share_of_purchases":"0.060743","purchase_price_median":"665000","downpayment_pct_median":"0.1343"}},
{"id":"38060","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"681","share_of_purchases":"0.061340","purchase_price_median":"462000","downpayment_pct_median":"0.0500"}},
{"id":"45300","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"3901","share_of_purchases":"0.449787","purchase_price_median":"448000","downpayment_pct_median":"0.0877"}},
{"id":"19100","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"7296","share_of_purchases":"0.494275","purchase_price_median":"475000","downpayment_pct_median":"0.1996"}},
{"id":"47900","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"6600","share_of_purchases":"0.573863","purchase_price_median":"735000","downpayment_pct_median":"0.1502"}},
{"id":"36740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"495","share_of_purchases":"0.082335","purchase_price_median":"391000","downpayment_pct_median":"0.0514"}},
{"id":"16740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"750","share_of_purchases":"0.101187","purchase_price_median":"410000","downpayment_pct_median":"0.0850"}},
{"id":"19740","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"MILLENNIAL","purchase_sample_size":"5927","share_of_purchases":"0.581306","purchase_price_median":"655000","downpayment_pct_median":"0.1512"}},
{"id":"19820","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"1119","share_of_purchases":"0.133088","purchase_price_median":"285000","downpayment_pct_median":"0.0523"}},
{"id":"12580","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"419","share_of_purchases":"0.070909","purchase_price_median":"405000","downpayment_pct_median":"0.0509"}},
{"id":"31080","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"278","share_of_purchases":"0.035843","purchase_price_median":"850000","downpayment_pct_median":"0.2000"}},
{"id":"33460","home_price_mortgage_ts_by_gen":{"date_of_report":"2026-08-31T00:00:00.000Z","generation":"GEN_Z","purchase_sample_size":"820","share_of_purchases":"0.081373","purchase_price_median":"386500","downpayment_pct_median":"0.0850"}}
]
cd /vercel/sandbox && python3 analysis.py
Now let me compute the affordability decomposition (monthly payment burden, rent-vs-buy gap) in the sandbox.
def pmt(principal, annual_rate, years=30):
r = annual_rate/12
n = years*12
return principal * r / (1-(1+r)**-n)
# Millennial buyer economics: 2019 vs 2026, top-25-metro population/sample weighted
cases = {
"2019-01 (Millennial)": {"price":338200, "dp_pct":0.093, "rate":0.0453},
"2026-08 (Millennial)": {"price":620061, "dp_pct":0.156, "rate":0.0618},
"2019-01 (Gen Z)": {"price":302186, "dp_pct":0.089, "rate":0.0453},
"2026-08 (Gen Z)": {"price":450089, "dp_pct":0.105, "rate":0.0618},
}
for label, c in cases.items():
loan = c["price"]*(1-c["dp_pct"])
monthly = pmt(loan, c["rate"])
down = c["price"]*c["dp_pct"]
print(f"{label}: price=${c['price']:,.0f} down=${down:,.0f} ({c['dp_pct']:.1%}) loan=${loan:,.0f} rate={c['rate']:.2%} monthly P&I=${monthly:,.0f}")
print()
m19 = pmt(338200*(1-0.093), 0.0453)
m26 = pmt(620061*(1-0.156), 0.0618)
print(f"Millennial monthly P&I change 2019->2026: ${m19:,.0f} -> ${m26:,.0f} (+{(m26/m19-1):.0%})")
price_cagr = (620061/338200)**(1/7.58)-1
print(f"Millennial median purchase price CAGR 2019-2026 (top-25 wtd): {price_cagr:.1%}/yr")
natl_price_cagr = (350000/238500)**(1/7)-1
print(f"National (all-buyer) home price CAGR 2019-2026 (nation-level, all ages): {natl_price_cagr:.1%}/yr")
# income growth (only 2024-2026 data available)
inc_cagr = (57745/52966)**(1/2.0)-1
print(f"National renter median household income growth 2024-2026 (annualized): {inc_cagr:.1%}/yr")
owner_inc_cagr = (109033/100009)**(1/2.0)-1
print(f"National owner median household income growth 2024-2026 (annualized): {owner_inc_cagr:.1%}/yr")
print()
print("=== Rent vs buy monthly cost gap, national, latest ===")
rent = 1650 # in-place median, Aug 2026
print(f"Median in-place MF rent (Aug 2026, national): ${rent:,.0f}/mo")
print(f"Millennial buyer monthly P&I (2026, top-25 wtd): ${m26:,.0f}/mo -> {m26/rent:.1f}x median rent (excl. taxes/insurance/HOA)")
genz_m26 = pmt(450089*(1-0.105), 0.0618)
print(f"Gen Z buyer monthly P&I (2026, top-25 wtd): ${genz_m26:,.0f}/mo -> {genz_m26/rent:.1f}x median rent")
renter_income_monthly = 57745/12
print(f"Median renter household monthly income (Aug 2026): ${renter_income_monthly:,.0f}; rent-to-income = {rent/renter_income_monthly:.1%}")
cd /vercel/sandbox && python3 affordability.py
Renter-for-longer is mostly a math problem, not a mood — the data show a genuine affordability squeeze that dwarfs any taste shift, and it's concentrated in the metros that matter most for rental demand.
The headline number is misleading on its own. Millennial+Gen Z share of home purchases across the top 25 metros climbed from 45% to 60% since 2019 — but that's arithmetic, not appetite: Millennials are the largest generation in U.S. history and have simply aged into their prime 30s–40s buying years, while Gen Z has only started entering. NAR's national buyer survey confirms the mechanism — Millennials are still just 26% of buyers nationally (down from 29% a year ago) and Gen Z is 4% , and first-time buyers — the true test of the renter-for-longer thesis — fell to 21% of all purchases, the lowest share since NAR started tracking in 1981, with the median first-time buyer now 35–40 years old versus 29 in 1981 .
What they're paying and putting down tells the real story.
| Metro | Combined Mill.+Gen Z Share 2019 | Combined Share 2026 | Millennial Median Price 2019 | Millennial Median Price 2026 | Millennial Down Payment % 2019 | Millennial Down Payment % 2026 |
|---|---|---|---|---|---|---|
| 49.8% | 68.9% | $450,000 | $800,000 | 10.1% | 20.0% | |
| 51.7% | 68.1% | $409,000 | $655,000 | 6.7% | 15.1% | |
| 47.8% | 66.1% | $460,000 | $856,500 | 8.3% | 20.0% | |
| 43.1% | 65.5% | $885,000 | $1,357,500 | 20.0% | 20.0% | |
| 41.4% | 63.9% | $555,000 | $974,500 | 10.1% | 20.0% | |
| 50.1% | 63.7% | $270,000 | $470,000 | 5.1% | 14.9% | |
| 44.2% | 63.6% | $410,000 | $735,000 | 3.5% | 15.0% | |
| 51.9% | 63.5% | $189,000 | $369,000 | 4.7% | 10.0% | |
| 47.2% | 62.1% | $440,000 | $824,000 | 16.5% | 20.0% | |
| 47.3% | 62.0% | $248,000 | $490,000 | 5.1% | 20.0% | |
| 51.2% | 62.0% | $252,000 | $515,000 | 3.4% | 19.1% | |
| 41.4% | 61.4% | $600,000 | $1,129,500 | 20.0% | 20.0% | |
| 48.2% | 61.3% | $302,000 | $505,000 | 20.0% | 20.0% | |
| 49.3% | 60.5% | $195,000 | $380,000 | 3.4% | 10.0% | |
| 49.0% | 60.3% | $300,000 | $538,000 | 3.1% | 10.1% | |
| 44.7% | 59.9% | $245,000 | $512,000 | 4.8% | 10.4% | |
| 45.5% | 57.0% | $275,000 | $475,000 | 19.9% | 20.0% | |
| 47.8% | 55.8% | $240,000 | $421,000 | 19.9% | 20.0% | |
| 42.4% | 55.6% | $255,000 | $483,000 | 5.0% | 10.0% | |
| 41.6% | 55.0% | $239,000 | $515,000 | 3.3% | 10.3% | |
| 39.3% | 54.0% | $225,000 | $448,000 | 3.5% | 8.8% | |
| 44.7% | 53.8% | $222,000 | $387,000 | 19.7% | 1.4%1 | |
| 37.6% | 52.3% | $299,000 | $615,000 | 5.2% | 15.1% | |
| 41.0% | 50.4% | $365,000 | $665,000 | 3.1% | 10.1% | |
| 39.9% | 49.4% | $256,000 | $560,000 | 3.5% | 10.1% |
The median down payment nearly doubled almost everywhere — even in cheap Rust Belt markets like Detroit and St. Louis, where it went from ~3–5% to ~10% . That's not lenders getting stricter; it's buyers self-selecting into bigger checks to keep the loan (and the rate) manageable.
The carrying-cost math is the clearest tell. A population-weighted Millennial buyer across these 25 metros paid a median $338K with a 9.3% down payment at a 4.5% rate in January 2019 — a $1,560/month principal-and-interest payment. By August 2026, that buyer is paying $620K with 15.6% down at 6.2% — $3,198/month, up 105% . Median household income for renters, meanwhile, grew roughly 4.4%/year over the period we have data for — nowhere close to keeping pace. That mortgage payment now runs 1.9x the national median multifamily rent of $1,650 , and the median renter household would be spending 34% of gross income on rent alone before even contemplating a down payment .
Affordability vs. preference — call it roughly 80/20 in favor of affordability. The evidence for preference is real but secondary: Gen Z buyers are now more likely to purchase solo (53% buying alone, more than double the Millennial rate at the same age) , and both cohorts are leaning harder on family gifts, multigenerational purchases, and down-payment-assistance programs — adaptations, not lifestyle choices. If this were genuinely a taste shift toward renting, you wouldn't see down payments doubling, first-time-buyer age hitting record highs, or young buyers migrating to Rust Belt and Sun Belt metros specifically to make the math work — Gen Z's purchase share nearly quadrupled in Detroit (3.3%→13.3%) and tripled in St. Louis and Charlotte , while staying pinned near 3–6% in San Francisco, Los Angeles, and New York . That's cost-driven geographic sorting, not a change in what people want.
What it implies for renter household formation: the squeeze is not uniform, and that's the actionable part. In gateway/coastal metros (NY, LA, SF, Boston, Seattle, San Diego) — where down payments are already capped near 20% and prices still outrun incomes — renter-for-longer looks structural, not cyclical; expect elevated average renter tenure and durable rent growth as marginal buyers stay priced out for years, not quarters. In more affordable interior metros (Detroit, St. Louis, Charlotte, Baltimore), young cohorts are still finding a path to ownership even as their down payment burden has doubled — meaning the renter pool there is more cyclical and more sensitive to a rate cut or wage catch-up pulling qualified renters out into ownership. The multifamily thesis follows the affordability gap: renter-for-longer is a rental-demand tailwind concentrated in high-cost coastal markets, and a more fragile, rate-sensitive tailwind everywhere else.
This is a read-only snapshot of a RealAI analysis.