{"zip":"75072","city":"McKinney","state":"TX","county":"Collin County","countySlug":"collin-county-tx","metro":"Dallas-Fort Worth-Arlington, TX","metroSlug":"dallas-tx","citySlug":"mckinney-tx","rentPeriod":"2026-06","acsPeriod":"ACS 2024 5-year","directRent":2381,"rentYoy":-0.0161,"bedroomEstimates":[1954,2028,2381,2997,3810],"hudFmr":[2380,2470,2900,3650,4640],"ladderSource":"safmr","population":55087,"populationMoe":2600,"medianIncome":165682,"medianIncomeMoe":9064,"medianGrossRent":2512,"medianGrossRentMoe":213,"housingUnits":18648,"occupiedUnits":18052,"vacantUnits":596,"renterOccupied":3135,"rentBurdenTotal":3135,"rentBurden30Plus":1311,"vacantForRent":284,"vacantForSale":83,"vacantSeasonal":0,"structureTotal":18648,"singleFamilyUnits":17128,"largeMultifamilyUnits":799,"vacancyRate":0.03196053196053196,"renterShare":0.17366496787059604,"rentBurdenShare":0.41818181818181815,"requiredIncome":95240,"askingRentToIncome":0.1724508395601212,"askingVsAcsRent":0.9478503184713376,"askingVsHud2br":0.8210344827586207,"cityRent":1818.7076836767171,"countyRent":1736,"metroRent":1673,"cityGrossRent":1901,"countyGrossRent":1859,"countyListings":5300,"countyListingDom":50,"countyPriceReducedShare":0.2927,"countyListingPeriod":"2026-06","metroMonthsSupply":null,"metroMedianDom":null,"metroPriceDrops":null,"metroResalePeriod":"2026-05-01","apartmentVacancy":0.0896205463426981,"apartmentTimeOnMarket":34.7,"zipResalePeriodBegin":"2026-04-01","zipResalePeriodEnd":"2026-06-30","zipResaleUpdated":"2026-07-03","zipHomesSold":221,"zipSalePrice":556874,"zipSalePriceYoy":-0.0553,"zipMedianDom":35,"zipActiveListings":517,"zipActiveListingsYoy":0.0444,"zipInventory":273,"zipInventoryYoy":0.0003,"zipPendingSales":248,"zipMonthsSupply":3.7,"zipSaleToList":0.9839,"zipSoldAboveList":0.1397,"zipOffMarketTwoWeeks":0.3708,"generatedAt":"2026-08-31 14:31:10.630351+00","summaryHtml":"<p>The central tension in ZIP 75072 is that both rental and resale measures softened, but the resale move was larger. Zillow’s typical observed asking-rent index, blended across rental types, was $2,381 at the stated endpoint, down 1.6% from a year earlier. Redfin’s direct rolling-three-month ZIP resale observation showed a $556,874 median sold price, down 5.5% year over year. Annualized ZIP ZORI divided by that sold-price median is a 5.1% cross-source screening ratio only; it is not a cap rate, net return, expected return, or property yield. The comparison identifies differing current price and rent directions without turning either dataset into property-level economics.</p><p>The asking-rent history supports the cooling classification but not a simple long-run decline story. Exact same-month ZORI change was negative over one year at 1.6% annually and over three years at 1.0% annually, while the five-year annualized change remained positive at 3.0%. Recent direction therefore breaks from the longer five-year path. Monthly changes annualized to 2.2% variability, suggesting relatively limited month-to-month dispersion in the historical series, while the maximum drawdown was 4.4%, a separate measure of the largest observed peak-to-trough retreat. Coverage was 98.6% across 136 observations and 134 consecutive monthly returns. Among history-eligible ZIPs nationally, the transparent discovery ranks were 2,734 for momentum, 310 for stability, and 1,980 for the balanced measure; these are backward-looking discovery measures, not forecasts or investment recommendations. The near-complete history and modest variability support more confidence that current cooling is measured rather than a missing-data artifact, yet one blended current-rent snapshot remains incomplete.</p><p>Wider geographies provide context rather than substitutes for the ZIP reading: McKinney city’s contextual rent was $1,819, Collin County’s contextual rent was $1,736, and the Dallas-Fort Worth-Arlington, TX metro contextual rent was $1,673. ZIP 75072’s asking-rent index sits above each of those named wider-scope values, but the figures do not establish that any individual dwelling commands a similar premium. City, county, and metro measures represent broader areas with their own housing mixes and should not be merged with the direct ZIP evidence. Their useful role here is to frame the ZIP’s higher current asking-rent level while the local series is cooling.</p><p>Source scope explains why the current rent measures should not be treated as interchangeable. Zillow ZORI is a ZIP-level, typical observed asking-rent index across blended rental types. The matched Census ZCTA is a statistical area and is not identical to a USPS delivery ZIP; its ACS five-year survey reported median gross rent of $2,512 with a $213 margin of error for occupied renter homes, and gross rent includes selected utilities. The ZORI level is 5.2% below that ACS median, a gap that can reflect both the different measurement universes and ACS sampling uncertainty rather than a contradiction. Against the ZCTA median household income of $165,682, annualized ZORI equals 17.2% of income. A $95,240 income figure from the 30% screen is simply annual rent divided by 30%; it is arithmetic, not advice or an applicant qualification rule.</p><p>Bedroom figures are modelled estimates, not measured bedroom rents. The local HUD ladder scales the ZIP-wide ZORI into a $1,954 studio estimate, a $2,028 one-bedroom estimate, a $2,381 two-bedroom estimate, a $2,997 three-bedroom estimate, and a $3,810 four-bedroom estimate. This procedure uses the local FY2026 HUD relationship among bedroom standards to allocate one blended rent index across sizes; it does not demonstrate asking rents for available units of any size. HUD FMR or SAFMR is an administrative, bedroom-specific standard rather than asking rent, so the ladder is a scaling input and not a direct rental comparable. Actual listings can differ because their bedroom configuration, utilities, lease terms, condition, and timing are not represented by the model.</p><p>The matched ZCTA’s housing profile adds an important occupancy and burden constraint. Of 18,648 housing units, 17,128 were single-family structures, indicating that the reported stock is concentrated in that structure category. The vacancy rate was 3.2%, while renter households represented 17.4% of occupied homes. Among renter households in the ACS survey, 41.8% reported spending at least 30% of income on gross rent. That burden statistic describes surveyed renter households, not the affordability of a particular available unit, and it should not be used to infer tenant financial condition. Likewise, a vacancy measure does not prove that a specific property is vacant, offered for rent, or available on a given date.</p><p>Resale liquidity and pricing signals come solely from Redfin’s direct rolling-three-month ZIP for-sale observation, not from rental transactions. The ZIP recorded 221 homes sold with a median 35 days on market, 273 homes of inventory, 248 pending sales, and 3.7 months of supply. The average sale-to-list ratio was 98.4%; 14.0% of homes sold above list, and 37.1% went off market within two weeks. These for-sale signals offer a measured resale backdrop, not rental comparables or property operating results. They also sharpen the main tension: the larger resale-price decline challenges any easy reading of the relatively low-volatility rent history as broad market stability, even though ZORI itself has cooled more gradually. Neither pattern establishes a causal relationship between sale prices and rents.</p><p>Several limits remain material. Zillow does not identify the effective rent, concessions, utilities, or physical condition of a specific home; ACS does not provide current listing terms; HUD standards are not market asking rents; and Redfin resale records do not establish rental demand or unit economics. A property-level review would need the advertised and effective rent, bedroom count, utility responsibility, lease timing, concessions, occupancy status, condition, and current or prior sale-list history. It would also need to confirm whether the property belongs in the relevant ZIP delivery area rather than assuming a ZCTA match settles that question. The decision-useful issue is therefore whether a specific unit’s documented terms align with these separate evidence universes, not whether any single aggregate figure answers every property-level question.</p>","findings":[{"body":"ZIP 75072’s Zillow asking-rent index declined over the recent one-year and three-year same-month comparisons, despite a positive five-year annualized change. Redfin’s direct ZIP resale median declined more sharply year over year. That divergence matters because it shows that current rent cooling and resale softening are both present, while their magnitudes and source universes differ.","title":"Cooling rent series, stronger resale decline"},{"body":"The studio-through-four-bedroom figures are modelled ZIP estimates created by scaling the blended Zillow ZORI through the local HUD bedroom ladder. They are useful for maintaining a transparent bedroom relationship, but they are not observed asking rents for available units. HUD’s administrative FMR or SAFMR standards should not be read as rental listings or lease transaction evidence.","title":"Bedroom ladder is a modelling device"},{"body":"The 30% income screen converts annualized asking rent into an arithmetic income threshold and does not determine qualification or affordability for any applicant. Separately, ACS reports the share of surveyed renter households spending at least 30% of income on gross rent. The first is a current index calculation; the second is a five-year survey measure with selected utilities included.","title":"Affordability evidence has two separate readings"},{"body":"Redfin’s rolling-three-month ZIP data provide direct evidence on sold homes, marketing time, supply, pending activity, and sale-to-list outcomes. Those metrics describe the for-sale market only. They can challenge or contextualize rent-history readings, but they cannot establish lease rates, operating expenses, tenant demand, or economics for an individual rental property.","title":"Resale activity is informative but not a rental comp set"}],"risks":["The Zillow index is a blended typical asking-rent measure, so it may not match a particular home’s effective rent after concessions, utility treatment, lease duration, condition differences, or listing timing.","ACS ZCTA statistics are five-year survey estimates for a statistical area rather than a USPS delivery ZIP, and their renter, burden, income, and gross-rent readings include sampling uncertainty.","The HUD-based bedroom ladder produces modelled estimates from an administrative standard, not observed bedroom-specific asking rents, so a listed studio or larger home can depart materially from the ladder.","Redfin resale results measure direct for-sale activity rather than rental transactions; sold-price changes, days on market, and sale-to-list outcomes should not be converted into rental performance or property economics."],"qa":[{"a":"The two measures describe different universes. Zillow ZORI is a current ZIP-level typical observed asking-rent index blended across rental types. ACS median gross rent is a five-year survey measure for occupied renter homes in the matched Census ZCTA and includes selected utilities. The ACS estimate also carries a reported margin of error, so the difference is not a direct contradiction.","q":"Why is the ACS median gross rent different from Zillow’s asking-rent index?"},{"a":"They should be read only as modelled monthly ZIP estimates. The method starts with the ZIP-wide Zillow asking-rent index and applies the relative bedroom pattern from the local HUD ladder. That preserves a transparent size relationship but does not measure available listings, executed leases, or effective rents for studio, one-bedroom, or larger units.","q":"How should the bedroom rent figures be interpreted?"},{"a":"No. It is only annualized ZIP ZORI divided by Redfin’s median sold price, combining two separate aggregate sources for a screening comparison. It excludes operating expenses, taxes, insurance, financing, vacancy, maintenance, concessions, acquisition costs, and property-specific rent. It must not be called a cap rate, yield, net return, or expected return.","q":"Does the annualized rent-to-sale-price ratio describe an investment return?"},{"a":"It establishes that the direct ZIP asking-rent series had negative exact same-month annualized change over the recent one-year and three-year windows while retaining a positive five-year annualized change. It also documents historical variability, drawdown, and coverage. It does not forecast future rents, explain why changes occurred, or establish the rent available for a particular property.","q":"What does the cooling history establish, and what does it not establish?"}],"sources":[{"key":"apartment_list_time_on_market","name":"Apartment List Time on Market — listing liquidity","release":"Apartment List 2026-07","pulledAt":"2026-08-08","url":"https://www.apartmentlist.com/research/category/data-rent-estimates"},{"key":"apartment_list_vacancy","name":"Apartment List Vacancy Index — rental vacancy","release":"Apartment List 2026-07","pulledAt":"2026-08-08","url":"https://www.apartmentlist.com/research/apartment-list-vacancy-index-methodology"},{"key":"census_zcta_facts","name":"Census ACS five-year — ZCTA housing and income","release":"ACS 2024 5-year ZCTA","pulledAt":"2026-08-08","url":"https://api.census.gov/data/2024/acs/acs5.html"},{"key":"hud_zip","name":"HUD USPS crosswalk and Small Area FMRs — ZIP rent fallback","release":"ZIP-CBSA 2025Q4 + SAFMR FY2026","pulledAt":"2026-07-26","url":"https://www.huduser.gov/portal/datasets/usps_crosswalk.html"},{"key":"realtor_county","name":"Realtor.com Economic Research — county listing inventory","release":"county inventory 2026-06","pulledAt":"2026-07-28","url":"https://www.realtor.com/research/data/"},{"key":"redfin","name":"Redfin Data Center — inventory, days on market, and price cuts","release":"metro tracker through 2026-05-01","pulledAt":"2026-07-26","url":"https://www.redfin.com/news/data-center/"},{"key":"redfin_zip","name":"Redfin Data Center — ZIP resale activity and supply","release":"ZIP rolling 3 months through 2026-06-30; updated 2026-07-03","pulledAt":"2026-08-12","url":"https://www.redfin.com/news/data-center/"},{"key":"zillow_county","name":"Zillow ZHVI and ZORI — county values and rents","release":"county ZHVI/ZORI 2026-06","pulledAt":"2026-07-26","url":"https://www.zillow.com/research/data/"},{"key":"zillow_zori","name":"Zillow ZORI — metro market rents","release":"Metro_zori_uc_sfrcondomfr_sm_sa_month.csv","pulledAt":"2026-07-26","url":"https://www.zillow.com/research/data/"},{"key":"zillow_zori_city","name":"Zillow ZORI — city market rents","release":"zillow_zori_city.csv","pulledAt":"2026-07-29","url":"https://www.zillow.com/research/data/"},{"key":"zillow_zori_zip","name":"Zillow ZORI — ZIP market rents","release":"ZORI ZIP 2026-06","pulledAt":"2026-08-08","url":"https://www.zillow.com/research/data/"}],"history":[{"period":"2015-01-01","rent":1600.10828},{"period":"2015-02-01","rent":1607.026701},{"period":"2015-03-01","rent":1621.500771},{"period":"2015-04-01","rent":1619.448236},{"period":"2015-05-01","rent":1622.155229},{"period":"2015-06-01","rent":1626.142062},{"period":"2015-07-01","rent":1638.540593},{"period":"2015-08-01","rent":1633.453926},{"period":"2015-09-01","rent":1644.835479},{"period":"2015-10-01","rent":1650.969047},{"period":"2015-11-01","rent":1666.377368},{"period":"2015-12-01","rent":1669.081161},{"period":"2016-01-01","rent":1668.719036},{"period":"2016-02-01","rent":1680.218199},{"period":"2016-03-01","rent":1673.460158},{"period":"2016-04-01","rent":1680.392704},{"period":"2016-05-01","rent":1672.231832},{"period":"2016-06-01","rent":1679.194175},{"period":"2016-07-01","rent":1679.148335},{"period":"2016-08-01","rent":1689.055153},{"period":"2016-09-01","rent":1693.134928},{"period":"2016-10-01","rent":1699.442751},{"period":"2016-11-01","rent":1694.541607},{"period":"2016-12-01","rent":1691.571627},{"period":"2017-01-01","rent":1691.484313},{"period":"2017-02-01","rent":1688.24667},{"period":"2017-03-01","rent":1696.824949},{"period":"2017-04-01","rent":1707.824586},{"period":"2017-05-01","rent":1720.559661},{"period":"2017-06-01","rent":1720.940544},{"period":"2017-07-01","rent":1715.31671},{"period":"2017-08-01","rent":1720.734248},{"period":"2017-09-01","rent":1713.995399},{"period":"2017-10-01","rent":1716.675519},{"period":"2017-11-01","rent":1719.07251},{"period":"2017-12-01","rent":1732.246398},{"period":"2018-01-01","rent":1738.888466},{"period":"2018-02-01","rent":1740.522339},{"period":"2018-03-01","rent":1749.057085},{"period":"2018-04-01","rent":1746.181296},{"period":"2018-05-01","rent":1743.009546},{"period":"2018-06-01","rent":1742.851839},{"period":"2018-07-01","rent":1750.33301},{"period":"2018-08-01","rent":1748.692765},{"period":"2018-09-01","rent":1746.986621},{"period":"2018-10-01","rent":1752.396514},{"period":"2018-11-01","rent":1765.550443},{"period":"2018-12-01","rent":1777.712242},{"period":"2019-01-01","rent":1778.701696},{"period":"2019-02-01","rent":1770.872837},{"period":"2019-03-01","rent":1769.512797},{"period":"2019-04-01","rent":1773.515006},{"period":"2019-05-01","rent":1780.071547},{"period":"2019-06-01","rent":1787.504101},{"period":"2019-07-01","rent":1793.415137},{"period":"2019-08-01","rent":1799.667263},{"period":"2019-09-01","rent":1812.801865},{"period":"2019-10-01","rent":1815.766147},{"period":"2019-11-01","rent":1815.283017},{"period":"2019-12-01","rent":1810.748493},{"period":"2020-01-01","rent":1818.11249},{"period":"2020-02-01","rent":1835.489941},{"period":"2020-03-01","rent":1854.874703},{"period":"2020-04-01","rent":1857.143819},{"period":"2020-05-01","rent":1845.006289},{"period":"2020-06-01","rent":1834.868288},{"period":"2020-07-01","rent":1830.588879},{"period":"2020-08-01","rent":1836.862578},{"period":"2020-09-01","rent":1837.981739},{"period":"2020-10-01","rent":1851.257062},{"period":"2020-11-01","rent":1874.292595},{"period":"2020-12-01","rent":1894.07402},{"period":"2021-01-01","rent":1912.720537},{"period":"2021-02-01","rent":1940.404635},{"period":"2021-03-01","rent":1963.86684},{"period":"2021-04-01","rent":1983.768397},{"period":"2021-05-01","rent":2013.450402},{"period":"2021-06-01","rent":2057.893114},{"period":"2021-09-01","rent":2246.289132},{"period":"2021-10-01","rent":2285.737194},{"period":"2021-11-01","rent":2304.764822},{"period":"2021-12-01","rent":2348.013396},{"period":"2022-01-01","rent":2376.659715},{"period":"2022-02-01","rent":2385.97159},{"period":"2022-03-01","rent":2385.60368},{"period":"2022-04-01","rent":2404.506541},{"period":"2022-05-01","rent":2436.076731},{"period":"2022-06-01","rent":2449.367894},{"period":"2022-07-01","rent":2454.118237},{"period":"2022-08-01","rent":2454.61119},{"period":"2022-09-01","rent":2449.780451},{"period":"2022-10-01","rent":2411.81073},{"period":"2022-11-01","rent":2399.904069},{"period":"2022-12-01","rent":2395.766337},{"period":"2023-01-01","rent":2416.85315},{"period":"2023-02-01","rent":2439.781051},{"period":"2023-03-01","rent":2454.855816},{"period":"2023-04-01","rent":2451.983831},{"period":"2023-05-01","rent":2449.19895},{"period":"2023-06-01","rent":2451.19659},{"period":"2023-07-01","rent":2450.245753},{"period":"2023-08-01","rent":2434.177331},{"period":"2023-09-01","rent":2437.697173},{"period":"2023-10-01","rent":2476.015181},{"period":"2023-11-01","rent":2484.839109},{"period":"2023-12-01","rent":2473.402065},{"period":"2024-01-01","rent":2423.101555},{"period":"2024-02-01","rent":2423.918151},{"period":"2024-03-01","rent":2435.193119},{"period":"2024-04-01","rent":2462.850356},{"period":"2024-05-01","rent":2456.226714},{"period":"2024-06-01","rent":2459.841978},{"period":"2024-07-01","rent":2453.804982},{"period":"2024-08-01","rent":2446.553794},{"period":"2024-09-01","rent":2421.593054},{"period":"2024-10-01","rent":2416.520433},{"period":"2024-11-01","rent":2425.605926},{"period":"2024-12-01","rent":2429.31607},{"period":"2025-01-01","rent":2436.821846},{"period":"2025-02-01","rent":2430.190935},{"period":"2025-03-01","rent":2451.377663},{"period":"2025-04-01","rent":2448.717082},{"period":"2025-05-01","rent":2442.739499},{"period":"2025-06-01","rent":2420.04446},{"period":"2025-07-01","rent":2423.373943},{"period":"2025-08-01","rent":2434.496447},{"period":"2025-09-01","rent":2450.037438},{"period":"2025-10-01","rent":2440.068308},{"period":"2025-11-01","rent":2427.696505},{"period":"2025-12-01","rent":2425.32209},{"period":"2026-01-01","rent":2432.293084},{"period":"2026-02-01","rent":2425.964738},{"period":"2026-03-01","rent":2395.030146},{"period":"2026-04-01","rent":2376.838458},{"period":"2026-05-01","rent":2375.723369},{"period":"2026-06-01","rent":2380.961306}],"historySummary":{"pointCount":136,"firstPeriod":"2015-01-01","latestPeriod":"2026-06-01","coverageMonths":138,"coverageRatio":0.9855072463768116,"changes":{"1":{"years":1,"startPeriod":"2025-06-01","endPeriod":"2026-06-01","startRent":2420.04446,"endRent":2380.961306,"change":-0.01614976693444714,"cagr":-0.01614976693444714},"3":{"years":3,"startPeriod":"2023-06-01","endPeriod":"2026-06-01","startRent":2451.19659,"endRent":2380.961306,"change":-0.028653468386230063,"cagr":-0.009643861215133831},"5":{"years":5,"startPeriod":"2021-06-01","endPeriod":"2026-06-01","startRent":2057.893114,"endRent":2380.961306,"change":0.15698978231772265,"cagr":0.02959376692086968}},"maxDrawdown":-0.043912597642554285,"annualizedVolatility":0.022169583138330083,"consecutiveReturnCount":134}}