One of the most consequential decisions in any battery energy storage project is the question of capacity sizing: how much power (MW) and how much energy (MWh) should the system have? Choose too small and you leave revenue on the table. Choose too large and capital costs overwhelm the return. The optimal point sits at the intersection of application requirements, market revenue streams, degradation over time, and project financing structure.

Capacity sizing is not a one-size-fits-all exercise. A 100 MW / 200 MWh arbitrage-only battery in ERCOT has a different optimal shape than a 50 MW / 200 MWh solar firming battery in California. The MW-to-MWh ratio — the C-rate — depends on the duration of energy needed, the number of charge-discharge cycles per day, and the market price spread. Getting this ratio right can mean the difference between a 12% and an 18% IRR.

This guide walks through the core methodology for BESS capacity sizing optimization using linear programming techniques, covering energy arbitrage, solar-plus-storage firming, and capacity firming applications.

Why Capacity Sizing Matters for Project Economics

BESS project economics are dominated by upfront capital cost — roughly $300-$450/kWh installed for a utility-scale system at 2025-2026 pricing. The choice of MW and MWh directly drives this cost. But revenue scales differently with power and energy depending on the application:

  • Energy arbitrage — Revenue scales with MWh throughput × price spread. More MWh (longer duration) captures more spread, but only if the market has multi-hour price differentials
  • Frequency regulation — Revenue scales primarily with MW capacity. A 100 MW battery earns the same regulation revenue whether it has 1 hour or 4 hours of duration
  • Resource adequacy (RA) — Revenue scales with MW capacity times RA accreditation. CAISO requires 4-hour duration for full RA credit in most cases
  • Solar firming — Revenue depends on both MW (to absorb peak PV production) and MWh (to shift energy into evening hours)

Key insight: The optimal MW/MWh ratio varies by market and application. In ERCOT, where price spikes are short but extreme, shorter-duration batteries (1-2 hours) can capture disproportionate revenue. In CAISO, longer-duration batteries (4-8 hours) are needed for RA accreditation and the solar duck curve.

A poorly sized system locks in sub-optimal economics for the entire project life — you cannot easily add MW or MWh after commissioning. This makes front-end sizing optimization one of the highest-leverage activities in project development.

Linear Programming for BESS Sizing Optimization

The most rigorous approach to BESS capacity sizing uses mixed-integer linear programming (MILP) to simultaneously optimize the system's power rating, energy capacity, and hourly dispatch over a representative year. The optimization problem can be formulated as:

Objective: Maximize NPV = Σ (Annual Revenue - Annual Costs) - Capital Cost

Subject to constraints on:

  • Power balance — Charge and discharge power cannot exceed the battery's rated MW at each timestep
  • Energy balance — SOC must stay within min/max thresholds and respect round-trip efficiency
  • Degradation — Cycle depth and C-rate impact SOH fade, which reduces usable capacity over time
  • Revenue stacking — The battery can participate in multiple markets simultaneously (arbitrage + regulation + RA)
  • Augmentation schedule — Replacement capacity added when SOH triggers are hit

The decision variables are the MW rating and the MWh rating (or equivalently, the duration in hours). The model sweeps across candidate (MW, MWh) pairs, solving an optimal dispatch for each and computing project NPV after degradation and financing costs.

In practice, this is computationally intensive for a full 8760-hour year. Energy Optima uses a reduced-form optimization that clusters representative days and solves dispatch across those clusters, then validates results against the full hourly series through simulation.

Energy Arbitrage Sizing: Duration and Cycles

For a standalone energy arbitrage project, the optimal duration depends on the shape and magnitude of the price duration curve in the target market. Key factors include:

  • Average daily spread ($/MWh) — The difference between the highest and lowest price hours each day
  • Spread duration — How many consecutive hours the spread persists. A 4-hour spread supports a 4-hour battery better than a 2-hour battery
  • Seasonal variation — Summer spreads may be much wider than shoulder-season spreads
  • Cycle count — If the battery can only complete one full cycle per day, additional MWh (duration) captures more spread per cycle. If it can cycle 1.5x per day (partial cycles), the optimization changes

As a rule of thumb, in markets with strong solar penetration (CAISO, ERCOT, Australia NEM), the optimal arbitrage duration has increased from 2 hours (2018-2020) to 4-6 hours (2024-2026) as solar oversupply has widened midday-off-peak spreads and evening-peak demand has shifted later.

BESS Capacity Sizing Optimization - Revenue vs System Size with Optimal Point

