Put two batteries on the same grid, hand them nearly the same spread to work with, and they will still bank very different amounts. I have watched it play out for years. The reason is simple. How much a battery earns comes down to two things: the spread it was handed, and how well it traded that spread. Both matter.
The first of those should be the easy part. The spread comes straight from prices the ISOs already publish, node by node and hour by hour, free for anyone to download. But the raw prices are not the spread. To see the spread you have to gather those prices across markets, line them up, and reduce them to one comparable number. That work is real, and it is why almost no one sees the spread clearly. The prices are open. The computed view on top of them is not.
The computed view, across seven US grids
So we computed the day-ahead top-bottom four-hour spread, TB4, at every priced node across seven US grids: ERCOT, CAISO, PJM, MISO, NYISO, SPP, and ISO-NE, over the trailing twelve months. Here is what stood out.
- TB4 is the spread a battery has to work with: the gap between the average of the day's four highest-priced hours and its four lowest. It is the opportunity on the table before any of it is captured. Every day-ahead arbitrage dollar starts here.
- That spread varies hugely by node. In CAISO a typical node shows around $30/MWh, while one node on the same grid, the same year, reaches $122. You cannot trade a spread that was never there, so where you sit sets the opportunity you get to chase.
- The spread is only the opportunity. Trading is what turns it into revenue, and it is the harder part. In our read of the ERCOT fleet the typical battery earned about $1.86/kW-month, while several earned more than twice that. Part of that gap is where they sit, and part is how well they traded; the leaderboard alone does not split the two.
- Both matter, in that order. Where you sit sets the spread you are handed. How you trade decides how much of it you keep.
Spread is the opportunity, trading is the rest
That is the whole story behind two batteries on one grid earning very differently. The spread shows the opportunity that was there. How much of it a battery turns into revenue is the trading on top.
How far apart do these spreads sit, grid to grid and node to node?
Each box is one grid: ERCOT, CAISO, PJM, MISO, NYISO, SPP, and ISO-NE. The spread is per-node TB4 over the trailing twelve months. The interactive node map uses the same data.
Battery storage is becoming backbone infrastructure, and the decisions around its profitability are only getting harder. The spread is the foundation under all of them, and a signal this basic should not stay locked behind the work of computing it. The raw prices are already everyone's; the computed view should be too. So we are publishing it, node by node, free for anyone, on the TB4 spread map.
Resources
- TB4 spread map: the day-ahead four-hour spread at every priced node, across seven US grids.
- ERCOT BESS revenue leaderboard: every ERCOT battery ranked by merchant revenue, rebuilt from public settlement data.
- CAISO BESS revenue leaderboard: the same ranking for California, built from public FERC filings.
Common questions
What is TB4?
TB4 is the day-ahead top-bottom four-hour spread: the average price of a day's four highest-priced hours minus the average of its four lowest, at a single priced node. It is the gross arbitrage opportunity a four-hour battery has before efficiency losses and trading. We report the median across the trailing twelve months.
Why do two batteries on the same grid earn so differently?
Two reasons. First, the spread itself varies by node, so where a battery sits sets the opportunity it gets. Second, how well it trades that spread decides how much it keeps. The spread is the opportunity, the trading is the rest.
Which grids does the TB4 spread map cover?
Seven US grids: ERCOT, CAISO, PJM, MISO, NYISO, SPP, and ISO-NE, at every priced node, free on the TB4 spread map.