Skip to Content
Heating and coolingOil boiler or heat pump on existing radiators

Oil boiler or heat pump on existing radiators

Heating oil costs 1.93 EUR a litre in France and 1.71 in Germany, far above its 2025 average, and a heat pump on the radiators already in the house looks like the obvious way to save. Is it still one if oil goes back to its 2025 price? In the two houses below, in France yes, down to an oil price of about 0.62 EUR per litre, a little over half the 2025 average. In Germany the break-even is about 0.86 EUR per litre, just under the 2025 average of 0.96, so at that price the running cost saving is small, 188 EUR a year. The question page has the short version. This page shows where each number comes from, where the installed cost and the grants come from, and what the model leaves out.

The two houses

I wanted houses a reader would recognise, so I started from the national building typologies and not from my own house. France gets a house of the TABULA 1990s class, Germany a house of the 1984 to 1994 class. Both are detached, with a heated ground floor and a heated attic under a gable roof, and both are well built for their age rather than neglected.

Nancy, FranceKassel, Germany
Heated floor area120 m² (70 ground floor, 50 attic)140 m² (80 ground floor, 60 attic)
Footprint10 × 7 m10 × 8 m
Walls, U-value in W/m²K0.400.50
Roof, U-value0.230.40
Windows, U-value2.63.2
Floor over the cellar, U-value0.400.60
Window area24 m²28 m²

Each U-value gets a further 0.10 W/m²K for thermal bridges, the way the TABULA method adds it, so the table shows the value before that allowance. The airtightness is n50 4.0 per hour, the ventilation 0.4 air changes per hour by extract only, and the internal gains 3 W/m². Four residents live in each house. The rooms are held at 20 °C by day and 17 °C from 22:00 to 06:00. Under each house lies an unheated cellar 2.4 m deep with an uninsulated concrete slab and walls, and the insulation sits in the cellar ceiling. The weather is one typical year for each site, built from the recent years of a public reanalysis, and EnergyPlus runs it in 5-minute steps.

The radiators are steel panels that stay. I cannot know the radiators of a real house, so the model rates them from each house’s design heat load with a margin of about 1.4: 5,720 W on the ground floor and 3,685 W upstairs in Nancy, 7,718 W and 5,460 W in Kassel, each rated at 50 K between the mean water temperature and the room. The heating curve rises to a flow temperature of 65 °C on the coldest days, for the oil boiler and the heat pump alike. Over the year the lowest daytime room temperature with the heat pump is 19.2 °C in Nancy and 18.8 °C in Kassel, against 19.5 and 19.4 °C with oil.

Does the amount of oil look right

I checked the useful heat against the TABULA monthly method, run on my own geometry and inputs. EnergyPlus gives 0.80 of the TABULA value for the Nancy house and 0.81 for the Kassel house, inside the band of 0.70 to 1.10 that I set before the runs. Most of the gap is the sun absorbed by the outside walls and roof, which the TABULA method leaves out.

The litres have outside references too. Published figures for a house of this size come to 1,790 to 2,950 litres a year in France and 1,500 to 2,830 in Germany (SOeS 2012 and 2017, co2online Heizspiegel 2026, IWU building typology 2015). They are averages of stocks that include larger and older houses. The Kassel house burns 1,835 litres, inside the German range. The Nancy house burns 1,322, under every French figure I could open: it is a compact box, its boiler loses nothing in pipes, and I did not tune it until it matched. The range stands next to the result on the question page for that reason.

The oil boiler, and why litres follow from its efficiency

The boiler is a non-condensing oil boiler of 21 kW with a constant efficiency of 0.772 on the upper heating value and a standby loss of 84 W. The 0.772 is the generator efficiency that the IWU typology calibrates for houses built from 1984 to 1994, which suits a boiler as old as the house. A new condensing oil boiler would burn less, so against it the break-even would be higher. This page compares with the boiler that is already there.

The upper heating value counts the heat of the water vapour in the flue gas as if it were recovered. On that basis a litre of heating oil holds 10.6 kWh. The lower value, the one the Heizspiegel and most people use, is 10 kWh per litre, so the kWh of oil on this page are 6 percent higher than the usual rule of thumb: 1,322 litres are 14,013 kWh here and 13,220 kWh at 10 per litre. I keep the upper value because the boiler efficiency is defined on it.

