Tariff and escalation in a solar PPA: flat, escalating and indexed prices in the model

By SolarQuant Editorial. Published 2026-10-05. Last updated 2026-10-05.

The tariff in a solar power purchase agreement (PPA) is rarely just one number. It is a starting price plus a rule for changing it, and each choice moves revenue, the debt service cover ratio (DSCR) and debt size. This article sets out the shapes seen in public contracts and guides, and shows how each one feeds a cash flow model.

What example does this article use?

The example is an invented 40 MWp ground-mounted solar plant in no named market. One buyer takes the power at the plant substation and pays in USD under a 20-year PPA that starts at the commercial operation date. We use the same plant as in the article Debt sizing for solar projects: gearing cap versus DSCR sculpting, seen from the revenue side, and every figure below is invented.

Item Figure
Plant and contract 40 MWp, one buyer, USD payments, 20-year PPA, 12-month construction
Year 1 generation P90 70.0 GWh, P50 76.0 GWh
Degradation 0.5% a year (year 12 P90: 66.2 GWh, year 20: 63.6 GWh)
Base tariff USD 80 per MWh, flat for 20 years
Base P90 revenue USD 5.60m in year 1, USD 5.30m in year 12, USD 5.09m in year 20, USD 106.8m over 20 years
Year 1 costs and cash flow Operating costs USD 1.0m, tax USD 0.4m, CFADS USD 4.2m
Funding and debt Total funding USD 40.0m, gearing cap 70:30 (USD 28.0m), senior debt 12 years at 7.0% all-in
Sculpting Debt service in year t = CFADS in year t / 1.30
Base case result Senior debt USD 25.07m (62.7% gearing), equity USD 14.9m, year 1 debt service USD 3.231m
DSCR levels Sizing 1.30x, lock-up 1.20x, default 1.10x
Escalation variant USD 80 per MWh in year 1, rising 2.0% a year
Partial indexation variant 30% of the price tied to an inflation index rising 3.0% a year, from year 2

CFADS is cash flow available for debt service. We use annual periods for simplicity, while real deals usually use six-month periods. Where we change the tariff, operating costs and tax stay at the base case, which is a simplification.

What is the tariff, and what does a PPA price cover?

The tariff is the price per unit of energy that the buyer pays the project company, usually quoted per kWh or per MWh. For non-dispatchable technologies such as solar, the Power Africa handbook says bidders typically quote an energy price per kWh or per MWh in a stated currency.

The Open Solar Contracts guide from IRENA and the Terrawatt Initiative describes the PPA as an exclusive supply agreement on a take or pay basis. In our reading, revenue is then tariff times paid energy, so any rule that changes the tariff changes every later year of revenue.

Berkeley Lab only includes a PPA in its sample when it is confident of key variables. Examples are execution date, starting date, starting price, escalation rate (if any), time-of-day factor (if any) and term. We use these as a checklist, and the sections below take each element in turn.

Which price shapes do public contracts use?

Public guides and programme documents show at least six shapes: flat, fixed escalation, a stepped profile, indexation, market-linked pricing and time-of-day shaping. Stoel Rives puts it simply: the price may be flat, escalate over time, or contain other features. Practice varies by country and by buyer, so the table lists what each page says and nothing more.

Shape What the public page says Source and country
Flat Tariff in rupees per kWh, fixed for the entire term of 25 years (rooftop PPA) SECI standard PPA, India
Fixed escalation Price increases at a predetermined rate, usually 2 to 5%; some owners escalate for a period, such as 10 years, then hold the price fixed NREL checklist, United States, public-sector buyers
Stepped profile A higher rate in the first 10 years and a lower rate in the later 10 years, given as a state requirement RCREEE user guide, citing Minnesota, United States
Inflation indexation Contracts in reals, adjusted annually for domestic inflation Oxford Institute for Energy Studies, Brazil
Inflation indexation Prices are indexed to inflation, based on the consumer price index Eberhard and Naude review, South Africa
Exchange rate adjustment Feed-in tariff in VND, adjusted for the VND and USD exchange rate Decision 13/2020, Vietnam
Commodity indexation Contracts indexed to a series of financial parameters, including fossil fuel prices at reference locations Reus, Munoz and Moreno, Chile
Market-linked Physical PPA price usually fixed; financial PPA settles the difference between a fixed price and the market price DLA Piper, corporate PPAs
Market-linked A stepped PPA whose price rises or falls with time or drivers such as the power price, and a reverse collar with a floor and a cap Bartolini and others, working paper on corporate PPAs
Time-of-day shape A time-of-day factor appears in the variables Berkeley Lab needs for its PPA sample Berkeley Lab report, United States

