How BillLuma Works

BillLuma extracts key information from your energy bill using AI and compares it against published benchmarks for similar UK households. This page explains exactly how that process works, what data we use, and where our analysis may be less accurate.

Bill Parsing — What We Extract

BillLuma uses Claude (by Anthropic) to extract five data points from your uploaded bill:

  1. Annual or estimated annual kWh consumption
  2. Unit rate (pence per kWh) for electricity and gas
  3. Daily standing charge (pence per day)
  4. Supplier name
  5. Payment type (direct debit, standard credit, or prepayment)

If any of these five fields cannot be extracted with confidence, BillLuma will ask you to confirm the value manually before showing results. If three or more cannot be extracted, BillLuma falls back to a simplified 3-field form rather than guessing.

Benchmarking — How We Compare Your Bill

We compare your usage and costs against Ofgem’s published SUMO (Statutory Umbrella Market Observatory) dataset, which contains anonymised quarterly energy consumption data for millions of UK households. We segment benchmarks by:

  • Property type (flat, terraced, semi-detached, detached)
  • Postcode district (the first part of your postcode, e.g. M1, SW1)
  • Payment method

Your usage is compared against the median for your segment. “Above average” means your usage or cost is higher than the median household in your segment. This does not necessarily mean your bill is wrong — households with more occupants, older heating systems, or poorer insulation naturally use more energy.

Data source: Ofgem SUMO data
Tariff rate data: Ofgem published price cap rates

Privacy Architecture

Your bill is processed entirely in memory. It is never written to disk, never uploaded to cloud storage, and never retained in a database. The process works as follows:

  1. Your bill arrives as a multipart upload
  2. It is converted to base64 in RAM
  3. It is sent to Anthropic’s Claude API with a no-store instruction (anthropic-no-store: true) — this instructs Anthropic not to retain the content for training or logging
  4. The AI returns structured JSON containing only the five extracted fields
  5. The original bill data is freed from memory

Total time in memory: 2–8 seconds.

We retain only the five extracted fields listed above, anonymised. We never retain your name, full address, account number, or full postcode. ICO registration number: [to be added once registered].

Accuracy and Limitations

BillLuma is designed to be useful, not infallible. Known limitations:

Unusual bill formats
Bills from smaller suppliers or non-standard formats may parse less accurately. We prompt you to confirm key values when confidence is lower.
Economy 7 and time-of-use tariffs
Households with Economy 7 (different day/night rates) or smart tariffs like Octopus Agile will see less accurate unit rate comparisons, as our benchmarks use single-rate averages.
Estimated meter readings
If your bill is based on estimated rather than actual readings, the usage figure we extract may not reflect your actual consumption.
Benchmarking accuracy
Our benchmarks use Ofgem national and regional averages. Homes with unusual circumstances (air source heat pumps, electric vehicles, home offices) may compare differently to standard households.

Affiliate Disclosure

BillLuma earns a commission when a user switches energy supplier via our comparison links. This commission is paid by the receiving supplier. It does not affect the tariff price shown to you, the order in which deals are listed, or which deals we recommend. Deals from suppliers with whom we have no commercial relationship are shown alongside affiliate deals, clearly labelled “no referral fee”. Our comparison results include all major UK suppliers regardless of commercial relationship.

Technology Stack

For technically curious users: BillLuma is built on Next.js 14 (App Router), hosted on Vercel, with Supabase for anonymised benchmark storage and Upstash Redis for rate limiting. AI parsing uses Claude Haiku 4.5 via the Anthropic API. Analytics by Plausible (cookieless, GDPR-native). No third-party advertising or tracking scripts.

Questions about how BillLuma handles your data? Email hello@billluma.co.uk