The litres follow in three steps. The model adds up the heat the boiler delivers to the radiators and to the cylinder, divides it by the efficiency, and divides again by 10.6. For the radiators alone the Nancy house receives 7,553 kWh and burns 958 litres, which is 0.744 kWh of heat per kWh of oil on the upper value, a little under 0.772 because of the 84 W standby loss and the losses in the loop. Kassel receives 11,781 kWh for 1,469 litres, which is 0.756. The boiler’s pumps and controls add 91 kWh of electricity in Nancy and 100 kWh in Kassel, which I count at the electricity price.

Hot water

Both systems heat the hot water through a cylinder: 160 litres on the oil boiler, charged to 60 °C, and 200 litres on the heat pump, charged to 55 °C. Hot water has priority, so the radiators wait while a charge runs. The draw is the same in both houses: 2,406 kWh at the tap for four residents at 42 °C. The Hot water article describes a separate water heater with its own tank. This comparison uses the other layout, a cylinder charged by the main heater.

The boiler spends 364 litres on hot water in Nancy and 365 in Kassel, 28 and 20 percent of the oil. The shares differ because Kassel needs more heating for the same hot water. The heat pump spends 1,061 and 981 kWh of electricity on it, at a COP over the year of 2.57 and 2.79 for the cylinder charge, against 2.79 and 2.99 for space heating. For the whole house, hot water included, the COP over the year is 2.73 in Nancy and 2.95 in Kassel: all the heat delivered to the rooms and the cylinder, divided by all the electricity the heat pump used (see COP and SCOP).

The morning charge window and the comfort hours

Without a rule, the hot water charge starts whenever the cylinder is cold. At 06:00 the night setback ends and the rooms climb from 17 to 20 °C. If the morning shower starts a charge during that climb, the radiators pause and the climb stalls. Without the rule, the Nancy heat pump house spent 308 hours a year below its setpoint while occupied, over the limit of 300 hours I hold every run to, which is 3.4 percent of the year.

An installer would warm the water before the house heats, so the model does the same. The cylinder is charged from 05:00 to 06:00, and from 06:00 to 09:00 no new charge starts unless the cylinder falls below 45 °C. That takes the 308 hours down to 264, and the Kassel unit’s 345 down to 298. It costs almost nothing: 6 kWh of electricity a year in both heat pump houses, and 0.7 and 1.5 litres of oil in the oil houses. The tap temperature never drops below 42 °C.

Occupied hours below the setpointNancy oilNancy heat pumpKassel oilKassel heat pump
With the charge window193264243298
Without it228308292345
Daytime hours below 19.5 °C, worse storey020933

The heat pump has more such hours than the oil boiler, 71 more in Nancy and 55 more in Kassel, so on this measure its house is slightly less comfortable, within the same limit. About 86 percent of the heat pump’s missed hours in Nancy and 84 percent in Kassel fall in two periods, the hour after the setback ends and the evening after the hot water draw. The window does not touch either of them.

Sizing the heat pump

The sizing picks the smallest unit whose output at the design outdoor temperature, with 35 °C water, comes within 5 percent of the design heat load plus a hot water allowance.

NancyKassel
Design outdoor temperature-9.6 °C-11.9 °C
Design heat load6.45 kW9.42 kW
Hot water allowance0.36 kW0.42 kW
Required6.81 kW9.84 kW
Unit chosen10 kW class13 kW class
Its output at the design temperature9.06 kW9.77 kW
The class below6.09 kW (8 kW class)8.49 kW (10 kW class)

The class below falls short in both houses. I size at the design temperature and not from the weather file, because the typical year never gets that cold: its coldest hours are -8.1 °C in Nancy and -7.6 °C in Kassel. The annual runs therefore never test the design day itself. The backup heater is 8 kW in every run, and it ran for 0.3 kWh in Nancy and 0.02 kWh in Kassel over the year (see The backup heater).