One caution: the SECI document is a standard PPA for grid-connected rooftop projects, so it shows one buyer type, not all Indian practice.

What does the escalation rule say?

The escalation rule says how the tariff moves after the starting price. Public sources show three variants.

In our reading, a flat nominal price falls in real terms every year, while an escalation rate near expected inflation holds the real price roughly level.

When does the first adjustment apply, and from which reference date?

The first adjustment date is when the price first moves, and the reference date is the date from which an index or an exchange rate is measured. Public sources describe four timings.

The pages we opened give no index reference month and no lag between index and price, so we quote none. Make both inputs in the model.

Two events can reset price outside the formula: a change in law and the renewal term. The RCREEE guide says a renewal option may repeat the initial price and terms or provide an indexed price. Change in law is covered in the parent article, How to read a solar PPA term sheet: a modeller's guide.

Are there floors, caps or partial indexation?

Partial indexation means only a share of the price is adjusted and the rest stays constant. Floors and caps limit a price, and public sources show them on bids and on market prices.

On the example, we add one invented case. In it, 30% of the price follows an inflation index rising 3.0% a year from year 2, and 70% stays at USD 80 per MWh. The 30% share sits inside the South African range, and the 3.0% rate is invented. The tariff reaches USD 89.22 per MWh in year 12 and USD 98.08 in year 20.

How do currency and tariff interact?

The currency of the tariff decides which index, if any, belongs in the price rule. Sources show three variants: USD pricing, local currency with inflation indexation, and local currency adjusted for the exchange rate.

Egypt's second feed-in tariff round was quoted in US cents per kWh. Brazilian contracts are in reals and adjusted for domestic inflation, and the Oxford paper says developers carry the currency risk. Vietnam quotes a VND tariff and adjusts it for the exchange rate.

The Power Africa handbook says PPA payments are most often made in the currency needed to repay the debt. Otherwise it expects hedging or exchange rate indexation with a true-up. The example pays in USD, so it needs no currency step.

The sibling article, Currency risk in a solar power purchase agreement: denominated versus paid, local-currency security and the FX true-up, covers denomination, payment currency and the true-up.

How do you model it?

Build one price path with a selector for the shape, then feed it to revenue and the debt tests. The same formula covers the shapes above, which keeps the model auditable.

Pt=P1[(1−s)+s⋅KtKref],Rt=Pt×Et,Et=E1(1−d)t−1P_t = P_1 \left[(1-s) + s \cdot \frac{K_t}{K_{ref}}\right], \qquad R_t = P_t \times E_t, \qquad E_t = E_1 (1-d)^{t-1}

Here P is the tariff, s the share adjusted, K the index or exchange rate, and K_ref its value at the reference date. E is paid energy and d is degradation.

A flat price has s = 0. A fixed escalator has s = 1 and an index growing at the escalation rate g, so P_t = P_1 (1+g)^(t-1).

  1. Enter the starting price and its currency. Keep USD per MWh and USD per kWh apart, and take the currency from the PPA.
  2. Select the shape. Offer flat, fixed escalation, indexed and partly indexed, and show the active choice on the inputs sheet.
  3. Set the first adjustment date and the reference date. Make both inputs, and count contract years from commercial operation.
  4. Set the share adjusted, and any floor or cap. Leave floor and cap empty unless the contract has them.
  5. Multiply by paid energy. Use P90 energy for the lender case and P50 for the sponsor case.
  6. Size the debt. Take the lower of the DSCR-sized amount and the gearing cap, as in the debt sizing article, Debt sizing for solar projects: gearing cap versus DSCR sculpting.
  7. Run the ratio tests. Check each year against the 1.20x lock-up and 1.10x default levels, for every shape.
  8. Keep real and nominal apart. Set the model's inflation path once, so that an indexed price and the cost lines use the same one.

