Operating intelligence

Tungsten.
The engine behind every kilowatt-hour.

We deal our life in half-hour measurements. Forty-eight trading periods a day, every day, for the life of the asset. Tungsten is the engine that models them, dispatches them, and can defend every one of them.

The dispatch log

Watch it think.

Every half-hour, Tungsten reads the site load, the tariff band, the spot price, and the state of charge — then makes a decision and writes it down. This is what a morning at a representative site looks like.

Every row is a decision: charge, discharge, or hold — with the reason attached.
Nothing is deleted. Years of history stay queryable.
Ask about any figure on your monthly report — Tungsten shows the rows behind it.
Dispatch log representative site · replaying
— every decision stamped with time, reason, band and price
The dispatch in view

Every half hour of the year, one screen.

This is the Dispatch Visualizer — the operator tool every ASKA figure ships with. All 17,520 slots of a modelled year, coloured by what the battery decided: charge in the cheap hours, clip the demand peaks, discharge into price spreads. Filter any behaviour, hover any slot, click any day and read the whole story — down to the margin it settled at.

isolate any behaviour —
just the clips, just the charging
charging the cheap hours —
every night different
every peak the battery removed,
all season, all year
click any day — it settles
to a margin
ASKA EI — Dispatch Visualizer
Representative site · 4 × 261 kWh / 125 kW GRIDstore · 1,044 kWh nominal · 500 kW rated · 365 × 48 slots · representative year
ASKA EI engine · locked scenario · version stamped
Save PNG▶ Present
Representative packhouse (365d) ▾ 261 kWh / 125 kW ▾ × 4 ▾ 620 1450
CHARGE CLIP · demand/capacity DISCHARGE · arbitrage HOLD IDLE
Day Detail
charge cap Load Net (after BESS) $/kWh SOC% grid charge discharge
Day peak kW · load / net
In-win peak kVA · nat / net
Charged
Discharged
SOC range
Peak revenue
Charge cost
Margin
ANNUAL STATISTICS — REPRESENTATIVE SITE
Total charge cyclesfull charge–discharge cycles
Avg daily discharge kWhmean daily energy delivered
Peak month utilization
AM vs PM dischargemorning peak vs evening peak
Seasonal patternseason vs off-season avg daily kWh
Total energy throughput MWhcombined charge + discharge
Avg SOC at midnightmean end-of-day state of charge

This is not a marketing render — it is the tool the operator runs, fed with a representative dataset. On a real engagement it runs on your meter data, and every figure in your proposal can be traced back to the slots on this screen.

One engine

The proposal and the monthly report come from the same code.

In most of this industry, the savings model that wins the sale and the reporting tool that tracks the asset are different systems — often from different companies. The numbers drift, and nobody can say why. Tungsten closes that gap by being both.

i.

Feasibility

Your interval data and your actual tariff go into Tungsten. It simulates the asset against your real year — every trading period — and produces the business case. No generic assumptions, no borrowed load profiles.

ii.

Operation

The same engine that modelled the site now runs it. Dispatch decisions follow the same logic the proposal was built on — so the asset does what the business case said it would.

iii.

Reporting

Monthly performance comes from the same calculations again. When the report says you saved a number, that number reconciles to the dispatch log, the tariff dataset, and the engine version that produced it.

Model architecture

One pipeline, instrumented end to end.

Measured half-hourly data and published tariff schedules in; a slot-by-slot dispatch priced into a stacked, non-double-counted return out. Every stage is instrumented and audited. Only the optimisation core is proprietary.

01
Inputs · the evidence base
17,520 half-hourly slots / site / yr144 published retail rates56 tariff structures · 15 networks262,946 nodal spot records18 hardware configurations
02
Validate & classify · before any maths runs
interval validationbill reconciliation vs the actual invoice7 tariff archetypesconfidence scoring per stream
03
Battery physics · modelled per asset, not assumed
usable energy = rated × DoD × RTEstate-of-charge window per strategydegradation over life
04
Optimisation core · the proprietary engine
slot-by-slot dispatch across all 17,520 half hoursone finite energy budgetthe technique is shared — the tuning is ours
05
Value stack · one budget, no double counting
demand reductioncapacity rebookarbitrage · retail + spotoverlays: reserves · solar
06
Financial model · institutional grade
15–20 yr cashflow · degradation-adjustedNPV · IRR · paybackrising vs static counterfactual
Quality assurance

Nine checks close on a recorded pass.

Before any number leaves the engine, a fixed register of checks runs — and every run closes on a recorded pass or fail carrying the engine version that produced it.

Interval integrityslot count · gaps · DST · real peak
Bill reconciliationengine rebuild vs the actual invoice
Network rate cardchecked against the published schedule
Energy rate build-upcontract rate vs applied loss factor
Day-level QAstratified sample · highest peaks · lowest loads
Energy budgetdispatched kWh never exceeds usable capacity
Optimisation coverageevery slot solved and checked
Plausibility guardsbounds · sanity limits
Check registerrecorded pass or fail · per run · version-stamped
REGISTER · PASSlocked scenario · engine version stamped · reproducible on demand
Where the intellectual property sits

The method is not the secret. Slot-by-slot dispatch optimisation is a known technique, and we're happy to name it. What's proprietary is how we formulate and tune it — the objective, the constraints, and the calibration that turn a generic solver into an accurate model of real battery behaviour. The technique is shared. The engine is ours.

The first test: your own invoice
Your actual invoice$ ——.—
=
Engine rebuild, from the raw meter$ ——.—

Before any battery is modelled, the engine rebuilds your invoice from the half-hourly meter data and the published schedules — and has to match it. If we can't reproduce your bill, we don't get to predict your savings.

Traceability

Every number has a paper trail.

Tariffs with effective dates

Every tariff in Tungsten carries its source reference and the date it took effect. When a network company changes a rate, we know which day — and every calculation before and after uses the right one.

nz-tariff-2026-04-01

Versioned engine

Every dispatch decision and every report records the engine version that produced it. If the logic improves next quarter, last quarter's numbers still reconcile to last quarter's code.

engine f9e1a3d

Source interval data

The load data behind every model run is kept with the run. Ask how a feasibility number was reached two years later — the inputs are still there.

icp-interval-2026-Q2

Quarterly tuning, on the record

Tariffs move, spot patterns shift, your operation evolves. Each quarter we re-tune the dispatch strategy — and the change, the reason, and the expected effect are logged like everything else.

tuning 2026-Q3 · review

Tungsten runs the intelligence.
GRIDstore is the hardware it runs.

One engineered cabinet, deployed to the scale your site needs — with Tungsten making forty-eight decisions a day on top of it.

Explore GRIDstore →

Want to see Tungsten on your own data?
Let's talk.

Send us twelve months of interval data. We run it through the engine and show you exactly what a battery would have done — period by period.

Start the conversation