Terrastrom Solutions

Tariff Studio

Runs the real capacity-layer engine in your browser -- no shortcuts, no reimplementation. User guide: how to use it and what data it needs →

Dataset

Or use your own data

Three CSVs, one row per 15-minute period: date,block,kWh,tier. Block is the period's number in the day, 0 to 95 (block 0 = 00:00–00:15), not a kWh range; tier = measured or modelled. All three CSVs and both nameplates are required. Calendar is optional -- skip it and Sundays are assumed the only non-working day.

Site names

Names the consuming factory and each generation site. Used to label this case on screen and in every report, so a reader can tell which site a number belongs to. Leave any blank and the case label is used instead.
Uploaded a wrong file? Choose the correct one in its box above and press Load my data again. The other files, the names and every setting stay as they are; only the sweep needs running again.

Parameters

Commercial structure

Every charge, banking rule and time-of-day window on this page comes from the chosen state's pack. It is not inferred from the meter data.
Decides whether cross-subsidy and additional surcharge are payable, and whether the Rule 3 captive test applies. Captive and group captive are charged identically; they differ in ownership, not in tariff.
The voltage the consumer is supplied at. Each state's pack quotes its charges at a reference voltage — 33 kV in Andhra Pradesh, Telangana, Uttar Pradesh, Rajasthan and Delhi — and keeps the other voltages beside them. Choosing one here prices the case at that voltage instead of at the reference. A charge with no rate at the chosen voltage keeps its reference rate, and the run says which ones did.

PPA pricing

Untick a plant when it and the consumer are both on the same distribution network — a 33 kV plant in the same DISCOM, or one at 132 kV or above that uses no other network. That plant is then billed no transmission at all, capacity or per unit, and the transmission share of the in-kind wheeling loss comes off with it. Ticked, which is the default, is today's behaviour.
Rs/kWh. If solar and wind are priced the same, the sweep still separates them by shape match to your load -- see the note on Stage 2.

Billing & banking

Untouched, the selected state's own banking charge applies — the figure in brackets is what that charge is, and it changes with the state and the structure. Where it says not allowed, banking is not permitted for that combination at all and this slider will do nothing. Drag it to test a different figure; it then applies to whichever state is selected.

Economics

Every chart and stat labelled "NPV" or "saving trajectory" follows this term.

Consumer

The same two figures as under Dataset: copied here when the data loads, and used for every run. Change them here to test a different contract demand without uploading again. This is the contract with the DISCOM, not a PPA quantity.

Generation yield scale

A flat multiplier on the generation file (0.90 = 10% less every year) to test a weaker or stronger yield. Not degradation, which the NPV applies separately each year.

BESS (Stage 3)

Rs per kWh cycled. Stage 3 refuses to run without a cost -- storage is never treated as free.

Sweep range

Narrows or widens Stage 1-3. Full-sweep runtime scales roughly with (solar points) × (wind points) -- a coarser step or narrower range runs faster. Stage 2's heatmap resolution follows these too. Tip: to hold wind fixed and sweep solar only, set Wind min = Wind max. The step is the smallest size change tested: set it to what can really be added, such as one wind turbine.

Run

Preview uses a coarse grid and updates automatically as you change a setting (a few seconds). It is for exploring direction, not the final number.
Full sweep uses the sweep-range step sizes above. With real 12-month generation data this is exact but slow -- expect 30 seconds to a few minutes. Explicit, because a number worth sizing a contract on should not appear silently.
Loading engine…

1Solar with grid

Diagnostic only -- shows what solar (backed by the grid, no wind) could do on its own before wind is added. Does not feed Stage 2; Stage 2 re-sweeps from the original case.

Effective tariff by solar size

2Solar + Wind with grid

2-D sweep over solar and wind capacity together, both backed by the grid. The recommended mix is the NPV-maximising cell. Sweep range and resolution are set in the Parameters panel.

Effective tariff by mix

3Storage on top of the Stage 2 mix

BESS power × duration swept on top of the fixed solar/wind mix Stage 2 chose. Full sweep only. The best-performing bar is outlined below.

Fixed size

PPA tariffs, billing basis, escalation, banking and the other economic assumptions are set on the Right-sizing tab and apply here too -- only the capacity is fixed here instead of swept.
Computing an initial recommendation from the dataset…
Recommended mix (last full sweep)
Run a full sweep on Tab 1 to get one
Or click its legend entry on any chart to toggle it there only.

Solve PPA rate for a target saving

Solves for the size currently set in Fixed size above -- the Stage 2 recommendation if you used that button, or your own edited mix if you changed the sizes. To solve for a different size, change them first, then press Solve again. The solved rates are written into the PPA fields on the Right-sizing tab; "Undo" puts back the rates you had before.

Dispatch view

Shows one typical day of the chosen month and day type, in 96 quarter-hours. The height of each stacked bar is that quarter-hour's consumption, split by where it came from: solar, wind, the bank, storage, and the grid. "Deposited to bank" (separate bars) is surplus sent to the bank. The day's and the month's totals are printed under the chart. Click a legend entry to hide or show a series. Changing the month or day type only changes which day is shown; nothing is recalculated.

Annual summary (year 1)

Third party vs captive

The same plants and the same size, costed under both commercial structures. Two annual runs, so it is asked for rather than recomputed as you change a setting.

Monthly bill vs grid-only

Monthly consumption: renewables vs grid

Units, not rupees. For each month, how much of the consumption was met by solar and wind (used as generated or drawn back from the bank) and how much still came from the grid. The two together are the month's total consumption.

Hourly dispatch, selected month & day type

Saving trajectory

Discounted annual saving by year, the same anchors-plus-interpolation the NPV is built from.

Cost lines, selected month

Cost lines, entire year

Assumptions & data-quality notes

Scenarios

Same dataset and economic assumptions as the other tabs (set on the Right-sizing tab); each scenario fixes its own solar/wind/BESS size -- no sweep here. Add a few and compare. Best mix is the configuration the tool itself recommends, kept in step with the last run on Tab 1 so the comparison always contains the answer it would give; edit it and your figures stand until the next run replaces them.

Comparison

NPV by scenario

Cumulative discounted saving