Hourly price and demand, with timeseries profiles

Release Notes · v2026.06 ·

Hourly price and demand, with timeseries profiles

The June release increases the temporal resolution of the model's economic inputs. Alongside the existing 24-hour average profile, you can now supply a full hourly timeseries — 8,760 values per year — for both PPA prices and grid demand. Two new first-class inputs, PPA Price Profiles and Grid Dispatch Profiles, carry that data into every simulation with built-in analytics.

PPA Price ProfilesGrid Dispatch ProfilesFour locked inputsOptimisation integrationConfig copyIn-app reporting
What changed. PPA price profiles and grid dispatch profiles are now first-class, explicit inputs to every simulation — with built-in analytics on both.
· v2026.06
Converge Hybrid

A battery's value is realised almost entirely in the extreme hours — the evening peak, the negative-price afternoon, the constrained winter week. Average those hours away and the business case averages away with them.

That is why price and demand now enter the model at full hourly resolution, not as a smoothed daily shape.

01 / WHAT'S NEWTwo new inputs, built for the extremes

Bring your real price and demand story into the model. Both new profile types ship with built-in analytics, so you can see exactly when your value sits before you run anything.

PPA Price Profiles

Upload a full hourly price timeseries in your own timezone — we align it for you — or paste a quick 24-hour average shape for early screening. Negative prices and escalation are fully supported.

Each profile carries daily and seasonal price shapes, a 12×24 hour/month heatmap, a distribution and a monthly summary.

Hourly timeseries24h shapeNegative pricesEscalation

Grid Dispatch Profiles

The companion to PPA: upload an hourly demand profile (MW) with your grid connection capacity, so the battery and export logic respect a real interconnection limit hour by hour.

Built-in demand analytics report connection capacity, mean demand and constrained hours per year.

Hourly demand (MW)Connection capConstrained hours

02 / THE EVIDENCEWhy it matters — a measured result

On the same one-year PPA dataset, we computed NPV two ways: (A) a 24-point profile built from the averaged prices, and (B) the full price timeseries. Same plant, same financing — only the price resolution changed.

NPV swing, A → B
+$3M
Same data · timeseries vs. average
A · Average
B · Timeseries

The averaged profile smooths away the price extremes; the full timeseries preserves them, capturing the seasonal and year-to-year revenue that actually drives the business case. The gap is not noise — it is the value that lives in the tails.

Seasonal price distribution, resolved monthly

Each box spans the interquartile range of hourly prices for that month; whiskers mark the 5th–95th percentiles and the ticks above mark the outlier hours an average would discard.

Seasonal distribution — monthly
price · USD/MWh
050100150200
JanFebMarAprMayJunJulAugSepOctNovDec
Read the tails, not the middle. The high-price hours in autumn and winter — and the outliers above every box — are precisely the hours a battery is dispatched into. A 24-hour average collapses each column to its median line.

03 / THE CASEThe hours that averages hide

During the European heatwave, German wholesale electricity prices swung from €86 to €566/MWh — in a single evening.

German wholesale price — single evening€/MWh · hourly
€0€150€300€450€600
€86 €566/MWh
16:0017:0018:0019:0020:0021:0022:0023:00
€480/MWh of spread, inside six hours. A 24-hour average profile collapses this evening into a single mild number. The timeseries keeps it — and so does your business case.

Averaging collapses the price and load distributions onto their central tendency and discards the tails — yet a battery's value is realised almost entirely in those tail hours.

That is not a market anomaly. It is physics. The solar ramp-down at dusk was visible in ensemble forecasts well before the first red alert was issued: the temperature peak, the timing, the geographic footprint — all foreseeable to the hour. What the market lacked was storage positioned to act on it.

€86€566
German wholesale price range, single evening (€/MWh)
€480/MWh
intra-evening spread erased by a 24-hour average
8,760 hrs
resolved per year with full hourly timeseries

"The average smooths away the price extremes; the timeseries keeps them — and the extremes are where the value sits."

04 / THE MODELFour explicit, locked inputs

Runs now record exactly what produced them. Every simulation is defined by four explicit inputs — so configs stay lean and every result is fully reproducible.

One run · four locked inputs
Resource data
Wind & solar
PPA
Price profile
Grid Dispatch
Demand + cap
Config
Plant & finance
Simulation
Action needed

Create a PPA profile and a Grid Dispatch profile in each project before running new simulations. Existing results are untouched.

05 / ALSO SHIPPEDAlso new this month

PPA & grid profiles in hybrid optimisations and PV mount optimisations
Full-page PV mount run
Copy a config to another project
In-app bug reporting

06 / ON THE ROADMAPWhat's next — smart battery dispatch

Dispatch Strategies

Landing soon · opt-in

We're building an optimising engine that lets the battery control system look ahead. Selectable per run and fully opt-in — today's dispatch stays the default.

Capture price

Release energy into your highest-value hours.

Match demand

Shape output to a real load profile hour by hour.

Hold a reserve

Keep firming capacity in hand for reliability.

We move quickly — and we're listening

Put the full timeseries to work on your project.

June brought PPA timeseries, grid dispatch profiles, optimisation integration, config copy and in-app reporting — with smart dispatch already underway.

Questions or a feature request? Reach us at contact@converge-hybrid.com.

Previous
Previous

White paper: the Price of Firm Power