Would a bigger unit change the answer? I ran three units in the Kassel house against the same oil boiler.

Kassel13 kW class16 kW classTwo 10 kW units
Electricity, kWh a year4,9894,5295,222
Break-even oil price, EUR per litre0.860.780.90
Occupied hours below the setpoint298270187
Compressor starts a year (estimate)11,18913,0398,055

A bigger unit buys comfort. The 13 kW class meets the 300-hour limit with 2 hours to spare, the 16 kW class with 30, and in the model the 16 kW class uses 9 percent less electricity. It also starts its compressor 17 percent more often, and what it costs to buy is not in this comparison. I use the unit the sizing picks. Across the three units the Kassel break-even moves between 0.78 and 0.90 EUR per litre, below the 2025 average of 0.96 in every case, so the unit changes the margin and not the verdict. In Nancy the other classes I ran (6, 8 and 13, before I added the charge window) put the break-even between 0.57 and 0.62. Heat pump size and cycling explains the general case.

The prices

Oil comes from the EU Weekly Oil Bulletin, sheet “Prices with taxes”: heating gas oil, national average, in EUR per 1,000 litres. I froze “today” on the week of 19 October 2026, the newest week in the bulletin when I fixed the prices. The 2025 average is the mean of the 52 weekly prices of 2025.

Heating oil with taxes, EUR per litreFranceGermany
Week of 19 October 20261.9311.713
2025 average1.1320.959
Week of 2 March 20261.2250.989
Week of 9 March 20261.5491.184
Rise in that week26 %20 %

Against the 2025 average, oil in the week of 19 October costs about 70 percent more in France and about 79 percent more in Germany.

Electricity is the engine’s default: the Eurostat household price for the band of 5,000 to 14,999 kWh a year, all taxes and levies included, first half of 2026. That is 0.2203 EUR per kWh in France and 0.3214 in Germany. The standing charge is already spread over the consumption. The price file has no heat pump tariff. A cheaper heat pump tariff would lower the heat pump’s cost and move the break-even down in proportion.

The break-even

The break-even is the oil price p at which the two systems cost the same per year:

litres × p + boiler electricity × electricity price = heat pump electricity × electricity price

so p = (heat pump kWh - boiler kWh) × electricity price ÷ litres. For Nancy that is (3,828 - 91) × 0.2203 ÷ 1,322 = 0.62 EUR per litre. For Kassel it is (4,989 - 100) × 0.3214 ÷ 1,835 = 0.86 EUR per litre.

Annual running cost, EURNancyKassel
Oil boiler at the price of 19 October 20262,5723,175
Oil boiler at the 2025 average1,5171,792
Oil boiler at 1.00 EUR per litre1,3421,867
Oil boiler at the break-even price8431,603
Heat pump8431,603
Break-even as a share of today’s price32 %50 %
Break-even as a share of the 2025 average55 %89 %

At today’s price the heat pump saves 1,729 EUR a year in Nancy and 1,571 EUR in Kassel. At the 2025 average it saves 674 and 188 EUR. At 1.00 EUR per litre it saves 499 and 263 EUR. The running cost is the oil, the heat pump’s electricity and the boiler’s own electricity. The extract fan and the household electricity are the same in both systems and left out.

Installed cost, grants and payback

The simulation gives the running cost. It does not model the installed cost or the grants. They come from public sources I read on 27 October 2026, and the payback is a plain division: the net cost, which is the installed cost minus the grants, over the annual running cost saving from the table above. I compute it at the oil price of 19 October 2026 and at the 2025 average. It leaves out financing, maintenance, resale value and a change in the electricity price.

One job, the same in both countries

I priced the same job in both countries so that the two costs can be compared. It is a monobloc air-to-water heat pump (10 to 12 kW in France, the 13 kW class in Kassel) that replaces a working oil boiler in a detached house, with the existing radiators kept. It covers the unit, the hot water cylinder, the base or wall mount of the outdoor unit, the hydraulic connection and commissioning, the hydraulic balancing, the electrical connection of the unit, the removal of the old boiler and the removal of the old oil tank. It leaves out the rebuild of the meter cabinet, any radiator replacement and any building work. Prices include VAT at the national rate, 5.5 % in France and 19 % in Germany. No source matches this scope exactly, and each paragraph below says how close it is.

