{"zip":"58203","city":"Grand Forks","state":"ND","county":"Grand Forks County","countySlug":"grand-forks-county-nd","metro":"Grand Forks, ND-MN","metroSlug":"grand-forks-nd","citySlug":"grand-forks-nd","rentPeriod":"2026-06","acsPeriod":"ACS 2024 5-year","directRent":1247,"rentYoy":0.1425,"bedroomEstimates":[988,994,1247,1735,2092],"hudFmr":[863,868,1089,1515,1827],"ladderSource":"county","population":16478,"populationMoe":1111,"medianIncome":60474,"medianIncomeMoe":4868,"medianGrossRent":950,"medianGrossRentMoe":80,"housingUnits":8353,"occupiedUnits":7365,"vacantUnits":988,"renterOccupied":4066,"rentBurdenTotal":4066,"rentBurden30Plus":1904,"vacantForRent":463,"vacantForSale":41,"vacantSeasonal":120,"structureTotal":8353,"singleFamilyUnits":3921,"largeMultifamilyUnits":1964,"vacancyRate":0.11828085717706213,"renterShare":0.552070604209097,"rentBurdenShare":0.4682734874569602,"requiredIncome":49880,"askingRentToIncome":0.2474451830538744,"askingVsAcsRent":1.3126315789473684,"askingVsHud2br":1.145087235996327,"cityRent":1172.1769586622527,"countyRent":1169,"metroRent":1148,"cityGrossRent":980,"countyGrossRent":992,"countyListings":111,"countyListingDom":48,"countyPriceReducedShare":0.0923,"countyListingPeriod":"2026-06","metroMonthsSupply":null,"metroMedianDom":null,"metroPriceDrops":null,"metroResalePeriod":"2026-05-01","apartmentVacancy":null,"apartmentTimeOnMarket":null,"zipResalePeriodBegin":"2026-04-01","zipResalePeriodEnd":"2026-06-30","zipResaleUpdated":"2026-07-03","zipHomesSold":30,"zipSalePrice":269839,"zipSalePriceYoy":0.0378,"zipMedianDom":13,"zipActiveListings":54,"zipActiveListingsYoy":-0.0574,"zipInventory":14,"zipInventoryYoy":-0.0682,"zipPendingSales":38,"zipMonthsSupply":1.4,"zipSaleToList":0.9816,"zipSoldAboveList":0.0345,"zipOffMarketTwoWeeks":0.7535,"generatedAt":"2026-08-15 09:12:58.830192+00","summaryHtml":"<p>The central tension in 58203 is an asking-rent index that now sits above each named wider context, following a sharp recent move. In June 2026, Zillow ZIP ZORI was $1,247, up 14.3% from the same month a year earlier. This five-digit label is both a Zillow ZIP market identifier and the matching Census ZCTA; a ZCTA is a statistical area, not identical to a USPS delivery ZIP. For wider context only, the City of Grand Forks rent measure was $1,172, Grand Forks County's was $1,169, and the Grand Forks, ND-MN metro's was $1,148. These contextual figures cannot replace the ZIP reading. ZORI is a typical observed asking-rent index blended across rental types, which makes it a lens on marketed rents rather than all occupied homes or direct bedroom-level lease observations.</p><p>That recent jump confirms the longer historical direction rather than breaks it, although its pace is higher. At the stated endpoint, exact same-month ZORI change was 8.6% annualized over three years and 7.3% annualized over five; the one-year 14.3% change reported above exceeds both. The direct Zillow ZIP historical record has full coverage, so no missing span weakens this particular comparison. Its monthly return dispersion annualizes to 4.0%, a high-variability result that lowers confidence in treating one current index point as representative of every month's market. Yet the maximum recorded drawdown was -2.4%, indicating that measured pullbacks in this history were limited. Transparent national discovery ranks among history-eligible ZIPs were 27th for momentum, 2,583rd for stability, and 737th on the balanced measure. They are backward-looking measurements, not forecasts or investment recommendations.</p><p>Current asking rent and survey rent should not be collapsed into one measure. The ACS 2024 five-year survey for the matched ZCTA estimates median gross rent at $950, with an $80 margin of error. That sits 31.3% below the asking-rent index, but it is not contrary evidence: ACS covers occupied renter homes and includes selected utilities, whereas Zillow tracks typical observed asking rents across blended rental types. Annualizing the asking-rent index produces a $49,880 income figure for the 30% rent screen. This is arithmetic, not advice and not an applicant qualification rule. The ZCTA median household income is $60,474, and annualized asking rent equals 24.7% of that benchmark. Neither ratio establishes affordability for a particular household, while historic gross rent should not be presented as today's available rent.</p><p>HUD provides a separate administrative benchmark for making a transparent bedroom model. Its local FMR/SAFMR ladder is a bedroom-specific administrative standard rather than asking rent; it runs from $863 for a studio to $1,827 for four bedrooms, with $1,089 at two bedrooms. Applying the ladder's local relationship to ZIP ZORI yields modelled monthly estimates of $988 for a studio, $994 for one bedroom, $1,247 for two, $1,735 for three, and $2,092 for four. These are modelled estimates, never measured bedroom rents; they are not lease quotes or HUD payment standards for a specific property. The two-bedroom estimate aligns with the index because it is the model reference, not because a sample of two-bedroom leases was observed. Unit type, condition, utilities, concessions, and availability still require property-level evidence.</p><p>Stock and burden data introduce a second tension: relatively extensive vacancy coexists with a large surveyed burden share. Among occupied housing, 4,066 renter households represent a majority; the structure mix includes 3,921 single-family units and 1,964 large multifamily units. The matched ZCTA's overall vacancy rate is 11.8%, including 463 units classified as vacant for rent. Vacancy measures do not prove that a particular unit is available, comparable, affordable, or offered at the index rent. ACS also counts 1,904 renter households paying 30% or more of income toward rent, equal to 46.8% of surveyed renters. That burden result describes surveyed households, not a causal explanation of rent or an affordability finding for any one lease. Against wider context, it is above the City of Grand Forks and Grand Forks County burden shares, while the ZIP renter share also exceeds both contexts.</p><p>The resale record is brisk but not uniformly aggressive on price, creating a useful cross-market tension. In Redfin's direct rolling-three-month ZIP for-sale observation ending in June, median sold price was $269,839, up 3.8% year over year; 30 homes sold with a median 13 days on market. Inventory was 14 homes and months of supply was 1.4. Average sale-to-list was 98.2%, while only 3.5% of sales closed above list. These are ZIP resale observations, not rental transactions, rent comparables, or property operating results. Short marketing time and limited supply confirm active resale liquidity, whereas below-list average pricing and the small above-list share temper a reading of universally aggressive bidding. That tension challenges any attempt to infer rent strength or household affordability merely from sales turnover.</p><p>Annualized ZIP ZORI divided by the ZIP median sold price produces a 5.55% cross-source screening ratio only. It is not a property-level income or performance measure and cannot estimate owner economics, since it omits expenses, financing, vacancy at a specific property, and the mismatch between an asking-rent index and a rolling resale median. The resale evidence nevertheless gives context to the rent/history screen: rent momentum is strong in the backward record and resale turnover is fast, but the price signals are not all above-list. Meanwhile, the high renter burden and overall vacancy prevent any simple equation of a high asking index with broad tenant capacity or a unit-specific occupancy outcome. These measures describe different populations and transaction stages.</p><p>Decision use depends on keeping these limits visible. ZORI is a ZIP-level index, ACS is a five-year ZCTA survey, HUD is an administrative bedroom standard, and Redfin is a rolling ZIP resale observation; none substitutes for a current comparable lease or a property financial record. Before relying on the modelled ladder, verify the advertised bedroom count, asking rent, included utilities, lease term, concessions, availability date, and whether the unit is actually comparable in structure and condition. For a property-level sale-price comparison, verify the specific sale price, rent roll or current asking terms, taxes, insurance, repairs, management, financing, and local listing status rather than extrapolating from the screening ratio. Do a specific unit's current terms resemble the index and model assumptions, rather than merely these aggregate measures?</p>","findings":[{"body":"ZORI reached $1,247 in June 2026 after a 14.3% same-month increase. That pace exceeds the 8.6% three-year and 7.3% five-year annualized changes, so the current direction confirms prior growth but accelerated. Full historical coverage improves continuity, while 4.0% annualized variability means the latest index should not stand in for every leasing period.","title":"Rent momentum accelerated above its longer path"},{"body":"The ZCTA ACS median gross rent of $950 is not a current asking-rent comp to ZORI. It describes occupied renter homes and includes selected utilities. The 30% screen places annualized ZORI beside median household income, while the 46.8% burden share describes surveyed renters; neither measure decides affordability for a household or unit.","title":"Survey affordability is not current-listing affordability"},{"body":"The bedroom figures use the local HUD FMR/SAFMR relationship to scale ZIP ZORI. They provide a transparent studio-through-four-bedroom ladder, but HUD is an administrative standard and ZORI blends rental types. The resulting estimates do not establish actual lease terms, condition, utility treatment, concessions, availability, or unit-specific comparable rent.","title":"Bedroom amounts are model outputs, not lease observations"},{"body":"Redfin's direct ZIP resale observation shows short marketing time and limited months of supply, supporting an active for-sale turnover reading. However, the average sale-to-list result below list and the small share closing above list temper that signal. This resale evidence is not rental transaction evidence and cannot validate the ZORI rent path or a property's economics.","title":"Resale liquidity is strong, but price signals are mixed"}],"risks":["ZORI, ACS, and HUD figures describe different populations, periods, and purposes. Treating their values as interchangeable rents can distort comparisons because ACS includes selected utilities and HUD is an administrative standard.","Full history coverage does not eliminate timing risk: high monthly-return variability means a current asking-rent index reading may move differently from the longer historical average, and backward-looking ranks do not forecast future rent.","Overall vacancy, units vacant for rent, and renter burden are area-level survey measures. They cannot show whether an individual unit is available, comparable, affordable to a household, or likely to remain occupied.","The resale screen uses a rolling ZIP median sale price and an asking-rent index while excluding property expenses, financing, unit condition, and specific availability. It therefore cannot establish property-level economics or transaction outcomes."],"qa":[{"a":"They are drawn from different evidence universes. ZORI is a current typical observed asking-rent index blended across rental types. ACS is a five-year survey of occupied renter homes and includes selected utilities. The ACS median therefore reflects surveyed existing occupancy rather than a current advertised lease, and its margin of error adds another limitation.","q":"Why is the ACS median gross rent lower than ZORI?"},{"a":"No. They scale ZIP ZORI by the local HUD FMR/SAFMR bedroom relationship. HUD is an administrative standard and ZORI blends rental types, so the resulting studio-through-four-bedroom figures are modelled estimates only. They do not verify a particular unit's bedroom mix, condition, included utilities, concessions, or currently advertised rent.","q":"Are the bedroom estimates observed lease rents?"},{"a":"It divides annualized ZIP ZORI by 30% to produce the stated $49,880 arithmetic threshold. It is useful for placing the index beside the ZCTA median household income, but it is not affordability advice, an applicant qualification rule, or evidence of any household's actual budget.","q":"What does the 30% income figure test?"},{"a":"Redfin's rolling ZIP resale observation describes for-sale conditions, not rental transactions. Its sold price, marketing time, supply, and sale-to-list signals can provide separate context for the rent record, but they cannot establish lease comparables, tenant demand for a particular unit, or property-level financial performance.","q":"How should the resale evidence be used?"}],"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":"2021-01-01","rent":859.994384},{"period":"2021-02-01","rent":875.66723},{"period":"2021-03-01","rent":874.502577},{"period":"2021-04-01","rent":874.863486},{"period":"2021-05-01","rent":868.362088},{"period":"2021-06-01","rent":877.382959},{"period":"2021-07-01","rent":882.905008},{"period":"2021-08-01","rent":886.722128},{"period":"2021-09-01","rent":888.527261},{"period":"2021-10-01","rent":886.637212},{"period":"2021-11-01","rent":899.714585},{"period":"2021-12-01","rent":892.537393},{"period":"2022-01-01","rent":892.73338},{"period":"2022-02-01","rent":886.505611},{"period":"2022-03-01","rent":900.606348},{"period":"2022-04-01","rent":910.825578},{"period":"2022-05-01","rent":918.239995},{"period":"2022-06-01","rent":919.64287},{"period":"2022-07-01","rent":913.571233},{"period":"2022-08-01","rent":920.949082},{"period":"2022-09-01","rent":919.628854},{"period":"2022-10-01","rent":936.243571},{"period":"2022-11-01","rent":924.795118},{"period":"2022-12-01","rent":955.468133},{"period":"2023-01-01","rent":952.655583},{"period":"2023-02-01","rent":964.322838},{"period":"2023-03-01","rent":946.534854},{"period":"2023-04-01","rent":949.3861},{"period":"2023-05-01","rent":964.372706},{"period":"2023-06-01","rent":974.585371},{"period":"2023-07-01","rent":1000.894597},{"period":"2023-08-01","rent":996.377892},{"period":"2023-09-01","rent":1007.659617},{"period":"2023-10-01","rent":998.882334},{"period":"2023-11-01","rent":1010.211944},{"period":"2023-12-01","rent":990.687593},{"period":"2024-01-01","rent":1005.991592},{"period":"2024-02-01","rent":1011.496562},{"period":"2024-03-01","rent":1031.290578},{"period":"2024-04-01","rent":1029.051605},{"period":"2024-05-01","rent":1027.894865},{"period":"2024-06-01","rent":1039.679019},{"period":"2024-07-01","rent":1040.504703},{"period":"2024-08-01","rent":1048.361755},{"period":"2024-09-01","rent":1045.045308},{"period":"2024-10-01","rent":1058.015613},{"period":"2024-11-01","rent":1071.481884},{"period":"2024-12-01","rent":1081.98913},{"period":"2025-01-01","rent":1078.759134},{"period":"2025-02-01","rent":1076.890475},{"period":"2025-03-01","rent":1104.192959},{"period":"2025-04-01","rent":1112.398514},{"period":"2025-05-01","rent":1118.799513},{"period":"2025-06-01","rent":1091.415119},{"period":"2025-07-01","rent":1091.748452},{"period":"2025-08-01","rent":1100.498986},{"period":"2025-09-01","rent":1113.178733},{"period":"2025-10-01","rent":1120.444923},{"period":"2025-11-01","rent":1123.87213},{"period":"2025-12-01","rent":1137.904508},{"period":"2026-01-01","rent":1153.330759},{"period":"2026-02-01","rent":1171.444907},{"period":"2026-03-01","rent":1165.841915},{"period":"2026-04-01","rent":1184.719875},{"period":"2026-05-01","rent":1203.856064},{"period":"2026-06-01","rent":1246.984512}],"historySummary":{"pointCount":66,"firstPeriod":"2021-01-01","latestPeriod":"2026-06-01","coverageMonths":66,"coverageRatio":1,"changes":{"1":{"years":1,"startPeriod":"2025-06-01","endPeriod":"2026-06-01","startRent":1091.415119,"endRent":1246.984512,"change":0.1425391588331113,"cagr":0.1425391588331113},"3":{"years":3,"startPeriod":"2023-06-01","endPeriod":"2026-06-01","startRent":974.585371,"endRent":1246.984512,"change":0.27950259577618874,"cagr":0.08562638645929521},"5":{"years":5,"startPeriod":"2021-06-01","endPeriod":"2026-06-01","startRent":877.382959,"endRent":1246.984512,"change":0.4212545379514261,"cagr":0.07283855585475862}},"maxDrawdown":-0.024476587343669975,"annualizedVolatility":0.0397976270870273,"consecutiveReturnCount":65}}