Hub-Settled PPA: A $45 Strike Becomes $39/MWh at the Project Node
Prairie Ridge Solar has a $45/MWh PPA.
Its model should not start with:
PPA price × generation
=
revenue
The first question is where the floating leg settles.
Keep the same project from Electricity Basis Risk:
Capacity 200 MW
Annual generation 438,000 MWh
PPA strike $45.00/MWh
Generation-weighted hub price $40.00/MWh
Generation-weighted project-node price $34.00/MWh
Assume the PPA is a fixed-for-floating financial contract that settles the project's actual generation against the hub.
Prairie Ridge sells physical power at its node for $34/MWh.
The contract pays:
Strike - Hub
= $45 - $40
= $5/MWh
So Prairie Ridge receives:
Physical node sale $34/MWh
PPA settlement +5/MWh
-------
Net realized price $39/MWh
The document says $45.
The asset realizes $39.
That is not a PPA default.
It is exactly what a hub-settled contract does when the node is $6 below the hub.
Write the two cash flows separately
A financial PPA is a financial hedge rather than physical delivery to the corporate buyer. The U.S. EPA describes financial PPAs as virtual or synthetic PPAs and fixed-for-floating arrangements. CFTC materials likewise describe VPPAs as transactions that can include contracts for differences or fixed-for-floating swaps tied to wholesale locational prices.
The seller still has a physical market sale.
For Prairie Ridge, under our assumed contract:
Physical_Revenue_t
=
Generation_t × Node_Price_t
and:
PPA_Settlement_t
=
Settlement_Quantity_t
×
(Strike - Hub_Price_t)
If Settlement Quantity equals actual generation, the combined price per MWh is:
Node + Strike - Hub
=
Strike + (Node - Hub)
So:
Net price
=
$45 + ($34 - $40)
=
$39/MWh
This identity is the most important line in the article.
A hub-settled fixed-for-floating PPA fixes the hub component.
It does not, by itself, fix the physical node.
Node settlement can remove locational basis — but only if the other terms line up
Now change only the floating index.
Assume the same contract settles against the project node instead of the hub, with settlement quantity equal to actual generation and no floor, cap or other price adjustment.
Then:
Physical revenue Node
PPA settlement Strike - Node
-------
Net Strike
For Prairie Ridge:
$34 + ($45 - $34)
= $45/MWh
Under those specific assumptions, locational basis cancels.
But do not turn that algebra into the blanket statement:
Node-settled PPA = fully hedged.
The actual contract can still leave:
- settlement-quantity risk;
- day-ahead / real-time mismatch;
- negative-price floor exposure;
- imbalance or scheduling costs;
- exclusions for curtailed or unavailable MWh;
- settlement caps; and
- credit / termination risk.
The settlement point closes one gap.
It does not close every revenue gap.
The settlement quantity is as important as the settlement price
Our first Prairie Ridge calculation assumed:
Settlement Quantity = actual project generation
That is only an assumption.
The contract controls the quantity.
A hedge can instead use:
- metered generation;
- delivered generation;
- a fixed hourly profile;
- a percentage of output;
- a capped quantity; or
- another defined settlement volume.
Now change Prairie Ridge's example.
The project generates 100 MWh in one hour.
Assume only 80 MWh are settlement quantity under the hedge.
The prices are still:
Strike $45
Hub $40
Node $34
Physical revenue:
100 MWh × $34
= $3,400
PPA settlement:
80 MWh × ($45 - $40)
= $400
Combined cash:
$3,400 + $400
= $3,800
Effective project price:
$3,800 / 100 MWh
= $38/MWh
The 80 hedged MWh effectively receive $39/MWh under the hub-settled formula.
The extra 20 MWh are simply exposed to the $34 node.
That is volume mismatch layered on top of locational basis.
A model with one annual PPA-price cell cannot show it.
Hub-settled does not tell you whether the hub is DA or RT
Now assume Prairie Ridge's physical energy settles at the real-time node, while its PPA floating leg references the day-ahead hub.
This difference:
RT Node - DA Hub
is not pure locational basis.
It can be decomposed into:
RT Node - DA Hub
=
(RT Node - RT Hub)
+
(RT Hub - DA Hub)
The first term is the real-time node-to-hub location spread.
The second is a real-time versus day-ahead spread at the hub.
That matters for hedging.
A congestion instrument based on day-ahead congestion can reduce one piece of the exposure while the real-time mismatch remains.
The contract model should therefore store at least:
Physical_Market RT
Physical_Settlement_Point project node
PPA_Market DA or RT
PPA_Settlement_Point named hub
before it calculates a single dollar.
"Hub-settled" by itself is not enough information.
The $45 PPA loses $2.628 million before any floor or curtailment
Return to the annual example with matched actual-generation settlement quantity.
Prairie Ridge would receive at the strike with no locational gap:
438,000 MWh × $45
= $19.710m
With the $34 node / $40 hub:
438,000 MWh × $39
= $17.082m
Difference:
$19.710m - $17.082m
= $2.628m
The project has delivered the assumed generation.
The PPA has settled exactly according to its terms.
The annual revenue shortfall is still $2.628 million.
A P50 energy case can therefore be completely right while the revenue case is wrong.
P50 answers:
How much energy is expected?
The PPA model still has to answer:
At which price does each MWh settle physically and financially?
A negative-price floor is another contract term, not a market law
Now add an illustrative floating-price floor.
Assume one hour:
Generation 100 MWh
Strike $45/MWh
Actual hub -$20/MWh
Project node -$30/MWh
Contract floating-price floor $0/MWh
Without a floor, the hub-settled PPA payment would be:
$45 - (-$20)
= $65/MWh
The project would receive:
Physical node revenue -$30/MWh
PPA settlement +$65/MWh
-------
Net +$35/MWh
That still equals:
Strike + basis
=
$45 + (-$30 - -$20)
=
$35
Now apply the illustrative contract floor.
The PPA uses $0 instead of the actual -$20 hub price:
PPA settlement
= $45 - $0
= $45/MWh
Physical plus PPA:
-$30 + $45
= $15/MWh
The floor cost Prairie Ridge:
$35 - $15
= $20/MWh
or:
100 MWh × $20
= $2,000 in that hour
Nothing about this $20/MWh loss is inherent in a VPPA.
It exists because we inserted a specific floor clause into the example.
That is how the real model should work too: read the actual definition of Floating Price and reproduce it.
Do not import a generic market floor from another deal.
A floor can interact with the generation decision
The floor example also changes economics at the plant.
With no floor, the contract settlement was paying Prairie Ridge $65/MWh while the physical node was -$30.
With the $0 floor, the contract settlement is only $45.
If the project has production-based tax credits, REC value, operating constraints, curtailment rights or shutdown costs, the optimal generation decision in a negative-price hour can depend on all of them.
The correct dispatch / curtailment threshold is therefore project-specific.
The PPA model should not hard-code:
negative price
→ curtail
or:
PTC project
→ always generate
It should calculate the marginal economics under the actual contract, tax-credit and operating terms.
Basis tail risk comes directly from the formula
Average basis is useful for annual cash-flow planning.
It does not describe the worst hourly settlement.
Use a purely illustrative scarcity hour for Prairie Ridge:
Generation 200 MWh
PPA strike $45/MWh
Hub price $1,000/MWh
Node price $100/MWh
Basis:
$100 - $1,000
= -$900/MWh
Net project price under the hub-settled formula:
Strike + basis
=
$45 - $900
=
-$855/MWh
One-hour cash result:
200 MWh × -$855
= -$171,000
Compare the no-basis strike revenue:
200 MWh × $45
= +$9,000
Difference:
-$180,000
This is not a forecast of an ERCOT or PJM event.
It is algebra showing that a fixed strike does not cap adverse node-to-hub basis unless the contract adds a cap.
If the PPA has an hourly or annual settlement cap, model it.
If it does not, the formula has no contractual basis cap merely because the strike is fixed.
Compare actual bids on effective price, not strike
Assume Prairie Ridge has two illustrative commercial offers.
Offer A — hub settlement
Strike $45/MWh
Expected generation-weighted basis -$6/MWh
--------
Expected effective price $39/MWh
Offer B — node settlement
The offtaker offers a lower strike because it is taking the locational risk.
Assume:
Node-settled strike $42/MWh
Expected locational basis retained $0/MWh
--------
Expected effective price $42/MWh
On the 438,000 MWh annual case:
Offer A revenue
= 438,000 × $39
= $17.082m
Offer B revenue
= 438,000 × $42
= $18.396m
Difference:
$1.314m per year
The higher headline strike lost.
The correct negotiation variable is:
Node-settlement strike discount
versus
basis transferred to the buyer
If the buyer cuts the strike by $3/MWh to remove an expected $6/MWh of negative basis, Prairie Ridge has bought $6 of protection for $3.
That can be a very good trade.
It can also be a bad trade if the project's actual forward basis is only -$1/MWh.
The sponsor needs its own basis forecast before it can evaluate the offer.
The lender should size to settlement cash, not the PPA cover page
Prairie Ridge's annual opex is $3 million.
If the lender reads the $45 strike as project revenue
Revenue $19.710m
Opex (3.000m)
--------
CFADS $16.710m
At 1.35x sizing DSCR:
Debt service
= $16.710m / 1.35
= $12.378m
Under the hub-settled cash flows
Revenue $17.082m
Opex (3.000m)
--------
CFADS $14.082m
DSCR:
$14.082m / $12.378m
= 1.14x
The PPA is not underperforming.
The debt sizing is.
That is the exact reason the settlement point belongs in the lender's revenue case before gearing is solved.
A congestion hedge needs to match the actual exposure
PJM Financial Transmission Rights and ERCOT Congestion Revenue Rights are financial transmission products.
They do not deliver physical electricity.
PJM's FTRs are tied to hourly day-ahead congestion-price differences across a path.
ERCOT CRRs are financial instruments for congestion rents and include point-to-point obligation and option structures under the protocols.
Prairie Ridge's exposure can contain more than that congestion component:
location spread
+
DA / RT mismatch
+
loss treatment
+
volume shape mismatch
+
contract floors / caps
So a congestion hedge should be modeled as a line item that offsets the component it actually covers.
Do not write:
FTR purchased
→ hub basis eliminated
Write:
Gross settlement exposure
- FTR / CRR cash flow
= residual basis exposure
Then stress the residual.
Physical versus financial is not the final risk-allocation question
A physical PPA can have a delivery point at or near the project, or a downstream market point.
A financial PPA can settle at the node or at a hub.
Those structures create different scheduling, title-transfer and regulatory mechanics.
For basis, the practical question is narrower:
At what point does the seller stop being economically responsible for the location spread?
The answer is in the delivery and settlement provisions.
Not in the label “physical” or “virtual.”
A busbar-style physical sale can leave downstream congestion with the buyer.
Another physical contract can leave the seller responsible to a downstream delivery point.
Read the defined Delivery Point, Settlement Point, Contract Quantity and Floating Price before deciding who owns basis.
The Prairie Ridge settlement page
The project model should be able to reconstruct an invoice.
Physical leg
Metered / settled MWh
×
project-node market price
=
physical market cash
PPA leg
Contract settlement quantity
×
(strike - contractual floating price)
=
PPA cash
Basis bridge
For our simple actual-generation / RT-to-RT case:
Strike $45/MWh
Node-to-hub basis -6/MWh
-------
Realized hedged price $39/MWh
Additional contractual adjustments
Separate rows for:
DA / RT mismatch
floating-price floor
settlement cap
quantity cap / fixed profile
curtailment / deemed-energy treatment
imbalance / scheduling charges
Annual financing bridge
No-basis PPA revenue $19.710m
Locational basis loss (2.628m)
--------
Revenue $17.082m
Opex (3.000m)
--------
CFADS $14.082m
Debt service $12.378m
DSCR 1.14x
If the model cannot move from the PPA definitions to those rows, the offtake is not actually modeled.
What to negotiate before signing
Prairie Ridge's settlement discussion should be numerical.
- What exact ISO / RTO settlement point defines the floating price?
- Is it a resource node, trading hub, load zone or another index?
- Is the floating price day-ahead, real-time or a defined blend?
- What exact MWh quantity settles the CfD?
- Does a floor alter negative floating prices?
- Is there an adverse-settlement cap?
- How are curtailed, unavailable or deemed MWh treated?
- What is the sponsor's generation-weighted node-to-reference basis?
- What is the lender's downside basis?
- How much strike does the offtaker require to move settlement from hub to node?
- Which offer produces the higher effective project price after basis?
- If congestion rights are provided or purchased, what exact component and tenor do they hedge?
- What residual exposure reaches CFADS?
Prairie Ridge's PPA has not changed since the first line of this article.
It still says $45/MWh.
The difference between a weak model and a bankable one is whether that $45 is treated as an input or as one leg of a settlement equation.
For Prairie Ridge, the equation produces $39.
That $6/MWh difference is $2.628 million of annual cash and the difference between a 1.35x sizing case and roughly 1.14x actual DSCR.
Primary sources: U.S. EPA — Financial Power Purchase Agreements · CFTC — VPPA / Fixed-for-Floating Market Description · FERC — Understanding Energy Markets · PJM Manual 11 — Energy & Ancillary Services Market Operations · PJM Manual 6 — Financial Transmission Rights · ERCOT — Current Nodal Protocols