Nancy, France

The heat pump system costs 16,500 EUR without the tank. That is the mean of the ADEME field campaign for heat pumps that make heating and hot water, 16,531 EUR with VAT, on 90 air-to-water heat pumps in detached houses (the cost is known for 79) installed in 2022 and 2023. ADEME says the figure covers the equipment, the labour, the removal of the old boiler and the ancillary parts, so it is the total cost of the operation, and 50 of the 61 heating and hot water heat pumps of the campaign have the cylinder built in. The ADEME guide of December 2025 gives 14,900 EUR for the equipment and 2,060 EUR for the installation of a 10 to 12 kW unit, before VAT: 16,960 EUR, or 17,893 EUR with the 5.5 % VAT rate. It does not say whether the cylinder and the removal of the old boiler are inside, so I use it as an upper check and not as the central cost. The spread in the campaign goes from 10,000 to 25,914 EUR. Heat Pumps Watch, an expert blog, puts French installations of 8 to 10 kW between 12,000 and 20,000 EUR.

The old oil tank is removed in this job too. According to Hellio, which cites an order of 2004, the installer of a new heating system has to take out the old oil tank in France. I take 1,300 EUR for it, the median of the midpoints of three price guides: Hellio 800 to 1,800 EUR, Effy 1,000 to 1,500 EUR and Izi by EDF 1,000 to 2,500 EUR. They are commercial sources and I found no official or consumer-association price, so the confidence is low. The total is 16,500 + 1,300 = 17,800 EUR.

Three grants apply. MaPrimeRénov’ par geste pays 5,000, 4,000 or 3,000 EUR for an air-to-water heat pump to the Bleu, Jaune and Violet households, within a 12,000 EUR expense cap, and nothing to the Rose band. The same scheme pays 1,200, 800 or 400 EUR for removing a fuel tank, within a 4,000 EUR expense cap, so in France the grant covers the tank, with a flat amount. The Coup de pouce chauffage, paid through the energy saving certificates (CEE), multiplies the standard volume by 5 when the heat pump replaces an oil boiler. For the Nancy house the volume is 109,200 kWhc × 1.2 (zone H1) × 5 = 655,200 kWhc, or 655.2 MWhc. At an assumed certificate price of 7.8 EUR per MWhc that is 5,110 EUR for most households, and 7,207 EUR for the modest-income ones (Bleu and Jaune). This part is an estimate: the supplier’s offer sets the real amount, and since 1 September 2026 only heat pump models approved by the State get the factor 5. I did not check the Vitocal 150-A against that list. Without the factor 5 the amount would be about 1,022 EUR. The amount does not change with the tank.

The question page uses the Violet band, intermediate income, as the typical case: 3,000 + 400 + 5,110 = 8,510 EUR of grants.

Nancy, 17,800 EUR installedGrants, EURNet cost, EURPayback at today’s price, yearsPayback at the 2025 average, years
Bleu, very modest income13,4074,3932.56.5
Jaune, modest income12,0075,7933.48.6
Violet, intermediate income (typical case)8,5109,2905.413.8
Rose, higher income5,11012,6907.318.8
No grant017,80010.326.4

Kassel, Germany

The heat pump system costs 35,500 EUR without the tank. It starts from the evaluation of 160 real offers for air-to-water heat pumps in one- and two-family houses by the Verbraucherzentrale Rheinland-Pfalz, offers from September 2025 to April 2026: a mean of 36,397 EUR, a median of 34,898 EUR, from 21,099 to 54,168 EUR. The prices are gross: the 2025 edition of the evaluation says so, and the 2026 edition follows the same method. Most offers include hot water preparation (85 %), hydraulic balancing (86 %), a foundation (68 %) and the electrical installation (80 %). Two items in the offers are outside my scope.

The meter cabinet rebuild is in 50 offers (31 %), 34 of them with a price of its own, 2,806 EUR on average. Spread over the 160 offers that is 50 × 2,806 / 160 = 877 EUR per offer, and 36,397 minus 877 leaves 35,520 EUR.

