{"id":66,"date":"2026-04-19T20:08:20","date_gmt":"2026-04-19T19:08:20","guid":{"rendered":"http:\/\/sadiqur.xyz\/glazing\/index.php\/cost-calculator\/"},"modified":"2026-04-19T20:08:20","modified_gmt":"2026-04-19T19:08:20","slug":"cost-calculator","status":"publish","type":"page","link":"http:\/\/sadiqur.xyz\/glazing\/index.php\/cost-calculator\/","title":{"rendered":"Double Glazing Cost Calculator"},"content":{"rendered":"\n<section class=\"wp-block-group has-text-color has-background\" style=\"color:#ffffff;background-color:#1E3A8A;padding-top:80px;padding-right:20px;padding-bottom:64px;padding-left:20px\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-container-core-group-is-layout-8406266d wp-block-group-is-layout-constrained\">\n<div style=\"text-align:center;font-size:14px;color:#60A5FA;letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:12px;\">\u26a1 Free Tool \u00b7 No Signup<\/div>\n<h1 class=\"wp-block-heading has-text-align-center has-text-color\" style=\"color:#ffffff;font-size:clamp(2rem,5vw,3rem);line-height:1.1\">Get an instant cost estimate for your home<\/h1>\n<p class=\"has-text-align-center has-text-color\" style=\"color:#cbd5e1;font-size:1.125rem\">Based on 2026 UK market data \u2014 adjusted for your postcode in 30 seconds.<\/p>\n<\/div><\/section>\n\n<section class=\"wp-block-group\" style=\"padding-top:48px;padding-right:20px;padding-bottom:80px;padding-left:20px\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-container-core-group-is-layout-f1756966 wp-block-group-is-layout-constrained\">\n\t<div class=\"ff-calc\" data-ff-calc>\n\t\t<div class=\"ff-calc-eyebrow\">\u26a1 Free tool \u00b7 30 seconds<\/div>\n\t\t<h2>Double glazing cost calculator<\/h2>\n\t\t<p class=\"ff-calc-sub\">Get an instant estimate based on 2026 UK market rates. Your postcode adjusts the price for regional labour costs.<\/p>\n\n\t\t<div class=\"ff-calc-field\">\n\t\t\t<label>Property type<\/label>\n\t\t\t<div class=\"ff-calc-tile-row\">\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"property\" value=\"flat\"><span>\ud83c\udfe2 Flat (3-4 windows)<\/span><\/label>\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"property\" value=\"terrace\"><span>\ud83c\udfda\ufe0f Terrace (6-8)<\/span><\/label>\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"property\" value=\"semi\" checked><span>\ud83c\udfd8\ufe0f Semi (8-10)<\/span><\/label>\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"property\" value=\"detached\"><span>\ud83c\udfe0 Detached (10-14)<\/span><\/label>\n\t\t\t<\/div>\n\t\t<\/div>\n\n\t\t<div class=\"ff-calc-field\">\n\t\t\t<label>Material<\/label>\n\t\t\t<div class=\"ff-calc-tile-row\">\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"material\" value=\"upvc\" checked><span>uPVC<\/span><\/label>\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"material\" value=\"aluminium\"><span>Aluminium<\/span><\/label>\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"material\" value=\"wood\"><span>Wood<\/span><\/label>\n\t\t\t\t<label class=\"ff-calc-tile\"><input type=\"radio\" name=\"material\" value=\"composite\"><span>Composite<\/span><\/label>\n\t\t\t<\/div>\n\t\t<\/div>\n\n\t\t<div class=\"ff-calc-field\">\n\t\t\t<label>Number of windows to replace<\/label>\n\t\t\t<input type=\"number\" name=\"quantity\" min=\"1\" max=\"30\" value=\"8\" step=\"1\">\n\t\t<\/div>\n\n\t\t<div class=\"ff-calc-field\">\n\t\t\t<label>Postcode (first part only \u2014 for regional pricing)<\/label>\n\t\t\t<input type=\"text\" name=\"postcode\" placeholder=\"e.g. M1, SW1, LS2\" style=\"text-transform:uppercase;max-width:180px;\">\n\t\t<\/div>\n\n\t\t<button type=\"button\" class=\"ff-calc-submit\" data-calc-go>Calculate My Estimate \u2192<\/button>\n\n\t\t<div class=\"ff-calc-result\" data-calc-result>\n\t\t\t<div class=\"ff-calc-result-label\">Estimated installed cost for your home<\/div>\n\t\t\t<div class=\"ff-calc-result-price\" data-calc-price>\u00a30<\/div>\n\t\t\t<div class=\"ff-calc-result-range\" data-calc-range>Range: \u00a30 \u2013 \u00a30<\/div>\n\t\t\t<div class=\"ff-calc-result-saving\" data-calc-saving>Save ~\u00a30 by comparing 4 quotes<\/div>\n\t\t\t<div><a href=\"\/glazing\/index.php\/quote\/\" class=\"ff-calc-result-cta\">Get My 4 Free Quotes \u2192<\/a><\/div>\n\t\t\t<div class=\"ff-calc-result-note\">Estimates based on 2026 UK market data. Real quotes are usually 15-30% below national-chain pricing.<\/div>\n\t\t<\/div>\n\n\t<\/div>\n\n\t<script>\n\t(function(){\n\t\tvar wrap = document.querySelector('[data-ff-calc]');\n\t\tif (!wrap) return;\n\n\t\t\/\/ Base costs per window (mid-range) by material\n\t\tvar MATERIAL = {\n\t\t\tupvc:       { min: 450, max: 900,  mid: 675 },\n\t\t\taluminium:  { min: 650, max: 1200, mid: 925 },\n\t\t\twood:       { min: 700, max: 1500, mid: 1100 },\n\t\t\tcomposite:  { min: 900, max: 1800, mid: 1350 }\n\t\t};\n\n\t\t\/\/ Bulk discount by quantity\n\t\tfunction bulkDiscount(n) {\n\t\t\tif (n >= 16) return 0.85;\n\t\t\tif (n >= 11) return 0.88;\n\t\t\tif (n >= 5)  return 0.92;\n\t\t\treturn 1.0;\n\t\t}\n\n\t\t\/\/ Regional multiplier by postcode prefix\n\t\tfunction regional(pc) {\n\t\t\tpc = (pc || '').toUpperCase().trim();\n\t\t\tif (!pc) return 1.0;\n\t\t\tif (\/^(EC|WC|E\\d|N\\d|NW|SE|SW|W\\d|HA|IG|RM|UB|TW|KT|CR|DA|BR)\/.test(pc)) return 1.25; \/\/ London\n\t\t\tif (\/^(BN|GU|PO|RG|ME|RH|OX|SL|MK|CB|CM|LU|SG|AL|HP|CT|TN)\/.test(pc)) return 1.10; \/\/ SE\n\t\t\tif (\/^(BT)\/.test(pc)) return 1.00; \/\/ NI\n\t\t\tif (\/^(CF|SA|LL|NP|LD|SY)\/.test(pc)) return 0.90; \/\/ Wales\n\t\t\tif (\/^(EH|G\\d|AB|IV|KW|DD|KY|PH|PA|FK|ML|KA|DG|TD)\/.test(pc)) return 0.88; \/\/ Scotland\n\t\t\tif (\/^(M\\d|L\\d|S\\d|YO|LS|BD|HD|BB|OL|PR|WA|WN|SK|TS|DL|NE|SR|DH|HU|DN)\/.test(pc)) return 0.92; \/\/ North\n\t\t\treturn 1.0;\n\t\t}\n\n\t\tvar goBtn = wrap.querySelector('[data-calc-go]');\n\t\tvar resultEl = wrap.querySelector('[data-calc-result]');\n\t\tvar priceEl = wrap.querySelector('[data-calc-price]');\n\t\tvar rangeEl = wrap.querySelector('[data-calc-range]');\n\t\tvar savingEl = wrap.querySelector('[data-calc-saving]');\n\n\t\tfunction format(n) {\n\t\t\tvar rounded = Math.round(n \/ 50) * 50;\n\t\t\treturn '\u00a3' + rounded.toString().replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, ',');\n\t\t}\n\n\t\tfunction compute() {\n\t\t\tvar material = (wrap.querySelector('[name=\"material\"]:checked') || {}).value || 'upvc';\n\t\t\tvar qty = parseInt(wrap.querySelector('[name=\"quantity\"]').value || 8, 10);\n\t\t\tvar pc = wrap.querySelector('[name=\"postcode\"]').value;\n\n\t\t\tvar m = MATERIAL[material] || MATERIAL.upvc;\n\t\t\tvar discount = bulkDiscount(qty);\n\t\t\tvar region = regional(pc);\n\n\t\t\tvar mid = m.mid * qty * discount * region;\n\t\t\tvar low = m.min * qty * discount * region;\n\t\t\tvar high = m.max * qty * discount * region;\n\n\t\t\tvar nationalChain = mid * 1.35;\n\t\t\tvar saving = nationalChain - mid;\n\n\t\t\tpriceEl.textContent = format(mid);\n\t\t\trangeEl.textContent = 'Range: ' + format(low) + ' \u2013 ' + format(high);\n\t\t\tsavingEl.textContent = 'Save ~' + format(saving) + ' by comparing 4 quotes vs a single national-chain quote';\n\n\t\t\tresultEl.classList.add('visible');\n\t\t\tresultEl.scrollIntoView({ behavior: 'smooth', block: 'center' });\n\t\t}\n\n\t\tgoBtn.addEventListener('click', compute);\n\n\t\t\/\/ Prefill quantity based on property type selection\n\t\twrap.querySelectorAll('[name=\"property\"]').forEach(function(el){\n\t\t\tel.addEventListener('change', function(){\n\t\t\t\tvar map = { flat: 4, terrace: 7, semi: 9, detached: 12 };\n\t\t\t\twrap.querySelector('[name=\"quantity\"]').value = map[el.value] || 8;\n\t\t\t});\n\t\t});\n\t})();\n\t<\/script>\n\t\n\n<\/div><\/section>\n","protected":false},"excerpt":{"rendered":"<p>\u26a1 Free Tool \u00b7 No Signup Get an instant cost estimate for your home Based on 2026 UK market data \u2014 adjusted for your postcode in 30 seconds.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-66","page","type-page","status-publish"],"_links":{"self":[{"href":"http:\/\/sadiqur.xyz\/glazing\/index.php\/wp-json\/wp\/v2\/pages\/66","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/sadiqur.xyz\/glazing\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/sadiqur.xyz\/glazing\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/sadiqur.xyz\/glazing\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/sadiqur.xyz\/glazing\/index.php\/wp-json\/wp\/v2\/comments?post=66"}],"version-history":[{"count":0,"href":"http:\/\/sadiqur.xyz\/glazing\/index.php\/wp-json\/wp\/v2\/pages\/66\/revisions"}],"wp:attachment":[{"href":"http:\/\/sadiqur.xyz\/glazing\/index.php\/wp-json\/wp\/v2\/media?parent=66"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}