{
  "name": "South Florida Investor Market Index",
  "computed_at": "2026-09-22T21:02:02.445Z",
  "source": "BeachesMLS via the Spark API",
  "method": "Medians per square foot: closings of the previous 90 days for sale, active residential leases for rent, each segment measured on its own. No yield or capitalization rate is derived, because the homes that sell and the homes that rent in a city are often different stock. Seasonal, weekly and one-time lease quotes excluded. Not an appraisal.",
  "cities": [
    {
      "page": "PompanoBeach",
      "name": "Pompano Beach",
      "county": "Broward",
      "condos_sale_per_sqft": 238,
      "condos_rent_per_sqft": 2.38,
      "houses_sale_per_sqft": 373,
      "houses_rent_per_sqft": 2.6,
      "avg_days_to_lease": 90,
      "avg_days_to_sell": 102,
      "rent_yoy_change_pct": 0,
      "months_of_inventory": 10.2,
      "sold_90d_count": 391,
      "leased_90d_count": 405,
      "sampled": false
    },
    {
      "page": "FortLauderdale",
      "name": "Fort Lauderdale",
      "county": "Broward",
      "condos_sale_per_sqft": 382,
      "condos_rent_per_sqft": 2.77,
      "houses_sale_per_sqft": 435,
      "houses_rent_per_sqft": 2.88,
      "avg_days_to_lease": 80,
      "avg_days_to_sell": 112,
      "rent_yoy_change_pct": -2.1,
      "months_of_inventory": 11.5,
      "sold_90d_count": 763,
      "leased_90d_count": 1035,
      "sampled": false
    },
    {
      "page": "Hollywood",
      "name": "Hollywood",
      "county": "Broward",
      "condos_sale_per_sqft": 250,
      "condos_rent_per_sqft": 2.9,
      "houses_sale_per_sqft": 391,
      "houses_rent_per_sqft": 2.66,
      "avg_days_to_lease": 233,
      "avg_days_to_sell": 99,
      "rent_yoy_change_pct": -3.8,
      "months_of_inventory": 13.7,
      "sold_90d_count": 486,
      "leased_90d_count": 729,
      "sampled": false
    },
    {
      "page": "Davie",
      "name": "Davie",
      "county": "Broward",
      "condos_sale_per_sqft": 222,
      "condos_rent_per_sqft": 2.11,
      "houses_sale_per_sqft": 396,
      "houses_rent_per_sqft": 2.21,
      "avg_days_to_lease": 65,
      "avg_days_to_sell": 57,
      "rent_yoy_change_pct": -6.9,
      "months_of_inventory": 6.7,
      "sold_90d_count": 256,
      "leased_90d_count": 268,
      "sampled": false
    },
    {
      "page": "Plantation",
      "name": "Plantation",
      "county": "Broward",
      "condos_sale_per_sqft": 226,
      "condos_rent_per_sqft": 2.16,
      "houses_sale_per_sqft": 335,
      "houses_rent_per_sqft": 2.29,
      "avg_days_to_lease": 52,
      "avg_days_to_sell": 78,
      "rent_yoy_change_pct": -4.9,
      "months_of_inventory": 7.3,
      "sold_90d_count": 270,
      "leased_90d_count": 204,
      "sampled": false
    },
    {
      "page": "Weston",
      "name": "Weston",
      "county": "Broward",
      "condos_sale_per_sqft": 295,
      "condos_rent_per_sqft": 2.17,
      "houses_sale_per_sqft": 416,
      "houses_rent_per_sqft": 2.47,
      "avg_days_to_lease": 53,
      "avg_days_to_sell": 65,
      "rent_yoy_change_pct": 3.7,
      "months_of_inventory": 4.2,
      "sold_90d_count": 173,
      "leased_90d_count": 294,
      "sampled": false
    },
    {
      "page": "BocaRaton",
      "name": "Boca Raton",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 279,
      "condos_rent_per_sqft": 2.45,
      "houses_sale_per_sqft": 456,
      "houses_rent_per_sqft": 2.87,
      "avg_days_to_lease": 73,
      "avg_days_to_sell": 73,
      "rent_yoy_change_pct": 4.5,
      "months_of_inventory": 6.2,
      "sold_90d_count": 980,
      "leased_90d_count": 827,
      "sampled": true
    },
    {
      "page": "DelrayBeach",
      "name": "Delray Beach",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 183,
      "condos_rent_per_sqft": 2.22,
      "houses_sale_per_sqft": 400,
      "houses_rent_per_sqft": 2.99,
      "avg_days_to_lease": 85,
      "avg_days_to_sell": 85,
      "rent_yoy_change_pct": 4.5,
      "months_of_inventory": 7,
      "sold_90d_count": 588,
      "leased_90d_count": 434,
      "sampled": false
    },
    {
      "page": "WestPalmBeach",
      "name": "West Palm Beach",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 205,
      "condos_rent_per_sqft": 2.27,
      "houses_sale_per_sqft": 334,
      "houses_rent_per_sqft": 2.29,
      "avg_days_to_lease": 72,
      "avg_days_to_sell": 93,
      "rent_yoy_change_pct": 0.7,
      "months_of_inventory": 8.1,
      "sold_90d_count": 685,
      "leased_90d_count": 961,
      "sampled": false
    },
    {
      "page": "BoyntonBeach",
      "name": "Boynton Beach",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 193,
      "condos_rent_per_sqft": 2.26,
      "houses_sale_per_sqft": 284,
      "houses_rent_per_sqft": 2.17,
      "avg_days_to_lease": 81,
      "avg_days_to_sell": 87,
      "rent_yoy_change_pct": 1.8,
      "months_of_inventory": 7.3,
      "sold_90d_count": 687,
      "leased_90d_count": 357,
      "sampled": false
    },
    {
      "page": "Jupiter",
      "name": "Jupiter",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 339,
      "condos_rent_per_sqft": 3.5,
      "houses_sale_per_sqft": 474,
      "houses_rent_per_sqft": 2.82,
      "avg_days_to_lease": 123,
      "avg_days_to_sell": 77,
      "rent_yoy_change_pct": 0,
      "months_of_inventory": 4.4,
      "sold_90d_count": 424,
      "leased_90d_count": 276,
      "sampled": false
    },
    {
      "page": "Wellington",
      "name": "Wellington",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 268,
      "condos_rent_per_sqft": 2.99,
      "houses_sale_per_sqft": 316,
      "houses_rent_per_sqft": 2.72,
      "avg_days_to_lease": 89,
      "avg_days_to_sell": 67,
      "rent_yoy_change_pct": -0.7,
      "months_of_inventory": 5.1,
      "sold_90d_count": 206,
      "leased_90d_count": 193,
      "sampled": false
    },
    {
      "page": "PalmBeachGardens",
      "name": "Palm Beach Gardens",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 284,
      "condos_rent_per_sqft": 2.55,
      "houses_sale_per_sqft": 428,
      "houses_rent_per_sqft": 2.64,
      "avg_days_to_lease": 104,
      "avg_days_to_sell": 74,
      "rent_yoy_change_pct": 7.5,
      "months_of_inventory": 3.4,
      "sold_90d_count": 429,
      "leased_90d_count": 246,
      "sampled": true
    },
    {
      "page": "DeerfieldBeach",
      "name": "Deerfield Beach",
      "county": "Broward",
      "condos_sale_per_sqft": 194,
      "condos_rent_per_sqft": 2.42,
      "houses_sale_per_sqft": 315,
      "houses_rent_per_sqft": 2.25,
      "avg_days_to_lease": 58,
      "avg_days_to_sell": 109,
      "rent_yoy_change_pct": 2.4,
      "months_of_inventory": 8.4,
      "sold_90d_count": 312,
      "leased_90d_count": 233,
      "sampled": false
    },
    {
      "page": "LighthousePoint",
      "name": "Lighthouse Point",
      "county": "Broward",
      "condos_sale_per_sqft": 183,
      "condos_rent_per_sqft": 2.41,
      "houses_sale_per_sqft": 652,
      "houses_rent_per_sqft": 2.94,
      "avg_days_to_lease": 78,
      "avg_days_to_sell": 85,
      "rent_yoy_change_pct": 36.2,
      "months_of_inventory": 4.4,
      "sold_90d_count": 77,
      "leased_90d_count": 44,
      "sampled": false
    },
    {
      "page": "LauderdaleByTheSea",
      "name": "Lauderdale-by-the-Sea",
      "county": "Broward",
      "condos_sale_per_sqft": 398,
      "condos_rent_per_sqft": 3.34,
      "houses_sale_per_sqft": 486,
      "houses_rent_per_sqft": 3.89,
      "avg_days_to_lease": 95,
      "avg_days_to_sell": 140,
      "rent_yoy_change_pct": 8.7,
      "months_of_inventory": 9.9,
      "sold_90d_count": 37,
      "leased_90d_count": 41,
      "sampled": false
    },
    {
      "page": "OaklandPark",
      "name": "Oakland Park",
      "county": "Broward",
      "condos_sale_per_sqft": 201,
      "condos_rent_per_sqft": 2.17,
      "houses_sale_per_sqft": 396,
      "houses_rent_per_sqft": 2.45,
      "avg_days_to_lease": 55,
      "avg_days_to_sell": 102,
      "rent_yoy_change_pct": -2.7,
      "months_of_inventory": 9.5,
      "sold_90d_count": 142,
      "leased_90d_count": 190,
      "sampled": false
    },
    {
      "page": "CoralSprings",
      "name": "Coral Springs",
      "county": "Broward",
      "condos_sale_per_sqft": 221,
      "condos_rent_per_sqft": 2.11,
      "houses_sale_per_sqft": 318,
      "houses_rent_per_sqft": 2.12,
      "avg_days_to_lease": 53,
      "avg_days_to_sell": 74,
      "rent_yoy_change_pct": 0,
      "months_of_inventory": 11.2,
      "sold_90d_count": 314,
      "leased_90d_count": 385,
      "sampled": false
    },
    {
      "page": "Parkland",
      "name": "Parkland",
      "county": "Broward",
      "condos_sale_per_sqft": 324,
      "condos_rent_per_sqft": 2.87,
      "houses_sale_per_sqft": 379,
      "houses_rent_per_sqft": 2.5,
      "avg_days_to_lease": 42,
      "avg_days_to_sell": 41,
      "rent_yoy_change_pct": 12.1,
      "months_of_inventory": 2.5,
      "sold_90d_count": 189,
      "leased_90d_count": 71,
      "sampled": false
    },
    {
      "page": "PembrokePines",
      "name": "Pembroke Pines",
      "county": "Broward",
      "condos_sale_per_sqft": 190,
      "condos_rent_per_sqft": 2.09,
      "houses_sale_per_sqft": 341,
      "houses_rent_per_sqft": 2.21,
      "avg_days_to_lease": 76,
      "avg_days_to_sell": 90,
      "rent_yoy_change_pct": -2.4,
      "months_of_inventory": 8,
      "sold_90d_count": 439,
      "leased_90d_count": 447,
      "sampled": false
    },
    {
      "page": "TownOfPalmBeach",
      "name": "Palm Beach",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 1079,
      "condos_rent_per_sqft": 6.88,
      "houses_sale_per_sqft": 3248,
      "houses_rent_per_sqft": 12.85,
      "avg_days_to_lease": 112,
      "avg_days_to_sell": 131,
      "rent_yoy_change_pct": 12.5,
      "months_of_inventory": 7.8,
      "sold_90d_count": 76,
      "leased_90d_count": 37,
      "sampled": false
    },
    {
      "page": "LakeWorthBeach",
      "name": "Lake Worth Beach",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 168,
      "condos_rent_per_sqft": 2.48,
      "houses_sale_per_sqft": 394,
      "houses_rent_per_sqft": 2.69,
      "avg_days_to_lease": 64,
      "avg_days_to_sell": 57,
      "rent_yoy_change_pct": 4.6,
      "months_of_inventory": 4.4,
      "sold_90d_count": 84,
      "leased_90d_count": 142,
      "sampled": false
    },
    {
      "page": "NorthPalmBeach",
      "name": "North Palm Beach",
      "county": "Palm Beach",
      "condos_sale_per_sqft": 294,
      "condos_rent_per_sqft": 2.56,
      "houses_sale_per_sqft": 741,
      "houses_rent_per_sqft": 3.38,
      "avg_days_to_lease": 90,
      "avg_days_to_sell": 96,
      "rent_yoy_change_pct": -17.2,
      "months_of_inventory": 11,
      "sold_90d_count": 77,
      "leased_90d_count": 52,
      "sampled": false
    },
    {
      "page": "Miami",
      "name": "Miami",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 360,
      "condos_rent_per_sqft": 3.7,
      "houses_sale_per_sqft": 415,
      "houses_rent_per_sqft": 2.35,
      "avg_days_to_lease": 145,
      "avg_days_to_sell": 96,
      "rent_yoy_change_pct": -6.9,
      "months_of_inventory": 13,
      "sold_90d_count": 2357,
      "leased_90d_count": 5544,
      "sampled": true
    },
    {
      "page": "MiamiBeach",
      "name": "Miami Beach",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 552,
      "condos_rent_per_sqft": 4.48,
      "houses_sale_per_sqft": 1129,
      "houses_rent_per_sqft": 4.86,
      "avg_days_to_lease": 219,
      "avg_days_to_sell": 110,
      "rent_yoy_change_pct": 3.8,
      "months_of_inventory": 14,
      "sold_90d_count": 402,
      "leased_90d_count": 1052,
      "sampled": false
    },
    {
      "page": "Brickell",
      "name": "Brickell",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 584,
      "condos_rent_per_sqft": 4.38,
      "houses_sale_per_sqft": 857,
      "houses_rent_per_sqft": 3.35,
      "avg_days_to_lease": 76,
      "avg_days_to_sell": 124,
      "rent_yoy_change_pct": -1.4,
      "months_of_inventory": 19.5,
      "sold_90d_count": 213,
      "leased_90d_count": 1206,
      "sampled": false
    },
    {
      "page": "CoconutGrove",
      "name": "Coconut Grove",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 968,
      "condos_rent_per_sqft": 7.38,
      "houses_sale_per_sqft": 1149,
      "houses_rent_per_sqft": 4.41,
      "avg_days_to_lease": 62,
      "avg_days_to_sell": 118,
      "rent_yoy_change_pct": 50.8,
      "months_of_inventory": 11.1,
      "sold_90d_count": 16,
      "leased_90d_count": 26,
      "sampled": false
    },
    {
      "page": "CoralGables",
      "name": "Coral Gables",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 539,
      "condos_rent_per_sqft": 3.46,
      "houses_sale_per_sqft": 952,
      "houses_rent_per_sqft": 4.44,
      "avg_days_to_lease": 72,
      "avg_days_to_sell": 72,
      "rent_yoy_change_pct": 6,
      "months_of_inventory": 5.6,
      "sold_90d_count": 137,
      "leased_90d_count": 326,
      "sampled": false
    },
    {
      "page": "Aventura",
      "name": "Aventura",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 321,
      "condos_rent_per_sqft": 2.76,
      "houses_sale_per_sqft": 642,
      "houses_rent_per_sqft": 2.93,
      "avg_days_to_lease": 122,
      "avg_days_to_sell": 120,
      "rent_yoy_change_pct": 3.6,
      "months_of_inventory": 17.6,
      "sold_90d_count": 198,
      "leased_90d_count": 328,
      "sampled": false
    },
    {
      "page": "SunnyIslesBeach",
      "name": "Sunny Isles Beach",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 438,
      "condos_rent_per_sqft": 3.99,
      "houses_sale_per_sqft": 1131,
      "houses_rent_per_sqft": 5.23,
      "avg_days_to_lease": 188,
      "avg_days_to_sell": 136,
      "rent_yoy_change_pct": -16.4,
      "months_of_inventory": 20.7,
      "sold_90d_count": 154,
      "leased_90d_count": 257,
      "sampled": false
    },
    {
      "page": "BalHarbour",
      "name": "Bal Harbour",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 1054,
      "condos_rent_per_sqft": 6.06,
      "houses_sale_per_sqft": 3553,
      "houses_rent_per_sqft": 6.94,
      "avg_days_to_lease": 204,
      "avg_days_to_sell": 92,
      "rent_yoy_change_pct": -8,
      "months_of_inventory": 15.1,
      "sold_90d_count": 24,
      "leased_90d_count": 42,
      "sampled": false
    },
    {
      "page": "KeyBiscayne",
      "name": "Key Biscayne",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 849,
      "condos_rent_per_sqft": 5.34,
      "houses_sale_per_sqft": 1973,
      "houses_rent_per_sqft": 6.33,
      "avg_days_to_lease": 135,
      "avg_days_to_sell": 79,
      "rent_yoy_change_pct": 8.2,
      "months_of_inventory": 6.2,
      "sold_90d_count": 65,
      "leased_90d_count": 116,
      "sampled": false
    },
    {
      "page": "Pinecrest",
      "name": "Pinecrest",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 432,
      "condos_rent_per_sqft": 2.55,
      "houses_sale_per_sqft": 824,
      "houses_rent_per_sqft": 3.91,
      "avg_days_to_lease": 99,
      "avg_days_to_sell": 85,
      "rent_yoy_change_pct": -2.4,
      "months_of_inventory": 5.2,
      "sold_90d_count": 72,
      "leased_90d_count": 48,
      "sampled": false
    },
    {
      "page": "Doral",
      "name": "Doral",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 345,
      "condos_rent_per_sqft": 2.6,
      "houses_sale_per_sqft": 426,
      "houses_rent_per_sqft": 2.32,
      "avg_days_to_lease": 62,
      "avg_days_to_sell": 95,
      "rent_yoy_change_pct": 0,
      "months_of_inventory": 7.8,
      "sold_90d_count": 188,
      "leased_90d_count": 469,
      "sampled": false
    },
    {
      "page": "SouthMiami",
      "name": "South Miami",
      "county": "Miami-Dade",
      "condos_sale_per_sqft": 401,
      "condos_rent_per_sqft": 3.76,
      "houses_sale_per_sqft": 725,
      "houses_rent_per_sqft": 3.3,
      "avg_days_to_lease": 116,
      "avg_days_to_sell": 75,
      "rent_yoy_change_pct": 0,
      "months_of_inventory": 5.1,
      "sold_90d_count": 22,
      "leased_90d_count": 72,
      "sampled": false
    },
    {
      "page": "Stuart",
      "name": "Stuart",
      "county": "Martin",
      "condos_sale_per_sqft": 196,
      "condos_rent_per_sqft": 2.41,
      "houses_sale_per_sqft": 314,
      "houses_rent_per_sqft": 2.09,
      "avg_days_to_lease": 218,
      "avg_days_to_sell": 101,
      "rent_yoy_change_pct": -3.9,
      "months_of_inventory": 7.6,
      "sold_90d_count": 302,
      "leased_90d_count": 110,
      "sampled": false
    },
    {
      "page": "PalmCity",
      "name": "Palm City",
      "county": "Martin",
      "condos_sale_per_sqft": 200,
      "condos_rent_per_sqft": 5.25,
      "houses_sale_per_sqft": 302,
      "houses_rent_per_sqft": 2.04,
      "avg_days_to_lease": 81,
      "avg_days_to_sell": 64,
      "rent_yoy_change_pct": 12.4,
      "months_of_inventory": 4.5,
      "sold_90d_count": 160,
      "leased_90d_count": 39,
      "sampled": false
    },
    {
      "page": "JensenBeach",
      "name": "Jensen Beach",
      "county": "Martin",
      "condos_sale_per_sqft": 359,
      "condos_rent_per_sqft": 2.85,
      "houses_sale_per_sqft": 317,
      "houses_rent_per_sqft": 2.02,
      "avg_days_to_lease": 277,
      "avg_days_to_sell": 121,
      "rent_yoy_change_pct": 5.9,
      "months_of_inventory": 9.3,
      "sold_90d_count": 101,
      "leased_90d_count": 64,
      "sampled": false
    },
    {
      "page": "HobeSound",
      "name": "Hobe Sound",
      "county": "Martin",
      "condos_sale_per_sqft": 202,
      "condos_rent_per_sqft": 1.97,
      "houses_sale_per_sqft": 310,
      "houses_rent_per_sqft": 2.44,
      "avg_days_to_lease": 92,
      "avg_days_to_sell": 72,
      "rent_yoy_change_pct": -9.7,
      "months_of_inventory": 3.4,
      "sold_90d_count": 68,
      "leased_90d_count": 25,
      "sampled": false
    },
    {
      "page": "PortStLucie",
      "name": "Port St. Lucie",
      "county": "St. Lucie",
      "condos_sale_per_sqft": 188,
      "condos_rent_per_sqft": 1.9,
      "houses_sale_per_sqft": 223,
      "houses_rent_per_sqft": 1.63,
      "avg_days_to_lease": 66,
      "avg_days_to_sell": 73,
      "rent_yoy_change_pct": 1.9,
      "months_of_inventory": 4.6,
      "sold_90d_count": 1150,
      "leased_90d_count": 446,
      "sampled": false
    },
    {
      "page": "FortPierce",
      "name": "Fort Pierce",
      "county": "St. Lucie",
      "condos_sale_per_sqft": 192,
      "condos_rent_per_sqft": 2.09,
      "houses_sale_per_sqft": 201,
      "houses_rent_per_sqft": 1.67,
      "avg_days_to_lease": 75,
      "avg_days_to_sell": 79,
      "rent_yoy_change_pct": 3.4,
      "months_of_inventory": 7.5,
      "sold_90d_count": 295,
      "leased_90d_count": 157,
      "sampled": false
    },
    {
      "page": "HutchinsonIsland",
      "name": "Hutchinson Island",
      "county": "St. Lucie",
      "condos_sale_per_sqft": 266,
      "condos_rent_per_sqft": 2.67,
      "houses_sale_per_sqft": 478,
      "houses_rent_per_sqft": 2.27,
      "avg_days_to_lease": 201,
      "avg_days_to_sell": 154,
      "rent_yoy_change_pct": -31,
      "months_of_inventory": 9.8,
      "sold_90d_count": 20,
      "leased_90d_count": 5,
      "sampled": false
    },
    {
      "page": "VeroBeach",
      "name": "Vero Beach",
      "county": "Indian River",
      "condos_sale_per_sqft": 144,
      "condos_rent_per_sqft": 1.81,
      "houses_sale_per_sqft": 232,
      "houses_rent_per_sqft": 1.8,
      "avg_days_to_lease": 67,
      "avg_days_to_sell": 76,
      "rent_yoy_change_pct": 3.2,
      "months_of_inventory": 5.5,
      "sold_90d_count": 224,
      "leased_90d_count": 75,
      "sampled": false
    },
    {
      "page": "Sebastian",
      "name": "Sebastian",
      "county": "Indian River",
      "condos_sale_per_sqft": 151,
      "condos_rent_per_sqft": 2.08,
      "houses_sale_per_sqft": 232,
      "houses_rent_per_sqft": 1.62,
      "avg_days_to_lease": 53,
      "avg_days_to_sell": 70,
      "rent_yoy_change_pct": -11.2,
      "months_of_inventory": 3.5,
      "sold_90d_count": 34,
      "leased_90d_count": 12,
      "sampled": false
    }
  ]
}
