{
  "generated_at": "2026-11-09T18:12:58.995Z",
  "flood_events": {
    "test": "River flood score vs Copernicus EMS satellite flood footprints",
    "run_at": "2026-11-09T17:46:41.637Z",
    "points_per_class_per_area": 250,
    "definitions": {
      "hit_rate_in_zone": "Share of really flooded points that score 20+ (inside the mapped 1-in-500-year river flood zone).",
      "hit_rate_in_or_near_zone": "Share of flooded points scoring 10+ (in the zone, or a 1-in-100-year flood within ~200 m).",
      "hit_rate_100yr": "Share of flooded points scoring 40+ (inside the 1-in-100-year zone).",
      "dry_flagged_in_zone": "Share of points in the same mapped area that stayed dry this time but score 20+. One flood rarely fills the whole hazard zone, so this is an upper bound on false alarms.",
      "auc": "Chance that a random flooded point scores higher than a random dry point (0.5 = coin flip, 1.0 = perfect)."
    },
    "summary": [
      {
        "group": "all",
        "events": 19,
        "areas": 35,
        "flooded_points": 8750,
        "dry_points": 8750,
        "hit_rate_in_zone_pct": 66.9,
        "hit_rate_in_zone_ci95": [
          65.9,
          67.9
        ],
        "hit_rate_in_or_near_zone_pct": 78.5,
        "hit_rate_100yr_pct": 63.3,
        "dry_flagged_in_zone_pct": 26.1,
        "dry_flagged_100yr_pct": 24.4,
        "auc": 0.744
      },
      {
        "group": "riverine",
        "events": 18,
        "areas": 31,
        "flooded_points": 7750,
        "dry_points": 7750,
        "hit_rate_in_zone_pct": 68.8,
        "hit_rate_in_zone_ci95": [
          67.8,
          69.8
        ],
        "hit_rate_in_or_near_zone_pct": 79.8,
        "hit_rate_100yr_pct": 65.3,
        "dry_flagged_in_zone_pct": 29,
        "dry_flagged_100yr_pct": 27.1,
        "auc": 0.741
      },
      {
        "group": "flash",
        "events": 3,
        "areas": 4,
        "flooded_points": 1000,
        "dry_points": 1000,
        "hit_rate_in_zone_pct": 52.4,
        "hit_rate_in_zone_ci95": [
          49.3,
          55.5
        ],
        "hit_rate_in_or_near_zone_pct": 68.6,
        "hit_rate_100yr_pct": 47.7,
        "dry_flagged_in_zone_pct": 3.9,
        "dry_flagged_100yr_pct": 3.6,
        "auc": 0.807
      }
    ],
    "areas": [
      {
        "code": "EMSR659",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR659/AOI01/DEL_PRODUCT/EMSR659_AOI01_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 13.2,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 131,
        "wet_hit_in_or_near_zone": 162,
        "wet_hit_100yr": 122,
        "dry_flagged_in_zone": 108,
        "dry_flagged_100yr": 105
      },
      {
        "code": "EMSR659",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR659/AOI02/DEL_PRODUCT/EMSR659_AOI02_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 0.2,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 1,
        "wet_hit_in_or_near_zone": 187,
        "wet_hit_100yr": 1,
        "dry_flagged_in_zone": 51,
        "dry_flagged_100yr": 48
      },
      {
        "code": "EMSR663",
        "aoi": "AOI01",
        "product": "GRA_PRODUCT_v3",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR663/AOI01/GRA_PRODUCT/EMSR663_AOI01_GRA_PRODUCT_v3.zip",
        "flood_type": "riverine",
        "flooded_km2": 42.1,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 174,
        "wet_hit_in_or_near_zone": 221,
        "wet_hit_100yr": 158,
        "dry_flagged_in_zone": 50,
        "dry_flagged_100yr": 45
      },
      {
        "code": "EMSR680",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR680/AOI01/DEL_PRODUCT/EMSR680_AOI01_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 2.1,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 76,
        "wet_hit_in_or_near_zone": 108,
        "wet_hit_100yr": 72,
        "dry_flagged_in_zone": 7,
        "dry_flagged_100yr": 6
      },
      {
        "code": "EMSR680",
        "aoi": "AOI03",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR680/AOI03/DEL_PRODUCT/EMSR680_AOI03_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 0.3,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 18,
        "wet_hit_in_or_near_zone": 37,
        "wet_hit_100yr": 18,
        "dry_flagged_in_zone": 11,
        "dry_flagged_100yr": 9
      },
      {
        "code": "EMSR692",
        "aoi": "AOI01",
        "product": "DEL_MONIT01_v3",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR692/AOI01/DEL_MONIT01/EMSR692_AOI01_DEL_MONIT01_v3.zip",
        "flood_type": "riverine",
        "flooded_km2": 153.4,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 88,
        "wet_hit_in_or_near_zone": 110,
        "wet_hit_100yr": 80,
        "dry_flagged_in_zone": 29,
        "dry_flagged_100yr": 27
      },
      {
        "code": "EMSR692",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR692/AOI02/DEL_PRODUCT/EMSR692_AOI02_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 133.3,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 223,
        "wet_hit_in_or_near_zone": 243,
        "wet_hit_100yr": 216,
        "dry_flagged_in_zone": 36,
        "dry_flagged_100yr": 30
      },
      {
        "code": "EMSR696",
        "aoi": "AOI01",
        "product": "GRA_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR696/AOI01/GRA_PRODUCT/EMSR696_AOI01_GRA_PRODUCT_v1.zip",
        "flood_type": "flash",
        "flooded_km2": 0.2,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 127,
        "wet_hit_in_or_near_zone": 188,
        "wet_hit_100yr": 98,
        "dry_flagged_in_zone": 6,
        "dry_flagged_100yr": 5
      },
      {
        "code": "EMSR696",
        "aoi": "AOI02",
        "product": "GRA_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR696/AOI02/GRA_PRODUCT/EMSR696_AOI02_GRA_PRODUCT_v2.zip",
        "flood_type": "flash",
        "flooded_km2": 0.7,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 2,
        "wet_hit_in_or_near_zone": 38,
        "wet_hit_100yr": 2,
        "dry_flagged_in_zone": 6,
        "dry_flagged_100yr": 6
      },
      {
        "code": "EMSR697",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v3",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR697/AOI01/DEL_PRODUCT/EMSR697_AOI01_DEL_PRODUCT_v3.zip",
        "flood_type": "flash",
        "flooded_km2": 9.7,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 173,
        "wet_hit_in_or_near_zone": 221,
        "wet_hit_100yr": 162,
        "dry_flagged_in_zone": 15,
        "dry_flagged_100yr": 13
      },
      {
        "code": "EMSR697",
        "aoi": "AOI04",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR697/AOI04/DEL_PRODUCT/EMSR697_AOI04_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 1.2,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 5,
        "wet_hit_in_or_near_zone": 16,
        "wet_hit_100yr": 5,
        "dry_flagged_in_zone": 0,
        "dry_flagged_100yr": 0
      },
      {
        "code": "EMSR720",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR720/AOI01/DEL_PRODUCT/EMSR720_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 0.3,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 236,
        "wet_hit_in_or_near_zone": 250,
        "wet_hit_100yr": 220,
        "dry_flagged_in_zone": 72,
        "dry_flagged_100yr": 67
      },
      {
        "code": "EMSR720",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR720/AOI02/DEL_PRODUCT/EMSR720_AOI02_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 1.6,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 189,
        "wet_hit_in_or_near_zone": 233,
        "wet_hit_100yr": 142,
        "dry_flagged_in_zone": 57,
        "dry_flagged_100yr": 46
      },
      {
        "code": "EMSR728",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR728/AOI01/DEL_PRODUCT/EMSR728_AOI01_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 0.1,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 250,
        "wet_hit_in_or_near_zone": 250,
        "wet_hit_100yr": 250,
        "dry_flagged_in_zone": 11,
        "dry_flagged_100yr": 11
      },
      {
        "code": "EMSR728",
        "aoi": "AOI03",
        "product": "DEL_MONIT01_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR728/AOI03/DEL_MONIT01/EMSR728_AOI03_DEL_MONIT01_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 11.6,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 237,
        "wet_hit_in_or_near_zone": 247,
        "wet_hit_100yr": 234,
        "dry_flagged_in_zone": 65,
        "dry_flagged_100yr": 62
      },
      {
        "code": "EMSR753",
        "aoi": "AOI01",
        "product": "GRA_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR753/AOI01/GRA_PRODUCT/EMSR753_AOI01_GRA_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 16.7,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 175,
        "wet_hit_in_or_near_zone": 240,
        "wet_hit_100yr": 144,
        "dry_flagged_in_zone": 29,
        "dry_flagged_100yr": 15
      },
      {
        "code": "EMSR763",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR763/AOI01/DEL_PRODUCT/EMSR763_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 15.4,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 194,
        "wet_hit_in_or_near_zone": 234,
        "wet_hit_100yr": 180,
        "dry_flagged_in_zone": 175,
        "dry_flagged_100yr": 166
      },
      {
        "code": "EMSR768",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR768/AOI01/DEL_PRODUCT/EMSR768_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 7.9,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 243,
        "wet_hit_in_or_near_zone": 249,
        "wet_hit_100yr": 239,
        "dry_flagged_in_zone": 109,
        "dry_flagged_100yr": 106
      },
      {
        "code": "EMSR768",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR768/AOI02/DEL_PRODUCT/EMSR768_AOI02_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 8.8,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 231,
        "wet_hit_in_or_near_zone": 237,
        "wet_hit_100yr": 230,
        "dry_flagged_in_zone": 30,
        "dry_flagged_100yr": 27
      },
      {
        "code": "EMSR771",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR771/AOI01/DEL_PRODUCT/EMSR771_AOI01_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 29.9,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 93,
        "wet_hit_in_or_near_zone": 130,
        "wet_hit_100yr": 87,
        "dry_flagged_in_zone": 37,
        "dry_flagged_100yr": 37
      },
      {
        "code": "EMSR771",
        "aoi": "AOI04",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR771/AOI04/DEL_PRODUCT/EMSR771_AOI04_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 0.1,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 0,
        "wet_hit_in_or_near_zone": 0,
        "wet_hit_100yr": 0,
        "dry_flagged_in_zone": 0,
        "dry_flagged_100yr": 0
      },
      {
        "code": "EMSR772",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR772/AOI01/DEL_PRODUCT/EMSR772_AOI01_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 231.5,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 184,
        "wet_hit_in_or_near_zone": 208,
        "wet_hit_100yr": 153,
        "dry_flagged_in_zone": 64,
        "dry_flagged_100yr": 55
      },
      {
        "code": "EMSR772",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR772/AOI02/DEL_PRODUCT/EMSR772_AOI02_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 611,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 250,
        "wet_hit_in_or_near_zone": 250,
        "wet_hit_100yr": 248,
        "dry_flagged_in_zone": 238,
        "dry_flagged_100yr": 236
      },
      {
        "code": "EMSR773",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR773/AOI01/DEL_PRODUCT/EMSR773_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "flash",
        "flooded_km2": 156.5,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 222,
        "wet_hit_in_or_near_zone": 239,
        "wet_hit_100yr": 215,
        "dry_flagged_in_zone": 12,
        "dry_flagged_100yr": 12
      },
      {
        "code": "EMSR773",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR773/AOI02/DEL_PRODUCT/EMSR773_AOI02_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 0.6,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 94,
        "wet_hit_in_or_near_zone": 212,
        "wet_hit_100yr": 67,
        "dry_flagged_in_zone": 4,
        "dry_flagged_100yr": 4
      },
      {
        "code": "EMSR779",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR779/AOI01/DEL_PRODUCT/EMSR779_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 78.4,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 178,
        "wet_hit_in_or_near_zone": 215,
        "wet_hit_100yr": 165,
        "dry_flagged_in_zone": 68,
        "dry_flagged_100yr": 56
      },
      {
        "code": "EMSR779",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR779/AOI02/DEL_PRODUCT/EMSR779_AOI02_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 1295.5,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 250,
        "wet_hit_in_or_near_zone": 250,
        "wet_hit_100yr": 249,
        "dry_flagged_in_zone": 241,
        "dry_flagged_100yr": 238
      },
      {
        "code": "EMSR783",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v3",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR783/AOI01/DEL_PRODUCT/EMSR783_AOI01_DEL_PRODUCT_v3.zip",
        "flood_type": "riverine",
        "flooded_km2": 4.8,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 160,
        "wet_hit_in_or_near_zone": 176,
        "wet_hit_100yr": 158,
        "dry_flagged_in_zone": 6,
        "dry_flagged_100yr": 6
      },
      {
        "code": "EMSR783",
        "aoi": "AOI03",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR783/AOI03/DEL_PRODUCT/EMSR783_AOI03_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 1.6,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 238,
        "wet_hit_in_or_near_zone": 250,
        "wet_hit_100yr": 234,
        "dry_flagged_in_zone": 25,
        "dry_flagged_100yr": 24
      },
      {
        "code": "EMSR838",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR838/AOI01/DEL_PRODUCT/EMSR838_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 878.6,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 209,
        "wet_hit_in_or_near_zone": 241,
        "wet_hit_100yr": 192,
        "dry_flagged_in_zone": 145,
        "dry_flagged_100yr": 118
      },
      {
        "code": "EMSR838",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR838/AOI02/DEL_PRODUCT/EMSR838_AOI02_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 106.2,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 246,
        "wet_hit_in_or_near_zone": 250,
        "wet_hit_100yr": 244,
        "dry_flagged_in_zone": 231,
        "dry_flagged_100yr": 223
      },
      {
        "code": "EMSR857",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR857/AOI01/DEL_PRODUCT/EMSR857_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 882.5,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 249,
        "wet_hit_in_or_near_zone": 250,
        "wet_hit_100yr": 248,
        "dry_flagged_in_zone": 175,
        "dry_flagged_100yr": 170
      },
      {
        "code": "EMSR857",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR857/AOI02/DEL_PRODUCT/EMSR857_AOI02_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 121.5,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 237,
        "wet_hit_in_or_near_zone": 243,
        "wet_hit_100yr": 231,
        "dry_flagged_in_zone": 61,
        "dry_flagged_100yr": 58
      },
      {
        "code": "EMSR868",
        "aoi": "AOI01",
        "product": "DEL_PRODUCT_v1",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR868/AOI01/DEL_PRODUCT/EMSR868_AOI01_DEL_PRODUCT_v1.zip",
        "flood_type": "riverine",
        "flooded_km2": 26,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 245,
        "wet_hit_in_or_near_zone": 248,
        "wet_hit_100yr": 244,
        "dry_flagged_in_zone": 55,
        "dry_flagged_100yr": 54
      },
      {
        "code": "EMSR868",
        "aoi": "AOI02",
        "product": "DEL_PRODUCT_v2",
        "source_url": "https://rapidmapping.emergency.copernicus.eu/backend/EMSR868/AOI02/DEL_PRODUCT/EMSR868_AOI02_DEL_PRODUCT_v2.zip",
        "flood_type": "riverine",
        "flooded_km2": 58.5,
        "wet_points": 250,
        "dry_points": 250,
        "wet_hit_in_zone": 229,
        "wet_hit_in_or_near_zone": 237,
        "wet_hit_100yr": 229,
        "dry_flagged_in_zone": 54,
        "dry_flagged_100yr": 54
      }
    ],
    "attribution": "Flood footprints: Copernicus Emergency Management Service (c) European Union. Hazard maps: JRC/GloFAS v2.1, CC BY 4.0."
  },
  "england_ea": {
    "test": "River flood zones vs Environment Agency Flood Map for Planning (England)",
    "run_at": "2026-11-09T18:12:30.782Z",
    "points_per_town": 400,
    "definitions": {
      "fz3_caught_by_our_100yr_zone": "Share of points in official Flood Zone 3 (1%+ a year) that we also put in our 1-in-100-year zone.",
      "fz3_caught_by_our_any_zone": "Share of Flood Zone 3 points we put in any of our zones (up to 1-in-500-year).",
      "outside_ea_but_flagged_by_us": "Share of points outside both official zones that we still flag.",
      "overall_agreement": "Share of all points where both maps agree on \"in a flood zone\" vs \"not\".",
      "auc": "Chance that a random official-zone point scores higher than a random point outside (0.5 = coin flip)."
    },
    "summary": {
      "towns": 10,
      "points": 4000,
      "ea_fz3_points": 492,
      "fz3_caught_by_our_100yr_zone_pct": 71.5,
      "fz3_caught_by_our_any_zone_pct": 73.6,
      "fz3_caught_by_our_any_zone_ci95": [
        69.5,
        77.3
      ],
      "fz2or3_caught_by_our_any_zone_pct": 66,
      "outside_ea_but_flagged_by_us_pct": 4.8,
      "overall_agreement_pct": 90.4,
      "auc": 0.848
    },
    "towns": [
      {
        "town": "York",
        "points": 400,
        "ea_fz3": 28,
        "ea_fz2": 23,
        "ea_outside": 349,
        "fz3_in_our_100yr": 24,
        "fz3_in_our_any_zone": 24,
        "fz2or3_in_our_any_zone": 36,
        "outside_but_our_zone": 93
      },
      {
        "town": "Carlisle",
        "points": 400,
        "ea_fz3": 55,
        "ea_fz2": 19,
        "ea_outside": 326,
        "fz3_in_our_100yr": 32,
        "fz3_in_our_any_zone": 32,
        "fz2or3_in_our_any_zone": 40,
        "outside_but_our_zone": 4
      },
      {
        "town": "Shrewsbury",
        "points": 400,
        "ea_fz3": 40,
        "ea_fz2": 6,
        "ea_outside": 354,
        "fz3_in_our_100yr": 30,
        "fz3_in_our_any_zone": 30,
        "fz2or3_in_our_any_zone": 32,
        "outside_but_our_zone": 19
      },
      {
        "town": "Worcester",
        "points": 400,
        "ea_fz3": 45,
        "ea_fz2": 10,
        "ea_outside": 345,
        "fz3_in_our_100yr": 31,
        "fz3_in_our_any_zone": 31,
        "fz2or3_in_our_any_zone": 31,
        "outside_but_our_zone": 2
      },
      {
        "town": "Gloucester",
        "points": 400,
        "ea_fz3": 75,
        "ea_fz2": 21,
        "ea_outside": 304,
        "fz3_in_our_100yr": 61,
        "fz3_in_our_any_zone": 63,
        "fz2or3_in_our_any_zone": 70,
        "outside_but_our_zone": 2
      },
      {
        "town": "Oxford",
        "points": 400,
        "ea_fz3": 62,
        "ea_fz2": 19,
        "ea_outside": 319,
        "fz3_in_our_100yr": 48,
        "fz3_in_our_any_zone": 52,
        "fz2or3_in_our_any_zone": 65,
        "outside_but_our_zone": 14
      },
      {
        "town": "Leeds",
        "points": 400,
        "ea_fz3": 10,
        "ea_fz2": 13,
        "ea_outside": 377,
        "fz3_in_our_100yr": 4,
        "fz3_in_our_any_zone": 4,
        "fz2or3_in_our_any_zone": 10,
        "outside_but_our_zone": 4
      },
      {
        "town": "Doncaster",
        "points": 400,
        "ea_fz3": 66,
        "ea_fz2": 28,
        "ea_outside": 306,
        "fz3_in_our_100yr": 37,
        "fz3_in_our_any_zone": 37,
        "fz2or3_in_our_any_zone": 48,
        "outside_but_our_zone": 2
      },
      {
        "town": "Nottingham",
        "points": 400,
        "ea_fz3": 68,
        "ea_fz2": 19,
        "ea_outside": 313,
        "fz3_in_our_100yr": 54,
        "fz3_in_our_any_zone": 57,
        "fz2or3_in_our_any_zone": 66,
        "outside_but_our_zone": 7
      },
      {
        "town": "Bedford",
        "points": 400,
        "ea_fz3": 43,
        "ea_fz2": 11,
        "ea_outside": 346,
        "fz3_in_our_100yr": 31,
        "fz3_in_our_any_zone": 32,
        "fz2or3_in_our_any_zone": 38,
        "outside_but_our_zone": 13
      }
    ],
    "attribution": "Contains Environment Agency information (c) Environment Agency and/or database right. Open Government Licence v3.0. Hazard maps: JRC/GloFAS v2.1, CC BY 4.0."
  },
  "us_fema": {
    "test": "River flood zones vs FEMA National Flood Hazard Layer (US)",
    "run_at": "2026-11-09T17:52:24.413Z",
    "points_per_city": 300,
    "definitions": {
      "sfha_caught_by_our_any_zone": "Share of points in FEMA 1%-a-year zones (A, AE, AH, AO) that we put in any of our zones.",
      "outside_fema_but_flagged_by_us": "Share of points outside every FEMA flood zone that we still flag.",
      "overall_agreement": "Share of points (excluding levee-protected and coastal) where both maps agree."
    },
    "summary": {
      "cities": 10,
      "points": 3000,
      "fema_sfha_points": 450,
      "sfha_caught_by_our_100yr_zone_pct": 80,
      "sfha_caught_by_our_any_zone_pct": 82.2,
      "sfha_caught_by_our_any_zone_ci95": [
        78.4,
        85.5
      ],
      "outside_fema_but_flagged_by_us_pct": 12.6,
      "overall_agreement_pct": 85.8,
      "auc": 0.882,
      "levee_points_left_out": 338
    },
    "cities": [
      {
        "city": "Cedar Rapids IA",
        "points": 300,
        "fema_sfha": 29,
        "fema_02pct": 15,
        "fema_levee": 0,
        "fema_outside": 256,
        "sfha_in_our_100yr": 24,
        "sfha_in_our_any_zone": 25,
        "outside_but_our_zone": 11
      },
      {
        "city": "Des Moines IA",
        "points": 300,
        "fema_sfha": 43,
        "fema_02pct": 0,
        "fema_levee": 25,
        "fema_outside": 232,
        "sfha_in_our_100yr": 35,
        "sfha_in_our_any_zone": 35,
        "outside_but_our_zone": 5
      },
      {
        "city": "Nashville TN",
        "points": 300,
        "fema_sfha": 29,
        "fema_02pct": 7,
        "fema_levee": 7,
        "fema_outside": 257,
        "sfha_in_our_100yr": 20,
        "sfha_in_our_any_zone": 22,
        "outside_but_our_zone": 32
      },
      {
        "city": "Sacramento CA",
        "points": 300,
        "fema_sfha": 71,
        "fema_02pct": 0,
        "fema_levee": 103,
        "fema_outside": 126,
        "sfha_in_our_100yr": 70,
        "sfha_in_our_any_zone": 70,
        "outside_but_our_zone": 98
      },
      {
        "city": "Kansas City MO",
        "points": 300,
        "fema_sfha": 31,
        "fema_02pct": 5,
        "fema_levee": 48,
        "fema_outside": 216,
        "sfha_in_our_100yr": 28,
        "sfha_in_our_any_zone": 28,
        "outside_but_our_zone": 12
      },
      {
        "city": "Omaha NE",
        "points": 300,
        "fema_sfha": 33,
        "fema_02pct": 0,
        "fema_levee": 90,
        "fema_outside": 177,
        "sfha_in_our_100yr": 27,
        "sfha_in_our_any_zone": 27,
        "outside_but_our_zone": 11
      },
      {
        "city": "Fargo ND",
        "points": 300,
        "fema_sfha": 48,
        "fema_02pct": 129,
        "fema_levee": 46,
        "fema_outside": 77,
        "sfha_in_our_100yr": 42,
        "sfha_in_our_any_zone": 43,
        "outside_but_our_zone": 43
      },
      {
        "city": "Harrisburg PA",
        "points": 300,
        "fema_sfha": 69,
        "fema_02pct": 11,
        "fema_levee": 0,
        "fema_outside": 220,
        "sfha_in_our_100yr": 49,
        "sfha_in_our_any_zone": 49,
        "outside_but_our_zone": 1
      },
      {
        "city": "Little Rock AR",
        "points": 300,
        "fema_sfha": 75,
        "fema_02pct": 9,
        "fema_levee": 4,
        "fema_outside": 212,
        "sfha_in_our_100yr": 52,
        "sfha_in_our_any_zone": 58,
        "outside_but_our_zone": 37
      },
      {
        "city": "Columbus OH",
        "points": 300,
        "fema_sfha": 22,
        "fema_02pct": 16,
        "fema_levee": 15,
        "fema_outside": 247,
        "sfha_in_our_100yr": 13,
        "sfha_in_our_any_zone": 13,
        "outside_but_our_zone": 4
      }
    ],
    "attribution": "FEMA National Flood Hazard Layer (public domain), via Esri Living Atlas \"USA Flood Hazard Areas\". Hazard maps: JRC/GloFAS v2.1, CC BY 4.0."
  },
  "stations": {
    "test": "Heat, rain and frost: NASA POWER grid (our data) vs NOAA GHCN-Daily stations",
    "run_at": "2026-11-09T17:43:56.889Z",
    "period": "2005-2024",
    "definitions": {
      "median_error": "Typical size of the gap between our number and the station, in the metric unit.",
      "median_bias": "Typical direction of the gap. Negative = we read lower than the station.",
      "rank_correlation": "Do places rank in the same order? 1.0 = same order, 0 = no link (Spearman).",
      "same_grade_pct": "Share of stations where our A-E grade equals the grade the station data gives."
    },
    "note": "A station is one point; our data is a ~50 km grid average. Some gap is expected, mostly for rain extremes and hilly or coastal sites.",
    "stations": 111,
    "overall": {
      "metrics": {
        "hot_days_35c": {
          "unit": "days/yr",
          "stations": 81,
          "median_error": 2.5,
          "median_bias": -0.8,
          "median_bias_pct": -25,
          "rank_correlation": 0.834
        },
        "hottest_day": {
          "unit": "C",
          "stations": 81,
          "median_error": 1.6,
          "median_bias": -1.4,
          "median_bias_pct": -3,
          "rank_correlation": 0.887
        },
        "annual_rain": {
          "unit": "mm/yr",
          "stations": 74,
          "median_error": 94.5,
          "median_bias": 50,
          "median_bias_pct": 11,
          "rank_correlation": 0.964
        },
        "wettest_day": {
          "unit": "mm",
          "stations": 74,
          "median_error": 11,
          "median_bias": -10.5,
          "median_bias_pct": -24,
          "rank_correlation": 0.853
        },
        "frost_days": {
          "unit": "days/yr",
          "stations": 68,
          "median_error": 9.6,
          "median_bias": 0,
          "median_bias_pct": -2,
          "rank_correlation": 0.958
        }
      },
      "grades": {
        "heat": {
          "stations": 81,
          "same_grade_pct": 61.7,
          "within_one_grade_pct": 91.4,
          "median_score_gap": 7
        },
        "drought": {
          "stations": 74,
          "same_grade_pct": 68.9,
          "within_one_grade_pct": 98.6,
          "median_score_gap": 4
        },
        "heavy_rain": {
          "stations": 74,
          "same_grade_pct": 41.9,
          "within_one_grade_pct": 87.8,
          "median_score_gap": 10.5
        },
        "cold": {
          "stations": 68,
          "same_grade_pct": 73.5,
          "within_one_grade_pct": 95.6,
          "median_score_gap": 3.5
        }
      }
    },
    "by_region": {
      "Africa": {
        "stations": 20,
        "metrics": {
          "hot_days_35c": {
            "unit": "days/yr",
            "stations": 17,
            "median_error": 15.3,
            "median_bias": -12.8,
            "median_bias_pct": -25,
            "rank_correlation": 0.89
          },
          "hottest_day": {
            "unit": "C",
            "stations": 17,
            "median_error": 1.5,
            "median_bias": -1.4,
            "median_bias_pct": -3,
            "rank_correlation": 0.892
          },
          "annual_rain": {
            "unit": "mm/yr",
            "stations": 7,
            "median_error": 48,
            "median_bias": 40,
            "median_bias_pct": 21,
            "rank_correlation": 0.679
          },
          "wettest_day": {
            "unit": "mm",
            "stations": 7,
            "median_error": 4.4,
            "median_bias": 2.4,
            "median_bias_pct": 9,
            "rank_correlation": 0.857
          },
          "frost_days": {
            "unit": "days/yr",
            "stations": 12,
            "median_error": 0.3,
            "median_bias": 0,
            "median_bias_pct": -14,
            "rank_correlation": 0.923
          }
        },
        "grades": {
          "heat": {
            "stations": 17,
            "same_grade_pct": 52.9,
            "within_one_grade_pct": 82.4,
            "median_score_gap": 7
          },
          "drought": {
            "stations": 7,
            "same_grade_pct": 71.4,
            "within_one_grade_pct": 100,
            "median_score_gap": 4
          },
          "heavy_rain": {
            "stations": 7,
            "same_grade_pct": 85.7,
            "within_one_grade_pct": 100,
            "median_score_gap": 4
          },
          "cold": {
            "stations": 12,
            "same_grade_pct": 91.7,
            "within_one_grade_pct": 100,
            "median_score_gap": 0
          }
        }
      },
      "Middle East": {
        "stations": 20,
        "metrics": {
          "hot_days_35c": {
            "unit": "days/yr",
            "stations": 11,
            "median_error": 9.9,
            "median_bias": -6.2,
            "median_bias_pct": -7,
            "rank_correlation": 0.918
          },
          "hottest_day": {
            "unit": "C",
            "stations": 11,
            "median_error": 0.9,
            "median_bias": -0.5,
            "median_bias_pct": -1,
            "rank_correlation": 0.875
          },
          "annual_rain": {
            "unit": "mm/yr",
            "stations": 10,
            "median_error": 26.5,
            "median_bias": 22,
            "median_bias_pct": 9,
            "rank_correlation": 0.766
          },
          "wettest_day": {
            "unit": "mm",
            "stations": 10,
            "median_error": 10,
            "median_bias": -8.8,
            "median_bias_pct": -25,
            "rank_correlation": 0.418
          }
        },
        "grades": {
          "heat": {
            "stations": 11,
            "same_grade_pct": 72.7,
            "within_one_grade_pct": 90.9,
            "median_score_gap": 3
          },
          "drought": {
            "stations": 10,
            "same_grade_pct": 60,
            "within_one_grade_pct": 100,
            "median_score_gap": 5
          },
          "heavy_rain": {
            "stations": 10,
            "same_grade_pct": 50,
            "within_one_grade_pct": 100,
            "median_score_gap": 10
          }
        }
      },
      "Europe": {
        "stations": 20,
        "metrics": {
          "hot_days_35c": {
            "unit": "days/yr",
            "stations": 17,
            "median_error": 0.1,
            "median_bias": 0,
            "median_bias_pct": -74,
            "rank_correlation": 0.803
          },
          "hottest_day": {
            "unit": "C",
            "stations": 17,
            "median_error": 2.5,
            "median_bias": -2.5,
            "median_bias_pct": -8,
            "rank_correlation": 0.914
          },
          "annual_rain": {
            "unit": "mm/yr",
            "stations": 18,
            "median_error": 115,
            "median_bias": 95,
            "median_bias_pct": 13,
            "rank_correlation": 0.651
          },
          "wettest_day": {
            "unit": "mm",
            "stations": 18,
            "median_error": 8.3,
            "median_bias": -8.2,
            "median_bias_pct": -24,
            "rank_correlation": 0.543
          },
          "frost_days": {
            "unit": "days/yr",
            "stations": 15,
            "median_error": 10,
            "median_bias": 7.4,
            "median_bias_pct": 5,
            "rank_correlation": 0.963
          }
        },
        "grades": {
          "heat": {
            "stations": 17,
            "same_grade_pct": 76.5,
            "within_one_grade_pct": 100,
            "median_score_gap": 9
          },
          "drought": {
            "stations": 18,
            "same_grade_pct": 72.2,
            "within_one_grade_pct": 100,
            "median_score_gap": 6
          },
          "heavy_rain": {
            "stations": 18,
            "same_grade_pct": 27.8,
            "within_one_grade_pct": 94.4,
            "median_score_gap": 8.5
          },
          "cold": {
            "stations": 15,
            "same_grade_pct": 66.7,
            "within_one_grade_pct": 100,
            "median_score_gap": 2
          }
        }
      },
      "South and East Asia": {
        "stations": 20,
        "metrics": {
          "hot_days_35c": {
            "unit": "days/yr",
            "stations": 16,
            "median_error": 2.2,
            "median_bias": -1.5,
            "median_bias_pct": -71,
            "rank_correlation": 0.815
          },
          "hottest_day": {
            "unit": "C",
            "stations": 16,
            "median_error": 1.9,
            "median_bias": -1.1,
            "median_bias_pct": -3,
            "rank_correlation": 0.814
          },
          "annual_rain": {
            "unit": "mm/yr",
            "stations": 16,
            "median_error": 78,
            "median_bias": 11.5,
            "median_bias_pct": 1,
            "rank_correlation": 0.983
          },
          "wettest_day": {
            "unit": "mm",
            "stations": 16,
            "median_error": 35.3,
            "median_bias": -35.3,
            "median_bias_pct": -38,
            "rank_correlation": 0.762
          },
          "frost_days": {
            "unit": "days/yr",
            "stations": 10,
            "median_error": 16.8,
            "median_bias": 16.8,
            "median_bias_pct": 32,
            "rank_correlation": 0.951
          }
        },
        "grades": {
          "heat": {
            "stations": 16,
            "same_grade_pct": 50,
            "within_one_grade_pct": 93.8,
            "median_score_gap": 13.5
          },
          "drought": {
            "stations": 16,
            "same_grade_pct": 87.5,
            "within_one_grade_pct": 100,
            "median_score_gap": 2
          },
          "heavy_rain": {
            "stations": 16,
            "same_grade_pct": 18.8,
            "within_one_grade_pct": 68.8,
            "median_score_gap": 23.5
          },
          "cold": {
            "stations": 10,
            "same_grade_pct": 60,
            "within_one_grade_pct": 100,
            "median_score_gap": 5
          }
        }
      },
      "North America": {
        "stations": 20,
        "metrics": {
          "hot_days_35c": {
            "unit": "days/yr",
            "stations": 20,
            "median_error": 5,
            "median_bias": -0.8,
            "median_bias_pct": -32,
            "rank_correlation": 0.53
          },
          "hottest_day": {
            "unit": "C",
            "stations": 20,
            "median_error": 1.5,
            "median_bias": -1.1,
            "median_bias_pct": -3,
            "rank_correlation": 0.659
          },
          "annual_rain": {
            "unit": "mm/yr",
            "stations": 20,
            "median_error": 108.5,
            "median_bias": 69.5,
            "median_bias_pct": 18,
            "rank_correlation": 0.826
          },
          "wettest_day": {
            "unit": "mm",
            "stations": 20,
            "median_error": 7.9,
            "median_bias": -7.8,
            "median_bias_pct": -22,
            "rank_correlation": 0.858
          },
          "frost_days": {
            "unit": "days/yr",
            "stations": 20,
            "median_error": 10.3,
            "median_bias": -3.5,
            "median_bias_pct": -7,
            "rank_correlation": 0.892
          }
        },
        "grades": {
          "heat": {
            "stations": 20,
            "same_grade_pct": 60,
            "within_one_grade_pct": 90,
            "median_score_gap": 7.5
          },
          "drought": {
            "stations": 20,
            "same_grade_pct": 50,
            "within_one_grade_pct": 95,
            "median_score_gap": 6
          },
          "heavy_rain": {
            "stations": 20,
            "same_grade_pct": 50,
            "within_one_grade_pct": 85,
            "median_score_gap": 8
          },
          "cold": {
            "stations": 20,
            "same_grade_pct": 80,
            "within_one_grade_pct": 95,
            "median_score_gap": 3.5
          }
        }
      },
      "Latin America": {
        "stations": 11,
        "metrics": {
          "frost_days": {
            "unit": "days/yr",
            "stations": 8,
            "median_error": 12.7,
            "median_bias": -11.3,
            "median_bias_pct": -53,
            "rank_correlation": 0.81
          }
        },
        "grades": {
          "cold": {
            "stations": 8,
            "same_grade_pct": 50,
            "within_one_grade_pct": 75,
            "median_score_gap": 9
          }
        }
      }
    },
    "attribution": "Stations: NOAA NCEI GHCN-Daily. Grid: NASA Langley Research Center POWER Project."
  }
}