EV Fast-Charging SPV — Comprehensive ROI Calculator

Long-term-hold (buy & operate) return model for a DC fast-charging site · a first-principles buy-and-operate return model · Modules 0–10 + integrated utilization engine

A reusable engine for any DC-fast-charging site — upload a site flyer or a utility tariff schedule and it auto-fills, or drive it by hand from your own CAPEX, tariff, and session telemetry. Levered & after-tax · Conservative / Base / Optimistic · planning estimates — re-derive against metered & quoted data. Starts blank — enter your own site or drop a document.

Buy-and-operate returns · Conservative / Base / Optimistic

Site identification appears on the exported analysis

🔌 Tesla comps opens Tesla’s Find Us map centered here — check what nearby Superchargers charge per kWh to benchmark your retail price (Module 4). Opens in a new tab; nothing is auto-filled.

Site configuration & utilization drivers drivers in, utilization out — all in one place

Input status: NEEDcritical & blank — outlined red until filled HAVEpulled from an uploaded document / tariff schedule Upload a site flyer or rate sheet on the Import / Export tab to auto-fill. Scenario inputs show three cells (Cons / Base / Opt).

Scenario comparison headline metrics

Annual P&L & cash flow — Base spreadsheet-ready

The full year-by-year P&L (Yr 0…N) for the selected scenario, with paste-ready export and a 3-scenario KPI block. Download .xlsx gives a fully-formatted Excel workbook — navy header, banded totals, accounting number formats, right-aligned figures. Copy puts tab-separated text on your clipboard for a quick paste; .csv is the raw unstyled data. Switch the scenario in the header above to change the columns. Depreciation is 100% bonus in Yr 1 (ex-land, net of grants); hardware refreshes every useful-life (Module 1–2) years; at a 0% entity rate the Yr-1 loss carries forward as an NOL, and land is never depreciated.

Show raw tab-separated text (for manual copy)
Opens your browser’s print dialog — choose “Save as PDF” as the destination. Produces a cover page, a no-battery hero page (all three cases), a with-battery hero page (only if a battery is modeled), then the detailed sensitivity / stress / terminal / battery / utilization analysis. Tip: in the print dialog, turn off “Headers and footers” for a clean cover.

Break-even — cumulative revenue vs. cumulative cost mixed costs: CAPEX + operating

A mixed-cost break-even. The cost line intercepts the axis at all-in CAPEX — the fixed block, spent before a single kWh is sold — then climbs by each year's variable cost of service (utility power bill, network / O&M services fee, payment processing, WA excise) plus fixed opex (insurance, lease, property tax, management, reserve) and any refresh CAPEX. The revenue line starts at zero and accumulates the top line. Where they cross, the site has repaid the build and everything it cost to run.

Unlevered and pre-tax, on total invested capital — depreciation, interest, debt service and income tax are excluded. The Break-even stat in the headline is a different measure: levered and after-tax, on equity only. Smaller capital base, but it carries debt service and tax, so the two dates will not agree.

Sensitivity — Levered after-tax IRR energy throughput × retail price

Rows scale stabilized energy throughput; columns scale the retail price to driver. Center cell (1.00 × 1.00) is the selected scenario's base. Green = higher IRR.

Scaling stress test how hard the levers scale

One knob — Scaling intensity (Module 3) — multiplies how hard the three levers scale over the hold: customer retail-price escalation, power-cost escalation, and EV-parc demand growth. 0% = everything flat-real (no growth); 100% = your base assumptions; 200% = twice as hard. The live model uses the value set in Module 3; this table sweeps it. Retail stays under its price ceiling (Module 4) and demand under its physical ceiling (Module 3). Note: because power cost is one of the levers, higher intensity lifts costs as well as revenue — so the effect can be non-monotonic, since faster power-cost escalation against capped prices/volume eventually eats margin. That tension is the point of the stress test.

Terminal-value bridge NPV closer

Residual equity at horizon

You're holding, not selling — this residual capitalizes a stabilized NOI to close the NPV and value the asset you keep. Transaction costs and §1245 depreciation recapture apply only in a sale scenario (toggle in Module 9).

Power-cost breakdown commercial tariff + optional premium

The site pays a standard commercial utility rate — a customer/basic charge, an energy charge ($/kWh), and a demand charge billed on kW (your expected billed demand — the peak grid draw after any on-site battery curtails it), which is fixed year-to-year and dominates the bill at high-power, low-utilization sites. An optional premium (a $/kWh energy adder and/or a % uplift) sits on top. An on-site battery (Module 1–2 CAPEX) lowers that billed demand. Enter the rates in Module 5 or import a commercial rate schedule.

Battery vs. no-battery — demand-charge economics is the battery worth it?

Compares the annual power bill with the on-site battery (Module 5 tariff + expected billed demand) against a no-battery counterfactual (the separate no-battery tariff + the pre-battery peak). Both rate sets are entered independently because curtailing peak demand can move the site across a utility schedule boundary (e.g. PSE Schedule 26 → 25), and the two schedules carry different $/kWh and $/kW — so this captures the energy-rate trade-off, not just fewer billed kW. Savings are then weighed against the battery CAPEX (Module 1–2) for a payback and NPV. Turn it on with “Model an on-site battery (demand curtailment)?” in Module 5.

Utilization & occupancy diagnostics derived, not entered

Utilization is time ÷ time — the share of a period a port is actively charging. That is Paren's definition, and Paren is the data set this model gets benchmarked against, so it is the definition used here: charging hours ÷ total hours, over a 24-hour clock and aggregated into the 3-month window every Paren report covers. It is computed from sessions/day × duration, less idle — never typed in. What it tells you is how contested the asset is, which is the question a landlord, a utility or Tesla actually asks. It is not the revenue engine: revenue runs on energy — sessions/day × kWh/session × posts × 365 — on a different denominator. Both readouts sit below, deliberately separated, with the arithmetic between them spelled out. All of these inputs, and this same readout, sit together in Site configuration & utilization drivers at the top of the Inputs tab — this copy is here so the figures travel with the exported PDF. This panel shows the Base scenario.

Outputs — utilization on Paren's basis & the energy that feeds the model

Import / auto-fill — inputs, documents & utility tariff schedules

Drop a file here, or click to browse
Saved inputs (.json) · Excel assumptions book · research doc · site-overview PDF · utility tariff schedule (rate sheet)
Accepts .xlsx .json .pdf .txt .csv — read locally in your browser; every match goes to a review step before anything changes.
0%

Save / load a scenario starts blank on refresh

The model opens blank — enter your site or drop a doc above. Export gives an exact round-trip of all three scenarios.

…or paste text tables, prose, or a rate sheet