A radiator swap is in 36 offers (23 %), and the evaluation prices it nowhere. The 2025 edition, with another 160 offers, puts a radiator at 679 EUR on average. If each of the 36 offers had 10 radiators, the swap would add at most 36 × 10 × 679 / 160 = 1,528 EUR to the mean. I did not subtract it. In the other direction, the offers that contain every standard item cost more: 42 of them in the 2025 edition, radiators left out, 37,564 EUR on average against 36,279 EUR for all 160. The two corrections have opposite signs and a similar size, so I keep 35,520 EUR, rounded to 35,500 EUR, with a range of 34,000 to 37,600 EUR.

The offers are mostly 10 to 12 kW units, a little smaller than the 13 kW class of the Kassel house, and they come from one federal state. The evaluation gives 2,300 to 3,500 EUR per kW above about 12 kW, which is 29,900 to 45,500 EUR at 13 kW, and the figure sits inside it. An RWTH Aachen comparison of an 8 kW unit, as quoted by Rosenow, finds 35,366 EUR with VAT.

I price the dismantling and disposal of the old oil tank at 1,200 EUR, the midpoint of the 400 to 2,000 EUR that co2online gives for dismantling an old tank. 42watt gives 350 to 2,500 EUR and Thermondo 1,000 to 2,500 EUR. The confidence is medium. I assume the tank is run empty before the swap, so the disposal of residual oil is not added. The total is 35,500 + 1,200 = 36,700 EUR.

The grant is the KfW grant 458, in its current form since 21 July 2026. The base rate is 30 % of the eligible costs. Owners who replace a working oil heating get a climate speed bonus of 16 %, which falls to 12 % for applications from 1 February 2027. An income bonus of 10, 30 or 40 % applies when the taxable household income is up to 50,000, 40,000 or 30,000 EUR. The total is capped at 70 % of the eligible costs, 80 % for an income up to 30,000 EUR, and the eligible costs themselves at 28,000 EUR for a one-family house. The removal of the old tank and of the old boiler counts as an eligible cost: the September 2026 info sheet of KfW and BAFA lists the disposal of an old oil or gas tank among the dismantling work. But the heat pump alone already goes above that cap, so the tank removal does not raise the grant. The typical case, an income above 50,000 EUR, gets 46 % of 28,000 EUR, which is 12,880 EUR.

Kassel, 36,700 EUR installedGrant rate, %Grant, EURNet cost, EURPayback at today’s price, yearsPayback at the 2025 average, years
Income above 50,000 EUR (typical case)4612,88023,82015.2126.5
Income 40,000 to 50,000 EUR5615,68021,02013.4111.7
Income 30,000 to 40,000 EUR7019,60017,10010.990.8
Income up to 30,000 EUR8022,40014,3009.176.0
No grant0036,70023.4195.0

Why a heat pump costs more to install in Germany

For the same job without the tank, Germany is at 35,500 EUR and France at 16,500 EUR, a gap of 19,000 EUR. Here is what I could source. The explanation is partial, and the largest part is not explained.

VAT is 4,027 EUR, 21 % of the gap. Germany charges 19 % on a heat pump installation (§ 12 of the Umsatzsteuergesetz, where the 0 % rate is for photovoltaics only). France charges 5.5 % on works that improve the energy quality of a dwelling older than two years (articles 278-0 bis and 278-0 bis A of the Code général des impôts). On the German price without VAT, 29,832 EUR, the 13.5 points of difference are 4,027 EUR. This is the one step I can calculate exactly.

Labour is 1,783 to 3,497 EUR, 9 to 18 % of the gap, and it is only indicative. Hourly labour cost in construction is almost the same in the two countries, 38.1 EUR in Germany and 38.7 EUR in France in 2024 (Eurostat). The labour line of the cost is not: 6,634 EUR on average in the 78 German offers that price it separately, 2,384 EUR in the ADEME campaign for heating and hot water. Without VAT, and at the French VAT rate, that gives 3,497 EUR. A government-commissioned analysis quoted by Rosenow puts the labour of a German installation at 4,700 EUR, which gives 1,783 EUR. So the difference comes from hours or from what the line covers, not from the hourly rate. A ZVSHK panel survey, as reported by Miara, counts 110 technician hours for a German heat pump and 36 for a gas boiler. I could not read it, and I found no French figure.

