Skip to content

Data overview — 13 charts the IC actually wants to see

This is the visual answer to “where do your numbers come from and does it work?”. Four sections: data foundation, physical evidence, commercial economics, risk & strategy. Every chart is computed live from Cloudflare D1 or reads a published report JSON.

All charts are interactive: drag the bottom slider, scroll to zoom, hover for exact values.

I. Data foundation

~470k rows ingested across 7 public sources

Each bar = one ingest run. NASA POWER dominates because it's 9 grid points × 5 years of hourly data.

Synthesised Johor hourly load — weekday afternoon peak, ETOU window 14–22

From 39,424 hourly rows. Blue solid = weekday, grey dashed = weekend. Orange band = TNB ETOU peak window.

Monthly load 2020–2024 — data-center commissioning signal

5y synthesised Johor monthly load (TWh). Drag the bottom slider to zoom; 2024 H1 step-up consistent with JS-SEZ DC commissioning.

Load duration curve — peaks happen rarely but drive BESS value

5-year synthesised load sorted descending. Scroll-zoom to inspect percentile bands; peak and median annotated.

II. Physical evidence

Global horizontal irradiance — peak at noon, monsoon dip Nov–Jan

12-month × 24-hour matrix. Drag the colour scale on the right to adjust the threshold.

PV output vs cooling load — 14–18 hr double-peak overlap (BTM PV value window)

Weekday hourly load (blue, left axis) overlaid on mean GHI (orange, right axis). Orange band = ETOU peak window.

Hot hours = high load — the cooling-CDH coupling that drives BTM PV value

~1,100-hour deterministic sample, coloured by ETOU peak. Use the brush tools (top right) to box-select a subset.

III. Commercial economics

Stacked NPV — recommended structure +293 M (no BESS)

BTM avoided cost + carbon attributes + 24/7 CFE premium + BESS (deferred). BESS is structurally negative at current capex; carbon contribution is 2.5× BTM.

Carbon NPV is non-linear in carbon price — hyperscaler internal price is the inflection

BCX 35 → SG 85 → 230 → hyperscaler 460 RM/tCO₂. Dashed line = BTM-only baseline +83 M.

PPA pricing band tightens with target IRR — only carbon-stacked clears at 15%+

Red = developer floor; grey dashed = vanilla ceiling; green = bundled ceiling. Once floor crosses vanilla ceiling, kWh-only PPA is infeasible.

IV. Risk & strategy

Stress test A→G — the IC's actual downside concern

From A (marketing case) to G (worst credible). Colour-graded: green = safe, amber = thin, red = fails.

Sensitivity tornado — which assumptions move NPV most?

BESS capex dominates (370 M range), ICPT #2 (130 M), PV capex #3 (84 M). Top 10 ranked.

BESS trigger heatmap — when does BESS flip positive?

Year × VPP-revenue scenario; greener = better NPV/MWh. 180k anchor contract → 2025; strong stack → 2027; 24/7 CFE premium → 2031; pure BTM → never.

  1. Real, large dataset (I. Data foundation) — ~470k rows of public data; load profile has a clear weekday afternoon peak; 2024 step-up aligns with JS-SEZ DC commissioning timeline.
  2. The physics holds (II. Physical evidence) — PV peak = cooling-load peak = ETOU peak, all overlapping 14–18 hr; load strongly correlates with temperature. The physical case for BTM PV.
  3. Carbon dominates the deal (III. Commercial economics) — BTM avoided cost +83 M, carbon attributes +211 M (2.5× BTM), recommended structure +293 M. BESS is structurally negative at current capex; bundling carbon keeps the PPA feasible up to 15%+ IRR.
  4. Downside is bounded, triggers are explicit (IV. Risk & strategy) — worst stress case −118 M; BESS capex is the #1 sensitivity lever; the BESS trigger heatmap gives concrete year × contract combinations for when BESS flips positive.

For raw tables, see SQL playground or downloads.