{
  "city": "rennes",
  "generated_at": "2026-05-05T10:05:07.324141",
  "period": "2026-05",
  "total": {
    "count": 1054,
    "price": {
      "mean": 734,
      "median": 625,
      "p25": 494,
      "p75": 860,
      "min": 65,
      "max": 4990,
      "sample_size": 1054
    },
    "surface": {
      "mean": 39,
      "median": 29,
      "sample_size": 1054
    },
    "price_per_m2_median": 22.4
  },
  "by_type": {
    "appartement": {
      "count": 1022,
      "price": {
        "mean": 726,
        "median": 620,
        "p25": 495,
        "p75": 850,
        "min": 260,
        "max": 4990,
        "sample_size": 1022
      },
      "surface": {
        "mean": 38,
        "median": 29,
        "sample_size": 1022
      },
      "price_per_m2_median": 22.6
    },
    "maison": {
      "count": 17,
      "price": {
        "mean": 1432,
        "median": 1480,
        "p25": 1100,
        "p75": 2000,
        "min": 300,
        "max": 2400,
        "sample_size": 17
      },
      "surface": {
        "mean": 93,
        "median": 100,
        "sample_size": 17
      },
      "price_per_m2_median": 16.9
    }
  },
  "by_rooms": {
    "T1": {
      "count": 548,
      "price": {
        "mean": 534,
        "median": 518,
        "p25": 453,
        "p75": 600,
        "min": 70,
        "max": 999,
        "sample_size": 548
      },
      "surface": {
        "mean": 20,
        "median": 19,
        "sample_size": 548
      },
      "price_per_m2_median": 28.5
    },
    "T2": {
      "count": 205,
      "price": {
        "mean": 762,
        "median": 752,
        "p25": 650,
        "p75": 850,
        "min": 400,
        "max": 1454,
        "sample_size": 205
      },
      "surface": {
        "mean": 39,
        "median": 38,
        "sample_size": 205
      },
      "price_per_m2_median": 20.2
    },
    "T3": {
      "count": 153,
      "price": {
        "mean": 1037,
        "median": 1000,
        "p25": 870,
        "p75": 1180,
        "min": 480,
        "max": 1800,
        "sample_size": 153
      },
      "surface": {
        "mean": 62,
        "median": 60,
        "sample_size": 153
      },
      "price_per_m2_median": 16.9
    },
    "T4": {
      "count": 83,
      "price": {
        "mean": 1084,
        "median": 1150,
        "p25": 789,
        "p75": 1334,
        "min": 350,
        "max": 2665,
        "sample_size": 83
      },
      "surface": {
        "mean": 79,
        "median": 75,
        "sample_size": 83
      },
      "price_per_m2_median": 14.2
    },
    "T5": {
      "count": 29,
      "price": {
        "mean": 1477,
        "median": 1590,
        "p25": 500,
        "p75": 1890,
        "min": 260,
        "max": 4990,
        "sample_size": 29
      },
      "surface": {
        "mean": 97,
        "median": 93,
        "sample_size": 29
      },
      "price_per_m2_median": 17.3
    }
  },
  "by_furnished": {
    "meuble": {
      "count": 669,
      "price": {
        "mean": 702,
        "median": 620,
        "p25": 490,
        "p75": 820,
        "min": 100,
        "max": 2300,
        "sample_size": 669
      },
      "surface": {
        "mean": 36,
        "median": 26,
        "sample_size": 669
      },
      "price_per_m2_median": 24.7
    },
    "vide": {
      "count": 386,
      "price": {
        "mean": 790,
        "median": 641,
        "p25": 500,
        "p75": 916,
        "min": 65,
        "max": 4990,
        "sample_size": 386
      },
      "surface": {
        "mean": 44,
        "median": 33,
        "sample_size": 386
      },
      "price_per_m2_median": 19.4
    }
  },
  "by_quartier": {
    "Centre": {
      "count": 70,
      "price": {
        "mean": 807,
        "median": 800,
        "p25": 706,
        "p75": 881,
        "min": 495,
        "max": 1454,
        "sample_size": 70
      },
      "surface": {
        "mean": 39,
        "median": 37,
        "sample_size": 70
      },
      "price_per_m2_median": 21.1
    },
    "Thabor-Saint-Hélier-Alphonse Guérin": {
      "count": 33,
      "price": {
        "mean": 756,
        "median": 729,
        "p25": 688,
        "p75": 840,
        "min": 550,
        "max": 1100,
        "sample_size": 33
      },
      "surface": {
        "mean": 37,
        "median": 35,
        "sample_size": 33
      },
      "price_per_m2_median": 21.0
    },
    "Sud Gare": {
      "count": 14,
      "price": {
        "mean": 751,
        "median": 790,
        "p25": 682,
        "p75": 808,
        "min": 475,
        "max": 890,
        "sample_size": 14
      },
      "surface": {
        "mean": 41,
        "median": 40,
        "sample_size": 14
      },
      "price_per_m2_median": 19.1
    },
    "Villejean-Beauregard": {
      "count": 12,
      "price": {
        "mean": 687,
        "median": 704,
        "p25": 656,
        "p75": 762,
        "min": 400,
        "max": 820,
        "sample_size": 12
      },
      "surface": {
        "mean": 39,
        "median": 38,
        "sample_size": 12
      },
      "price_per_m2_median": 18.0
    },
    "Bourg l'Év. la Touche-Moulin du Cte": {
      "count": 11,
      "price": {
        "mean": 884,
        "median": 880,
        "p25": 775,
        "p75": 934,
        "min": 627,
        "max": 1250,
        "sample_size": 11
      },
      "surface": {
        "mean": 45,
        "median": 44,
        "sample_size": 11
      },
      "price_per_m2_median": 18.8
    },
    "Cleunay-Arsenal-Redon": {
      "count": 9,
      "price": {
        "mean": 852,
        "median": 860,
        "p25": 850,
        "p75": 950,
        "min": 620,
        "max": 1060,
        "sample_size": 9
      },
      "surface": {
        "mean": 48,
        "median": 46,
        "sample_size": 9
      },
      "price_per_m2_median": 18.8
    },
    "Saint-Martin": {
      "count": 7,
      "price": {
        "mean": 726,
        "median": 700,
        "p25": 652,
        "p75": 800,
        "min": 551,
        "max": 925,
        "sample_size": 7
      },
      "surface": {
        "mean": 35,
        "median": 32,
        "sample_size": 7
      },
      "price_per_m2_median": 19.3
    }
  },
  "by_quartier_type": "T2",
  "distribution": [
    {
      "min": 300,
      "max": 400,
      "count": 58,
      "pct": 5.4
    },
    {
      "min": 400,
      "max": 500,
      "count": 221,
      "pct": 20.7
    },
    {
      "min": 500,
      "max": 600,
      "count": 199,
      "pct": 18.6
    },
    {
      "min": 600,
      "max": 700,
      "count": 151,
      "pct": 14.1
    },
    {
      "min": 700,
      "max": 800,
      "count": 113,
      "pct": 10.6
    },
    {
      "min": 800,
      "max": 900,
      "count": 84,
      "pct": 7.9
    },
    {
      "min": 900,
      "max": 1000,
      "count": 62,
      "pct": 5.8
    },
    {
      "min": 1000,
      "max": 1100,
      "count": 42,
      "pct": 3.9
    },
    {
      "min": 1100,
      "max": 1200,
      "count": 24,
      "pct": 2.2
    },
    {
      "min": 1200,
      "max": 1300,
      "count": 29,
      "pct": 2.7
    },
    {
      "min": 1300,
      "max": 1400,
      "count": 23,
      "pct": 2.2
    },
    {
      "min": 1400,
      "max": 1500,
      "count": 12,
      "pct": 1.1
    }
  ],
  "by_landlord_type": {
    "pro": {
      "count": 571,
      "price": {
        "mean": 737,
        "median": 616,
        "p25": 486,
        "p75": 850,
        "min": 70,
        "max": 4990,
        "sample_size": 571
      },
      "surface": {
        "mean": 37,
        "median": 26,
        "sample_size": 571
      },
      "price_per_m2_median": 22.9
    },
    "particulier": {
      "count": 492,
      "price": {
        "mean": 726,
        "median": 640,
        "p25": 500,
        "p75": 860,
        "min": 65,
        "max": 2500,
        "sample_size": 492
      },
      "surface": {
        "mean": 40,
        "median": 30,
        "sample_size": 492
      },
      "price_per_m2_median": 22.0
    },
    "diff_pct": -3.8
  },
  "evolution": {
    "previous_period": null,
    "previous_generated_at": "2026-04-01T00:00:00",
    "count_delta": 694,
    "median_delta_eur": -25,
    "median_delta_pct": -3.8,
    "price_per_m2_delta_eur": 1.4,
    "price_per_m2_delta_pct": 6.7
  }
}