The rest, 11,475 to 13,190 EUR or 60 to 69 % of the gap, is not explained by any figure I could source for France. The candidates come from Miara and Rosenow and are measured against the United Kingdom, not France: German equipment 2,000 to 4,000 EUR more, the outdoor foundation 1,000 to 2,200 EUR more, the electrical connection and the grid rules of § 14a EnWG 1,500 to 2,500 EUR more. Miara also says equipment is 15 to 35 % cheaper in France, the Netherlands and Poland, with Asian brands, simpler models and smaller backup heaters, and he reports defensive pricing by busy German installers in 2022 to 2024. Rosenow and Miara suggest that percentage-based German grants, which give households little reason to push a quote down, keep prices up: the mean customer cost in Germany went from about 17,000 EUR to about 40,000 EUR around the change of 2020, whereas France pays fixed or income-dependent amounts. They write that this evidence is observational and that their decomposition is illustrative, not representative. I found no public price of the same unit in both countries.

From the French to the German cost, EURWith the low labour figureWith the high labour figure
French cost16,50016,500
VAT4,0274,027
Labour line, indicative1,7833,497
Not explained by a sourced figure13,19011,475
German cost35,50035,500

Two cautions. The French figure is made of invoices from 2022 and 2023, the German one of offers from 2025 and 2026, before any negotiation, from one federal state. And I read the authors’ own summary of the Miara and Rosenow paper and a press report on it, not the paper.

Against a new oil boiler

A homeowner whose boiler fails may compare the heat pump with a new boiler, not with doing nothing. Then only the extra cost counts. The saving stays the one computed above, against the old boiler, so these paybacks are optimistic: a new condensing boiler burns less oil, and the real saving against it is smaller. The heat pump column includes the removal of the old tank; a new boiler keeps it and needs none.

In France there is no like-for-like replacement. Installing a new oil boiler in an existing building has been banned since 1 July 2022, with two narrow exceptions, so the Nancy figures are an illustration. In Germany a new oil boiler is allowed. The Gebäudemodernisierungsgesetz, in force from 29 July 2026, dropped the 65 % renewable rule and the duty to replace an old oil boiler. From 1 January 2029 a new oil heating must run on at least 10 % climate-neutral fuel.

Heat pump against a new oil boilerNancyKassel
New oil boiler installed, midpoint of the range, tank left out7,750 EUR (5,500 to 10,000)9,950 EUR (6,700 to 13,200)
Extra cost of the heat pump, no grant10,050 EUR26,750 EUR
Payback of that extra cost, today’s price and 2025 average5.8 and 14.9 years17.0 and 142.1 years
Extra cost of the heat pump, typical grant1,540 EUR13,870 EUR
Payback of that extra cost, today’s price and 2025 average0.9 and 2.3 years8.8 and 73.7 years

What the model leaves out

  • One weather year per site. A colder or milder year moves both systems, and I did not run one.
  • Two illustrative houses. They are not national averages, and their radiators are the model’s, not a survey’s.
  • Prices frozen on a stated week. Heating oil changes every week, so the date is part of every figure.
  • The payback is a division, nothing more. It leaves out financing, maintenance, resale value and a change in the electricity price, and it uses one typical case per country. The installed cost and the grants are not simulated.
  • A constant boiler efficiency of 0.772, with no part-load curve and no losses in pipes outside the heated envelope.
  • Heat pump data from one manufacturer’s air-to-water line, the Viessmann Vitocal 150-A. Capacities and COP come from its planning guide.
  • A hot water draw of 2,406 kWh at the tap for four residents. TABULA assumes about half of that for a house of this age, and a smaller draw lowers the oil and the electricity alike.
  • A comfort limit of 300 hours, with the heat pump a little further from it than the oil boiler in both houses.

Sources

Last updated on