Energy Optima's optimal sizing analysis for an ERCCO hub arbitrage project in 2026 found that a 100 MW / 400 MWh system (4-hour duration) delivers roughly 25% higher IRR than a 100 MW / 200 MWh system (2-hour duration), assuming current forward price curves. The additional capital cost of the extra MWh is more than offset by the additional spread-captured revenue — but only up to about 6 hours of duration, after which the marginal revenue per MWh declines sharply.

Solar-Plus-Storage Firming: Matching PV Profiles

Solar-plus-storage sizing is fundamentally different from standalone BESS sizing because the battery's charge and discharge profile is tied to the solar generation curve. The key sizing parameters are:

  • PV-to-battery MW ratio — A 100 MW PV plant might be paired with a 50 MW, 75 MW, or 100 MW battery. A higher ratio means more of the PV output can be shifted, but at higher battery cost
  • Battery duration — Determines how many hours of PV over-generation can be stored. In California, a 4-hour battery paired with a 1.3:1 DC-to-AC ratio solar plant typically captures 80-90% of clipping losses
  • C-rate matching — The battery's charge C-rate must be sufficient to absorb the PV ramp. A 0.5C battery paired with a solar plant that ramps at 10 MW/min may not keep up without curtailment

Energy Optima's co-optimization tool simultaneously sizes the PV array (MWdc, MWac, ILR) and the BESS (MW, MWh) to maximize the combined project IRR. The tool accounts for the Investment Tax Credit (ITC) bonus for standalone storage and the 30% ITC for solar-plus-storage under the Inflation Reduction Act.

Detailed guidance on PV system sizing can be found in our PV System Sizing Guide.

Capacity Firming: RA Value and Duration Trade-Offs

In markets with resource adequacy programs (CAISO RA, PJM RPM, NYISO ICAP, ISO-NE FCM), BESS owners earn revenue based on the capacity value the system provides during system peak hours. The key sizing consideration is duration accreditation:

  • CAISO — Batteries with 4+ hours of duration receive 100% of their MW rating as RA credit. Batteries with less than 4 hours receive a reduced credit based on the Effective Load Carrying Capability (ELCC) methodology
  • PJM — The Capacity Performance product requires 10-hour duration for full accreditation, though shorter-duration batteries can participate in the Base Capacity product
  • ERCOT — No formal RA program, but the Operating Reserve Demand Curve (ORDC) provides scarcity pricing during tight reserve events, which favors shorter-duration batteries that can respond quickly

When RA value is a primary revenue stream, the optimal duration often aligns with the minimum threshold for full accreditation. Going beyond that threshold provides diminishing marginal returns unless additional revenue streams (arbitrage, regulation) justify the extra MWh.

Sensitivity Analysis: Degradation and Revenue Decay

Any capacity sizing analysis must account for the fact that degradation changes the effective MW and MWh over time. A system sized for 100 MW at year 1 may have only 85 MW of effective capacity at year 10. Key sensitivities to run include:

  • Degradation rate sensitivity — How much does IRR change if calendar aging is 10% faster or slower than modeled?
  • Revenue decay sensitivity — How does a 20% decline in energy spreads in years 8-15 affect optimal sizing?
  • Capital cost sensitivity — How does a 15% increase or decrease in battery pack pricing affect the optimal MW/MWh?
  • Augmentation cost sensitivity — Does a cheaper augmentation strategy allow for a smaller initial system?

For a detailed explanation of how degradation is modeled, see our companion guide on BESS Degradation Modeling.

The best capacity sizing decisions are robust to a range of future scenarios, not just the base case. A Monte Carlo sensitivity analysis should be part of any serious sizing study to identify the sizing that maximizes expected NPV while minimizing downside risk.

Sizing Tools in Energy Optima

Energy Optima provides a dedicated BESS Capacity Sizing module that automates the linear programming optimization described in this guide. The module:

  • Sweeps MW and MWh combinations across user-specified ranges (e.g., 50-200 MW, 100-800 MWh)
  • Optimizes hourly dispatch for each candidate sizing using real or synthetic price data
  • Models degradation year-by-year using manufacturer-specific 3D interpolation tables
  • Computes project-level financials (NPV, IRR, LCOE, payback period, DSCR) for each sizing
  • Generates sensitivity tornado charts and efficient frontier plots (MW/MWh vs IRR)
  • Supports co-optimization with PV system sizing for solar-plus-storage projects

The result: a clear recommendation for the MW and MWh that maximizes your project's IRR, with supporting data on sensitivity to key assumptions.