{"zip":"94109","city":"San Francisco","state":"CA","county":"San Francisco County","countySlug":"san-francisco-county-ca","metro":"San Francisco-Oakland-Berkeley, CA","metroSlug":"san-francisco-ca","citySlug":"san-francisco-ca","rentPeriod":"2026-06","acsPeriod":"ACS 2024 5-year","directRent":3709,"rentYoy":0.2171,"bedroomEstimates":[2557,3064,3709,4738,4911],"hudFmr":[2485,2977,3604,4604,4772],"ladderSource":"county","population":54553,"populationMoe":2347,"medianIncome":106018,"medianIncomeMoe":10138,"medianGrossRent":2177,"medianGrossRentMoe":89,"housingUnits":39490,"occupiedUnits":31491,"vacantUnits":7999,"renterOccupied":26212,"rentBurdenTotal":26212,"rentBurden30Plus":10830,"vacantForRent":3494,"vacantForSale":27,"vacantSeasonal":1415,"structureTotal":39490,"singleFamilyUnits":1464,"largeMultifamilyUnits":24274,"vacancyRate":0.2025576095213978,"renterShare":0.8323648026420247,"rentBurdenShare":0.4131695406683962,"requiredIncome":148360,"askingRentToIncome":0.41981550302778775,"askingVsAcsRent":1.7037207165824528,"askingVsHud2br":1.0291342952275249,"cityRent":4401.105615598153,"countyRent":4401,"metroRent":3301,"cityGrossRent":2476,"countyGrossRent":2476,"countyListings":647,"countyListingDom":57,"countyPriceReducedShare":0.0582,"countyListingPeriod":"2026-06","metroMonthsSupply":null,"metroMedianDom":null,"metroPriceDrops":null,"metroResalePeriod":"2026-05-01","apartmentVacancy":0.0333429487101049,"apartmentTimeOnMarket":19.7,"zipResalePeriodBegin":"2026-04-01","zipResalePeriodEnd":"2026-06-30","zipResaleUpdated":"2026-07-03","zipHomesSold":137,"zipSalePrice":1324701,"zipSalePriceYoy":0.1039,"zipMedianDom":33,"zipActiveListings":241,"zipActiveListingsYoy":-0.1594,"zipInventory":78,"zipInventoryYoy":-0.4099,"zipPendingSales":154,"zipMonthsSupply":1.7,"zipSaleToList":1.0489,"zipSoldAboveList":0.5343,"zipOffMarketTwoWeeks":0.3378,"generatedAt":"2026-08-08 17:36:53.702459+00","summaryHtml":"<p>At $3,709 in June 2026, the current Zillow Observed Rent Index (ZORI) frames the immediate question for 94109: how should a ZIP-level asking-rent signal be read alongside separate survey and administrative benchmarks, without claiming a rent for any one listing? ZORI is a typical observed asking-rent index blended across rental types. Its 21.7% year-over-year movement records the reported index change, not a forecast or an explanation for that change. The label is both a Zillow ZIP market identifier and a matching Census ZCTA; a ZCTA is a statistical area and is not identical to a USPS delivery ZIP. That boundary distinction matters when ZIP-index and survey evidence are placed side by side.</p><p>The ACS 2024 five-year survey reports a $2,177 median gross rent for occupied renter homes in the matching ZCTA; this measure includes selected utilities. ZORI is 70.4% above that survey median, but the difference reflects distinct coverage, timing, and methodology rather than a turnover-rent estimate. ACS median gross rent is a five-year survey statistic for occupied renter homes, while Zillow tracks advertised asking conditions. The FY2026 local HUD FMR/SAFMR two-bedroom standard is $3,604, 2.9% below ZORI. HUD FMR/SAFMR is an administrative, bedroom-specific standard, not asking rent; neither the ACS result nor the HUD standard should be merged into the ZORI series. The contrast cannot establish a premium, concession, or lease outcome for a particular unit.</p><p>Bedroom sizing is therefore best treated as a transparent model rather than an observed ZIP rent table. Scaling the ZIP ZORI with the local HUD ladder produces modelled monthly estimates of $2,557 for a studio, $3,064 for one bedroom, $3,709 for two bedrooms, $4,738 for three bedrooms, and $4,911 for four bedrooms. The two-bedroom figure aligns with the index baseline by construction, while the progression follows the relative local HUD ladder. These are modelled estimates, not measured bedroom rents: they do not reveal actual listing counts, unit condition, utility inclusion, concessions, or lease terms at any bedroom size. The sequence is useful for a consistent size comparison, but it does not replace direct evidence from a currently advertised unit.</p><p>Income and tenure provide a separate ACS lens. The ZCTA's median household income is $106,018, an all-household measure rather than a renter-only income statistic. Renter-occupied homes number 26,212 out of 31,491 occupied homes, or 83.2%. Among the reported renter-home burden universe, 10,830 households, or 41.3%, report gross-rent burden at or above 30%. This is observed burden across the ACS renter-home survey universe, not evidence about a particular household or unit. Annualizing the current ZORI for a 30% required-income screen yields $148,360, and the resulting ZORI-to-median-income screen is 42.0%. The 30% screen is arithmetic, not advice or an applicant qualification rule.</p><p>The ACS housing stock totals 39,490 units, of which 7,999 are vacant, for a 20.3% vacancy rate. Within the reported vacant-unit composition, 3,494 are designated for rent, 1,415 are seasonal, and 27 are for sale. The structure table also lists 24,274 large-multifamily units, a stock classification rather than a measure of available rentals. These counts establish a composition for the ZCTA survey area, but they do not identify which vacant homes are marketable, priced at the index, available on a given date, or comparable with a specific search. Vacancy is not proof that any particular unit is open, lease-ready, or suited to the bedroom model.</p><p>Broader geographies give context but remain distinct: San Francisco city context has a $4,401 rent measure, San Francisco County context has a $3,604 two-bedroom HUD FMR, and San Francisco-Oakland-Berkeley, CA metro context has a $3,301 rent measure. The packet designates each as wider context only. The county figure is a HUD administrative standard, while the city and metro rent figures should not be treated as property-level quotes or merged with the ZIP's Zillow asking-rent index. The city rent measure is above this ZIP index, the metro rent measure is below it, and the county standard is below the ZIP index, but those directional relationships do not translate into an observed rent for a particular property. City, county, and metro measures remain context only, while the ZIP ZORI and matched ZCTA ACS estimates retain their stated scopes.</p><p>The packet has no property-level listings, bedroom-specific observations, lease records, utility schedules, or information that can reconcile the current asking index with the survey median for an individual home. ACS sampling uncertainty, the ZCTA/USPS boundary difference, ZORI's rental-type blend, and HUD's administrative purpose are material limits on precision. For a specific property, concrete checks are the advertised rent and date, bedroom count and layout, lease length, included utilities, deposits and recurring fees, availability status, and the income definition used by the listing or program. Confirm whether the address is inside the relevant ZIP and whether the listing's terms match the intended comparison. Keep any unit-level finding separate from the modelled ladder and area-level vacancy and burden measures.</p>","findings":[{"body":"June 2026 ZORI is $3,709, versus a $2,177 ACS median gross rent in the matched ZCTA. The comparison identifies different evidence universes, not two interchangeable market quotes. Zillow summarizes typical observed asking rents across rental types; ACS surveys occupied renter homes and includes selected utilities. HUD's bedroom-specific standard remains an administrative reference rather than asking rent.","title":"Asking index and survey rent are separate measures"},{"body":"The bedroom ladder supplies modelled monthly estimates from studio through four bedrooms by scaling ZIP ZORI with the local HUD ladder. It keeps bedroom comparisons internally consistent and anchors the two-bedroom result to the index. It does not measure listings, transaction rents, condition, included utilities, or lease terms, so it cannot verify the rent of a specific unit.","title":"Bedroom ladder is modelled, not observed"},{"body":"Renter-occupied homes are 83.2% of occupied homes, and 41.3% of the reported renter burden universe has gross-rent burden of at least 30%. The ZORI-based required-income screen is an annual arithmetic comparison with median household income. Neither metric is a tenant underwriting outcome or proof of affordability for a household, listing, or property.","title":"Income screen and burden describe different lenses"},{"body":"Vacancy is composition data, not a live availability feed. The ZCTA has a 20.3% vacancy rate, with reported units designated for rent, seasonal use, and sale among the supplied categories. These statistics cannot establish whether a named property is vacant, marketable, priced comparably, or available under particular lease and utility terms.","title":"Vacancy requires category-level reading"}],"risks":["ZORI's asking-rent blend and ACS's occupied-home gross-rent survey differ in timing, coverage, and utility treatment, making their numerical gap unsuitable as a unit-specific concession, valuation, or lease-price estimate.","The bedroom series is modelled from the ZIP index and HUD relative standards, so it may not match observed inventory, bedroom definitions, unit condition, included utilities, or lease structures.","The ZCTA vacancy percentage aggregates units in several statuses, including for-rent, seasonal, and for-sale categories, and it cannot establish contemporaneous availability, price, readiness, or comparability for a specific address.","A matching Census ZCTA is statistical rather than USPS delivery geography, while city, county, and metro figures are wider context; scope differences can make address-level extrapolation unreliable."],"qa":[{"a":"Zillow ZORI is a ZIP-level typical observed asking-rent index blended across rental types. ACS reports median gross rent in occupied renter homes in the matching ZCTA and includes selected utilities. The measures also have different time structures. Their gap describes separate measures and cannot identify a discount, current lease rent, or rent for an individual property.","q":"Why is the Zillow-to-ACS difference not a direct discount?"},{"a":"No. The model takes ZIP ZORI as its baseline and scales it through the local HUD ladder. This produces a consistent studio-through-four-bedroom hierarchy, with the two-bedroom value equal to the baseline by construction. Because the packet supplies neither listing observations nor transaction records by bedroom, these outputs are modelled estimates, never measured bedroom rents.","q":"Are the bedroom values observed rents?"},{"a":"The screen annualizes the current ZIP ZORI and divides it by the stated 30% share, yielding the supplied required-income amount. Comparing that arithmetic result with ACS median household income yields a ratio, but no applicant income, household composition, underwriting policy, utility obligation, or lease term is in the packet. It is not qualification guidance.","q":"What does the required-income screen mean?"},{"a":"The vacancy statistic describes ZCTA housing-unit status categories, and the city, county, and metro values provide wider context only. None identifies a live listing. For a particular property, check the advertised price, availability date, bedroom configuration, utilities, fees, lease terms, address, and applicable income definition before comparing it with area-level figures.","q":"How should vacancy and broader geographies 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":2729.409442},{"period":"2015-02-01","rent":2789.552638},{"period":"2015-03-01","rent":2831.963202},{"period":"2015-04-01","rent":2877.459707},{"period":"2015-05-01","rent":2898.491974},{"period":"2015-06-01","rent":2935.892872},{"period":"2015-07-01","rent":2987.779652},{"period":"2015-08-01","rent":2973.016182},{"period":"2015-09-01","rent":3011.487512},{"period":"2015-10-01","rent":3032.672301},{"period":"2015-11-01","rent":3047.080789},{"period":"2015-12-01","rent":3066.386649},{"period":"2016-01-01","rent":3083.746228},{"period":"2016-02-01","rent":3086.77755},{"period":"2016-03-01","rent":3029.858083},{"period":"2016-04-01","rent":3027.485083},{"period":"2016-05-01","rent":3019.255742},{"period":"2016-06-01","rent":3022.78623},{"period":"2016-07-01","rent":2968.072287},{"period":"2016-08-01","rent":2935.508122},{"period":"2016-09-01","rent":2909.616074},{"period":"2016-10-01","rent":2884.362381},{"period":"2016-11-01","rent":2889.771716},{"period":"2016-12-01","rent":2863.361571},{"period":"2017-01-01","rent":2876.442717},{"period":"2017-02-01","rent":2892.988265},{"period":"2017-03-01","rent":2955.357509},{"period":"2017-04-01","rent":2949.210473},{"period":"2017-05-01","rent":2930.727738},{"period":"2017-06-01","rent":2928.124058},{"period":"2017-07-01","rent":2956.315158},{"period":"2017-08-01","rent":2975.309904},{"period":"2017-09-01","rent":2974.050773},{"period":"2017-10-01","rent":2958.811286},{"period":"2017-11-01","rent":2951.347072},{"period":"2017-12-01","rent":2954.365756},{"period":"2018-01-01","rent":2958.289481},{"period":"2018-02-01","rent":2973.544656},{"period":"2018-03-01","rent":2977.441391},{"period":"2018-04-01","rent":3004.912579},{"period":"2018-05-01","rent":2999.029818},{"period":"2018-06-01","rent":2979.392745},{"period":"2018-07-01","rent":2971.348292},{"period":"2018-08-01","rent":2982.26122},{"period":"2018-09-01","rent":3006.738662},{"period":"2018-10-01","rent":3037.008892},{"period":"2018-11-01","rent":3055.613387},{"period":"2018-12-01","rent":3067.955524},{"period":"2019-01-01","rent":3065.650884},{"period":"2019-02-01","rent":3057.851363},{"period":"2019-03-01","rent":3045.038881},{"period":"2019-04-01","rent":3037.579476},{"period":"2019-05-01","rent":3063.41767},{"period":"2019-06-01","rent":3089.767069},{"period":"2019-07-01","rent":3102.704622},{"period":"2019-08-01","rent":3103.034917},{"period":"2019-09-01","rent":3099.002337},{"period":"2019-10-01","rent":3097.501528},{"period":"2019-11-01","rent":3094.592569},{"period":"2019-12-01","rent":3097.848518},{"period":"2020-01-01","rent":3103.66598},{"period":"2020-02-01","rent":3108.576431},{"period":"2020-03-01","rent":3081.915136},{"period":"2020-04-01","rent":3040.001299},{"period":"2020-05-01","rent":2982.189652},{"period":"2020-06-01","rent":2924.418715},{"period":"2020-07-01","rent":2859.302822},{"period":"2020-08-01","rent":2769.831332},{"period":"2020-09-01","rent":2692.927361},{"period":"2020-10-01","rent":2633.144084},{"period":"2020-11-01","rent":2606.61256},{"period":"2020-12-01","rent":2592.599149},{"period":"2021-01-01","rent":2562.893819},{"period":"2021-02-01","rent":2530.189044},{"period":"2021-03-01","rent":2512.493633},{"period":"2021-04-01","rent":2546.32358},{"period":"2021-05-01","rent":2581.546687},{"period":"2021-06-01","rent":2644.894938},{"period":"2021-07-01","rent":2666.23039},{"period":"2021-08-01","rent":2715.037496},{"period":"2021-09-01","rent":2722.404916},{"period":"2021-10-01","rent":2742.944796},{"period":"2021-11-01","rent":2762.075678},{"period":"2021-12-01","rent":2772.406041},{"period":"2022-01-01","rent":2790.406866},{"period":"2022-02-01","rent":2804.571113},{"period":"2022-03-01","rent":2832.023695},{"period":"2022-04-01","rent":2833.547974},{"period":"2022-05-01","rent":2841.825402},{"period":"2022-06-01","rent":2818.808217},{"period":"2022-07-01","rent":2836.699698},{"period":"2022-08-01","rent":2845.342416},{"period":"2022-09-01","rent":2879.317846},{"period":"2022-10-01","rent":2910.085322},{"period":"2022-11-01","rent":2911.553442},{"period":"2022-12-01","rent":2911.217117},{"period":"2023-01-01","rent":2891.695191},{"period":"2023-02-01","rent":2891.049192},{"period":"2023-03-01","rent":2882.056675},{"period":"2023-04-01","rent":2868.740669},{"period":"2023-05-01","rent":2857.783783},{"period":"2023-06-01","rent":2860.28263},{"period":"2023-07-01","rent":2850.975281},{"period":"2023-08-01","rent":2841.129287},{"period":"2023-09-01","rent":2835.31586},{"period":"2023-10-01","rent":2836.043903},{"period":"2023-11-01","rent":2834.274378},{"period":"2023-12-01","rent":2823.070041},{"period":"2024-01-01","rent":2826.186366},{"period":"2024-02-01","rent":2834.050802},{"period":"2024-03-01","rent":2849.425122},{"period":"2024-04-01","rent":2856.796473},{"period":"2024-05-01","rent":2836.926864},{"period":"2024-06-01","rent":2817.34899},{"period":"2024-07-01","rent":2807.444315},{"period":"2024-08-01","rent":2822.76533},{"period":"2024-09-01","rent":2833.412858},{"period":"2024-10-01","rent":2855.857617},{"period":"2024-11-01","rent":2878.332078},{"period":"2024-12-01","rent":2909.857961},{"period":"2025-01-01","rent":2937.080921},{"period":"2025-02-01","rent":2953.826111},{"period":"2025-03-01","rent":2968.492407},{"period":"2025-04-01","rent":2994.99918},{"period":"2025-05-01","rent":3021.651955},{"period":"2025-06-01","rent":3047.762063},{"period":"2025-07-01","rent":3092.134161},{"period":"2025-08-01","rent":3122.230521},{"period":"2025-09-01","rent":3155.541577},{"period":"2025-10-01","rent":3181.73579},{"period":"2025-11-01","rent":3221.204963},{"period":"2025-12-01","rent":3265.035212},{"period":"2026-01-01","rent":3315.412673},{"period":"2026-02-01","rent":3375.405515},{"period":"2026-03-01","rent":3442.210604},{"period":"2026-04-01","rent":3513.157761},{"period":"2026-05-01","rent":3607.13462},{"period":"2026-06-01","rent":3709.27991}],"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":3047.762063,"endRent":3709.27991,"change":0.21705035804168027,"cagr":0.21705035804168027},"3":{"years":3,"startPeriod":"2023-06-01","endPeriod":"2026-06-01","startRent":2860.28263,"endRent":3709.27991,"change":0.2968228632706831,"cagr":0.09050305407122439},"5":{"years":5,"startPeriod":"2021-06-01","endPeriod":"2026-06-01","startRent":2644.894938,"endRent":3709.27991,"change":0.4024299629855468,"cagr":0.06998142015348985}},"maxDrawdown":-0.19175426798441164,"annualizedVolatility":0.03569217412718751,"consecutiveReturnCount":137}}