Household electricity and gas by yearly cost
compare_energyAn indicative calculation, not yet checked by an independent expert (verified: false): present the result as an estimate, never as a guaranteed price; show estimate_note (the sentence with the day of the data, in locale cs | sk | en) with every result. Household electricity and gas offers (Czechia for now) ranked by the yearly bill for a stated consumption in one distributor's area, with VAT. The bill is split into the regulated part (distribution, system services, renewables support, market operator, tax: set by the energy regulator for the distributor, the same with every supplier) and the supplier part (commodity price and monthly fee: what switching changes). Every offer has the supplier's official price list (source_url, verified_on, valid_from) and says whether the price is fixed (fixed_months or fixed_until) or variable. Spot and formula prices are never ranked; they are listed in not_ranked. Offers whose price list was read only for another distributor's area are left out. Electricity: distributor (cez-distribuce | egd | pre-distribuce), rate (D01d, D02d, D25d, D26d, D27d, D35d, D45d, D56d, D57d, D61d), mwh = yearly high-tariff (or all) consumption, nt_mwh = low-tariff consumption; breaker = main breaker (1x25, 3x10, 3x16, 3x20, 3x25 default, 3x32, 3x40, 3x50, 3x63; it sets the fixed monthly distribution price from the regulator's table); postcode (5 digits) instead of distributor picks the distributor area as an estimate (area.estimate = true; two candidates when the postcode spans an area boundary: then pass distributor). Every result is an estimate (result_type: estimate, guaranteed: false): the binding bill depends on the actual consumption, the distributor stated on the bill and the contract. Gas: distributor (gasnet | gas-distribution | ppd), mwh = yearly consumption up to 63 MWh; postcode instead of distributor picks the gas area the same way (estimate; two candidates around Prague or on an area boundary: then pass distributor). Call without a distributor to get the distributors, rates (rate_info: low-tariff hours a day), products and the regulated price tables. COMPARISON TEMPLATE (20 Oct 2026): every ranked offer carries the forDeal score 0–10 (score, score_parts price / conditions / rating, score_weights as used, score_missing when a part is absent), labels (cheapest = lowest total of the list; best_value = highest score), a one-sentence reason, conditions (fixation months and bucket, term indefinite | fixed_term, notice_months, termination_fee none | stated, green; null = the price list does not state it) and the supplier's public rating (source, score, scale, count, source_url, fetched_on; counted only from 10 reviews; null = we have none, and the weights are renormalised, the answer says so). Filters: fixation none | 12 | 24 | 36 (variable price, or fixed up to 1 / 2 / 3+ years), pricing fixed | variable | spot (spot = market-price products, listed without a total), green true, no_penalty true (no fee for leaving stated); filter_counts says how many offers each chip would leave. sort score (default) | price. compare = up to 3 offer ids: the answer adds comparison with the same parameters side by side. Method and weights: scoring. Freshness: every offer's verified_on is the day a person read its price list; price_lists_change_check_on is the day of the last weekly automatic check of the lists, price_lists_checked gives that day per supplier, price_lists_last_checked_on is the later of that day and the newest verified_on (the date the website shows as "price lists checked"), and price_lists_flagged names offers whose list changed or vanished since (say their price may be out of date). What the household pays today, best first: current_offer (an id from products), or its own prices current_vt_price + current_nt_price + current_fee_month (current_prices_vat), or current_monthly (the advance); each offer then carries saving_year against it and the answer states saving_basis (offer | own_prices | advance) and warnings (e.g. nt_mwh_missing for a two-tariff rate without low-tariff consumption).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mwh | No | Yearly consumption in MWh (electricity: high tariff or all; default 2.5 electricity, 10 gas). | |
| rate | No | Electricity distribution rate, e.g. D02d (default) or D25d (two tariffs). | |
| sort | No | score (default: forDeal score, highest first) | price (yearly total, lowest first). | |
| green | No | Filter, true: only products whose price list states electricity of renewable origin (none stated yet). | |
| limit | No | ||
| locale | No | Language of estimate_note: cs | sk | en (default en). | |
| nt_mwh | No | Electricity low-tariff consumption a year in MWh (two-tariff rates only). | |
| breaker | No | Electricity main breaker: 1x25 | 3x10 | 3x16 | 3x20 | 3x25 (default) | 3x32 | 3x40 | 3x50 | 3x63. | |
| compare | No | Comma-separated offer ids (2–3) for a side-by-side comparison in `comparison`. | |
| country | No | CZ (default). | |
| pricing | No | Filter: fixed | variable (price-list products, ranked) | spot (market-price products: listed in not_ranked without a total, never ranked). | |
| fixation | No | Filter, one of none | 12 | 24 | 36: none = variable price without fixation; 12 / 24 / 36 = fixed price up to 1 / 2 / 3 or more years. | |
| postcode | No | Postcode of the supply point (e.g. 602 00), electricity or gas; picks the distributor when none is given. An estimate from the post's postcode list and the distributors' coverage by district. | |
| commodity | No | electricity (default) | gas | |
| household | No | Household type (energy v3) instead of rate + consumption: electricity byt | chata | bojler | akumulace | elektromobil | tepelne-cerpadlo | elektricke-topeni; gas plyn-vareni | plyn-voda | plyn-byt | plyn-dum. Sets the rate, a typical yearly consumption and its low-tariff share (stated assumptions, see `households`); mwh overrides the total, rate and nt_mwh override the rest. With current_monthly and no mwh, the consumption is estimated from the payment (consumption_basis: from_monthly). | |
| no_penalty | No | Filter, true: only products whose terms state no fee for leaving (an indefinite term). | |
| distributor | No | Distributor of the place: electricity cez-distribuce | egd | pre-distribuce; gas gasnet | gas-distribution | ppd. | |
| current_offer | No | Id of the household's current product from `products` (energy v2): today's yearly total is then priced from that price list for the same need, and saving_year compares like with like (saving_basis: offer). Takes precedence over current_vt_price and current_monthly. | |
| current_monthly | No | What the household pays today a month with VAT (the current advance), in the country's currency. Each offer then carries saving_year = current_monthly × 12 − total_year (positive = cheaper than today; an estimate). | |
| current_nt_price | No | Today's low-tariff commodity price per MWh (two-tariff electricity rates; required when nt_mwh > 0). | |
| current_vt_price | No | Today's commodity price per MWh from the household's bill or price list (electricity: high tariff or all; gas: the gas price). With current_fee_month it gives today's yearly total (saving_basis: own_prices); takes precedence over current_monthly. | |
| current_fee_month | No | Today's monthly fee of the supplier (stálá platba). | |
| current_prices_vat | No | Whether current_*_price and current_fee_month include VAT: excluded (default, as price lists state them) | included (as a bill often shows them). |