{"zip":"92104","city":"San Diego","state":"CA","county":"San Diego County","countySlug":"san-diego-county-ca","metro":"San Diego-Chula Vista-Carlsbad, CA","metroSlug":"san-diego-ca","citySlug":"san-diego-ca","rentPeriod":"2026-06","acsPeriod":"ACS 2024 5-year","directRent":2602,"rentYoy":0.0039,"bedroomEstimates":[1987,2130,2602,3469,4202],"hudFmr":[2360,2530,3090,4120,4990],"ladderSource":"safmr","population":47410,"populationMoe":2450,"medianIncome":94014,"medianIncomeMoe":3592,"medianGrossRent":1993,"medianGrossRentMoe":61,"housingUnits":25064,"occupiedUnits":23661,"vacantUnits":1403,"renterOccupied":16855,"rentBurdenTotal":16855,"rentBurden30Plus":8068,"vacantForRent":680,"vacantForSale":50,"vacantSeasonal":156,"structureTotal":25064,"singleFamilyUnits":9366,"largeMultifamilyUnits":4017,"vacancyRate":0.05597669964889882,"renterShare":0.7123536621444572,"rentBurdenShare":0.47867101750222485,"requiredIncome":104080,"askingRentToIncome":0.33212074797370605,"askingVsAcsRent":1.305569493226292,"askingVsHud2br":0.8420711974110032,"cityRent":3037.7241329230965,"countyRent":2991,"metroRent":2991,"cityGrossRent":2313,"countyGrossRent":2246,"countyListings":5739,"countyListingDom":43,"countyPriceReducedShare":0.1794,"countyListingPeriod":"2026-06","metroMonthsSupply":2.6,"metroMedianDom":24,"metroPriceDrops":0.3151,"metroResalePeriod":"2026-05-01","apartmentVacancy":0.0659764507522469,"apartmentTimeOnMarket":29.3,"zipResalePeriodBegin":"2026-04-01","zipResalePeriodEnd":"2026-06-30","zipResaleUpdated":"2026-07-03","zipHomesSold":76,"zipSalePrice":914793,"zipSalePriceYoy":-0.0665,"zipMedianDom":20,"zipActiveListings":198,"zipActiveListingsYoy":0.1168,"zipInventory":90,"zipInventoryYoy":0.2041,"zipPendingSales":92,"zipMonthsSupply":3.6,"zipSaleToList":0.9996,"zipSoldAboveList":0.3517,"zipOffMarketTwoWeeks":0.4014,"generatedAt":"2026-09-01 13:38:55.050429+00","summaryHtml":"<p>At $2,602 in June 2026, ZIP 92104’s Zillow asking-rent index sits in a measurable affordability tension with the matched ACS median gross rent of $1,993, a 30.6% difference across non-equivalent rent concepts. A 30% required-income screen converts the current asking-rent index to $104,080 of annual income. That arithmetic benchmark exceeds the ZCTA median household income of $94,014, producing a 33.2% asking-rent-to-income screen; it is not advice, an applicant qualification rule, or a statement about any household. The ACS rent-burden measure also reports that 47.9% of renter households pay at least 30% of income toward rent, reinforcing the area-level tension without proving the burden or rent on any particular unit.</p><p>The current reading follows a much slower recent path than the longer history. The exact same-month annualized one-year ZORI change was 0.4%, versus 0.9% over three years and 5.0% over five years. Thus, the latest direction breaks from the stronger five-year pace and is also below the three-year trend, although all three retrospective measures remain positive. Annualized monthly-return variability measured 1.9%, indicating relatively restrained movement in the historical index. The maximum drawdown was 1.3%, a limited historical peak-to-trough decline. Coverage is complete at 100% across 138 observations and 137 consecutive monthly returns. Transparent national discovery ranks place momentum at 2,193, stability at 61, and balance at 1,200 among history-eligible ZIPs, with lower ranks stronger; these are descriptive discovery measures, not forecasts or investment ratings.</p><p>Definitions matter before comparing those figures. The five-digit label 92104 is both a Zillow ZIP market identifier and a Census ZCTA match; a ZCTA is a Census statistical area and is not identical to a USPS delivery ZIP. Zillow ZORI is a typical observed asking-rent index blended across rental types. ACS median gross rent is a five-year survey measure for occupied renter homes and includes selected utilities. HUD FMR/SAFMR is instead an administrative, bedroom-specific standard, not asking rent. Scaling the ZIP ZORI by the local HUD ladder produces modelled monthly estimates of $1,987 for a studio, $2,130 for one bedroom, $2,602 for two bedrooms, $3,469 for three bedrooms, and $4,202 for four bedrooms. They are modelled estimates, never measured bedroom rents. The corresponding HUD standards are $2,360, $2,530, $3,090, $4,120, and $4,990, respectively.</p><p>The matched ACS housing-stock record shows 25,064 housing units and 23,661 occupied units. Renters occupy 16,855 homes while owners occupy 6,806, making the renter share 71.2% of occupied housing. There are 1,403 vacant units, for a 5.6% vacancy rate. Among specified vacant categories, 680 units are reported vacant for rent and 50 vacant for sale. These are area-level survey counts, rather than a real-time inventory of rentable homes, and they do not establish availability, condition, lease terms, or pricing for a specific unit. The stock mix nevertheless provides important context for why an asking-rent index and an occupied-home gross-rent median can describe materially different populations.</p><p>Broader benchmarks position this ZIP below its surrounding rent measures, but they remain context rather than substitutes for ZIP evidence: San Diego city context rent is $3,038; San Diego County context rent is $2,991 and its two-bedroom HUD FMR is $3,001; and San Diego-Chula Vista-Carlsbad metro context rent matches the County figure, while metro months of supply are 2.6. Each value belongs to its named city, county, or metro geography rather than 92104 itself. The lower ZIP asking-rent index relative to these wider rent contexts does not make the measures interchangeable, because the city, county, and metro figures summarize broader markets with different housing composition and source coverage. The metro resale supply figure is likewise useful only as a wider comparator to the direct ZIP resale observation.</p><p>Redfin provides that direct rolling-three-month ZIP resale observation, and it belongs entirely to the for-sale market rather than rental transactions. Median sold price was $914,793, down 6.7% year over year. There were 76 homes sold, with a median 20 days on market, inventory of 90 homes, and 3.6 months of supply. Sale-to-list signals were mixed: the average sale-to-list ratio was 99.96%, while 35.2% of homes sold above list price. This resale evidence challenges any simple reading of the steadier rent history: asking rents were nearly flat while sold prices declined and supply exceeded the metro context figure. The annualized ZIP ZORI divided by median sold price is a 3.4% cross-source screening ratio only, not a cap rate, net return, expected return, or property yield.</p><p>The ACS burden and vacancy measures require especially careful interpretation. Rent burden describes survey-reported renter households in the matched ZCTA, not the affordability of a new lease, and vacancy does not prove that a particular property is available or suitable. The reported ACS renter-total, burden, and gross-rent estimates also carry survey margins of error. Meanwhile, the occupied-home gross-rent median can differ from a current Zillow asking-rent index because of resident tenure, included utilities, rental-type mix, and timing. HUD standards add a useful local bedroom ladder but do not supply market rent comparables. Read together, the sources identify a gap between current asking-rent conditions and older occupied-household outcomes; they cannot identify its cause or translate it into a lease outcome for any individual home.</p><p>Several limits remain material for property-level use. ZORI is an index rather than a live listing feed, the bedroom ladder is modelled rather than observed, and Redfin’s ZIP resale statistics are aggregates rather than rental comparables or property economics. A property-level review should verify advertised bedroom count, current asking price, lease start date, utility responsibilities, concessions, furnished status, and actual availability. For any sale-side comparison, it should also verify property type, condition, lot or unit characteristics, list history, closing timing, and whether the relevant sale resembles the subject property. The historical measures are backward-looking and the resale block is a dated observation, so neither establishes a forecast. The unresolved question is whether a specific listing’s terms and physical attributes align with these area-level screens.</p>","findings":[{"body":"ZIP 92104’s Zillow asking-rent index is materially above the matched ACS median gross-rent measure. That difference is decision-relevant, but it is not a direct rent-comp comparison: Zillow tracks a typical observed asking-rent index, while ACS summarizes occupied renter homes over five years and includes selected utilities. The gap should be interpreted as a source-and-population contrast.","title":"Current asking rent exceeds the occupied-home gross-rent benchmark"},{"body":"The one-year same-month change is below both the three-year and five-year annualized changes. Low measured variability, limited drawdown, complete historical coverage, and a strong stability discovery rank support confidence that the series has been comparatively calm. However, the current near-flat reading breaks from the stronger long-run growth pace and should remain backward-looking.","title":"Recent rent movement is positive but markedly slower than the long path"},{"body":"The studio-through-four-bedroom estimates allocate the ZIP asking-rent index using the local HUD bedroom ladder. They provide a transparent size-based screen where direct bedroom rent observations are absent. Because HUD FMR/SAFMR is an administrative standard rather than asking rent, the resulting figures must be treated as modelled estimates and never as observed rents for available units.","title":"Bedroom figures are a HUD-scaled model, not measured rents"},{"body":"Redfin’s direct ZIP resale data show a year-over-year decline in median sold price alongside a measurable volume of sales, moderate marketing time, and supply above the metro context figure. Those for-sale signals sit uneasily beside a rent index that remains positive but barely growing. The annualized-rent-to-sold-price figure is only a screening ratio across different sources, not an ownership return measure.","title":"Resale conditions create a cross-market tension"}],"risks":["The Zillow asking-rent index, ACS gross-rent median, and HUD bedroom standards describe different populations, timing windows, and purposes, so apparent dollar gaps cannot be treated as direct market-rent spreads for a particular apartment.","The matched Census ZCTA is a statistical area rather than a USPS delivery ZIP, meaning survey estimates may not align perfectly with every address, listing boundary, or delivery ZIP associated with 92104.","Rent-burden and vacancy figures are area-level ACS survey measures with uncertainty; neither establishes that a specific household is burdened or that a particular vacant home is currently rentable.","Redfin resale statistics cover for-sale transactions in a rolling ZIP observation, not rental deals. Sold-price, inventory, and marketing-time signals therefore cannot establish rental comparables or unit-level property economics."],"qa":[{"a":"The measures use different evidence universes. Zillow ZORI is a current typical observed asking-rent index blended across rental types. ACS median gross rent is a five-year survey estimate for occupied renter homes and includes selected utilities. Differences in timing, renter tenure, included costs, and housing mix can all be reflected in the comparison without establishing a pricing error.","q":"Why is the current Zillow rent higher than the ACS median gross rent?"},{"a":"No. They are modelled monthly estimates generated by scaling the ZIP Zillow asking-rent index with the local HUD bedroom ladder. HUD FMR/SAFMR is an administrative bedroom-specific standard, not an asking-rent survey. The model is useful for a consistent size screen, but it does not measure the rent of a listed or leased unit.","q":"Are the studio through four-bedroom figures observed market rents?"},{"a":"The history indicates a relatively stable index path, with low annualized monthly-return variability, a limited historical drawdown, and complete coverage over the available observations. That reduces concern that the current snapshot is simply part of a highly erratic series. Still, one-year growth is slower than the three-year and five-year measures, so the current level should not be treated as a forecast.","q":"What does the rent history say about confidence in the current reading?"},{"a":"It should be read only as annualized ZIP ZORI divided by Redfin’s median sold price, combining two different sources and market universes. It can flag the relationship between an area-level asking-rent index and resale pricing, but it excludes operating costs, financing, taxes, property condition, and lease details. It is not a cap rate, property yield, or expected return.","q":"How should the Redfin rent-to-price screening ratio 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":"2015-01-01","rent":1420.070991},{"period":"2015-02-01","rent":1433.737083},{"period":"2015-03-01","rent":1432.636221},{"period":"2015-04-01","rent":1442.302911},{"period":"2015-05-01","rent":1453.987503},{"period":"2015-06-01","rent":1477.484824},{"period":"2015-07-01","rent":1487.354616},{"period":"2015-08-01","rent":1485.468519},{"period":"2015-09-01","rent":1493.433297},{"period":"2015-10-01","rent":1508.704094},{"period":"2015-11-01","rent":1528.694773},{"period":"2015-12-01","rent":1540.183937},{"period":"2016-01-01","rent":1545.836377},{"period":"2016-02-01","rent":1543.74648},{"period":"2016-03-01","rent":1559.853611},{"period":"2016-04-01","rent":1566.073978},{"period":"2016-05-01","rent":1573.858601},{"period":"2016-06-01","rent":1571.543013},{"period":"2016-07-01","rent":1579.885376},{"period":"2016-08-01","rent":1597.930698},{"period":"2016-09-01","rent":1596.014863},{"period":"2016-10-01","rent":1600.326531},{"period":"2016-11-01","rent":1584.634147},{"period":"2016-12-01","rent":1598.323766},{"period":"2017-01-01","rent":1612.734503},{"period":"2017-02-01","rent":1635.720648},{"period":"2017-03-01","rent":1653.505774},{"period":"2017-04-01","rent":1656.604},{"period":"2017-05-01","rent":1668.357768},{"period":"2017-06-01","rent":1687.162028},{"period":"2017-07-01","rent":1699.455213},{"period":"2017-08-01","rent":1711.249242},{"period":"2017-09-01","rent":1717.182693},{"period":"2017-10-01","rent":1729.516527},{"period":"2017-11-01","rent":1752.140666},{"period":"2017-12-01","rent":1761.568705},{"period":"2018-01-01","rent":1763.651439},{"period":"2018-02-01","rent":1769.579679},{"period":"2018-03-01","rent":1779.278543},{"period":"2018-04-01","rent":1787.463309},{"period":"2018-05-01","rent":1789.773334},{"period":"2018-06-01","rent":1788.382242},{"period":"2018-07-01","rent":1795.832868},{"period":"2018-08-01","rent":1804.051612},{"period":"2018-09-01","rent":1823.494946},{"period":"2018-10-01","rent":1827.263403},{"period":"2018-11-01","rent":1821.224809},{"period":"2018-12-01","rent":1828.315304},{"period":"2019-01-01","rent":1831.237606},{"period":"2019-02-01","rent":1836.718041},{"period":"2019-03-01","rent":1834.97484},{"period":"2019-04-01","rent":1843.787243},{"period":"2019-05-01","rent":1852.05577},{"period":"2019-06-01","rent":1861.235676},{"period":"2019-07-01","rent":1864.656347},{"period":"2019-08-01","rent":1865.79222},{"period":"2019-09-01","rent":1865.040219},{"period":"2019-10-01","rent":1871.430431},{"period":"2019-11-01","rent":1884.387831},{"period":"2019-12-01","rent":1887.564416},{"period":"2020-01-01","rent":1897.691901},{"period":"2020-02-01","rent":1902.098037},{"period":"2020-03-01","rent":1908.444256},{"period":"2020-04-01","rent":1891.133113},{"period":"2020-05-01","rent":1882.955029},{"period":"2020-06-01","rent":1888.31325},{"period":"2020-07-01","rent":1904.289816},{"period":"2020-08-01","rent":1908.045907},{"period":"2020-09-01","rent":1915.851997},{"period":"2020-10-01","rent":1920.43596},{"period":"2020-11-01","rent":1925.97364},{"period":"2020-12-01","rent":1923.085922},{"period":"2021-01-01","rent":1936.781299},{"period":"2021-02-01","rent":1954.821059},{"period":"2021-03-01","rent":1977.986852},{"period":"2021-04-01","rent":1997.548828},{"period":"2021-05-01","rent":2019.781735},{"period":"2021-06-01","rent":2036.484177},{"period":"2021-07-01","rent":2057.475341},{"period":"2021-08-01","rent":2088.781625},{"period":"2021-09-01","rent":2118.165625},{"period":"2021-10-01","rent":2150.186039},{"period":"2021-11-01","rent":2180.051414},{"period":"2021-12-01","rent":2222.520873},{"period":"2022-01-01","rent":2251.904878},{"period":"2022-02-01","rent":2278.688739},{"period":"2022-03-01","rent":2307.937669},{"period":"2022-04-01","rent":2340.962061},{"period":"2022-05-01","rent":2368.295863},{"period":"2022-06-01","rent":2392.251241},{"period":"2022-07-01","rent":2408.724866},{"period":"2022-08-01","rent":2434.480676},{"period":"2022-09-01","rent":2450.658294},{"period":"2022-10-01","rent":2480.55632},{"period":"2022-11-01","rent":2486.89092},{"period":"2022-12-01","rent":2495.747677},{"period":"2023-01-01","rent":2492.772663},{"period":"2023-02-01","rent":2488.462333},{"period":"2023-03-01","rent":2490.518696},{"period":"2023-04-01","rent":2497.915784},{"period":"2023-05-01","rent":2518.12546},{"period":"2023-06-01","rent":2531.777225},{"period":"2023-07-01","rent":2540.502894},{"period":"2023-08-01","rent":2538.01724},{"period":"2023-09-01","rent":2543.818131},{"period":"2023-10-01","rent":2541.847027},{"period":"2023-11-01","rent":2546.324935},{"period":"2023-12-01","rent":2546.363486},{"period":"2024-01-01","rent":2550.903686},{"period":"2024-02-01","rent":2575.907298},{"period":"2024-03-01","rent":2570.935955},{"period":"2024-04-01","rent":2583.206166},{"period":"2024-05-01","rent":2572.99234},{"period":"2024-06-01","rent":2579.343686},{"period":"2024-07-01","rent":2579.545394},{"period":"2024-08-01","rent":2573.647895},{"period":"2024-09-01","rent":2575.8851},{"period":"2024-10-01","rent":2563.84629},{"period":"2024-11-01","rent":2568.219916},{"period":"2024-12-01","rent":2571.182891},{"period":"2025-01-01","rent":2580.071649},{"period":"2025-02-01","rent":2573.925661},{"period":"2025-03-01","rent":2585.56149},{"period":"2025-04-01","rent":2592.819216},{"period":"2025-05-01","rent":2594.292639},{"period":"2025-06-01","rent":2592.253199},{"period":"2025-07-01","rent":2596.870277},{"period":"2025-08-01","rent":2607.911748},{"period":"2025-09-01","rent":2609.760283},{"period":"2025-10-01","rent":2622.148902},{"period":"2025-11-01","rent":2622.590271},{"period":"2025-12-01","rent":2624.246623},{"period":"2026-01-01","rent":2620.970306},{"period":"2026-02-01","rent":2618.807569},{"period":"2026-03-01","rent":2615.120494},{"period":"2026-04-01","rent":2604.686489},{"period":"2026-05-01","rent":2605.939368},{"period":"2026-06-01","rent":2602.424339}],"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":2592.253199,"endRent":2602.424339,"change":0.003923667643239259,"cagr":0.003923667643239259},"3":{"years":3,"startPeriod":"2023-06-01","endPeriod":"2026-06-01","startRent":2531.777225,"endRent":2602.424339,"change":0.02790415890560838,"cagr":0.009216187259106112},"5":{"years":5,"startPeriod":"2021-06-01","endPeriod":"2026-06-01","startRent":2036.484177,"endRent":2602.424339,"change":0.2779005937741692,"cagr":0.05026626113487742}},"maxDrawdown":-0.01335602385024548,"annualizedVolatility":0.018575697229224024,"consecutiveReturnCount":137}}