{
  "id": "assumptions",
  "title": "Calculator default assumptions",
  "description": "Every default the calculators start from, and what kind of number each one is. \"illustrative\" means a midpoint this site chose, not a measured figure.",
  "kind": "assumption",
  "rows": [
    {
      "kind": "assumption",
      "key": "mortgageRatePct",
      "label": "30-year fixed mortgage rate",
      "value": 7.28,
      "unit": "%",
      "basis": "official-data",
      "source_org": "Freddie Mac Primary Mortgage Market Survey",
      "source_url": "https://www.freddiemac.com/pmms",
      "effective_date": "2026-10-01",
      "last_verified": "2026-10-04",
      "notes": "Freddie Mac PMMS 30-year fixed average for the week of 2026-10-01: conventional, conforming, 20% down, excellent credit. Jumbo loans and lender overlays can differ materially. Updated by the weekly PMMS job."
    },
    {
      "kind": "assumption",
      "key": "loanTermYears",
      "label": "Loan term",
      "value": 30,
      "unit": "years",
      "basis": "convention",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "coopDownPaymentPct",
      "label": "Co-op down payment",
      "value": 20,
      "unit": "%",
      "basis": "market-survey",
      "source_org": "Skybriz; Prevu (2025)",
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Minimum for most buildings. Mid-range Manhattan boards often require 25%; luxury buildings 30 to 50%."
    },
    {
      "kind": "assumption",
      "key": "coopMaxDtiPct",
      "label": "Co-op board max debt-to-income",
      "value": 28,
      "unit": "%",
      "basis": "convention",
      "source_org": "Prevu; YRE (2025)",
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Long-standing NYC board standard. Outer-borough buildings may allow 30 to 35%; some Park/Fifth Ave buildings cap at 20 to 25%."
    },
    {
      "kind": "assumption",
      "key": "coopReserveMonths",
      "label": "Co-op post-closing liquidity",
      "value": 12,
      "unit": "months",
      "basis": "convention",
      "source_org": "Prevu; Aaron & Geoff (Compass), 2026",
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Months of mortgage + maintenance. Conservative/luxury boards require 24+. Retirement accounts are generally excluded."
    },
    {
      "kind": "assumption",
      "key": "coopMaintenanceMo",
      "label": "Co-op monthly maintenance",
      "value": 1200,
      "unit": "USD/mo",
      "basis": "illustrative",
      "source_org": "Elliman / Miller Samuel (Q4 2024)",
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Mid-range citywide estimate. Rough medians: Queens ~$750, Brooklyn ~$900, Manhattan ~$1,500 to $1,800."
    },
    {
      "kind": "assumption",
      "key": "coopAttorneyFee",
      "label": "Buyer attorney (co-op)",
      "value": 4000,
      "unit": "USD",
      "basis": "market-survey",
      "source_org": "Prevu; Brick Underground (2025)",
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "NYC range $2,500 to $5,000."
    },
    {
      "kind": "assumption",
      "key": "coopBankAttorneyFee",
      "label": "Bank attorney (co-op)",
      "value": 1500,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "coopBoardFee",
      "label": "Co-op application / board fee",
      "value": 750,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "coopMoveInDeposit",
      "label": "Move-in deposit (refundable)",
      "value": 1000,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Refundable, but it is still cash you need on closing day."
    },
    {
      "kind": "assumption",
      "key": "coopOtherFixedFees",
      "label": "Other fixed costs (UCC filing, lien search, etc.)",
      "value": 800,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "coopVariableClosingPct",
      "label": "Co-op variable closing costs (loan origination)",
      "value": 0.5,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Excludes mansion tax (calculated separately) and any buyer-side flip tax."
    },
    {
      "kind": "assumption",
      "key": "condoDownPaymentPct",
      "label": "Condo down payment",
      "value": 20,
      "unit": "%",
      "basis": "convention",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Conventional conforming baseline. Jumbo lenders often require 25 to 30%."
    },
    {
      "kind": "assumption",
      "key": "condoMaxDtiPct",
      "label": "Lender max back-end debt-to-income",
      "value": 43,
      "unit": "%",
      "basis": "official-data",
      "source_org": "CFPB / Fannie Mae (qualified mortgage guidance)",
      "source_url": "https://www.consumerfinance.gov/ask-cfpb/what-is-a-debt-to-income-ratio-en-1791/",
      "effective_date": null,
      "last_verified": null,
      "notes": "Some lenders target 36%; compensating factors can allow higher."
    },
    {
      "kind": "assumption",
      "key": "condoCommonChargesMo",
      "label": "Condo common charges",
      "value": 1000,
      "unit": "USD/mo",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Manhattan full-service often $1,500 to $3,000+; Brooklyn/Queens boutique often $500 to $900."
    },
    {
      "kind": "assumption",
      "key": "condoPropertyTaxMo",
      "label": "Condo property tax",
      "value": 1250,
      "unit": "USD/mo",
      "basis": "market-survey",
      "source_org": "Habitat Magazine / NYC DOF 2025-26 tentative assessment roll",
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Reported citywide average is ~$15,134/yr ($1,261/mo); the default rounds to $1,250. Abatements change this dramatically."
    },
    {
      "kind": "assumption",
      "key": "condoInsuranceMo",
      "label": "HO-6 insurance",
      "value": 75,
      "unit": "USD/mo",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "condoAttorneyFee",
      "label": "Buyer attorney (condo)",
      "value": 5000,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "condoLenderFees",
      "label": "Lender fees",
      "value": 3500,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "condoAppraisalFee",
      "label": "Appraisal",
      "value": 1000,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "condoRecordingFees",
      "label": "Recording fees",
      "value": 750,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "condoBuildingFees",
      "label": "Building / managing agent fees",
      "value": 1500,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "condoOwnerTitlePct",
      "label": "Owner's title insurance (% of price)",
      "value": 0.45,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Mid-range NYC resale condo estimate; varies by insurer and endorsements."
    },
    {
      "kind": "assumption",
      "key": "condoLenderTitlePct",
      "label": "Lender's title policy (% of loan)",
      "value": 0.1,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "condoReserveMonths",
      "label": "Condo reserve buffer (when enabled)",
      "value": 6,
      "unit": "months",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Off by default: condos do not impose co-op-style board reserves, but lenders or buyers may want a buffer."
    },
    {
      "kind": "assumption",
      "key": "condoWorkingCapitalMonths",
      "label": "Working capital contribution (months of common charges, when enabled)",
      "value": 2,
      "unit": "months",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Common in new development; off by default."
    },
    {
      "kind": "assumption",
      "key": "savingsYieldPct",
      "label": "Yield on savings while you save to buy",
      "value": 3,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "A placeholder, not a rate quote. High-yield savings and money-market rates move with Fed policy; enter your own account's APY on the savings planner."
    },
    {
      "kind": "assumption",
      "key": "rentGrowthPct",
      "label": "Annual rent increase",
      "value": 3,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Free-market NYC rents have swung from double-digit drops (2020) to double-digit jumps (2022). Rent-stabilized renewals follow the Rent Guidelines Board instead."
    },
    {
      "kind": "assumption",
      "key": "homeAppreciationPct",
      "label": "Annual home price change",
      "value": 3,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "A placeholder, not a forecast. Co-op prices in many NYC submarkets were flat for most of the 2010s."
    },
    {
      "kind": "assumption",
      "key": "ownerCostGrowthPct",
      "label": "Annual increase in maintenance / common charges, taxes and insurance",
      "value": 3,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "ownerUpkeepPct",
      "label": "In-unit repairs and upkeep (per year, % of home value)",
      "value": 0.5,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "The building's charges cover the structure and common areas; the inside of the unit (appliances, floors, paint) is on you. Lower than the house rule of thumb (1%) for that reason."
    },
    {
      "kind": "assumption",
      "key": "investmentReturnPct",
      "label": "Annual return on money not tied up in the home",
      "value": 5,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "After-tax, after-inflation is not implied; this is a nominal placeholder. Use what you would actually earn on the down payment if you kept renting."
    },
    {
      "kind": "assumption",
      "key": "moversCost",
      "label": "Movers (local NYC move)",
      "value": 1500,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "A placeholder for a small local move. Walk-ups, distance, volume, and weekends move it a lot; get a quote."
    },
    {
      "kind": "assumption",
      "key": "movingSupplies",
      "label": "Boxes and moving supplies",
      "value": 150,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "guarantorCompanyFeePct",
      "label": "Guarantor company fee (% of one month's rent, per lease year)",
      "value": 70,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Our guarantor-companies guide reports fees commonly around 60% to 110% of a month's rent depending on credit and income. Off by default on /cost-to-move/; this is the value used when you turn it on."
    },
    {
      "kind": "assumption",
      "key": "sellBrokerPct",
      "label": "Seller broker commission",
      "value": 5,
      "unit": "%",
      "basis": "convention",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Typical NYC range is 4% to 6% of sale price, negotiable."
    },
    {
      "kind": "assumption",
      "key": "sellAttorneyFee",
      "label": "Seller attorney fee",
      "value": 2500,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Roughly $1,500 to $3,000 for a straightforward resale."
    },
    {
      "kind": "assumption",
      "key": "sellTitleMiscFee",
      "label": "Seller title and miscellaneous closing costs",
      "value": 1000,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Payoff/satisfaction fee, move-out deposit, filing fees."
    },
    {
      "kind": "assumption",
      "key": "sellCoopFlipTaxPct",
      "label": "Co-op flip tax (seller)",
      "value": 2,
      "unit": "%",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Set by each building's proprietary lease; commonly 1% to 3%, some buildings charge none."
    },
    {
      "kind": "assumption",
      "key": "sellCoopTransferFee",
      "label": "Co-op transfer / processing fee (seller)",
      "value": 500,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "rentIncomeMultiplier",
      "label": "Landlord income requirement (x monthly rent)",
      "value": 40,
      "unit": "x",
      "basis": "convention",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "NYC market convention, not a law. Some landlords use 35x or 45x."
    },
    {
      "kind": "assumption",
      "key": "guarantorIncomeMultiplier",
      "label": "Guarantor income requirement (x monthly rent)",
      "value": 80,
      "unit": "x",
      "basis": "convention",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": null
    },
    {
      "kind": "assumption",
      "key": "rentDtiPct",
      "label": "Max rent-plus-debt to income (when DTI screening is on)",
      "value": 35,
      "unit": "%",
      "basis": "convention",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "30 to 35% is typical for buildings that screen on DTI. Off by default."
    },
    {
      "kind": "assumption",
      "key": "rentSecurityDepositMonths",
      "label": "Security deposit",
      "value": 1,
      "unit": "months",
      "basis": "law",
      "source_org": "NY Legislature, S.6458 (HSTPA 2019) §25, GOL §7-108(1-a)(a)",
      "source_url": "https://legislation.nysenate.gov/pdf/bills/2019/S6458",
      "effective_date": "2019-06-14",
      "last_verified": "2026-10-04",
      "notes": "GOL §7-108(1-a)(a), added by the HSTPA: \"No deposit or advance shall exceed the amount of one month's rent.\" The default is the cap."
    },
    {
      "kind": "assumption",
      "key": "rentApplicationFee",
      "label": "Application fee",
      "value": 20,
      "unit": "USD",
      "basis": "law",
      "source_org": "NY Legislature, S.6458 (HSTPA 2019) §10, RPL §238-a(1)(b)",
      "source_url": "https://legislation.nysenate.gov/pdf/bills/2019/S6458",
      "effective_date": "2019-06-14",
      "last_verified": "2026-10-04",
      "notes": "RPL §238-a(1)(b): background and credit check fees are capped at the actual cost or $20, whichever is less, and waived if the applicant brings a check from the past 30 days. The default is the cap."
    },
    {
      "kind": "assumption",
      "key": "rentBuildingFee",
      "label": "Co-op/condo board move-in fee (renting in a co-op or condo)",
      "value": 0,
      "unit": "USD",
      "basis": "law",
      "source_org": "NY Legislature, S.6458 (HSTPA 2019) §10, RPL §238-a",
      "source_url": "https://legislation.nysenate.gov/pdf/bills/2019/S6458",
      "effective_date": "2019-06-14",
      "last_verified": "2026-10-03",
      "notes": "RPL §238-a(1)(a) bars a landlord from charging any fee at the start of a tenancy other than the capped background/credit check, so the default is $0. Move-in fees are co-op and condo board charges: enter one only when renting a unit in a co-op or condo building. Buyers pay theirs in /coop/ (coopMoveInDeposit) and /condo/ (building fees)."
    },
    {
      "kind": "assumption",
      "key": "rentUtilitySetup",
      "label": "Utility setup",
      "value": 250,
      "unit": "USD",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Con Ed deposit, internet install, etc."
    },
    {
      "kind": "assumption",
      "key": "rentersInsuranceMo",
      "label": "Renter's insurance",
      "value": 18,
      "unit": "USD/mo",
      "basis": "market-survey",
      "source_org": "ValuePenguin",
      "source_url": "https://www.valuepenguin.com/average-cost-renters-insurance",
      "effective_date": "2026-09-25",
      "last_verified": "2026-10-04",
      "notes": "ValuePenguin's average for New York, NY ($19 statewide), quoted for $30,000 of personal property, $100,000 of liability, and a $500 deductible. Your premium depends on coverage and building."
    },
    {
      "kind": "assumption",
      "key": "rentReserveMonths",
      "label": "Renter reserve buffer",
      "value": 2,
      "unit": "months",
      "basis": "illustrative",
      "source_org": null,
      "source_url": null,
      "effective_date": null,
      "last_verified": null,
      "notes": "Months of rent + insurance + debts kept in savings after move-in."
    }
  ],
  "license": "CC0-1.0",
  "columns": [
    {
      "key": "kind",
      "description": "Always \"assumption\"."
    },
    {
      "key": "key",
      "description": "Identifier in src/data/assumptions.ts."
    },
    {
      "key": "label",
      "description": "What the number is."
    },
    {
      "key": "value",
      "description": "The default value."
    },
    {
      "key": "unit",
      "description": "%, USD, USD/mo, years, months or x."
    },
    {
      "key": "basis",
      "description": "law, official-data, market-survey, convention, or illustrative."
    },
    {
      "key": "source_org",
      "description": "Who publishes it, when there is a source."
    },
    {
      "key": "source_url",
      "description": "Where, when a URL has been checked; blank otherwise."
    },
    {
      "key": "effective_date",
      "description": "When the figure applies, if it has a date."
    },
    {
      "key": "last_verified",
      "description": "Date someone last checked it against its source; blank if never recorded."
    },
    {
      "key": "notes",
      "description": "Caveats."
    }
  ]
}
