A Prompt Library for Household Energy Analysis
Most people who try ChatGPT prompts for energy bill analysis get one of two disappointing outcomes. Either the model produces a friendly summary of what they already knew (“your usage is highest in winter”), or it confidently invents a number. Both failures come from the same cause: the prompt asked for an opinion when it should have asked for a calculation, and it didn’t supply the data in a form the model could actually work with.
This page is a working library. Every prompt below has been sharpened against real half-hourly data from UK smart meters and real Octopus, EDF and British Gas tariff sheets. Copy them, swap in your own figures, and keep the ones that earn their place. If you want the wider map of tools, data sources and automation options first, the pillar page on AI tools, prompts and data pipelines covers the landscape this page drills into.
Get Your Data Into a Shape the Model Can Use
Before any prompt works, you need consumption data. Three routes, in order of how much they’ll frustrate you:
Octopus Energy API. The cleanest option. Register at octopus.energy/dashboard/developer, grab your API key, MPAN and meter serial, then pull half-hourly readings as JSON or CSV. A year of half-hourly data is 17,520 rows, which is too much to paste into a chat window but perfect for the Code Interpreter side of ChatGPT (upload the CSV) or Claude’s analysis tool.
Hildebrand Glow / Bright app. Works across suppliers via the DCC. The free tier gives you daily and half-hourly consumption, exportable as CSV. Slower to set up, but supplier-agnostic.
Your paper bills. Twelve months of monthly kWh and cost, typed into a table. Crude, but enough for tariff comparison and rough solar sizing. Don’t let the perfect dataset stop you starting.
Whichever route you use, pre-aggregate before prompting. A model reasoning over 365 daily totals gives better answers than one reasoning over 17,520 half-hourly rows in the chat context, because it isn’t burning attention on noise. Keep the half-hourly file for the self-consumption prompts, where the resolution genuinely matters.
Prompt 1: The Bill Decomposition
The first useful thing to know is where your money actually goes. Standing charge, unit rate, VAT and any legacy debt repayment all behave differently when you add solar, and most people mentally lump them together.
You are a UK domestic energy analyst. Below is my electricity usage and
tariff data. Work only from these figures; if something is missing, say
"MISSING" rather than estimating.
Tariff: Octopus Flexible, single rate
Unit rate: 24.86 p/kWh (inc VAT)
Standing charge: 53.80 p/day (inc VAT)
Billing period: 2025-04-01 to 2026-03-31
Monthly kWh: Apr 241, May 218, Jun 205, Jul 199, Aug 203, Sep 224,
Oct 276, Nov 331, Dec 388, Jan 402, Feb 358, Mar 299
Produce:
1. A markdown table with columns: month, kWh, unit cost (£),
standing charge (£), total (£).
2. Annual totals for each column.
3. Standing charge as a percentage of the annual bill.
4. The three months where a 4 kWp solar array would displace the
LEAST consumption, with one sentence each on why.
Show your arithmetic for January so I can check it.
The “show your arithmetic for January” clause is the important part. It gives you a single spot-check: 402 × 0.2486 = £99.94, plus 31 × 0.538 = £16.68, total £116.62. If that line is wrong, throw the whole answer away. If it’s right, the other eleven months are almost certainly right too.
On the figures above the annual total comes out around £1,036, with roughly £196 of that being standing charge you cannot avoid with solar alone. That single number reframes the whole project: about 19% of the bill is fixed, so a system that eliminates every unit you import still leaves you paying nearly £200 a year for the privilege of being connected.
Prompt 2: Self-Consumption From Half-Hourly Data
This is where the half-hourly file pays for itself. Solar payback lives or dies on self-consumption ratio, and the industry default assumption of “you’ll use 50% on site” is a guess dressed up as a fact. Your own data can do better.
Upload your half-hourly CSV to ChatGPT with Code Interpreter enabled, or to Claude with the analysis tool, then:
Attached: half_hourly_consumption.csv (columns: interval_start ISO8601,
consumption_kwh)
Write and run Python to do the following.
1. Build a synthetic PV generation profile for a 4.0 kWp south-facing
array at 35 degrees tilt in Bristol (lat 51.45). Use PVGIS monthly
yield figures for this location if you know them; otherwise use
950 kWh/kWp/year and state that assumption clearly. Shape each day
as a sine curve between local sunrise and sunset, scaled to the
month's total.
2. For every half hour, compute:
- self_consumed = min(generation, consumption)
- exported = generation - self_consumed
- imported = consumption - self_consumed
3. Report annual totals for generation, self-consumed, exported,
imported.
4. Report the self-consumption ratio and the proportion of my total
demand that solar covers.
5. Break out the same figures by month in a table.
6. Print the ten half-hour periods with the largest export, with
timestamps.
Then tell me which single behavioural change (not equipment) would
most improve self-consumption, citing the specific half-hour bands
from my data that support it.
Typical output for a mid-sized UK household with a 4 kWp array and no battery lands at 3,600-3,900 kWh generated, 1,300-1,600 kWh self-consumed, so a self-consumption ratio nearer 38% than 50%. That gap is worth about £60 a year at current rates, which is the difference between a nine-year payback and an eleven-year one.
The behavioural question at the end consistently produces something more actionable than generic advice, because the model is forced to point at your own timestamps. Dishwasher moved from 19:00 to 12:30, immersion heater on a timer, that sort of thing.
Prompt 3: Battery Sizing Without the Sales Pitch
Battery quotes are where optimism creeps in hardest. An installer’s 9.5 kWh recommendation and a 5 kWh unit might have nearly identical returns if your evening demand is modest. Make the model simulate rather than advise.
Using the same half-hourly dataset and PV profile, simulate a lithium
battery with these parameters:
Usable capacity: test 5.0, 9.5 and 13.5 kWh separately
Round-trip efficiency: 90%
Max charge rate: 3.0 kW
Max discharge rate: 3.68 kW
Depth of discharge: already reflected in usable capacity
Control strategy: charge from surplus PV only (no grid charging),
discharge to meet any demand the PV cannot
Import rate 24.86 p/kWh, export rate 15.0 p/kWh (Octopus Outgoing Fixed).
For each capacity, report:
- annual kWh cycled through the battery
- equivalent full cycles per year
- annual import avoided (£)
- annual export revenue lost (£)
- net annual benefit (£)
- marginal benefit of each step up in capacity
Then repeat the 9.5 kWh case with a second strategy that also charges
from the grid between 23:30 and 05:30 at 7.0 p/kWh, and tell me how
much the cheap-rate arbitrage adds.
The marginal-benefit line is the one that changes decisions. Going 5 to 9.5 kWh often adds £90-£130 a year; going 9.5 to 13.5 kWh often adds under £40, because there simply isn’t enough surplus on a UK April afternoon to fill it. At roughly £400 per additional kWh installed, that second step rarely pays back inside warranty.
The grid-charging variant matters too. On Intelligent Octopus Go at 7p, arbitrage alone can be worth £150-£250 a year for a 9.5 kWh battery cycling near-daily, which frequently exceeds the solar self-consumption benefit. Worth knowing before you attribute the savings to the panels.
Prompt 4: Tariff Comparison Against Your Actual Shape
Comparison sites model you as an annual kWh number. Once you have solar and a battery, your shape is unusual and generic comparison stops working.
Here are my post-solar, post-battery half-hourly import and export
volumes by hour-of-day (annual totals, kWh):
[paste 24-row table: hour, import_kwh, export_kwh]
Price this against the following tariffs. Treat each as a separate
scenario and show the annual cost in a single comparison table sorted
cheapest first.
A) Octopus Flexible: 24.86 p/kWh flat, 53.80 p/day
B) Octopus Go: 7.00 p/kWh 00:30-05:30, 27.50 p/kWh otherwise,
49.90 p/day
C) Economy 7: 12.50 p/kWh 00:00-07:00, 28.90 p/kWh otherwise,
55.20 p/day
D) Octopus Agile: use the 2025 calendar year average by half-hour
if you have it; if not, say MISSING and skip this row
Export: price A and C at 15.0 p/kWh, B at 15.0 p/kWh.
Flag any scenario where the standing charge difference alone changes
the ranking.
Verify one row by hand before trusting the table. The tariff-flip logic around midnight is where these calculations most often go wrong, particularly with Economy 7 where the off-peak window varies by region and meter.
Prompt 5: The Monthly Monitoring Check
Modelling is a one-off; monitoring is forever. This prompt is designed to be run on the first of every month with fresh figures pasted in, and it deliberately asks for a verdict rather than a description.
System performance check. My 4.0 kWp array was commissioned
2025-06-14. Expected annual yield 3,800 kWh.
Actual monthly generation (kWh):
Jun (part) 210, Jul 471, Aug 402, Sep 338, Oct 221, Nov 118,
Dec 74, Jan 96, Feb 158, Mar 267, Apr 352, May 428, Jun 455,
Jul 446, Aug 388, Sep 319
Compare each month against the typical UK monthly distribution of
annual yield (state the percentages you're using). Flag any month
more than 12% below expectation. For flagged months, list possible
causes in order of likelihood, distinguishing between causes I can
check myself from the inverter display or generation meter and
causes needing an electrician. Do not recommend any work involving
AC isolation or DC connectors.
Comparing July 2026’s 446 kWh against July 2025’s 471 kWh looks like a 5% decline, well inside year-to-year weather variation. Comparing September 2026’s 319 against 338 is the same story. The value here is catching the month where the shortfall is 25%, which is usually soiling, a shading change (a neighbour’s tree, a new aerial) or a single underperforming string.
Pair this with a control: the Sheffield Solar PV_Live service publishes half-hourly national and regional solar output for GB. If your output fell 20% and your region fell 22%, it was cloud. If your region held steady, look at your roof.
Where These Prompts Still Fail
Models cannot look up your live tariff. Every rate in the prompts above is typed in by hand, and a model asked to “use current Octopus rates” will produce something plausible and stale. Paste rates from your bill or the supplier’s tariff information label every time.
Degradation, inflation and discount rates are the second trap. A 25-year payback calculation is extremely sensitive to assumptions about future electricity prices, and a model will happily compound 5% a year forever if you let it. Ask for a table at 0%, 3% and 6% real price growth instead of a single number, and treat the spread as the honest answer.
Third, watch for silent unit errors. Wp versus kWp, kWh versus kW, p/kWh versus £/kWh: these mix up more often than you’d expect, and a factor-of-1000 error can look superficially reasonable in a table of large numbers. The “show your arithmetic for one row” habit catches nearly all of them.
One last practical note on storage: keep your prompts in a plain text file alongside the CSVs they consume, versioned if you’re comfortable with git. Prompts drift as tariffs change, and six months from now you’ll want to know exactly which unit rate produced the number you based a £7,000 decision on.