heating review · next retrofit
Book the loft hatch first
The survey estimates 265 W of heat loss through the hatch, slightly more than through the floor. Sealing it costs £180, takes an afternoon, and can happen next week. The bay window has a larger estimated loss, but secondary glazing costs £1,180 and has a three-week lead time.
The bay window has the largest estimated loss
These estimates use a 20°C difference between inside and outside. They compare the size of each loss, not the savings a finished job will achieve.
{
ariaLabel: "Estimated watts lost by element: bay window 410, loft hatch 265, timber floor 240, front door 155, chimney 120",
marginBottom: 40,
marginLeft: 150,
x: {grid: true, label: "estimated watts lost"},
y: {label: null},
marks: [
Plot.barX(
[
{element: "single-glazed bay window", loss: 410},
{element: "uninsulated loft hatch", loss: 265},
{element: "suspended timber floor", loss: 240},
{element: "front door and letterbox", loss: 155},
{element: "chimney with no cap", loss: 120},
],
{x: "loss", y: "element", fill: "var(--series-1)", sort: {y: "-x"}},
),
Plot.ruleX([0]),
],
}
Which measure should be booked first?
The three jobs below have current installer access and quotes. Rank their estimated loss against cost, lead time, and disruption — not as promised savings.
Estimated loss: 265 W. The installer can do it next week.
Estimated loss: 410 W. The internal panel leaves the sash untouched.
Estimated loss: 240 W. It makes sense only before the planned refinish.
The January draught-proofing may already be helping
Four weeks after the 12 January work sit below five earlier weeks at similar outside temperatures. At 4°C, separate straight-line fits put the post-work readings 43 kWh a week lower. I excluded the shortened boiler-service week. This suggests a reduction, but four post-work observations and no control house cannot estimate its size.
{
ariaLabel: "Weekly gas use against outside temperature: the four weeks after the work sit below the five before at similar temperatures",
marginBottom: 40,
grid: true,
inset: 8,
x: {label: "outside average, °C"},
y: {label: "gas, kWh a week"},
color: {
legend: true,
domain: ["before", "after"],
range: ["var(--series-1)", "var(--series-2)"],
},
marks: [
Plot.dot(
[
{outside: 2.1, gas: 604, period: "before"},
{outside: 3.0, gas: 588, period: "before"},
{outside: 3.4, gas: 561, period: "before"},
{outside: 5.0, gas: 512, period: "before"},
{outside: 6.1, gas: 470, period: "before"},
{outside: 2.6, gas: 542, period: "after"},
{outside: 3.8, gas: 498, period: "after"},
{outside: 5.2, gas: 470, period: "after"},
{outside: 6.4, gas: 449, period: "after"},
],
{x: "outside", y: "gas", fill: "period", r: 3.5},
),
],
}