{"zip":"33904","city":"Cape Coral","state":"FL","county":"Lee County","countySlug":"lee-county-fl","metro":"Cape Coral-Fort Myers, FL","metroSlug":"cape-coral-fl","citySlug":"cape-coral-fl","rentPeriod":"2026-06","acsPeriod":"ACS 2024 5-year","directRent":1821,"rentYoy":-0.0252,"bedroomEstimates":[1513,1521,1821,2377,2634],"hudFmr":[1629,1638,1961,2560,2836],"ladderSource":"county","population":33599,"populationMoe":1708,"medianIncome":71190,"medianIncomeMoe":5809,"medianGrossRent":1710,"medianGrossRentMoe":84,"housingUnits":20276,"occupiedUnits":15263,"vacantUnits":5013,"renterOccupied":3508,"rentBurdenTotal":3508,"rentBurden30Plus":2225,"vacantForRent":310,"vacantForSale":226,"vacantSeasonal":3691,"structureTotal":20276,"singleFamilyUnits":13881,"largeMultifamilyUnits":1141,"vacancyRate":0.2472381140264352,"renterShare":0.2298368603813143,"rentBurdenShare":0.6342645381984037,"requiredIncome":72840,"askingRentToIncome":0.30695322376738304,"askingVsAcsRent":1.0649122807017544,"askingVsHud2br":0.928607853136155,"cityRent":1911.7110891275672,"countyRent":1874,"metroRent":1874,"cityGrossRent":1858,"countyGrossRent":1712,"countyListings":10575,"countyListingDom":90,"countyPriceReducedShare":0.2082,"countyListingPeriod":"2026-06","metroMonthsSupply":4.9,"metroMedianDom":67,"metroPriceDrops":0.3083,"metroResalePeriod":"2026-05-01","apartmentVacancy":0.0996663591161253,"apartmentTimeOnMarket":null,"zipResalePeriodBegin":"2026-04-01","zipResalePeriodEnd":"2026-06-30","zipResaleUpdated":"2026-07-03","zipHomesSold":311,"zipSalePrice":344422,"zipSalePriceYoy":-0.0159,"zipMedianDom":57,"zipActiveListings":786,"zipActiveListingsYoy":-0.1825,"zipInventory":433,"zipInventoryYoy":-0.2372,"zipPendingSales":314,"zipMonthsSupply":4.2,"zipSaleToList":0.9491,"zipSoldAboveList":0.053,"zipOffMarketTwoWeeks":0.2508,"generatedAt":"2026-09-01 14:00:35.473819+00","summaryHtml":"<p>The pivotal tension in this market is a softer current rent reading beside a still-positive longer arc. At the June endpoint, the ZIP asking-rent index stands at $1,821 per month, while the near-term direction has weakened after prior gains. That combination makes a single current observation less self-explanatory than it would be in a consistently rising or consistently falling series. The evidence supports a measured reading: recent asking-rent movement is negative, but the longer record remains positive. These are backward-looking market measurements, not forecasts, investment recommendations, or evidence about the rent achievable by any particular home.</p><p>History makes the contrast concrete. In direct Zillow ZIP ZORI observations through the stated endpoint, the exact same-month one-year change was -2.52%, the three-year change was -2.46% annualized, and the five-year change was +4.97% annualized. Recent direction therefore breaks from, rather than confirms, the longer positive path. The series has complete coverage, with 138 observations and a 100% coverage ratio. Annualized monthly-return variability was 4.46%, which means the current rent snapshot deserves less confidence as a stable point estimate than a low-variability series would merit. Separately, the maximum peak-to-trough drawdown was 8.19%, documenting a meaningful historical setback. Among history-eligible ZIPs, transparent national discovery ranks were 2,850 for momentum, 2,741 for stability, and 2,891 for the balanced measure; lower ranks are higher placements, but these are discovery tools rather than ratings or predictions.</p><p>The five-digit 33904 label is both a Zillow ZIP market identifier and a matched Census ZCTA; a ZCTA is a statistical area and is not identical to a USPS delivery ZIP. Zillow ZORI is a typical observed asking-rent index blended across rental types, not a census measure of occupied homes. In the same comparison, Cape Coral city context rent is $1,912, Lee County context rent is $1,874, and Cape Coral-Fort Myers metro context rent is $1,874; all three are wider-geography context rather than ZIP substitutes. The matched Census ZCTA five-year ACS survey instead reports a $1,710 median gross rent for occupied renter homes, including selected utilities. That lower ACS figure is not a conflicting asking-rent quote: it comes from a different population, survey design, timing framework, and rent concept.</p><p>Bedroom figures should be read as modelled estimates, never as measured bedroom rents. Scaling the ZIP asking-rent index with the local HUD ladder produces estimated monthly rents of $1,513 for a studio, $1,521 for one bedroom, $1,821 for two bedrooms, $2,377 for three bedrooms, and $2,634 for four bedrooms. The local HUD two-bedroom standard is $1,961. HUD FMR or SAFMR is an administrative, bedroom-specific standard rather than an asking-rent observation, so it is useful for the scaling relationship but does not establish a lease asking price. The modelled ladder is most useful for comparing relative bedroom sizing under one transparent method, while actual listings may differ by condition, utilities, lease terms, and rental type.</p><p>The affordability screen also has an important internal tension. Applying a 30% income share to the current asking-rent index produces required annual income of $72,840, slightly above the ZCTA's $71,190 median household income; the same arithmetic places the index at 30.7% of that income. This is an arithmetic screen, not advice and not an applicant qualification rule. In the ACS renter-home universe, 63.4% of renter households are reported as paying 30% or more of income toward gross rent. Because ACS gross rent includes selected utilities and is based on occupied renter homes, the burden measure cannot prove what a new tenant at a particular address would pay, but it does indicate that rent-to-income pressure is common in the surveyed renter population.</p><p>Housing availability measures add another layer of caution. The matched ZCTA contains 20,276 housing units, of which 5,013 are vacant, for a 24.7% vacancy rate. Seasonal vacancies account for 3,691 units, whereas only 310 vacant units are identified as for rent. The stock is heavily represented by 13,881 single-family units. These categories describe broad housing status rather than immediate leasing inventory, and the high overall vacancy figure should not be treated as proof that a specific rental is available, discounted, or easy to lease. It does, however, show why the rent index, the occupied-renter survey, and vacancy classifications should not be collapsed into one demand conclusion.</p><p>Redfin provides a direct rolling-three-month ZIP resale observation, which belongs entirely to the for-sale market rather than rental transactions. The median sold price was $344,422, down 1.59% year over year, with 311 homes sold and a median 57 days on market. Redfin recorded 433 homes of inventory and 4.2 months of supply. The average sale-to-list ratio was 94.91%, while 5.3% of homes sold above list, signals that should be interpreted only within this ZIP resale universe. The sale-price decline broadly confirms the current rent-history softening, although resale activity remains observable rather than absent. Dividing annualized ZIP ZORI by median sold price creates a 6.34% cross-source screening ratio only; it is not a cap rate, property yield, net return, or expected return.</p><p>The evidence has limits that matter for property-level decisions. Zillow tracks a blended asking-rent index, ACS summarizes occupied renter homes over five years, HUD supplies an administrative bedroom standard, and Redfin tracks closed resale activity over a rolling period; none is a substitute for matched current listings or unit-level operating facts. Concrete checks should establish the actual bedroom count, unit type, asking rent, utility responsibility, concessions, lease term, occupancy status, and comparable nearby listings. A resale review should separately verify property condition, sale date, list-to-sale history, and comparable transactions. The central question is whether a specific property’s current terms align with this ZIP-level softening while remaining distinct from the broader survey, administrative, and resale measures.</p>","findings":[{"body":"The ZIP’s one-year and three-year Zillow rent-history measures are negative, while the five-year annualized change remains positive. That is a break from the longer trajectory rather than confirmation of it. Complete history coverage strengthens confidence that the sequence was observed, but the documented variability and drawdown mean the latest asking-rent index should not be treated as an unusually precise fixed market level.","title":"Recent rent direction diverges from the long record"},{"body":"The arithmetic income amount associated with devoting 30% of income to the ZIP asking-rent index sits modestly above the ZCTA median household income. ACS also reports a substantial share of occupied renter homes with gross-rent burdens at or above that threshold. Those figures identify broad affordability pressure, but they do not determine eligibility, tenant finances, or the cost of an individual lease.","title":"The income screen is close to the area median"},{"body":"The matched ZCTA has a high overall vacancy rate, but seasonal vacant units make up most of that inventory. Vacant-for-rent units are a much narrower category, and the housing stock is predominantly single-family. As a result, the overall vacancy number should not be read as a direct count of immediately competing rental listings or as proof of conditions for a particular unit.","title":"Vacancy composition matters more than the headline rate"},{"body":"Redfin’s direct ZIP resale evidence shows a year-over-year decline in median sold price alongside measurable sales, marketing time, supply, and below-list sale-to-list behavior. That for-sale evidence is directionally consistent with the recent rent slowdown. It does not convert resale metrics into rental comps, and the rent-to-price calculation remains only a cross-source screening ratio.","title":"Resale softness aligns with rent softness, but stays separate"}],"risks":["Recent negative one-year and three-year asking-rent history may continue to make a single current ZIP rent index less representative of every listing, especially given the series’ measured variability and historical drawdown.","ACS median gross rent, rent burden, and household income are survey measures for occupied renter homes in the matched ZCTA, so they cannot establish current affordability, utilities, or lease terms for a specific available property.","The high overall vacancy rate is dominated by seasonal vacancy classifications, creating a risk of overstating the amount of immediately available long-term rental competition from the headline vacancy statistic alone.","Redfin resale prices, supply, marketing time, and sale-to-list measures describe closed for-sale transactions, creating a risk if they are used as rental comps, operating economics, or evidence of expected property returns."],"qa":[{"a":"The latest Zillow asking-rent index is supported by complete historical coverage, but its interpretation is complicated by negative one-year and three-year changes after a positive five-year annualized path. Measured monthly variability and the historical drawdown indicate that the series has moved enough over time that one endpoint should be treated as a market indicator, not a fixed lease quote.","q":"Why does the current rent reading deserve caution?"},{"a":"The two sources measure different universes. Zillow ZORI is a typical observed asking-rent index blended across rental types, while ACS median gross rent is a five-year survey estimate for occupied renter homes and includes selected utilities. Different timing, included households, rent definitions, and survey design mean the figures are contextual comparisons rather than interchangeable prices.","q":"Why is ACS gross rent lower than the Zillow asking-rent index?"},{"a":"No. The studio through four-bedroom figures are modelled monthly ZIP estimates created by scaling the ZIP asking-rent index using the local HUD bedroom ladder. HUD FMR or SAFMR is an administrative standard, not asking rent. Actual unit rents can differ because of property type, location, condition, utilities, concessions, furnishings, and lease structure.","q":"Are the bedroom estimates actual observed rents?"},{"a":"It is simply annualized ZIP Zillow asking-rent index divided by Redfin’s median sold price in the direct rolling-three-month ZIP resale observation. The calculation can compare two reported market measures at a high level, but it excludes expenses, financing, taxes, insurance, maintenance, vacancy experience, and property-specific rent. It is therefore not a cap rate, yield, or expected return.","q":"What does the Redfin screening ratio mean?"}],"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":853.900754},{"period":"2015-02-01","rent":876.757332},{"period":"2015-03-01","rent":871.118764},{"period":"2015-04-01","rent":896.714278},{"period":"2015-05-01","rent":914.391995},{"period":"2015-06-01","rent":937.45343},{"period":"2015-07-01","rent":926.398864},{"period":"2015-08-01","rent":913.606806},{"period":"2015-09-01","rent":919.416414},{"period":"2015-10-01","rent":938.579289},{"period":"2015-11-01","rent":940.368033},{"period":"2015-12-01","rent":942.063891},{"period":"2016-01-01","rent":961.606706},{"period":"2016-02-01","rent":968.023716},{"period":"2016-03-01","rent":974.01515},{"period":"2016-04-01","rent":959.845116},{"period":"2016-05-01","rent":959.245828},{"period":"2016-06-01","rent":965.817581},{"period":"2016-07-01","rent":993.372704},{"period":"2016-08-01","rent":1009.682706},{"period":"2016-09-01","rent":1015.732058},{"period":"2016-10-01","rent":991.992253},{"period":"2016-11-01","rent":1012.827429},{"period":"2016-12-01","rent":1013.842477},{"period":"2017-01-01","rent":1029.260516},{"period":"2017-02-01","rent":1011.434054},{"period":"2017-03-01","rent":1019.545196},{"period":"2017-04-01","rent":1037.176167},{"period":"2017-05-01","rent":1052.159853},{"period":"2017-06-01","rent":1042.504089},{"period":"2017-07-01","rent":1036.805529},{"period":"2017-08-01","rent":1042.600985},{"period":"2017-09-01","rent":1053.310734},{"period":"2017-10-01","rent":1070.105855},{"period":"2017-11-01","rent":1066.684711},{"period":"2017-12-01","rent":1080.592188},{"period":"2018-01-01","rent":1079.95081},{"period":"2018-02-01","rent":1094.204535},{"period":"2018-03-01","rent":1097.632481},{"period":"2018-04-01","rent":1105.498932},{"period":"2018-05-01","rent":1109.672586},{"period":"2018-06-01","rent":1111.995216},{"period":"2018-07-01","rent":1105.85894},{"period":"2018-08-01","rent":1117.300086},{"period":"2018-09-01","rent":1114.7631},{"period":"2018-10-01","rent":1124.216106},{"period":"2018-11-01","rent":1128.020849},{"period":"2018-12-01","rent":1135.417537},{"period":"2019-01-01","rent":1139.608992},{"period":"2019-02-01","rent":1135.873674},{"period":"2019-03-01","rent":1139.793968},{"period":"2019-04-01","rent":1138.297656},{"period":"2019-05-01","rent":1138.541501},{"period":"2019-06-01","rent":1150.588834},{"period":"2019-07-01","rent":1163.703472},{"period":"2019-08-01","rent":1159.558044},{"period":"2019-09-01","rent":1165.473601},{"period":"2019-10-01","rent":1164.815047},{"period":"2019-11-01","rent":1169.680866},{"period":"2019-12-01","rent":1167.475046},{"period":"2020-01-01","rent":1171.297734},{"period":"2020-02-01","rent":1181.561764},{"period":"2020-03-01","rent":1198.883629},{"period":"2020-04-01","rent":1205.390403},{"period":"2020-05-01","rent":1202.168717},{"period":"2020-06-01","rent":1195.313642},{"period":"2020-07-01","rent":1221.444628},{"period":"2020-08-01","rent":1238.239876},{"period":"2020-09-01","rent":1236.097911},{"period":"2020-10-01","rent":1246.841223},{"period":"2020-11-01","rent":1260.274562},{"period":"2020-12-01","rent":1301.370236},{"period":"2021-01-01","rent":1305.790665},{"period":"2021-02-01","rent":1323.424566},{"period":"2021-03-01","rent":1348.267427},{"period":"2021-04-01","rent":1365.70443},{"period":"2021-05-01","rent":1401.902742},{"period":"2021-06-01","rent":1428.677679},{"period":"2021-07-01","rent":1459.267354},{"period":"2021-08-01","rent":1498.247391},{"period":"2021-09-01","rent":1554.069672},{"period":"2021-10-01","rent":1573.56935},{"period":"2021-11-01","rent":1597.044748},{"period":"2021-12-01","rent":1605.911055},{"period":"2022-01-01","rent":1649.736537},{"period":"2022-02-01","rent":1664.694599},{"period":"2022-03-01","rent":1686.247537},{"period":"2022-04-01","rent":1722.891012},{"period":"2022-05-01","rent":1772.207966},{"period":"2022-06-01","rent":1771.585794},{"period":"2022-07-01","rent":1789.271013},{"period":"2022-08-01","rent":1789.619754},{"period":"2022-09-01","rent":1852.369456},{"period":"2022-10-01","rent":1924.091236},{"period":"2022-11-01","rent":1945.578575},{"period":"2022-12-01","rent":1937.146142},{"period":"2023-01-01","rent":1899.626239},{"period":"2023-02-01","rent":1938.877354},{"period":"2023-03-01","rent":1957.109986},{"period":"2023-04-01","rent":1961.595288},{"period":"2023-05-01","rent":1929.013139},{"period":"2023-06-01","rent":1961.872742},{"period":"2023-07-01","rent":1963.718705},{"period":"2023-08-01","rent":1961.065958},{"period":"2023-09-01","rent":1902.802698},{"period":"2023-10-01","rent":1872.980446},{"period":"2023-11-01","rent":1906.335525},{"period":"2023-12-01","rent":1926.584895},{"period":"2024-01-01","rent":1974.766696},{"period":"2024-02-01","rent":1949.550932},{"period":"2024-03-01","rent":1947.980342},{"period":"2024-04-01","rent":1940.416326},{"period":"2024-05-01","rent":1937.362497},{"period":"2024-06-01","rent":1939.156991},{"period":"2024-07-01","rent":1904.333754},{"period":"2024-08-01","rent":1928.369571},{"period":"2024-09-01","rent":1928.101531},{"period":"2024-10-01","rent":1941.583703},{"period":"2024-11-01","rent":1911.445856},{"period":"2024-12-01","rent":1899.074994},{"period":"2025-01-01","rent":1902.213855},{"period":"2025-02-01","rent":1910.933291},{"period":"2025-03-01","rent":1908.073022},{"period":"2025-04-01","rent":1882.512769},{"period":"2025-05-01","rent":1869.476057},{"period":"2025-06-01","rent":1867.650396},{"period":"2025-07-01","rent":1886.578467},{"period":"2025-08-01","rent":1866.404246},{"period":"2025-09-01","rent":1874.996692},{"period":"2025-10-01","rent":1860.498931},{"period":"2025-11-01","rent":1857.428266},{"period":"2025-12-01","rent":1853.41354},{"period":"2026-01-01","rent":1829.340795},{"period":"2026-02-01","rent":1820.367687},{"period":"2026-03-01","rent":1812.9675},{"period":"2026-04-01","rent":1825.854673},{"period":"2026-05-01","rent":1833.799656},{"period":"2026-06-01","rent":1820.606349}],"historySummary":{"pointCount":138,"firstPeriod":"2015-01-01","latestPeriod":"2026-06-01","coverageMonths":138,"coverageRatio":1,"changes":{"1":{"years":1,"startPeriod":"2025-06-01","endPeriod":"2026-06-01","startRent":1867.650396,"endRent":1820.606349,"change":-0.025188893542793522,"cagr":-0.025188893542793522},"3":{"years":3,"startPeriod":"2023-06-01","endPeriod":"2026-06-01","startRent":1961.872742,"endRent":1820.606349,"change":-0.07200589007418923,"cagr":-0.024602271430917533},"5":{"years":5,"startPeriod":"2021-06-01","endPeriod":"2026-06-01","startRent":1428.677679,"endRent":1820.606349,"change":0.27432966564881855,"cagr":0.049678637273811166}},"maxDrawdown":-0.08193332221357252,"annualizedVolatility":0.04455450838953273,"consecutiveReturnCount":137}}