HAUSE Energy Better business energy decisions. Start with your bill. Canada + United States +1 587-316-6194
CommercialElectricityRates.com byHAUSE

Open data

Commercial electricity open data

The records behind every page, as JSON anyone can read: states, utilities, cities and ZIP Codes. For developers, researchers, journalists and AI assistants.

  • Files381
  • KeyNone
  • FormatJSON, CSV

Every figure on this site is open as JSON at /data/api/v1/: 51 state files, 228 utility records, 299 cities and a ZIP Code index, 381 files in all. No key, no sign-up, CORS open, rebuilt with the site whenever EIA publishes. Credit the U.S. Energy Information Administration and this site.

Source: EIA Form EIA-861, EIA-861M and Short-Term Energy Outlook; U.S. Census Bureau

The files

Open data files under /data/api/v1/
PathWhat it holds
/data/api/v1/index.jsonThe list of files, what each holds and how many there are
/data/api/v1/states.jsonEvery state and DC: average commercial price over the trailing 12 months and the latest final year, supply choice
/data/api/v1/states/{state}.jsonPrice history since 2010, energy and delivery split, residential and industrial prices, sales, supply-choice rules, EIA regional forecast, net metering, smart meters, time-varying rates, reliability, utilities and cities
/data/api/v1/utilities.jsonOne record per utility with a page here: price and its history, average use and bill, reliability, smart meters, time-varying rates, net metering
/data/api/v1/utilities/{state}/{utility}.jsonOne utility, with every year’s customers, sales, revenue and price, bundled and delivery-only apart
/data/api/v1/cities.jsonThe cities with a page here, with population and counties
/data/api/v1/zip/{NN}.jsonZIP Code areas to counties to the utilities EIA lists there, one file per two-digit ZIP prefix

The same figures as CSV are listed on the data page.

An example

Texas, trimmed to the price block. rank counts from the highest price (1) to the lowest (51); change is the fraction against the 12 months before.

{
  "state": {
    "name": "Texas",
    "abbr": "TX",
    "slug": "texas",
    "url": "https://commercialelectricityrates.com/commercial-electricity-rates/texas/"
  },
  "commercialPrice": {
    "trailing12Months": {
      "cents": 8.57,
      "previousCents": 8.57,
      "change": 0,
      "from": "2025-09",
      "through": "2026-08",
      "status": "Preliminary",
      "rank": 50,
      "of": 51
    }
  }
}

From a browser or a script: fetch('https://commercialelectricityrates.com/data/api/v1/states/texas.json').then((r) => r.json()). Responses carry Access-Control-Allow-Origin: *.

Rules of use

  • Credit. The data are U.S. government works in the public domain; please credit “U.S. Energy Information Administration (public domain), compiled by CommercialElectricityRates.com” and link to the page a figure comes from.
  • Averages, not offers. Each price is revenue divided by kWh over every commercial customer. It is not a rate schedule or a price anyone can buy at, and a delivery-only figure is not comparable with an all-in one.
  • Freshness. Files are rebuilt with the site: monthly prices after each EIA monthly release, utility figures when EIA publishes the final annual data, the forecast with each Short-Term Energy Outlook. Each file carries its build date in _meta.updated.
  • Stability. Paths under /v1/ keep their meaning; a change that breaks a field gets a new version.

For AI assistants and search

The site publishes llms.txt, a plain-text map of what is here and which figures are worth citing, and every data page carries schema.org Dataset markup. Quote a figure with its date and its source; the JSON has both.

Embed a rate card

To show a state’s current average commercial price on another site, with the figure updating itself, use the embeddable rate card.

Get a free bill check

Open data describes markets. For one business’s bill, a person can read it: rate schedule, demand, riders, contract window. Nobody calls unless you ask.