{
 "generated": "2026-10-05T11:32:17+00:00",
 "years": [
  2021,
  2022,
  2023,
  2024,
  2025,
  2026
 ],
 "year_data": {
  "2021": {
   "cps": [
    {
     "year": 2021,
     "month": 6,
     "interval_end": null,
     "hour_ending": 17,
     "date": "2021-06-23",
     "ercot_mw": 70218.88343,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    },
    {
     "year": 2021,
     "month": 7,
     "interval_end": null,
     "hour_ending": 17,
     "date": "2021-07-26",
     "ercot_mw": 73098.087752,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    },
    {
     "year": 2021,
     "month": 8,
     "interval_end": null,
     "hour_ending": 17,
     "date": "2021-08-24",
     "ercot_mw": 73650.57348,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    },
    {
     "year": 2021,
     "month": 9,
     "interval_end": null,
     "hour_ending": 17,
     "date": "2021-09-01",
     "ercot_mw": 72338.977647,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    }
   ],
   "verified": false,
   "complete": true,
   "ercot_4cp_avg_mw": 72326.6,
   "hours": 2928,
   "last_hour": "2021-09-30T23:00",
   "backfilled_hours": 0,
   "partial_price_hours": 0
  },
  "2022": {
   "cps": [
    {
     "year": 2022,
     "month": 6,
     "interval_end": "2022-06-23T17:00",
     "hour_ending": 17,
     "date": "2022-06-23",
     "ercot_mw": 76803.458296,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2022,
     "month": 7,
     "interval_end": "2022-07-20T16:45",
     "hour_ending": 17,
     "date": "2022-07-20",
     "ercot_mw": 80233.2293,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2022,
     "month": 8,
     "interval_end": "2022-08-02T17:00",
     "hour_ending": 17,
     "date": "2022-08-02",
     "ercot_mw": 78669.138308,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2022,
     "month": 9,
     "interval_end": "2022-09-20T17:00",
     "hour_ending": 17,
     "date": "2022-09-20",
     "ercot_mw": 71149.605628,
     "source": "ERCOT NP9-83-M",
     "verified": true
    }
   ],
   "verified": true,
   "complete": true,
   "ercot_4cp_avg_mw": 76713.9,
   "hours": 2928,
   "last_hour": "2022-09-30T23:00",
   "backfilled_hours": 0,
   "partial_price_hours": 0
  },
  "2023": {
   "cps": [
    {
     "year": 2023,
     "month": 6,
     "interval_end": "2023-06-27T17:00",
     "hour_ending": 17,
     "date": "2023-06-27",
     "ercot_mw": 81017.598256,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2023,
     "month": 7,
     "interval_end": "2023-07-31T17:00",
     "hour_ending": 17,
     "date": "2023-07-31",
     "ercot_mw": 83032.608668,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2023,
     "month": 8,
     "interval_end": "2023-08-10T17:00",
     "hour_ending": 17,
     "date": "2023-08-10",
     "ercot_mw": 85636.884588,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2023,
     "month": 9,
     "interval_end": "2023-09-08T16:45",
     "hour_ending": 17,
     "date": "2023-09-08",
     "ercot_mw": 84540.292176,
     "source": "ERCOT NP9-83-M",
     "verified": true
    }
   ],
   "verified": true,
   "complete": true,
   "ercot_4cp_avg_mw": 83556.8,
   "hours": 2928,
   "last_hour": "2023-09-30T23:00",
   "backfilled_hours": 0,
   "partial_price_hours": 0
  },
  "2024": {
   "cps": [
    {
     "year": 2024,
     "month": 6,
     "interval_end": "2024-06-30T17:45",
     "hour_ending": 18,
     "date": "2024-06-30",
     "ercot_mw": 79749.848496,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2024,
     "month": 7,
     "interval_end": "2024-07-01T17:00",
     "hour_ending": 17,
     "date": "2024-07-01",
     "ercot_mw": 81184.39216,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2024,
     "month": 8,
     "interval_end": "2024-08-20T17:00",
     "hour_ending": 17,
     "date": "2024-08-20",
     "ercot_mw": 85357.561732,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2024,
     "month": 9,
     "interval_end": "2024-09-20T16:00",
     "hour_ending": 16,
     "date": "2024-09-20",
     "ercot_mw": 77878.823836,
     "source": "ERCOT NP9-83-M",
     "verified": true
    }
   ],
   "verified": true,
   "complete": true,
   "ercot_4cp_avg_mw": 81042.7,
   "hours": 2928,
   "last_hour": "2024-09-30T23:00",
   "backfilled_hours": 0,
   "partial_price_hours": 0
  },
  "2025": {
   "cps": [
    {
     "year": 2025,
     "month": 6,
     "interval_end": "2025-06-19T17:00",
     "hour_ending": 17,
     "date": "2025-06-19",
     "ercot_mw": 77485.834736,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2025,
     "month": 7,
     "interval_end": "2025-07-30T17:00",
     "hour_ending": 17,
     "date": "2025-07-30",
     "ercot_mw": 81908.321348,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2025,
     "month": 8,
     "interval_end": "2025-08-18T17:00",
     "hour_ending": 17,
     "date": "2025-08-18",
     "ercot_mw": 83968.463332,
     "source": "ERCOT NP9-83-M",
     "verified": true
    },
    {
     "year": 2025,
     "month": 9,
     "interval_end": "2025-09-04T17:30",
     "hour_ending": 18,
     "date": "2025-09-04",
     "ercot_mw": 80076.465112,
     "source": "ERCOT NP9-83-M",
     "verified": true
    }
   ],
   "verified": true,
   "complete": true,
   "ercot_4cp_avg_mw": 80859.8,
   "hours": 2928,
   "last_hour": "2025-09-30T23:00",
   "backfilled_hours": 0,
   "partial_price_hours": 0
  },
  "2026": {
   "cps": [
    {
     "year": 2026,
     "month": 6,
     "interval_end": null,
     "hour_ending": 17,
     "date": "2026-06-18",
     "ercot_mw": 82772.005367,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    },
    {
     "year": 2026,
     "month": 7,
     "interval_end": null,
     "hour_ending": 18,
     "date": "2026-07-22",
     "ercot_mw": 91133.727696,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    },
    {
     "year": 2026,
     "month": 8,
     "interval_end": null,
     "hour_ending": 18,
     "date": "2026-08-24",
     "ercot_mw": 90816.856518,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    },
    {
     "year": 2026,
     "month": 9,
     "interval_end": null,
     "hour_ending": 17,
     "date": "2026-09-12",
     "ercot_mw": 86491.57,
     "source": "computed: max hourly load (ERCOT 4CP file not available)",
     "verified": false
    }
   ],
   "verified": false,
   "complete": true,
   "ercot_4cp_avg_mw": 87803.5,
   "hours": 2928,
   "last_hour": "2026-09-30T23:00",
   "backfilled_hours": 0,
   "partial_price_hours": 0
  }
 },
 "reconciliation": {
  "years": "2015-2025",
  "months": 40,
  "date_match": 38,
  "hour_match": 31,
  "mismatches": [
   {
    "year": 2018,
    "month": 9,
    "published": "2018-09-19T16:30",
    "ercot_4cp_mw": 64692.5,
    "hourly_peak_date": "2018-09-18",
    "hourly_peak_he": 17,
    "hourly_peak_mw": 64606.3,
    "date_match": false,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": false
   },
   {
    "year": 2019,
    "month": 6,
    "published": "2019-06-19T17:00",
    "ercot_4cp_mw": 68369.8,
    "hourly_peak_date": "2019-06-19",
    "hourly_peak_he": 18,
    "hourly_peak_mw": 68124.5,
    "date_match": true,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": true
   },
   {
    "year": 2023,
    "month": 6,
    "published": "2023-06-27T17:00",
    "ercot_4cp_mw": 81017.6,
    "hourly_peak_date": "2023-06-27",
    "hourly_peak_he": 18,
    "hourly_peak_mw": 80786.5,
    "date_match": true,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": true
   },
   {
    "year": 2023,
    "month": 8,
    "published": "2023-08-10T17:00",
    "ercot_4cp_mw": 85636.9,
    "hourly_peak_date": "2023-08-10",
    "hourly_peak_he": 18,
    "hourly_peak_mw": 85464.1,
    "date_match": true,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": true
   },
   {
    "year": 2024,
    "month": 7,
    "published": "2024-07-01T17:00",
    "ercot_4cp_mw": 81184.4,
    "hourly_peak_date": "2024-07-01",
    "hourly_peak_he": 18,
    "hourly_peak_mw": 81010.1,
    "date_match": true,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": true
   },
   {
    "year": 2024,
    "month": 8,
    "published": "2024-08-20T17:00",
    "ercot_4cp_mw": 85357.6,
    "hourly_peak_date": "2024-08-20",
    "hourly_peak_he": 18,
    "hourly_peak_mw": 85198.9,
    "date_match": true,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": true
   },
   {
    "year": 2024,
    "month": 9,
    "published": "2024-09-20T16:00",
    "ercot_4cp_mw": 77878.8,
    "hourly_peak_date": "2024-09-19",
    "hourly_peak_he": 17,
    "hourly_peak_mw": 77779.5,
    "date_match": false,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": false
   },
   {
    "year": 2025,
    "month": 7,
    "published": "2025-07-30T17:00",
    "ercot_4cp_mw": 81908.3,
    "hourly_peak_date": "2025-07-30",
    "hourly_peak_he": 18,
    "hourly_peak_mw": 81706.5,
    "date_match": true,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": true
   },
   {
    "year": 2025,
    "month": 8,
    "published": "2025-08-18T17:00",
    "ercot_4cp_mw": 83968.5,
    "hourly_peak_date": "2025-08-18",
    "hourly_peak_he": 18,
    "hourly_peak_mw": 83679.0,
    "date_match": true,
    "he_match_ending_convention": false,
    "he_match_beginning_convention": true
   }
  ]
 },
 "tdsp": {
  "as_of": "2026-10-01",
  "retrieved": "2026-10-01",
  "tdsps": {
   "oncor": {
    "name": "Oncor Electric Delivery",
    "default_load_zone": "LZ_NORTH",
    "unit": "kW",
    "source_url": "https://ftp.puc.texas.gov/public/puct-info/industry/electric/rates/tdr/tdu/Oncor_Rate_Report.pdf",
    "source_title": "Oncor Electric Delivery Company LLC - PUCT Monthly Report, As of October 1, 2026",
    "effective": "2026-10-01",
    "classes": {
     "secondary_idr": {
      "label": "Secondary > 10 kW (IDR)",
      "rate": 6.050798
     },
     "primary_idr": {
      "label": "Primary > 10 kW (IDR)",
      "rate": 4.055399
     },
     "primary_substation": {
      "label": "Primary Substation",
      "rate": 4.987143
     },
     "transmission": {
      "label": "Transmission",
      "rate": 3.491759
     }
    }
   },
   "centerpoint": {
    "name": "CenterPoint Energy Houston Electric",
    "default_load_zone": "LZ_HOUSTON",
    "unit": "kVA",
    "source_url": "https://ftp.puc.texas.gov/public/puct-info/industry/electric/rates/tdr/tdu/CenterPoint_Rate_Report.pdf",
    "source_title": "CenterPoint Energy Houston Electric Rates Report 10/1/2026",
    "effective": "2026-10-01",
    "classes": {
     "secondary_idr": {
      "label": "Secondary > 10 kVA (IDR)",
      "rate": 6.177655
     },
     "primary_idr": {
      "label": "Primary (IDR)",
      "rate": 5.243339
     },
     "primary_substation": {
      "label": "Primary Substation",
      "rate": null,
      "note": "CenterPoint has no separate primary-substation class in the PUCT report; use Primary (IDR)."
     },
     "transmission": {
      "label": "Transmission",
      "rate": 5.589307
     }
    }
   },
   "aep_central": {
    "name": "AEP Texas Central",
    "default_load_zone": "LZ_SOUTH",
    "unit": "kW",
    "source_url": "https://ftp.puc.texas.gov/public/puct-info/industry/electric/rates/tdr/tdu/AEP_Rate_Report.pdf",
    "source_title": "AEP Texas PUCT Monthly Report (Effective October 1, 2026), Project No. 58511",
    "effective": "2026-10-01",
    "classes": {
     "secondary_idr": {
      "label": "Secondary > 10 kW (4CP)",
      "rate": 6.232736
     },
     "primary_idr": {
      "label": "Primary Voltage Dist Line Service",
      "rate": 6.441555
     },
     "primary_substation": {
      "label": "Primary Voltage Substation Service",
      "rate": 6.374133
     },
     "transmission": {
      "label": "Transmission",
      "rate": null,
      "note": "UNVERIFIED. The PUCT report lists Central \"Trans Demand per 4CP\" = $0.155214, identical to the Central distribution demand charge, while North shows $5.956038. The Feb 2026 report has the same pattern ($0.118150), which suggests a template error in the report. Enter the rate from your bill or AEP Texas tariff."
     }
    }
   },
   "aep_north": {
    "name": "AEP Texas North",
    "default_load_zone": "LZ_WEST",
    "unit": "kW",
    "source_url": "https://ftp.puc.texas.gov/public/puct-info/industry/electric/rates/tdr/tdu/AEP_Rate_Report.pdf",
    "source_title": "AEP Texas PUCT Monthly Report (Effective October 1, 2026), Project No. 58511",
    "effective": "2026-10-01",
    "classes": {
     "secondary_idr": {
      "label": "Secondary > 10 kW (4CP)",
      "rate": 6.232736
     },
     "primary_idr": {
      "label": "Primary Voltage Dist Line Service",
      "rate": 6.441555
     },
     "primary_substation": {
      "label": "Primary Voltage Substation Service",
      "rate": 6.374133
     },
     "transmission": {
      "label": "Transmission",
      "rate": 5.956038
     }
    }
   },
   "tnmp": {
    "name": "Texas-New Mexico Power",
    "default_load_zone": "LZ_NORTH",
    "unit": "kW",
    "source_url": "https://ftp.puc.texas.gov/public/puct-info/industry/electric/rates/tdr/tdu/TNMP_Rate_Report.pdf",
    "source_title": "Texas-New Mexico Power Company (TNMP) - PUCT Monthly Report, As of October 1, 2026",
    "effective": "2026-10-01",
    "classes": {
     "secondary_idr": {
      "label": "Secondary > 5 kW (IDR)",
      "rate": 8.305264
     },
     "primary_idr": {
      "label": "Primary (IDR)",
      "rate": 3.191903
     },
     "primary_substation": {
      "label": "Primary Substation",
      "rate": null,
      "note": "The PUCT report lists TNMP Primary Substation transmission charges per NCP kW, not 4CP kW, so 4CP curtailment may not reduce this charge. Verify with TNMP before relying on 4CP savings."
     },
     "transmission": {
      "label": "Transmission (per 4CP kVA)",
      "rate": 5.751894,
      "unit": "kVA"
     }
    }
   }
  },
  "applicability": {
   "idr_threshold_kw": 700,
   "source_url": "https://www.oncor.com/content/dam/oncorwww/documents/about-us/regulatory/tariff-and-rate-schedules/Tariff%20for%20Retail%20Delivery%20Service.pdf.coredownload.pdf"
  }
 },
 "window_price": {
  "LZ_NORTH": 111.8944,
  "LZ_HOUSTON": 111.973,
  "LZ_SOUTH": 98.1255,
  "LZ_WEST": 107.9237
 },
 "load_zones": [
  "LZ_NORTH",
  "LZ_HOUSTON",
  "LZ_SOUTH",
  "LZ_WEST"
 ],
 "sources": {
  "load": {
   "title": "ERCOT Hourly Load Data Archives (native load, post-settlement)",
   "url": "https://www.ercot.com/gridinfo/load/load_hist"
  },
  "rt_spp": {
   "title": "ERCOT NP6-785-ER Historical RTM Load Zone and Hub Prices",
   "url": "https://www.ercot.com/mp/data-products/data-product-details?id=NP6-785-ER"
  },
  "fourcp": {
   "title": "ERCOT Four Coincident Peak Calculations (NP9-83-M)",
   "url": "https://www.ercot.com/mktinfo/data_agg/4cp"
  }
 }
}