Scenario settings
This page describes every scenario setting on Tensor Cloud. Scenarios have fewer settings than assets or PPAs, but their assumptions change over time, which adds complexity. For what scenarios are, see the introduction.
The scenario settings page opens when you add a scenario or edit an existing one. Its side navigation groups the settings into General (About), Macroeconomic (Inflation), and Electricity markets (Average price, Mean abs. deviation, Frequency control, Area curtailment, JEPX NFC (non-FIT), and Base curves).
Scenario name and description
In the About section of the scenario settings, enter the Scenario name and an optional Description. Scenario names must be unique within the workspace. Descriptions can be up to 1,000 characters long.
You cannot edit the name or description of the Tensor baseline scenario. After creating your workspace, add a scenario that fits the needs of your organization and your investors. See the Tensor baseline scenario.
Scenario parameters
Scenario parameters fall into two categories: Macroeconomic and Electricity markets. Each parameter takes one assumption, a set of values over time.
Macroeconomic
Inflation rate
The inflation rate of the overall economy. It sets the price of PPAs with inflation escalation and is used to calculate inflation-bound OPEX. Values must be between -99% and 99%.
The built-in assumption is the consumer price path from the Cabinet Office's Economic and Fiscal Projections for Medium to Long Term Analysis (July 2026 edition) to FY2040. Its three cases share one price path, converging on about 2%, so there is a single default. Earlier editions stay available as superseded rows for the scenarios that already use them; the August 2025 past-projection case is the low-inflation variant. Beyond FY2040 the rate is extrapolated flat.
Electricity markets
Outside fixed-price PPAs and FIT subsidies, your assumptions about future electricity markets drive more of an asset's value than anything else.
Tensor Cloud turns your annual price assumptions into high-resolution price forward curves, as described in the technology section. You do not have to predict daily, weekly, or seasonal price movements at 30-minute resolution, and can focus on long-term trends in price levels and volatility. This mirrors a conventional techno-economic model built around rough yearly estimates.
Tensor Cloud continuously updates its forecasting models with the latest market data, and replaces predictions with actuals as they become available. You might therefore see slightly different results when you re-run an asset simulation.
Average price
Future electricity prices are expressed as annual averages (Japanese fiscal year) of day-ahead market prices, in JPY per kWh. You build the assumption by entering the average annual price for each grid area for any year up to 2059. Values must be between 0.01 and 100 JPY per kWh.
You do not need a separate assumption for the intraday market, because intraday and day-ahead prices are strongly and predictably correlated. Tensor Cloud infers this correlation from past market data and models the intraday market at 30-minute resolution from your day-ahead assumption.
Trading volumes on the Japanese intraday market are still far below those on the day-ahead market, especially compared with European markets. As trading volume on the JEPX intraday market grows under the new market regime, we will revisit the scenario parameters and offer more flexibility for custom intraday price assumptions.
You cannot redefine or add to past actual data for simulations. Tensor Cloud uses actual data automatically where it exists.
As with other parameters, average price assumptions use automatic interpolation and flat extrapolation.
Historical average price reference
Historical day-ahead prices show long-term trends and can help you set average price assumptions.
Historical annual average day-ahead prices by grid area (¥/kWh), Japanese fiscal year (April to March):
| Fiscal Year | System | Hokkaido | Tohoku | Tokyo | Chubu | Hokuriku | Kansai | Chugoku | Shikoku | Kyushu |
|---|---|---|---|---|---|---|---|---|---|---|
| 2018 | 9.76 | 14.47 | 10.66 | 10.69 | 8.88 | 8.89 | 8.89 | 8.89 | 8.88 | 8.35 |
| 2019 | 7.93 | 10.74 | 9.06 | 9.12 | 7.19 | 7.18 | 7.18 | 7.17 | 7.14 | 6.82 |
| 2020 | 11.21 | 12.30 | 11.90 | 12.02 | 10.93 | 11.06 | 11.06 | 11.05 | 11.06 | 10.72 |
| 2021 | 13.46 | 13.74 | 13.85 | 14.27 | 14.41 | 14.12 | 14.05 | 14.03 | 14.02 | 11.29 |
| 2022 | 20.41 | 21.66 | 21.58 | 23.50 | 20.82 | 19.55 | 19.54 | 19.21 | 19.10 | 14.42 |
| 2023 | 10.74 | 11.44 | 11.33 | 12.20 | 11.14 | 9.85 | 9.74 | 9.69 | 9.54 | 9.14 |
| 2024 | 12.29 | 12.64 | 12.69 | 13.66 | 12.84 | 11.85 | 11.70 | 11.66 | 10.67 | 10.87 |
Price trends:
- 2019 had the lowest average prices across all areas (6.8–10.7 ¥/kWh).
- 2022 had peak prices (14.4–23.5 ¥/kWh), highest in the Tokyo area.
- 2023 saw a strong price correction (9.1–12.2 ¥/kWh).
Mean absolute deviation (MAD)
You model price volatility in each grid area by entering the annual mean absolute deviation of day-ahead prices in JPY per kWh, between 0.01 and 100. As with the average price, the intraday mean absolute deviation is derived automatically from JEPX system day-ahead prices.
To see how Tensor Cloud uses this assumption, work backwards. The mean absolute deviation is calculated as follows:
- Take the arithmetic mean of the JEPX day-ahead system price over all 30-minute time slots of a fiscal year.
- For each 30-minute time slot of that fiscal year, subtract the slot's price from the mean calculated in step 1.
- Take the arithmetic mean of the absolute values of the differences from step 2 and round the result to 2 decimal places.
Historical MAD reference
Historical MAD values can help you set realistic assumptions. MAD measures price volatility: higher values mean larger price swings, lower values mean more stable prices.
What MAD levels mean for your scenarios:
- Low MAD (2–4 ¥/kWh): stable prices and predictable electricity costs.
- Medium MAD (4–7 ¥/kWh): moderate volatility with occasional price spikes.
- High MAD (7–11 ¥/kWh): volatile conditions with frequent, large price changes.
MAD measures absolute deviation from the mean price, so read it together with the average price level.
Historical annual MAD values by grid area (¥/kWh), Japanese fiscal year (April to March):
| Fiscal Year | System | Hokkaido | Tohoku | Tokyo | Chubu | Hokuriku | Kansai | Chugoku | Shikoku | Kyushu |
|---|---|---|---|---|---|---|---|---|---|---|
| 2018 | 1.94 | 4.45 | 2.03 | 2.02 | 2.18 | 2.19 | 2.19 | 2.19 | 2.19 | 1.96 |
| 2019 | 1.77 | 3.18 | 2.24 | 2.23 | 1.72 | 1.73 | 1.73 | 1.73 | 1.75 | 1.87 |
| 2020 | 10.25 | 10.98 | 10.80 | 10.84 | 9.97 | 10.20 | 10.19 | 10.19 | 10.21 | 10.15 |
| 2021 | 7.08 | 7.38 | 7.55 | 7.76 | 7.65 | 7.35 | 7.26 | 7.27 | 7.26 | 6.14 |
| 2022 | 7.03 | 8.34 | 8.95 | 8.54 | 7.11 | 6.33 | 6.33 | 6.16 | 6.10 | 7.49 |
| 2023 | 3.16 | 3.38 | 3.19 | 2.98 | 3.18 | 3.43 | 3.44 | 3.44 | 3.52 | 3.76 |
| 2024 | 3.00 | 3.09 | 2.97 | 2.83 | 3.33 | 3.56 | 3.56 | 3.58 | 3.49 | 3.59 |
Observations:
- 2019 had the lowest volatility in most areas (1.7–3.2 ¥/kWh); Hokkaido was the exception at 3.18 ¥/kWh.
- 2020 had exceptional volatility (10.0–11.0 ¥/kWh) in all areas due to market disruptions.
- 2021–2022 stayed elevated (6.1–8.9 ¥/kWh), with regional differences.
- In 2023–2024, volatility returned to moderate levels (2.8–3.8 ¥/kWh).
Setting MAD assumptions:
- Conservative scenarios: use lower values (1.7–3.8 ¥/kWh) to model stable market conditions.
- Base case scenarios: consider the average of the last 2 years (2.8–3.8 ¥/kWh).
- Stress test scenarios: use higher values (7.0–11.0 ¥/kWh) to model volatile periods.
- Regional differences: account for areas with consistently higher volatility, such as Hokkaido.
For production financial models, run a sensitivity analysis over a range of MAD values to see how price volatility affects your asset's financial performance.
Frequency control reserve price
For assets with batteries, Tensor Cloud simulates participation in the primary reserve offline market, part of Japan's balancing market, where batteries are paid for committing frequency control capacity. This parameter sets the unit price in JPY per kW of committed capacity per 30-minute time slot, between 0 and 100. Assumptions for this parameter start in FY2024.
Revenue for a capacity trade in a 30-minute time slot is the ΔkW price (¥/kW) multiplied by the committed capacity (kW). Only committed capacity is paid: energy discharged during frequency control does not generate additional revenue in the simulation.
The simulation assumes every bid is accepted: in each slot the battery commits, the full price times the committed capacity is booked. In the real market a bid clears only part of the time. The built-in assumption therefore holds expected revenue per committed kW, not a clearing price: the clearing price of the primary reserve offline product multiplied by the share of block-time in which it actually cleared, computed per area and fiscal year from published market results. It is the average earned per committed slot, including the slots that pay nothing. The clearing share is a market-wide average, not the clearing rate of any one asset. For a fiscal year still in progress, the months with published results are actuals and the remaining months are the regulatory price cap multiplied by the same clearing share. Beyond that the series is anchored at the price cap multiplied by the latest clearing share.
If you build your own assumption, enter it the same way. A plain clearing price with no clearing share overstates revenue, for the reason above.
The unit price is assumed constant within each year, so seasonal variation is not modeled. As with other parameters, the assumption uses automatic interpolation and flat extrapolation across years.
For how balancing market participation is simulated, including the trading period and bid calculation, see the technology section.
JEPX NFC (non-FIT)
The average clearing price (JPY/kWh) of non-fossil certificates (NFCs) traded on the JEPX non-FIT market. It is used to estimate environmental value revenue for assets not linked to bilateral agreements. Values must be between 0.01 and 100 JPY per kWh. The built-in assumption tracks the renewable-designated non-FIT certificate, volume-weighted by fiscal year, and holds at the market's price cap while auctions keep clearing at the cap.
Area curtailment
After electricity prices, the curtailment assumption often has the largest impact on the financial performance of your assets. It is expressed as the percentage of annual generation that is curtailed.
Predicting curtailment at a specific location is hard. Until more hyper-local curtailment data is public, we believe the annual average curtailment per grid area is the most practical basis for asset planning.
Annual curtailment values must be between 0% and 65%. This limit avoids distortions in the simulation results. Contact us if you need to assume higher annual curtailment.
The built-in curtailment assumptions come from the long-term curtailment outlook of METI's next-generation power grid working group, one row for FIT assets and one for FIP assets per edition, using each area's solar (PV) figure for plants under the unlimited-curtailment rule. Each row has two anchors, the grid operator's forecast for the current fiscal year and METI's long-term end-year outlook, and the simulation interpolates between them. The FIP row is the Tensor default.
From the June 2025 edition onward, METI's FIP figures assume that every FIP plant has co-located storage of 3 kWh per kW of PV, and publish the curtailment that remains after that storage has absorbed what it can. Tensor Cloud loads these figures as published and models your asset's battery separately. For a FIP asset with a battery, part of the storage benefit is therefore counted twice; for a FIP asset without a battery, the figure is lower than a plant without storage would see. Treat the built-in FIP rows as an optimistic case, or enter your own assumption. Simulation results run with built-in assumptions carry a note to this effect.
If you run your own curtailment model or have bought sub-annual curtailment forecasts from a data provider or think tank and want to use them on Tensor Cloud, contact us.
Base curves
Tensor Cloud generates base price curves with machine learning models trained on historical weather and market data. The base curves are the foundation for your price assumptions and are updated regularly as new market data comes in.
To keep financial models stable and reproducible, Tensor Cloud keeps versions of the base curves. Each version is generated at a specific point in time from the market data available then.
When you create or edit a scenario, you select which base curve version to use. This lets you:
- keep using the same base curves across simulations so results stay comparable,
- switch to a newer version with the latest market data and model improvements, or
- go back to an earlier version to reproduce past simulation results.
Every month, the machine learning models are retrained with new market data, and the result is published as a new base curve version if it passes automated stability checks. A further version can also be created when:
- the forecasting method is improved significantly, or
- major market events require recalibrating the models.
For production financial models, select a specific base curve version and note it in the scenario description. This keeps results reproducible and consistent across your portfolio.
Assumptions
Each scenario has several parameters, such as the inflation rate or the electricity price, and these change over time with electricity markets and the wider economy. In a spreadsheet model you would enter a different value for each year. On Tensor Cloud you define how each parameter changes over time with an assumption.
All annual scenario assumptions refer to Japanese fiscal years, from April to March. For example, average electricity prices for 2026 refer to April 2026 to March 2027. Adjust your assumptions accordingly.
An assumption is a parameter changing over time in a specific way. Each parameter of a scenario has one active assumption, but you can create as many assumptions as you like, reuse them in other scenarios, or pick from the built-in assumptions. You can name, save, edit, and delete assumptions.
Tensor-provided assumptions are versioned. When Tensor Cloud refreshes them from a new publication, it adds new rows and moves the Tensor default to them; the earlier rows keep their values and stay selectable, labelled as superseded, so a scenario that uses them keeps producing the same results. The last refresh was in September 2026. At the same time, each workspace's Tensor baseline scenario was kept as Tensor baseline (2025) and a new Tensor baseline was created on the current rows; existing simulations and custom scenarios were not changed.
For example, the data points below could be an assumption for the inflation rate:
| Year | Inflation rate |
|---|---|
| 2022 | 1.6% |
| 2023 | 0.9% |
| 2024 | 0.6% |
| 2025 | 0.6% |
| 2026 | 0.4% |
Entering a value for every year (and, for some parameters, every grid area) is tedious and error-prone, so Tensor Cloud fills in values with automatic interpolation and flat extrapolation.
Automatic interpolation
Tensor Cloud fills in values for missing years. If your assumption only contains 1% for 2022 and 3% for 2024, for example, Tensor Cloud interpolates linearly between the two:
| Year | Value |
|---|---|
| 2022 | 1.0% |
| 2023 | 2.0% < interpolated value |
| 2024 | 3.0% |
Tensor Cloud currently supports only linear interpolation. We are evaluating other interpolation methods that would make it easier to model, for example, exponential growth of a parameter.
Flat extrapolation
For the years after the last value, Tensor Cloud takes the value of the last year and applies it to every year until the end of the simulation. The example above becomes:
| Year | Value |
|---|---|
| 2022 | 1.0% |
| 2023 | 2.0% < interpolated value |
| 2024 | 3.0% |
| ... | 3.0% < extrapolated values |
| 2059 | 3.0% < extrapolated value |
The last possible year for assumptions on Tensor Cloud is currently 2059. We review this periodically and will extend it as needed. Contact us if you need assumptions beyond 2059.
How to use assumptions
Each scenario parameter has a dropdown on the right side of the screen listing its assumptions, split into Custom assumptions and Tensor-provided assumptions. If the selected assumption is editable, an Edit button next to the dropdown opens the assumption builder. For a Tensor-provided assumption the button reads View: you can see the assumption's details but not edit them.
To add your own assumption, select Add new assumption at the bottom of the dropdown.
To delete a custom assumption, open it in the assumption builder and select Delete from the three-dot menu at the top right. If other scenarios in your workspace use the assumption, select a replacement for them and confirm with Change and delete.
Assumption builder
In the assumption builder you create an assumption by entering yearly values, much as you would enter an inflation rate for each year of a spreadsheet model.
Naming assumptions
When you create an assumption from scratch, first give it a name in the Name field at the top of the assumption builder. Names must be unique among the custom assumptions of the workspace.
Assumptions are shared with all members of a workspace, so agree on a naming scheme with your colleagues early on. Prefixes or suffixes work well, for example experiment/NAME, draft/NAME, or approved/NAME.
Adding values to assumptions
To add a value, choose the year in the year dropdown, enter the value, and click Add or press Enter. You can enter values in any order; Tensor Cloud sorts them by year.
To delete a value, click the delete icon on the right of its row.
You can also paste several years at once, for example two columns copied from a spreadsheet: one with the year (or a date in yyyy/MM/dd or yyyy-MM-dd format) and one with the value, separated by tabs, commas, or spaces.
Instead of entering every year by hand, identify the main inflection points in your model and let automatic interpolation and flat extrapolation fill in the rest. Check the timeline preview to see how the assumption develops over time.
Assumption starting values
A new assumption already contains historical values as a starting point. For example, a new solar PV curtailment assumption is pre-filled with actual FY2023 curtailment data for each grid area.
You can enter years from FY2022 (FY2024 for the frequency control reserve price) to FY2059. Tensor Cloud uses the latest actual market and grid data when it runs asset simulations, so values for past periods with actual data do not change simulation results. The assumption builder works in Japanese fiscal years.
Grid areas
Some parameters, such as electricity prices and curtailment, are set per grid area. For these, the assumption builder lets you add, edit, and delete values for each area separately.
Select the area in the Grid area dropdown at the top of the assumption builder and enter your values. Click Apply to all to copy the values of the selected grid area to all other areas.
Use Apply to all with care: it can overwrite values you have built up for other grid areas.
Timeline preview
The right side of the assumption builder shows a line chart of how your values develop over time up to 2059, the last year for assumptions on Tensor Cloud.
Hover over the line to see the results of automatic interpolation and flat extrapolation on the values you entered.
Deleting a scenario
To delete a scenario permanently, click the Delete scenario button at the bottom of the About section in the scenario settings. You can also delete scenarios from the scenarios overview page or the menu on the scenario page. Deleting a scenario might invalidate simulation results. You cannot delete the Tensor baseline scenario.