What happens to revenue and debt on the example?

An escalating tariff leaves year 1 unchanged and pulls revenue away from the flat case every year after. The comparison below holds the P90 case, operating costs and tax at the base case, so only the tariff changes.

A 2.0% escalator lifts year 20 P90 revenue to USD 7.42m from USD 5.09m
Figure 1. invented example, P90 case, tariff the only change, computed in Python, 20 contract years

With 0.5% degradation, flat revenue falls every year, while a 2.0% escalator more than offsets it and revenue rises.

Escalation lifts DSCR-sized debt to USD 28.4m, so the USD 28.0m cap binds
Figure 2. invented example, DSCR sizing at 1.30x over 12 years at 7.0%, costs and tax held at base, computed in Python

Each USD 1 per MWh adds about USD 0.42m of debt. The 2.0% escalator would support USD 28.4m, but the USD 28.0m gearing cap limits borrowing to USD 28.0m.

A higher tariff raises CFADS and, with sculpting, debt service. Equity then funds less of the cost. The table sizes each case on its own tariff and applies the 70:30 cap.

Case Year 12 tariff (USD per MWh) Senior debt (USD m) Equity (USD m) Limit that binds Cash after debt service, 20 years (USD m) Simple equity IRR, change against flat
Flat USD 80 80.00 25.07 14.93 DSCR 42.4 Base
30% indexed at 3.0% 89.22 26.60 13.40 DSCR 50.5 +2.4 points
2.0% escalation 99.47 28.00 12.00 Gearing cap 59.7 +5.0 points

The IRR is a simple annual figure with equity paid at the start, and costs and tax held at the base case. Tax would rise with revenue, so the gaps are overstated, and only the order is reliable.

What does the lender view look like?

The public sources we opened do not say how lenders size debt on an escalating tariff. In our reading, lenders often size on the flat or lower case, and treat escalation as headroom. The next table tests both choices against both outcomes.

Debt sized on Senior debt (USD m) DSCR in years 1, 6 and 12 if the tariff escalates DSCR in years 1, 6 and 12 if the tariff stays flat
Flat case 25.07 1.30x, 1.48x, 1.72x 1.30x, 1.30x, 1.30x
Escalation case, capped at 70:30 28.00 1.32x, 1.32x, 1.32x 1.32x, 1.16x, 0.99x

With USD 28.0m of debt and no escalation, DSCR drops below the 1.20x lock-up level in year 5 and below the 1.10x default level in year 8. Sizing on the flat case holds at least 1.30x either way, and the sponsor still keeps the escalation upside, with a simple equity IRR about 4.1 points above the flat case.

What are the common mistakes?

Frequently asked questions

What escalation rate do solar PPAs use?

Practice varies by country and buyer. The NREL checklist says fixed escalators for US public-sector buyers usually run 2 to 5%, and we found no comparable public range for other markets. Use the rate in the contract, not a market norm.

What share of a tariff is indexed?

It depends on the programme. In the South African request for proposals, the partially indexed offer indexed 20% to 50% of the price at the CPI rate. The rest stayed constant, and other contracts index all of the price or none of it.

Does an escalator always raise debt size?

No. It raises CFADS and DSCR-sized debt, but the gearing cap can stop the extra borrowing. On the example the cap binds, so the escalator lowers equity by USD 2.9m rather than raising debt to USD 28.4m.

Should lenders see the escalation case or the flat case?

Both. In our reading, lenders often size on the flat or lower case and use the escalating case for headroom tests. Check the term sheet for the case that sets debt size.

Sources

Pages opened on 5 October 2026. The example project is invented and has no source.