What Powers America: Seven Years of the Grid, One Live Demo

Independence Day is a good moment to ask a literal question: what actually powers the United States? Not the story anyone tells about it, the measured answer, hour by hour, for every region of the grid.
So we loaded it. The US Energy Information Administration publishes net electricity generation by fuel type for every balancing authority in the Lower 48, every hour, going back to 2019, through its Hourly Electric Grid Monitor. That's about 7.6 million data points. We put all of them into Arc and built a live demo where every number on the page is a SQL query you can watch run.
Here's what the data says.
The national picture is shifting, steadily
Across the US Lower 48, comparing 2019 to 2025:
| Source | 2019 share | 2025 share |
|---|---|---|
| Natural Gas | 36.6% | 39.5% |
| Coal | 23.7% | 17.6% |
| Nuclear | 21.2% | 18.4% |
| Renewables (solar, wind, hydro, geothermal) | 16.4% | 23.0% |
Two lines cross in that table. Coal fell by roughly a quarter of its share; renewables grew by nearly half. Natural gas took the middle, growing enough to remain the single largest source. If you group by what's generated without burning carbon, renewables plus nuclear went from 37.6% to 41.4% of US generation over those seven years.
The chart below is live from the demo: the coal band narrowing and the renewables band widening, month by month.
None of this is a forecast or a projection. It's the metered output of the grid, summed from hourly readings. On the demo you can pull the same numbers yourself, switch to a monthly or daily view, and watch the coal band shrink while the renewables band grows.
"Energy independence" is a data story, not a slogan
There's a reading of this data that fits the day. Every one of those renewable megawatt-hours, and most of the gas, is generated domestically. Wind and solar and hydro aren't imported, aren't priced by a cartel, and aren't exposed to a shipping lane. As the mix tilts toward them, the country's electricity becomes less dependent on any single fuel supply chain and more resilient to price shocks in any one of them.
That's independence in a practical sense: a grid that makes more of its own power, from more of its own sources, is a grid with more room to absorb a disruption. It's the same logic whether you care about emissions, about cost, or about not being at the mercy of a fuel market you don't control. The transition in the table above is, among other things, a move toward that.
The country isn't one grid, it's many
The national average hides how different the regions are. In 2025:
| Region | Renewables share | Coal share |
|---|---|---|
| Northwest | 53.4% | 18.9% |
| California | 47.7% | 1.3% |
| Texas | 37.6% | 13.0% |
| US Lower 48 | 23.0% | 17.6% |
| Midwest | 19.8% | 32.4% |
The Northwest runs on hydro and wind. California has all but eliminated coal. Texas, often cast as an oil-and-gas state, generates more than a third of its power from renewables, mostly wind. And the Midwest still leans on coal for roughly a third of its generation. The transition is real and it is deeply uneven, which is exactly why an hourly, regional dataset tells you more than a single national headline ever could.
Switch regions on the demo and the whole story re-renders in under a second. That speed is the point of the next section.
How it runs
The demo is a working Arc deployment, not a set of pre-rendered charts. Two things make it fast enough to feel live:
- Seven years of hourly data, queried on demand. The transition chart aggregates the full history into monthly bands every time you change a control. Arc reads columnar Parquet, so a query that only needs generation and fuel type never touches the other columns.
- A daily rollup kept current by a continuous query. Rather than re-scan 7.6 million hourly rows for every trend view, an Arc continuous query maintains a compact daily generation-by-fuel table in the background. The seven-year trend then answers from a few thousand pre-aggregated rows, in well under a second, while the live panels query the raw hourly data directly.
The ingestion path is the same one Arc uses at production scale: a Python job backfilled the history and a live tail polls the EIA API for each new hour, writing through Arc's MessagePack columnar endpoint. The whole thing runs on a single node.
Independence you generate at home
For a country founded on independence, there's a fitting reading in this data. A grid that runs increasingly on domestic sun, wind, and water is a grid that answers to no cartel and depends on no supply line running through someone else's territory. That's independence in the most literal sense: power the country generates for itself, at home.
And this particular road to independence carries a rare bonus. Its destination is also cleaner air and lighter emissions for the people who live under that grid, whatever else they might disagree on. Energy security and a healthier environment, so often framed as a trade-off, point the same way here.
The numbers say the United States is already moving in that direction. This Fourth of July, they make a good case for moving faster: toward power that's cleaner, closer to home, and harder for anyone else to switch off.
This is what grid data looks like in Arc
Utilities, grid operators, and energy companies run on exactly this shape of data: high-frequency readings from many sources, that have to stay queryable for years for operations, planning, and compliance. The EIA feed is a public stand-in for the SCADA, meter, and market data an operator lives in, and it exercises the same requirements: sustained ingest, long-horizon history, fast regional roll-ups, and open storage you actually own.
If that's your world, the demo is a small, honest example of Arc doing the job. See how Arc fits energy and utilities, or bring your own feed and point it at Arc.
Explore it:
- The live demo: seven years of US grid data, every panel a SQL query
- Arc for Energy & Utilities
- Arc on GitHub
Questions? Discord or GitHub Issues.