Energy mass balanceCostingEquipment sizingStorage
Vanadium redox flow battery (VRFB) storage plant
Stationary all-vanadium flow battery with power (MW) and energy (MWh) sized separately: AC round trip derived from the component chain, PNNL duty cycle, CAPEX split power/energy, stack replacement, electrolyte residual, O&M and a pre-tax real LCOS in constant EUR 2021.
- CurrencyEUR 2021
- Battery limitfully financed
- 81 documented assumptions
- Updated27 Oct 2026
Mass and energy balance
What the asset draws and delivers for the case and load you choose.
Reference case
Annual use, as 100 % depth-of-discharge equivalent cycles requested by the dispatch. 365 is PNNL's warranty cap and LCOS basis (one full equivalent cycle a day, PNNL-33283 p.123). The plant cannot cycle faster than its charge, discharge and rest times allow (PNNL Eq. 2): above about 9.5 h the time limit binds (288.9 at 12 h) and the delivered cycles stay at that limit, shown in 'Time-limited maximum'. The 285 floor is that 12 h limit rounded down, so the slider spans the duty PNNL's own Eq. 2 produces over the 4-12 h box.
Flows
- In: Electricity for charging—
Asset
Vanadium redox flow battery (VRFB) storage plant
- Out: Electricity discharged—
Annual quantities at the current usage. Band width: share of energy in; non-energy flows are not to scale.
Nameplate energy stored in the electrolyte tanks (MWh), the size catalog battery products bind to and the size the CAPEX scale law reads. 80 % of it is cycled (PNNL baseline depth of discharge). Rated power = energy / duration must stay within 1-100 MW, the power range of PNNL's size rule: 4-400 MWh at 4 h, 12-1,200 MWh at 12 h.
- Rated power
- — MW
- Annual energy discharged
- — MWh/year
- Time-limited maximum cycles
- — cycles/year
CAPEX
Specific cost at this size, what backs it, and how it behaves with scale.
Specific CAPEX at this size
—
Reference size 40 MWh
PNNL ESGC 2020 size rule, PNNL-33283
Model value: the PNNL cost build-up with its size rule. Customized: your own all-in installed cost per kWh (same boundary: storage block, DC BOS, power equipment, SI, EPC, development and grid), applied as entered at every size, with no scale law. Fixed O&M and the year-12 stack replacement stay on the model cost at the plant size: the quote replaces the upfront price only.
Log in to view this sensitivity chart.
- Ex-factory
- Installed
- Fully financed· this figure
Included
- Equipment and installation
- Indirect and owner's costs
- Contingency
Not included
- Nothing
Added at project level
- Nothing: project mode uses the figure as is
Lifetime and replacements
Costs this asset carries that project mode does not apply.
Not passed to project mode
Stack replacement component of LCOS is left out of project results: project mode only replaces the whole asset at the end of its lifetime. Add it by hand until it does.
Project figures
Values passed to project mode when this asset is added to a project.
Vanadium redox flow battery (VRFB) storage plantConcept sketch, not to scale · drag to rotate
- Electricity for charging in
- —
- Electricity discharged outMain product
- —
- CAPEX to the battery limit
- —
- Fixed O&M
- —
- Variable O&M, excluding feedstocks
- —
- Asset lifetime
- 24 years
- Stack replacement component of LCOSNot applied by project
- —
Log in to add this asset to a project.
Levelised cost of storage
A standalone indicator for a quick read. Project mode recomputes it for the whole system.
—
- Capital component of LCOS—
- Stack replacement component of LCOS—
- O&M component of LCOS—
- Charging component of LCOS—
Linked to the balance above
Annual use, as 100 % depth-of-discharge equivalent cycles requested by the dispatch. 365 is PNNL's warranty cap and LCOS basis (one full equivalent cycle a day, PNNL-33283 p.123). The plant cannot cycle faster than its charge, discharge and rest times allow (PNNL Eq. 2): above about 9.5 h the time limit binds (288.9 at 12 h) and the delivered cycles stay at that limit, shown in 'Time-limited maximum'. The 285 floor is that 12 h limit rounded down, so the slider spans the duty PNNL's own Eq. 2 produces over the 4-12 h box.
Energy / rated power. Power (stacks, converters) and energy (electrolyte, tanks) are sized separately in a flow battery; this sets their ratio at a given energy capacity. Accepted from 4 to 12 h: at 2 h the model's CAPEX leaves PNNL's USD 300-600/kWh band.
Average price paid for charging electricity, constant EUR 2021. Default 25.37 = PNNL's USD 0.03/kWh at 1.1827 USD/EUR. The slider covers annual average charging prices of 20-100 EUR/MWh; the LCOS bound is derived from this box, not the other way round. In project mode the charging electricity is the inlet and is priced by the project instead.
REAL rate, because every cost is in constant EUR 2021 with no escalation. Default 6.52 % = PNNL real WACC; the slider runs from PNNL's real interest rate (5.06 %) to its real cost of equity (9.92 %). Never enter a nominal rate here.
Log in to view this sensitivity chart.
Benchmarks
This model's figures against published references and reference cases.
Reference cases at this size and usage
Log in to compare the reference cases.
All results
Every model output at the current settings, grouped, with the sensitivity charts.
50 outputs · 5 groups · 13 also shown above, dimmed
Levelised cost
9- Capital share of LCOS
- Computing%
- Capital recovery factor
- Computing1/year
- Annualised CAPEX
- ComputingEUR/year
- Total annual cost
- ComputingEUR/year
Size and CAPEX
12- Energy capacity
- ComputingkWh
- Model installed CAPEX per kWh
- ComputingEUR/kWh
- CAPEX size factor
- Computingratio
- Installed CAPEX per kW
- ComputingEUR/kW
- Power-related CAPEX
- ComputingEUR/kW
- Energy-related CAPEX
- ComputingEUR/kWh
- Energy share of CAPEX
- Computing%
- Direct CAPEX
- ComputingEUR
- SI, EPC and development markups
- ComputingEUR
Energy balance
10- DC round trip incl. auxiliaries
- Computing%
- AC round-trip efficiency
- Computing%
- Gap to PNNL's printed AC round trip
- Computingpct points
- Power conversion loss
- Computing%
- Charging energy per MWh discharged
- ComputingMWh/MWh
- Annual energy charged
- ComputingMWh/year
- Average charging power
- ComputingMW
- Average discharge power
- ComputingMW
Duty cycle
7- Cycles per year
- Computingcycles/year
- Equivalent full cycles per year
- Computingcycles/year
- Discharge full-load hours
- Computingh/year
- Charge full-load hours
- Computingh/year
- Total full-load hours
- Computingh/year
- Discharge capacity factor
- Computing%
Lifecycle and O&M
12- CAPEX present value
- ComputingEUR
- Stack replacement cost
- ComputingEUR
- Stack replacement, present value
- ComputingEUR
- Electrolyte residual value
- Computing%
- Electrolyte residual, present value
- ComputingEUR
- Fixed O&M
- ComputingEUR/year
- Fixed O&M per kW
- ComputingEUR/kW/year
- Warranty cost
- ComputingEUR/kWh/year
- Warranty cost
- ComputingEUR/year
- Charging electricity cost
- ComputingEUR/year
Sensitivities
6 chartsLog in to view this sensitivity chart.
Log in to view this sensitivity chart.
Log in to view this sensitivity chart.
Log in to view this sensitivity chart.
Log in to view this sensitivity chart.
Log in to view this sensitivity chart.
Sources
81 documented assumptions · 4 sources
- pnnl.govPNNL-33283, Viswanathan et al., 2022 Grid Energy Storage Technology Cost and Performance AssessmentVRFB component costs (Table 4.7), O&M and warranty (Sec. 4.3.2), RTE (Table 4.9), lifetimes (Table 6.2), cycles (Eq. 2-3), LCOS (Eq. 1, Appendix 1), financial parameters (Table 6.1)
- pnnl.govPNNL ESGC 2020 Cost and Performance Assessment (Dec 2020)RFB power/energy split of the DC storage block (351.5 USD/kW, 177.7 USD/kWh), 20 % DC BOS, 15 % SI/EPC/PD markups (Table 12), variable O&M, literature RTE range
- bundesbank.deDeutsche Bundesbank, Exchange rate statisticsECB reference rate annual average 2021, 1.1827 USD per EUR
- worldmaterialsforum.comIvanhoe Mines / VRB Energy, World Materials Forum 2018, slide 12electrolyte lease buy-back at 30-40 % of price (vendor-side claim)
About
Calculator context
About
Calculator context
Techno-economics of a stationary all-vanadium redox flow battery, built on PNNL's 2022 Grid Energy Storage Technology Cost and Performance Assessment (PNNL-33283). The plant is sized by its energy capacity (MWh, electrolyte and tanks) and its duration, accepted from 4 to 12 h; rated power (stacks and converters) is their ratio, 1-100 MW. Annual use is an input (equivalent full cycles per year), and three sourced reference cases set the DC round trip and the electrolyte residual. The calculator derives the AC round trip, the annual cycles and throughput, the CAPEX split between power and energy, the year-12 stack replacement, the electrolyte residual value, fixed and variable O&M, warranty, and the levelised cost of storage (LCOS) per MWh discharged.
ECONOMIC BASIS. Constant EUR 2021 everywhere: PNNL's 2021 USD figures are divided by 1.1827 USD/EUR (ECB 2021 average). No escalation and no inflation input. The single discount rate is REAL (default 6.52 %, PNNL real WACC; slider 5.06-9.92 %). The LCOS is PRE-TAX: PNNL's Eq. 1 with a capital recovery factor over a 20-year economic life instead of PNNL's after-tax fixed charge rate.
Method. CAPEX = (351.5 USD/kW x kW + 177.7 USD/kWh x kWh) x 1.20 DC BOS + 140.8 USD/kW power equipment, then three 15 % markups (SI, EPC, project development, x 1.520875) and 25 USD/kW grid integration (PNNL 2020 split applied to the 2021 Table 4.7 structure). That is PNNL's 10 MW anchor; it is scaled by (energy / 40 MWh)^(0.978 - 1), the power law of PNNL's +/-5 % size rule (x1.052 at 1 MW, x0.951 at 100 MW at 4 h). A Customized option replaces the model CAPEX per kWh with the user's value, at every size; the power/energy split follows the retained CAPEX, while fixed O&M and the stack replacement stay on the model cost at the plant size. AC round trip = DC round trip including pumping and auxiliaries x 0.98^2 inverter x 0.98^2 transformer: 65.49 % at PNNL's 71 % DC, 71.94 % at the developer 78 %. Cycles = min(requested equivalent cycles / DOD, 8,760 h / cycle time) at 80 % depth (PNNL Eq. 2 with the user's cycles in place of PNNL's 365): the request binds up to about 9.5 h at 365, the time limit above. Stacks and pumps are replaced at year 12; electrolyte and tanks last the 24-year project life and are credited at year 24 at a buy-back share of 105 USD/kWh set by the case (0 % in the PNNL baseline; 30 % in the default and developer cases, a vendor claim). Fixed O&M = 0.47 % of direct CAPEX x the size factor, calibrated on PNNL's final 6.66 USD/kW-yr at 10 MW / 4 h (one anchor, evidence medium); warranty 1.25 USD/kWh-year, the low end of PNNL's USD 1.25-2.59; variable O&M 0.5125 USD/MWh.
Defaults (40 MWh, 4 h, 10 MW, 365 cycles, buy-back case): CAPEX 18.41 M EUR = 1,841 EUR/kW = 460.4 EUR/kWh (power part 744.6 EUR/kW, energy part 274.2 EUR/kWh, size factor 1); AC round trip 65.49 %; 365 equivalent full cycles, 14,600 MWh discharged and 22,294 MWh charged a year; CRF 0.0909; LCOS 167.8 EUR/MWh (capital 113.2, stack replacement 8.7, O&M 7.2, charging 38.7). PNNL baseline case 169.2, developer case 164.3; at 285 cycles 203.9. At 10 MW the LCOS falls to 133.3 EUR/MWh at about 9.5 h, then rises to 151.3 at 12 h as the annual discharge stops growing; CAPEX falls from 460 to 328 EUR/kWh over 4-12 h.
Bounds and convergence. AC round trip 65-80 % and CAPEX 254-507 EUR/kWh are PNNL printed ranges (RFB literature RTE, battery installed cost USD 300-600/kWh) at 1.1827 USD/EUR. The LCOS bound 87-400 EUR/MWh is derived from the model: over the input box, enumerated on a 0.05 h duration grid x 21 powers from 1 to 100 MW x the cycles, cases, CAPEX options and price and rate corners, the LCOS spans 91.6-380.1, widened by about 5 %. PNNL prints no pre-tax VRFB LCOS range for this domain; its after-tax statements (USD 0.20-0.40/kWh for all batteries at 1-10 MW, USD 0.13-0.20/kWh for five technologies including gravitational and thermal at 100-1,000 MW) are context only. The model is about 9 % below PNNL's after-tax LCOS: with PNNL's full fixed charge rate (MACRS, tax, construction finance) 0.198 USD/kWh at 10 MW / 4 h would become 0.216; at 10 h the model gives 0.164 USD/kWh against PNNL's 'about $0.20/kWh within $0.03'. Cross-check at 100 MW / 1000 MWh: 384.2 USD/kWh against PNNL's printed 385 (0.998), a figure the model does not use; PNNL's power-based ±5 % rule applied as written would give 391.8 (1.018), so part of the close match comes from keying the size law on energy; without the size rule it read 412.3.
Project mode. Electricity inlet (charging) and outlet (discharge) in MW hourly; the inlet is priced by the project, so no charging cost is booked in the opex lines. CAPEX is handed over all-in with battery_limit fully_financed. The year-12 stack replacement (2.97 M EUR at 10 MW, 8.7 EUR/MWh of the LCOS) is not applied by project mode and must be added there.
Limits: pre-tax; no size rule above 100 MW; no dispatch or price arbitrage; no capacity fade; no disposal cost; the electrolyte buy-back is a vendor claim; Customized replaces the upfront CAPEX only, not the O&M or the stack replacement.
Model
159 variables — inputs, calculations and outputs, with their dependencies.
Model
159 variables — inputs, calculations and outputs, with their dependencies.
| Variable | Value | Unit | Depends on |
|---|---|---|---|
| 40 | MWh | — | |
| 4 | h | — | |
| 365 | cycles/year | — | |
| 2 | — | — | |
| 0 | — | — | |
| 460 | EUR/kWh | — | |
| 25.37 | EUR/MWh | — | |
| 6.52 | % | — |
| Variable | Formula | Unit | Depends on |
|---|---|---|---|
if((<=0)+(<)+(>)+(/max(,)<)+(/max(,)>)+(<=0)+(>)+(<)+(>)+(<0)+(>)+(<=0)+(<0)+(<0)+(>)>0,1,0) | bool | ||
* | kW | ||
* | ratio | ||
*** | ratio | ||
^ | ratio | ||
* | ratio | ||
* | ratio | ||
* | h | ||
* | h | ||
if(<,,) | h | ||
++* | h | ||
/max(,) | cycles/year | ||
* | USD | ||
* | USD | ||
+ | USD | ||
** | USD | ||
(++)* | USD | ||
++ | USD | ||
** | USD | ||
(+)** | USD | ||
(++)** | USD | ||
* | USD | ||
++++ | USD | ||
/ | EUR | ||
(+*)*(+*)*(+*) | ratio | ||
* | ratio | ||
ceil(/)- | — | ||
/((+)^) | ratio | ||
if(<,,*(-^)/max(-,)) | ratio | ||
***/ | EUR |
| Variable | Formula | Unit | Depends on |
|---|---|---|---|
/max(,) | MW | ||
* | kWh | ||
if(==,,) | % | ||
if(==,,) | % | ||
/ | EUR/kWh/year | ||
(-)* | % | ||
* | % | ||
- | pct points | ||
/max(,) | MWh/MWh | ||
* | cycles/year | ||
min(/max(,),) | cycles/year | ||
* | cycles/year | ||
** | MWh/year | ||
* | MWh/year | ||
- | MWh/year | ||
/max(,) | h/year | ||
/max(,) | h/year | ||
+ | h/year | ||
/* | % | ||
/ | MW | ||
/ | MW | ||
(/)^(-) | ratio | ||
*/max(,) | EUR/kWh | ||
if(>=,,) | EUR/kWh | ||
* | EUR | ||
/ | EUR | ||
(++)/ | EUR | ||
(((*(+*)+++)*+)/)*/max(,) | EUR/kW | ||
(*(+*)*/)*/max(,) | EUR/kWh | ||
/max(,) | EUR/kW | ||
*/max(,)* | % | ||
/* | EUR | ||
* | EUR | ||
/((+)^) | EUR | ||
+- | EUR | ||
if(<,/,(*(+)^)/max((+)^-,)) | 1/year | ||
* | EUR/year | ||
*** | EUR/year | ||
/max(,) | EUR/kW/year | ||
* | EUR/year | ||
+ | EUR/year | ||
/* | EUR/year | ||
* | EUR/year | ||
+++ | EUR/year | ||
/max(,) | EUR/MWh | ||
*(-)/max(,) | EUR/MWh | ||
*/max(,) | EUR/MWh | ||
(+)/max(,) | EUR/MWh | ||
/max(,) | EUR/MWh | ||
/max(,)* | % |
Assumptions
81 assumptions used in the calculations
Assumptions
81 assumptions used in the calculations
Protects divisions.
Market range Not applicable.
0OpenJack DSL conventionUnit term in the CRF, the markup cascade and the guards.
Market range Exact by definition.
1Numerical constantTurns a percent (0-100) into a fraction.
Market range Exact conversion, no range.
0.011/%Unit conversionTurns a fraction into a percent for display and for the guards.
Market range Exact conversion, no range.
100%Unit conversionPNNL quotes power-related costs per kW; the inputs are in MW.
Market range Exact conversion, no range.
1000kW/MWSI prefixPNNL quotes energy-related costs per kWh; the energy input is in MWh.
Market range Exact conversion, no range.
1000kWh/MWhSI prefixConverts annual energy to an average power for the hourly flows and the capacity factor.
Market range Exact for a 365-day year.
8760h/yearCalendar conventionSelect value of the PNNL baseline case.
1OpenJack case identifierSelect value of the default case, which reproduces the earlier default inputs.
2OpenJack case identifierSelect value of the developer-performance case.
3OpenJack case identifierHours available per day for charge, discharge and rest.
Market range Exact.
24h/dayPNNL-33283 Eq. 2Exponent that turns a one-way converter efficiency into its round-trip loss.
Market range Exact (one pass in, one pass out).
2PNNL-33283 Table 4.9Number of rest periods counted in the daily cycle time.
Market range Exact by the equation.
2PNNL-33283 Eq. 2Durations below 6 h take the 4 h rest value (0.5 h); 6 h and above take zero. The 2 h value (1.0 h) is outside the model domain (4-12 h). Over 4-12 h the rest term never binds the cycle count, so the step changes no result.
Market range PNNL tabulates only 2, 4 and 6+ h; values between columns are not printed.
6hPNNL-33283 Table 6.3Lowest duration (energy / power) the calculator accepts. Below 4 h the installed CAPEX per kWh leaves the PNNL battery band and the bounds no longer hold.
Market range PNNL costs VRFB at 2, 4, 6, 8, 10 and 24 h; the calculator keeps 4-12 h.
4hOpenJack domain limitHighest duration the calculator accepts. Above 12 h the LCOS keeps rising (time-limited throughput) and the bounds were not checked there.
Market range No independent range cited for the upper limit; it is a modelling choice.
12hOpenJack domain limitLowest rated power accepted, the low end of PNNL's size rule (+5 % at 1 MW).
Market range PNNL 2020 prices 1, 10 and 100 MW systems.
1MWPNNL ESGC 2020 p.30Highest rated power accepted, the high end of PNNL's size rule (-5 % at 100 MW).
Market range PNNL 2022 prints systems up to 1,000 MW; the calculator stops at 100 MW.
100MWPNNL ESGC 2020 / PNNL-33283Converts every 2021 USD cost to constant EUR 2021. All money in the calculator is EUR 2021.
Market range Single official annual average; no range.
1.1827USD/EURECB reference rate via BundesbankPower-related part of the DC storage block: stacks, pumps and piping, paid per kW. Also the cost of the year-12 stack replacement.
Market range No independent range cited for the power part alone.
351.5USD/kWPNNL ESGC 2020Energy-related part of the DC storage block: electrolyte and tanks, paid per kWh. Never replaced over the project life.
Market range PNNL-33283 Sec. 4.3.1 prices the electrolyte alone at 105-150 USD/kWh depending on chemistry.
177.7USD/kWhPNNL ESGC 2020DC balance of system (racking, containers, DC wiring) as a share of the storage block.
Market range Single PNNL value; no independent range cited.
20%PNNL ESGC 2020 / PNNL-33283 Table 4.7Power equipment: DC-DC converter between stacks and inverter.
Market range Single PNNL value for 2021.
60USD/kWPNNL-33283 Table 4.7Power equipment: bidirectional inverter (power conversion system).
Market range Single PNNL value for 2021.
73USD/kWPNNL-33283 Table 4.7Power equipment: energy management system and controls.
Market range Single PNNL value for 2021.
7.8USD/kWPNNL-33283 Table 4.7Transformer, switchgear and grid connection, paid per kW and not marked up.
Market range Single PNNL value for 2021.
25USD/kWPNNL-33283 Table 4.7System integration markup on the direct cost (storage block + DC BOS + power equipment).
Market range Single PNNL convention.
15%PNNL ESGC 2020 Table 12Engineering, procurement and construction markup.
Market range Single PNNL convention.
15%PNNL ESGC 2020 Table 12Project development markup (permitting, interconnection studies, developer margin).
Market range Single PNNL convention.
15%PNNL ESGC 2020 Table 12Published all-in cost used to check the CAPEX cascade at a configuration other than the 10 MW reference.
Market range Single printed figure.
385USD/kWhPNNL-33283 Executive SummaryPNNL size rule, the source of the CAPEX scale exponent.
Market range +5 % at 1 MW, -5 % at 100 MW in PNNL 2020.
5%PNNL ESGC 2020Exponent of the CAPEX scale law on energy capacity, a power-law fit of PNNL's +/-5 % per decade size rule. Applied on the energy capacity at fixed duration, it scales power and energy together, as PNNL's factor does for 'power and energy content'.
Market range +5 % at 1 MW, -5 % at 100 MW (PNNL).
0.978PNNL ESGC 2020 size rule, PNNL-33283Reference size of the scale law: the 10 MW / 4 h configuration of the cited cost anchor, where the size factor is 1.
40MWhPNNL-33283 Table 4.7, p.39Market band for installed battery storage cost, all technologies and sizes.
Market range USD 300-600/kWh (2021).
300USD/kWhPNNL-33283 Sec. 5Upper edge of the installed-cost band.
Market range USD 300-600/kWh (2021).
600USD/kWhPNNL-33283 Sec. 5DC round trip of the two PNNL cases, the starting point of the AC chain.
Market range 71 % (PNNL) to 78-82 % (developer values with auxiliaries).
71%PNNL-33283 Table 4.9Upper end of the developer range quoted by PNNL; documented, not used by any case.
Market range82%PNNL-33283 Sec. 4.3.4.2DC round trip of the developer case.
Market range78%PNNL-33283 p.41 (Watson 2021)One-way inverter efficiency, crossed twice per cycle.
Market range Single PNNL value.
98%PNNL-33283 Table 4.9One-way transformer efficiency, crossed twice per cycle.
Market range Single PNNL value.
98%PNNL-33283 Table 4.9Published AC round trip, kept only as a reference for rte_ac_gap_vs_pnnl_table_pct_points.
Market range 65 % (PNNL 2021).
65%PNNL-33283 Table 4.9Literature AC round-trip range for RFBs.
Market range65%PNNL ESGC 2020Upper edge of the literature RTE range.
Market range80%PNNL ESGC 2020Warranty-style cap on annual equivalent full cycles.
Market range Single PNNL value for all technologies.
365cycles/yearPNNL-33283 Sec. 6.1.3Depth of discharge per cycle; sets the discharge time per cycle and the 1/DOD cap.
Market range Single PNNL baseline.
80%PNNL-33283 Table 6.4Rest after each charge and each discharge for short-duration RFBs.
Market range 1.00 h at 2 h, 0.50 h at 4 h, 0 at 6 h+.
0.5hPNNL-33283 Table 6.3No rest is required for long-duration RFBs.
Market range Zero by the table.
0hPNNL-33283 Table 6.3Stack and pump life; the replacement is paid at the stack power cost.
Market range Single PNNL value.
12yearsPNNL-33283 Sec. 4.3.4.1Operating life over which replacements and the residual value are placed. Also the asset lifetime handed to project mode.
Market range Single PNNL value for VRFB.
24yearsPNNL-33283 Table 6.2Construction period, documented to explain the gap with PNNL's LCOS.
Market range Single PNNL value.
1yearsPNNL-33283 Table 6.2Annuity period of the capital recovery factor.
Market range Single PNNL value.
20yearsPNNL-33283 Appendix 1 Eq. 7Default real discount rate for the CRF, the stack replacement and the residual value.
Market range Real interest 5.06 % to real cost of equity 9.92 %.
6.52%PNNL-33283 Table 6.1Lowest real rate in the input box.
Market range PNNL real rates 5.06-9.92 %.
5.06%PNNL-33283 Table 6.1Highest real rate in the input box.
Market range PNNL real rates 5.06-9.92 %.
9.92%PNNL-33283 Table 6.1Published all-in fixed O&M at the reference configuration.
Market range Single printed value.
6.66USD/kW/yearPNNL-33283 Sec. 4.3.2.1Routine share of fixed O&M, documented to show why it is not used alone.
Market range Single PNNL value.
0.43%PNNL-33283 Sec. 4.3.2.1All-in fixed O&M rate (routine O&M plus power-equipment augmentation, as PNNL's 'final' figure) on the direct CAPEX. Augmentation is not added again on top.
Market range 0.43 % routine only (PNNL); no independent range cited for the all-in rate.
0.47%OpenJack calibration on PNNL-33283Documented component of PNNL's final fixed O&M.
Market range Single PNNL value.
30%PNNL-33283 Sec. 4.3.2.1Augmentation interval inside PNNL's fixed O&M.
Market range Single PNNL value.
10yearsPNNL-33283 Sec. 4.3.2.1Annual warranty cost used in every reference case (low end of PNNL's range): a model value, no longer an input.
Market range USD 1.25-2.59/kWh-yr.
1.25USD/kWh/yearPNNL-33283 Sec. 4.3.2.2High end of the annual warranty cost.
Market range USD 1.25-2.59/kWh-yr.
2.59USD/kWh/yearPNNL-33283 Sec. 4.3.2.2Variable O&M per MWh discharged.
Market range Single PNNL generic value.
0.5125USD/MWhPNNL ESGC 2020PNNL's reference charging price.
Market range Single PNNL value; the slider runs 20-100 EUR/MWh.
0.03USD/kWhPNNL-33283 Table 6.1Electrolyte value basis for the end-of-life buy-back.
Market range USD 105/kWh (mixed acid) to 150 (sulfuric) to 180 (standard grade).
105USD/kWhPNNL-33283 Sec. 4.3.1Alternative electrolyte price.
Market range USD 105-180/kWh across chemistries.
150USD/kWhPNNL-33283 Sec. 4.3.1Electrolyte residual of the PNNL baseline case: none credited to the owner.
0%PNNL-33283 Sec. 4.3.3.2Electrolyte buy-back share at year 24 in the two buy-back cases.
Market range30%Ivanhoe / VRB Energy, WMF 2018Upper end of the vendor claim; documented, not used by any case.
Market range40%Ivanhoe / VRB Energy, WMF 2018PNNL's end-of-life sensitivity, documented to frame the residual-value choice.
Market range Single PNNL sensitivity value.
36.5USD/kWhPNNL-33283 Sec. 4.3.3.2Low end of a PNNL multi-technology LCOS range at 100-1,000 MW, kept as context; the LCOS bound is derived from the model's input-box enumeration instead.
Market range USD 0.13-0.20/kWh for gravitational, thermal, Li-ion LFP, vanadium RFB and Li-ion NMC at 100-1,000 MW, after tax.
0.13USD/kWhPNNL-33283 Sec. 6.2.1High end of PNNL's printed battery LCOS at 1-10 MW, kept as context; the LCOS bound is derived from the model's input-box enumeration instead.
Market range USD 0.20-0.40/kWh for all battery systems at 1-10 MW, durations up to 10 h, after tax.
0.4USD/kWhPNNL-33283 Sec. 6.2.1ECONOMIC BASIS. Every cost is in constant EUR 2021: USD 2021 figures are divided by 1.1827 USD/EUR and nothing is escalated (O&M, warranty, charging price and the year-12 stack replacement are all at today's real cost). The only rate is REAL (default 6.52 %, PNNL real WACC), used for the CRF, the stack replacement and the electrolyte residual. There is no nominal rate and no inflation input. The discount rate never enters a line handed to project mode as opex: fixed O&M, warranty and variable O&M are undiscounted annual cash. The iron flow battery of the same batch uses the same basis.
Market range Not applicable.
—OpenJack economic convention, PNNL real WACCCAPEX. Storage block = 351.5 USD/kW x kW + 177.7 USD/kWh x kWh; DC BOS = 20 % of it; power equipment = 60 + 73 + 7.8 USD/kW; direct = sum; SI, EPC and PD are 15 % each on the running total (x 1.520875); grid integration 25 USD/kW is added after the markups; the total is divided by 1.1827. That build-up is PNNL's 10 MW anchor. SIZE: it is multiplied by (energy / 40 MWh)^(0.978 - 1), the power law of PNNL's +/-5 % size rule (x1.052 at 1 MW, x0.951 at 100 MW at 4 h). The 100 MW / 10 h cross-check gives 384.2 USD/kWh against PNNL's printed 385 (0.998); it was 412.3 (1.071) without the rule. CUSTOMIZED: the user's EUR/kWh replaces the model value at every size, no scale law; O&M, warranty and the stack replacement stay on the model's sourced build-up at the plant size (size factor applied), because a quote does not reveal its direct-cost split. The power/energy split is the model split times the ratio of the retained CAPEX to the model CAPEX before the size factor, so power part x kW + energy part x kWh = total CAPEX in both modes.
Market range PNNL battery band USD 300-600/kWh; model 336-460 EUR/kWh over 4-12 h.
—PNNL ESGC 2020 / 2022ROUND TRIP. AC round trip = DC round trip including pumping and auxiliaries x inverter efficiency^2 x transformer efficiency^2 = 0.71 x 0.98^2 x 0.98^2 = 65.49 % by default. It is derived from components and never set to a published value; the published 65 % is shown separately as a gap. Over the DC input 71-82 % it spans 65.49-75.63 %, inside the 65-80 % literature range.
Market range 65-80 % for RFBs (PNNL 2020 literature range).
—PNNL-33283 Table 4.9CYCLES. Discharge time = DOD x duration, charge time = discharge time / AC round trip, rest = 0.5 h below 6 h and 0 from 6 h (two rests per cycle). Cycles = min(requested equivalent cycles / DOD, 8,760 / cycle time): PNNL Eq. 2 with the user's equivalent cycles in place of PNNL's fixed 365 (default 365, slider 285-365). DOD 80 %. At 365 the request binds up to about 9.5 h; above, the plant is time-limited (346.7 equivalent cycles at 10 h, 288.9 at 12 h) and the annual discharge stays at 8,760 x P / (1 + 1/RTE). At 10 MW the LCOS is lowest near 9.5 h (133.3 EUR/MWh at the defaults) and rises to 151.3 at 12 h.
Market range Not applicable.
—PNNL-33283 Eq. 2-3LIFECYCLE. Stacks and pumps are replaced once, at year 12, at 351.5 USD/kW times the size factor (no markups, no learning; Customized does not change it); its annualised cost is its own LCOS component, because project mode only replaces the whole asset. Electrolyte and tanks are never replaced. At year 24 the electrolyte is credited at the residual share of 105 USD/kWh (mixed-acid electrolyte) set by the reference case: 0 % in the PNNL baseline (the developer takes the electrolyte at no cost), 30 % in the buy-back cases (VRB Energy lease claim, vendor-side, evidence low). PNNL treats a net disposal COST of 36.5 USD/kWh as a sensitivity. CAPEX_PV = CAPEX + replacement / (1+r)^12 - residual / (1+r)^24, annualised with CRF over 20 years.
Market range Not applicable.
—PNNL-33283 / VRB EnergyO&M. Fixed O&M = 0.47 % of direct CAPEX times the size factor (Customized does not change it), the rate that reproduces PNNL's 'final' fixed O&M (6.66 USD/kW-yr, which PNNL describes as 0.43 % routine plus power-equipment augmentation of 30 % every 10 years). PNNL's decomposition cannot be rebuilt from its text: 0.43 % alone gives 6.09 (0.914x) and 0.43 % plus augmentation levelised at the real WACC gives 9.21 (1.38x). Augmentation is therefore NOT modelled separately, or it would be counted twice. Warranty: 1.25 USD/kWh-yr x kWh, every year, in every reference case (low end of PNNL's USD 1.25-2.59/kWh-yr). Variable O&M: 0.5125 USD/MWh discharged, 2020 USD unescalated, under 0.1 % of LCOS.
Market range Fixed O&M 0.43 % routine (PNNL); warranty USD 1.25-2.59/kWh-yr.
—OpenJack calibration on PNNL-33283CONVERGENCE. This calculator is PRE-TAX: PNNL's Eq. 1 with a plain capital recovery factor in place of PNNL's after-tax fixed charge rate. Comparisons in USD 2021 use 1.1827 USD/EUR on both sides: the default 167.8 EUR/MWh is 0.198 USD/kWh. A financier comparing to PNNL's LCOS should add about 9 %.
Market range PNNL-33283 prints two LCOS statements on different scopes, both after tax: USD 0.20-0.40/kWh for all battery systems at 1-10 MW and up to 10 h, and USD 0.13-0.20/kWh for five technologies (gravitational, thermal, LFP, VRFB, NMC) at 100-1,000 MW.
—OpenJack replica of PNNL-33283 Appendix 1BOUNDS. LCOS 87-400 EUR/MWh = the model's own envelope over the input box (91.6-380.1), rounded outward by about 5 %; it is a domain check of this calculator, not a market range. AC round trip 65-80 % = PNNL 2020 literature range (the cases give 65.49 and 71.94 %). Installed CAPEX 254-507 EUR/kWh = PNNL's USD 300-600/kWh battery band / 1.1827, which also bounds the Customized slider. Input box: energy 4-1,200 MWh with power 1-100 MW, duration 4-12 h, 285-365 equivalent cycles, three reference cases, Model or Customized CAPEX (254-507 EUR/kWh), charging price 20-100 EUR/MWh, real rate 5.06-9.92 %. Enumerated on a 0.05 h duration grid x 21 powers from 1 to 100 MW x cycles {285, 325, 365} x every case x {model, 254, 507} x the price and rate corners (364,392 valid points): LCOS min 91.6 at 100 MW / 10 h, 254 EUR/kWh customized, developer case, 20 EUR/MWh, 5.06 %; max 380.1 at 1 MW / 4 h, 285 cycles, PNNL baseline, 507 EUR/kWh customized, 100 EUR/MWh, 9.92 %. Energy share of CAPEX 56-86 % = its range over the box (59.6 % at 4 h to 81.5 % at 12 h, duration only) widened by about 5 %. On the model CAPEX alone the installed cost spans 312.0-484.3 EUR/kWh.
Market range Not applicable.
—Model enumeration + PNNL-33283CHAINING. The plant takes electricity and returns electricity. Inlet 'Electricity for charging' = annual charge / 8,760 in MW, hourly (2.545 MW average at the defaults); outlet 'Electricity discharged' = annual discharge / 8,760 in MW, hourly (1.667 MW), the main product. No MWh/yearly flows (invariant I3). The inlet is priced by the project, so the meta books NO charging cost in costs.opex (invariant I5); the standalone LCOS keeps the charging price as its own input. Never link the outlet back to this asset's inlet, nor to the source that charges it, or the netting cancels charge against discharge. Both flows are manual_only: power and energy are sized independently, so there is no single input to resize. CAPEX goes to the project as isbl = total installed CAPEX, already all-in (SI + EPC + PD + grid), so battery_limit = fully_financed; 'installed' or 'exfactory' would add the uplift twice (BUG-044). The year-12 stack replacement is not handed over: project mode replaces the whole asset at its 24-year lifetime, so add the stack replacement by hand there.
Market range Not applicable (chaining rule).
—OpenJack chaining doctrine written 2026-10-04 for the VRFB.LIMITS. Not modelled: taxes, depreciation and construction finance (pre-tax, about 9 % below PNNL's after-tax LCOS); power above 100 MW, outside PNNL's size rule; hourly dispatch, price arbitrage and grid fees (one average charging price); capacity fade and electrolyte rebalancing; end-of-life disposal cost (PNNL's 36.5 USD/kWh sensitivity); land. The 2020 power/energy split is applied to 2021 costs; variable O&M is a 2020 USD value; 351.5 USD/kW is reused for the replacement with no learning curve and no size factor. O&M is calibrated at the 10 MW anchor and not scaled. The electrolyte residual of the buy-back cases is a vendor claim.
Market range Not applicable.
—OpenJack model