{
  "schema_version": "1.0",
  "generated_at": "2026-08-04T18:53:47.813764Z",
  "country_code": "DK",
  "country": "Denmark",
  "reference_system": {
    "installedKwp": 10,
    "orientation": "S",
    "tiltDeg": 35,
    "systemLossPct": 14
  },
  "city_count": 5,
  "summary": {
    "tomorrow_average_kwh": 41.220000000000006,
    "tomorrow_min_kwh": 33.6,
    "tomorrow_max_kwh": 46.9,
    "typical_annual_average_kwh": 10078.155999999999,
    "typical_annual_min_kwh": 9695.46,
    "typical_annual_max_kwh": 10483.6
  },
  "cities": [
    {
      "city_id": "aalborg",
      "city": "Aalborg",
      "latitude": 57.0488,
      "longitude": 9.9217,
      "forecast": {
        "cityId": "aalborg",
        "name": "Aalborg",
        "lat": 57.0488,
        "lon": 9.9217,
        "timezone": "Europe/Copenhagen",
        "featured": true,
        "targetDate": "2026-08-05",
        "expectedKwh": 37.1,
        "lowKwh": 24.4,
        "highKwh": 48.7,
        "bestWindowStart": "2026-08-05T11:00:00+02:00",
        "bestWindowEnd": "2026-08-05T15:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:40.741727Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 9981.38,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 6.82,
          "monthlyKwh": 211.29,
          "variabilityKwh": 48.06
        },
        {
          "month": 2,
          "averageDailyKwh": 14.33,
          "monthlyKwh": 401.26,
          "variabilityKwh": 109.71
        },
        {
          "month": 3,
          "averageDailyKwh": 28.99,
          "monthlyKwh": 898.72,
          "variabilityKwh": 178.16
        },
        {
          "month": 4,
          "averageDailyKwh": 42.33,
          "monthlyKwh": 1269.89,
          "variabilityKwh": 177.8
        },
        {
          "month": 5,
          "averageDailyKwh": 45.02,
          "monthlyKwh": 1395.66,
          "variabilityKwh": 181.69
        },
        {
          "month": 6,
          "averageDailyKwh": 46.08,
          "monthlyKwh": 1382.45,
          "variabilityKwh": 122.75
        },
        {
          "month": 7,
          "averageDailyKwh": 42.9,
          "monthlyKwh": 1329.9,
          "variabilityKwh": 162.6
        },
        {
          "month": 8,
          "averageDailyKwh": 37.46,
          "monthlyKwh": 1161.25,
          "variabilityKwh": 98.72
        },
        {
          "month": 9,
          "averageDailyKwh": 30.76,
          "monthlyKwh": 922.92,
          "variabilityKwh": 76.1
        },
        {
          "month": 10,
          "averageDailyKwh": 19.05,
          "monthlyKwh": 590.64,
          "variabilityKwh": 103.49
        },
        {
          "month": 11,
          "averageDailyKwh": 8.67,
          "monthlyKwh": 260.13,
          "variabilityKwh": 71.18
        },
        {
          "month": 12,
          "averageDailyKwh": 5.07,
          "monthlyKwh": 157.27,
          "variabilityKwh": 40.03
        }
      ]
    },
    {
      "city_id": "aarhus",
      "city": "Aarhus",
      "latitude": 56.1629,
      "longitude": 10.2039,
      "forecast": {
        "cityId": "aarhus",
        "name": "Aarhus",
        "lat": 56.1629,
        "lon": 10.2039,
        "timezone": "Europe/Copenhagen",
        "featured": true,
        "targetDate": "2026-08-05",
        "expectedKwh": 41.7,
        "lowKwh": 31,
        "highKwh": 50.3,
        "bestWindowStart": "2026-08-05T13:00:00+02:00",
        "bestWindowEnd": "2026-08-05T17:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:40.830363Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 9695.46,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 7.75,
          "monthlyKwh": 240.23,
          "variabilityKwh": 53.88
        },
        {
          "month": 2,
          "averageDailyKwh": 13.74,
          "monthlyKwh": 384.67,
          "variabilityKwh": 97.87
        },
        {
          "month": 3,
          "averageDailyKwh": 27.49,
          "monthlyKwh": 852.14,
          "variabilityKwh": 179.71
        },
        {
          "month": 4,
          "averageDailyKwh": 40.45,
          "monthlyKwh": 1213.59,
          "variabilityKwh": 176.7
        },
        {
          "month": 5,
          "averageDailyKwh": 43.82,
          "monthlyKwh": 1358.28,
          "variabilityKwh": 179.06
        },
        {
          "month": 6,
          "averageDailyKwh": 44.97,
          "monthlyKwh": 1349.24,
          "variabilityKwh": 127.19
        },
        {
          "month": 7,
          "averageDailyKwh": 41.19,
          "monthlyKwh": 1276.89,
          "variabilityKwh": 163.1
        },
        {
          "month": 8,
          "averageDailyKwh": 35.94,
          "monthlyKwh": 1114.13,
          "variabilityKwh": 98.85
        },
        {
          "month": 9,
          "averageDailyKwh": 30.04,
          "monthlyKwh": 901.21,
          "variabilityKwh": 84.81
        },
        {
          "month": 10,
          "averageDailyKwh": 18.11,
          "monthlyKwh": 561.53,
          "variabilityKwh": 95.77
        },
        {
          "month": 11,
          "averageDailyKwh": 8.66,
          "monthlyKwh": 259.76,
          "variabilityKwh": 69.42
        },
        {
          "month": 12,
          "averageDailyKwh": 5.93,
          "monthlyKwh": 183.78,
          "variabilityKwh": 50.93
        }
      ]
    },
    {
      "city_id": "copenhagen",
      "city": "Copenhagen",
      "latitude": 55.6761,
      "longitude": 12.5683,
      "forecast": {
        "cityId": "copenhagen",
        "name": "Copenhagen",
        "lat": 55.6761,
        "lon": 12.5683,
        "timezone": "Europe/Copenhagen",
        "featured": true,
        "targetDate": "2026-08-05",
        "expectedKwh": 33.6,
        "lowKwh": 25.9,
        "highKwh": 39.6,
        "bestWindowStart": "2026-08-05T14:00:00+02:00",
        "bestWindowEnd": "2026-08-05T18:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:40.798676Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 10483.6,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 8.24,
          "monthlyKwh": 255.58,
          "variabilityKwh": 56.73
        },
        {
          "month": 2,
          "averageDailyKwh": 16.27,
          "monthlyKwh": 455.57,
          "variabilityKwh": 94.98
        },
        {
          "month": 3,
          "averageDailyKwh": 29.52,
          "monthlyKwh": 914.97,
          "variabilityKwh": 163.99
        },
        {
          "month": 4,
          "averageDailyKwh": 43.26,
          "monthlyKwh": 1297.72,
          "variabilityKwh": 176.42
        },
        {
          "month": 5,
          "averageDailyKwh": 46.73,
          "monthlyKwh": 1448.68,
          "variabilityKwh": 171.83
        },
        {
          "month": 6,
          "averageDailyKwh": 47.5,
          "monthlyKwh": 1424.9,
          "variabilityKwh": 103.41
        },
        {
          "month": 7,
          "averageDailyKwh": 44.61,
          "monthlyKwh": 1382.8,
          "variabilityKwh": 162.13
        },
        {
          "month": 8,
          "averageDailyKwh": 39.72,
          "monthlyKwh": 1231.33,
          "variabilityKwh": 105.36
        },
        {
          "month": 9,
          "averageDailyKwh": 32.89,
          "monthlyKwh": 986.57,
          "variabilityKwh": 87.16
        },
        {
          "month": 10,
          "averageDailyKwh": 20.37,
          "monthlyKwh": 631.58,
          "variabilityKwh": 114.38
        },
        {
          "month": 11,
          "averageDailyKwh": 9.49,
          "monthlyKwh": 284.64,
          "variabilityKwh": 68.42
        },
        {
          "month": 12,
          "averageDailyKwh": 5.46,
          "monthlyKwh": 169.25,
          "variabilityKwh": 32.21
        }
      ]
    },
    {
      "city_id": "esbjerg",
      "city": "Esbjerg",
      "latitude": 55.4703,
      "longitude": 8.4519,
      "forecast": {
        "cityId": "esbjerg",
        "name": "Esbjerg",
        "lat": 55.4703,
        "lon": 8.4519,
        "timezone": "Europe/Copenhagen",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 46.9,
        "lowKwh": 35.4,
        "highKwh": 57.5,
        "bestWindowStart": "2026-08-05T12:00:00+02:00",
        "bestWindowEnd": "2026-08-05T16:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:40.984790Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 10117.23,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 8.22,
          "monthlyKwh": 254.71,
          "variabilityKwh": 50.85
        },
        {
          "month": 2,
          "averageDailyKwh": 15.56,
          "monthlyKwh": 435.8,
          "variabilityKwh": 93.06
        },
        {
          "month": 3,
          "averageDailyKwh": 29.08,
          "monthlyKwh": 901.5,
          "variabilityKwh": 157.92
        },
        {
          "month": 4,
          "averageDailyKwh": 42.3,
          "monthlyKwh": 1269.13,
          "variabilityKwh": 132.12
        },
        {
          "month": 5,
          "averageDailyKwh": 45.33,
          "monthlyKwh": 1405.17,
          "variabilityKwh": 164.92
        },
        {
          "month": 6,
          "averageDailyKwh": 45.57,
          "monthlyKwh": 1367.22,
          "variabilityKwh": 117.86
        },
        {
          "month": 7,
          "averageDailyKwh": 43.24,
          "monthlyKwh": 1340.31,
          "variabilityKwh": 143.96
        },
        {
          "month": 8,
          "averageDailyKwh": 38.66,
          "monthlyKwh": 1198.36,
          "variabilityKwh": 113.81
        },
        {
          "month": 9,
          "averageDailyKwh": 30.04,
          "monthlyKwh": 901.29,
          "variabilityKwh": 107.04
        },
        {
          "month": 10,
          "averageDailyKwh": 18.36,
          "monthlyKwh": 569.24,
          "variabilityKwh": 119.1
        },
        {
          "month": 11,
          "averageDailyKwh": 9.42,
          "monthlyKwh": 282.46,
          "variabilityKwh": 60.69
        },
        {
          "month": 12,
          "averageDailyKwh": 6.19,
          "monthlyKwh": 192.03,
          "variabilityKwh": 40.87
        }
      ]
    },
    {
      "city_id": "odense",
      "city": "Odense",
      "latitude": 55.3959,
      "longitude": 10.3883,
      "forecast": {
        "cityId": "odense",
        "name": "Odense",
        "lat": 55.3959,
        "lon": 10.3883,
        "timezone": "Europe/Copenhagen",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 46.8,
        "lowKwh": 37.5,
        "highKwh": 54.1,
        "bestWindowStart": "2026-08-05T13:00:00+02:00",
        "bestWindowEnd": "2026-08-05T17:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:40.895220Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 10113.11,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 7.74,
          "monthlyKwh": 239.92,
          "variabilityKwh": 48.09
        },
        {
          "month": 2,
          "averageDailyKwh": 14.68,
          "monthlyKwh": 411.18,
          "variabilityKwh": 99.03
        },
        {
          "month": 3,
          "averageDailyKwh": 28.62,
          "monthlyKwh": 887.14,
          "variabilityKwh": 173.24
        },
        {
          "month": 4,
          "averageDailyKwh": 42.56,
          "monthlyKwh": 1276.73,
          "variabilityKwh": 173.52
        },
        {
          "month": 5,
          "averageDailyKwh": 44.66,
          "monthlyKwh": 1384.58,
          "variabilityKwh": 189.34
        },
        {
          "month": 6,
          "averageDailyKwh": 45.7,
          "monthlyKwh": 1370.95,
          "variabilityKwh": 114.52
        },
        {
          "month": 7,
          "averageDailyKwh": 42.47,
          "monthlyKwh": 1316.45,
          "variabilityKwh": 160.12
        },
        {
          "month": 8,
          "averageDailyKwh": 37.51,
          "monthlyKwh": 1162.73,
          "variabilityKwh": 100.86
        },
        {
          "month": 9,
          "averageDailyKwh": 31.82,
          "monthlyKwh": 954.57,
          "variabilityKwh": 104.45
        },
        {
          "month": 10,
          "averageDailyKwh": 20.18,
          "monthlyKwh": 625.62,
          "variabilityKwh": 117.82
        },
        {
          "month": 11,
          "averageDailyKwh": 10.07,
          "monthlyKwh": 302.01,
          "variabilityKwh": 70.53
        },
        {
          "month": 12,
          "averageDailyKwh": 5.85,
          "monthlyKwh": 181.25,
          "variabilityKwh": 35.84
        }
      ]
    }
  ],
  "sources": {
    "tomorrow": {
      "weather": {
        "source_id": "OPEN_METEO",
        "name": "Open-Meteo weather forecast",
        "public_display_allowed": true,
        "requires_commercial_license": true,
        "terms_url": "https://open-meteo.com/en/terms",
        "pricing_url": "https://open-meteo.com/en/pricing"
      },
      "model": {
        "source_id": "GRIDPASSPORT_PV_PUBLIC_V1",
        "name": "GridPassport public PV forecast model",
        "description": "Weather-based physical PV estimate with public-safe inputs."
      },
      "attribution": {
        "text": "Weather forecast by Open-Meteo, PV estimate by GridPassport.",
        "transformation_notes": "GridPassport projects irradiance onto the configured PV array and applies public lead-magnet loss assumptions."
      }
    },
    "typical_year": {
      "name": "European Commission Joint Research Centre PVGIS 5.3",
      "url": "https://joint-research-centre.ec.europa.eu/photovoltaic-geographical-information-system-pvgis_en",
      "api": "https://re.jrc.ec.europa.eu/api/v5_3/PVcalc",
      "method": "Monthly average fixed-system output calculated from a multi-year solar radiation and climate series."
    }
  },
  "methodology_url": "https://gridpassport.com/solar-forecast/methodology/"
}
