Energy Spend Analyst
Finds the wrong tariff, the peak that sets your bill, and what runs all night
- 8hard rules
- Things it must never do, enforced in every run
- 5handover rules
- Conditions where it stops and gives the work to a person
- 12output fields
- A structured result, not a paragraph you have to re-read
- ≤6steps per run
- Bounded work: at most 5 tool calls, enforced by the runtime
Read-only by design. This agent has no path to sending, spending, publishing or committing anything. Where that limit is the product, removing it would remove the reason to trust the output.
Overview
A commercial energy bill is not price times quantity. It is supply, distribution and capacity charges, a reactive power penalty, a peak demand charge set by one fifteen-minute interval in the month, standing charges, levies and taxes — each with its own basis. Almost nobody checks any of it, because checking means understanding a tariff document written by a utility for other utilities.
So three things persist for years. The site is on the wrong tariff for how it actually uses energy — a pure paperwork saving needing no behaviour change. The peak demand charge is set by a handful of minutes a month, often equipment starting simultaneously, and moving one start by ten minutes changes the bill permanently. And baseload: what a site draws when it is closed and nothing should be running, the clearest waste signal available, appearing in no bill summary.
The quiet one is estimated readings. A site billed on estimates accumulates a correction that arrives as a single large charge, and the estimate is rarely in your favour.
This agent reads consumption against the tariff and reports what each finding costs a year. It switches no supplier and controls no equipment.
Benefits
Savings with no behaviour change
Most of it is tariff and timing, not consumption.
The peak explained
Which minute set the charge, and what was running.
Bills that get checked
Which alone changes what suppliers send you.
What it does
Finds the peak that sets the bill
One fifteen-minute interval a month decides a charge you pay all year. Usually equipment starting together.
Measures baseload when closed
What the site draws when nothing should be running. The clearest waste signal there is, and it appears in no bill.
Tests the tariff against actual use
A paperwork saving needing no behaviour change, and it survives for years because nobody checks.
Catches power factor penalties
A charge for something most sites do not know they are being billed for.
Flags estimated billing
Estimates accumulate into one large correction, and they are rarely in your favour.
Switches nothing
It contacts no supplier, signs no contract, and has no route to any building control system.
What this changes
What this changes about your week
- It takes over
- Checking an energy bill against the tariff and the meter data behind it.
- Done today by
- Nobody, because the tariff is written by a utility for other utilities.
- How often
- Never. It is paid on the assumption it is right.
- Typical manual effort
- Peak charges are set by single fifteen-minute intervals buried in interval data.
Why Energy & Utilities in particular. Much of a commercial bill is not consumption at all — it is tariff fit, a capacity charge set by one interval a month, a power factor penalty nobody knows they pay, and baseload running every night.
Runs unattended
Started by you or by an event, and it finishes on its own. Nothing waits for someone to be at a desk.
The same standard every time
The two-hundredth item is held to the bar the first one was. Consistency is the part people cannot sustain.
It cannot act on its own
Energy Spend Analyst has no path to sending, spending or committing. That limit is why its output is safe to act on.
How it runs
This agent runs server-side through the PROMIVO runtime. Each run is logged step by step and every tool call is permission-checked before it executes.
- 1InputValidated against the agent input schema
- 2Modelclaude-sonnet-5 with automatic fallback
- 3Toolssearch_knowledge, extract_structured_data
- 4PermissionsRuns READ actions automatically; anything higher waits for approval
- 5OutputStructured result matching the output schema
- 6LoggingTokens, duration and every step recorded
Demo
Demo dataIllustrative sample output, abridged.
Input
{
"sites": [],
"period": "12 months to Aug 2026",
"currency": "USD"
}Output
{
"baseload": [
{
"site": "Site 1",
"annualCost": 61000,
"closedHoursDemand": 96
}
],
"escalate": true,
"penalties": [
"A reactive power penalty of 4,100 was charged across the year. It does not appear as a named line on the summary."
],
"tariffFit": [
"Your consumption is 71% outside peak hours and you are on a flat tariff. Modelled against the time-of-use structure available on the same contract, the same consumption would have cost 34,000 less. A modelled figure, not a quote."
],
"disclaimer": "An analysis of your own bills and meter data. No supplier has been contacted, no contract signed or changed, no equipment or building system accessed, no saving is guaranteed, and tariff comparisons are modelled from your consumption rather than quoted.",
"peakFindings": [
{
"note": "Three chillers and the compressor all start at 06:15. That single interval set a capacity charge billed for the following twelve months. Staggering one start by ten minutes changes it permanently.",
"site": "Site 1",
"demand": 412,
"interval": "14 March, 06:15–06:30",
"chargeSet": 18400
}
],
"escalationReason": "Baseload is 38% of daytime demand, a bill line cannot be reconciled to the tariff, and one site has been on estimated readings for five cycles.",
"estimatedBilling": [
"Site 3 has been billed on estimates for 5 cycles. A correction is accumulating and estimates are rarely in your favour."
],
"noChangeRequired": [
"Tariff structure change: 34,000 modelled.",
"Reactive power correction: 4,100."
],
"notSupportedByData": [
"Site 4 has no interval data, so no peak or baseload finding is offered for it."
],
"unreconciledCharges": [
"A 'network adjustment' of 2,900 on three bills has no basis in the tariff document supplied."
],
"requiresOperationalChange": [
"Staggering the 06:15 starts: affects the capacity charge for a full year.",
"Baseload at 96kW while closed: 61,000 a year, and something is running that nobody has identified."
]
}Requirements
Integrations
No integrations required.
Before you start
- Energy bills with line-level charges
- The tariff you are on
- Interval meter data, for peak and baseload findings
- Site opening hours
- Requires the All-Access plan or higher
Use cases
Before a contract renewal
Which tariff structure fits how you actually use energy.
A bill that jumped
Whether it was consumption, peak, correction or tariff.
Multi-site review
Which sites differ from comparable ones, and why.
Efficiency planning
Baseload first, because it runs every hour of every night.
Pricing
All-Access
Billed monthly through your PROMIVO subscription. Cancel at any time.
Runs consume your plan allowance for agent executions and tokens. See plan limits
FAQ
Does it switch supplier or sign contracts?
No. It contacts no supplier and signs nothing. It reports what your current arrangement costs and where it does not fit your usage.
Does it control equipment?
No. It has no route to any building management or control system. It reports when demand peaks and what appears to coincide with it.
Do we need interval meter data?
For peak and baseload findings, yes — those live in the intervals. Tariff fit, estimated billing and penalty charges are visible from bills alone, and it says which findings the data supports.
Reviews
Reviews open once customers have run this agent.
Need this agent to work differently?
Tell us what to change and our team will scope a customised version for your business.
Customize this agent