What the heating cost calculator measures
The heating cost calculator runs on one formula: cost = (heat demand ÷ efficiency or COP) × price of the energy carrier. What makes it different isn’t the formula itself — it’s the comparison. For the same heat demand, the calculator works out the cost of 8 heat sources at once: gas (condensing and conventional boilers), electricity, a heat pump, heating oil, wood pellets, firewood and district heating — and ranks them from cheapest to most expensive.
You can enter your heat demand two ways. If you don’t know your exact usage, pick your floor area and an insulation class (old/uninsulated, standard, well insulated, passive) and the calculator converts that into kWh per year for you. If you have an energy performance certificate, an audit, or you’d simply rather enter the demand directly, you can do that in kWh or in GJ — the unit used in Poland for district heating bills.
The result also comes with a comparison against other people who’ve run the same calculation, so a bare number in your own currency gets some context. One important note up front: gas, electricity, oil, pellet and district heating prices change — sometimes every quarter — so the default rates in the calculator are indicative, not your actual bill. You can always enter your own price.
How to use the heating cost calculator
- Pick your country. This sets the currency and the default fuel/energy prices available (Poland, the UK, Spain — for other countries you enter your own prices).
- Enter your heat demand — by floor area and building class, or directly in kWh/GJ.
- Pick your heat source from the list of eight — it drives the main result tile, but the calculator works out the cost of all eight in parallel.
- Check the result: yearly and monthly cost for your source, heat demand in kWh, and a ranking of all eight sources from cheapest to most expensive.
In the advanced options you can correct the price of any energy carrier (or pick a quick preset for your country), change the efficiency or COP of any source, add a gas or electricity distribution fee, and add a district heating standing charge. The default efficiency and price values are explained below — you can override any of them with a more accurate number of your own.
How heating cost is calculated: the formula
The formula breaks down into three steps.
- Heat demand in kWh. Either floor area × index (kWh/m²·year), or a value entered directly — if it’s in GJ, we convert it to kWh (1 GJ = 277.78 kWh).
- Energy delivered by the carrier. Divide the demand by the source’s efficiency as a fraction (92% → 0.92), or by the heat pump’s COP. Exception: district heating is calculated straight from GJ, without this step — more on that below.
- Cost. Multiply the delivered energy by the price of the carrier — for carriers sold by unit (pellet, oil, firewood), divide by the calorific value first to get litres or kilograms.
Step-by-step example
A 100 m² house, standard insulation (120 kWh/m²·year), heated by a condensing gas boiler (92% efficiency), at an indicative gas price of 0.19729 PLN/kWh (Poland’s trading component).
- Heat demand: 100 m² × 120 kWh/m²·year = 12,000 kWh/year.
- Energy delivered by the gas: 12,000 ÷ 0.92 = 13,043.48 kWh/year.
- Yearly cost: 13,043.48 × 0.19729 PLN = 2,573.35 PLN.
- Monthly cost: 2,573.35 ÷ 12 = 214.45 PLN.
That’s exactly what the calculator does — only the numbers you enter change.
Efficiency and COP: the 8 heat sources
Efficiency (or COP) tells you how much energy from the carrier you need to deliver to cover your heat demand. The calculator’s defaults — each one editable:
- Gas — condensing boiler: 92%.
- Gas — conventional boiler: 85%.
- Air-to-water heat pump: SCOP 3.5 (seasonal coefficient of performance; closer to 4.0 for underfloor heating, closer to 3.0 for radiators). A SCOP above 5 is unusual for an air-source heat pump — it might be a ground-source figure, or an instantaneous COP mistaken for the seasonal SCOP. At a demand of 10,000 kWh/year and a SCOP of 5.5, the cost comes to 1,854.55 PLN a year (154.55 PLN a month) — the calculator will still compute it, but flags it with a note.
- Oil boiler: 85%.
- Pellet boiler: 88%, at a pellet calorific value of 4.8 kWh/kg (ENplus A1 grade; a lower grade is closer to 4.5).
- Firewood: 80% (a modern gasification boiler), calorific value 4.0 kWh/kg for seasoned wood — wet wood carries noticeably less energy per kilogram. An open fireplace runs at only 10-30% efficiency: at a demand of 8,000 kWh/year and 35% efficiency, that comes to 4,228.57 PLN a year (352.38 PLN a month) of firewood — the calculator warns that this efficiency isn’t suitable as the main heat source for a whole house, since most of the heat escapes up the chimney.
- Direct electric heating: 100% — this is a convention, not a measurement: all the electrical energy turns into heat at the point of use.
- District heating: 1:1. You pay for heat already measured by a meter in the building — there’s no “efficiency” on the customer side at all, because distribution losses are already priced into the rate per GJ.
Efficiency above 100% is not free energy. Manufacturers of condensing boilers sometimes quote an efficiency of 104-110%, calculated against the fuel’s lower heating value (Hi/NCV), which by definition excludes the latent heat of the water vapour in the flue gas. A condensing boiler recovers some of that heat, so it comes out above “100%” of that lower baseline — it’s an accounting convention, not more energy than is actually in the fuel. The calculator allows values up to 115%. Example: at a demand of 10,000 kWh/year and an efficiency of 105% (Hi-basis), the gas energy delivered is 10,000 ÷ 1.05 = 9,523.81 kWh — less than the demand itself, which is physically correct under this convention. Yearly cost: 9,523.81 × 0.19729 PLN = 1,878.95 PLN (156.58 PLN a month).
Comparing heat sources for the same demand
This is the calculator’s main differentiator: work out the cost of all 8 sources for the same heat demand and compare them fairly — not just the price per kWh of the carrier, but the full cost including conversion efficiency.
Example: a home with a heat demand of 15,000 kWh/year (say, from an energy audit), Poland, 2026 prices.
- Condensing gas (92%, 0.19729 PLN/kWh): 15,000 ÷ 0.92 × 0.19729 PLN = 3,216.68 PLN/year (268.06 PLN/month).
- Heat pump (SCOP 3.5, electricity at 1.02 PLN/kWh): 15,000 ÷ 3.5 × 1.02 PLN = 4,371.43 PLN/year (364.29 PLN/month).
- Pellet (88%, 4.8 kWh/kg calorific value, 2.20 PLN/kg): 15,000 ÷ 0.88 ÷ 4.8 × 2.20 PLN = 7,812.50 PLN/year (651.04 PLN/month).
At these specific 2026 prices, condensing gas comes out cheapest and pellet the most expensive — pellet prices in Poland were at a record high in 2026, above the 2022 peak, so this isn’t a universal “biomass is always cheap” result.
An important caveat about price comparability. The default gas price is only the trading component (the energy itself) — without the distribution fee or taxes — while the default electricity price is already bill-inclusive, with distribution added. That’s not a mistake, just a limit of the publicly available data, but a comparison “against your actual bill” will look different. Add your own gas distribution rate in the advanced options to correct for this: for the same 100 m² home (12,000 kWh/year), adding a distribution fee of 0.10 PLN/kWh pushes the condensing-gas cost from 2,573.35 PLN up to 3,877.70 PLN a year (323.14 PLN a month) — still cheaper than electricity or the heat pump in the example above, but the gap narrows noticeably. The calculator doesn’t give financial advice — it shows the numbers; the decision (and any decision to switch heat source) is yours.
District heating and the GJ unit
District heating — common for apartment blocks — is billed differently from gas or electricity in some markets. In Poland, it’s measured directly from a heat meter in the building and billed in gigajoules (GJ), not kWh. The conversion is a physical constant, independent of the supplier: 1 GJ = 277.78 kWh.
A district heating bill has two parts: a standing charge (a subscription/capacity fee, paid regardless of usage) and a variable charge (a price per GJ actually used). The calculator works these out separately.
Example: a demand of 40 GJ/year, at an indicative price of 90 PLN/GJ — prices vary a lot between Polish cities, from around 89 to over 170 PLN/GJ net, so check your own bill.
- Without a standing charge: yearly cost = 40 × 90 PLN = 3,600 PLN, or 300 PLN a month.
- With a standing charge of 50 PLN a month (600 PLN a year): yearly cost = 3,600 + 600 = 4,200 PLN, or 350 PLN a month.
40 GJ converts to 40 × 277.78 ≈ 11,111 kWh — the calculator shows this figure so district heating can be compared with other sources on a common basis, even though the bill itself stays in GJ. Outside Poland, district heating is available as an option in the calculator, but without a reliable default price — enter your own rate per GJ (or per kWh, converted) if your building is connected to a heat network.