{"id":10857,"date":"2025-09-23T12:54:50","date_gmt":"2025-09-23T10:54:50","guid":{"rendered":"https:\/\/hycleaner.blackpeppers.de\/loss-calculator\/"},"modified":"2025-11-06T12:35:24","modified_gmt":"2025-11-06T11:35:24","slug":"loss-calculator","status":"publish","type":"page","link":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/","title":{"rendered":"Loss Calculator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"10857\" class=\"elementor elementor-10857 elementor-2553\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-74595a1 e-con-full e-flex e-con e-parent\" data-id=\"74595a1\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c3a1bc3 elementor-widget elementor-widget-heading\" data-id=\"c3a1bc3\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">LOSS CALCULATOR FOR DIRTY PV SYSTEMS<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd3d9f7 elementor-widget elementor-widget-text-editor\" data-id=\"cd3d9f7\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Calculate your loss due to soiling of your solar panels and find out how much additional yield you can achieve through professional cleaning. <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3114d01 elementor-widget elementor-widget-html\" data-id=\"3114d01\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section id=\"verlustrechner\" class=\"pvx\" lang=\"en\">\n  <style>\n    \/* =========================\n       Scoped Design Tokens\n       ========================= *\/\n    .pvx{\n      --brand:   #2a5bd5;\n      --brand2:  #1d3fa6;\n      --ink:     #0b1220;\n      --muted:   #4b5563;\n      --card:    #ffffff;\n      --border:  #e6e9ef;\n      --track:   #e7e9ee;\n      --trackDim:#9aa3a9;\n      --shadow:  0 .625rem 1.5rem rgba(16,24,40,.08);\n      --radius-lg: 1rem;\n      --radius-md: .75rem;\n      --radius-sm: .625rem;\n      --space-1: .5rem;\n      --space-2: .75rem;\n      --space-3: 1rem;\n      --space-4: 1.25rem;\n      --space-5: 1.75rem;\n      --space-6: 2.25rem;\n\n      background: transparent;\n      color: var(--ink);\n      line-height: 1.5;\n    \n    }\n    .pvx *{ box-sizing: border-box }\n    .pvx .wrap{ width:100% } \/* no outer margins \u2013 handled by Elementor *\/\n\n    \/* ================= Layout ================= *\/\n    .pvx .grid{ display:grid; grid-template-columns: 1.05fr .95fr; gap: var(--space-5) }\n    @media (max-width: 64rem){ .pvx .grid{ grid-template-columns:1fr; gap: var(--space-3) } }\n\n    \/* ================= Cards ================= *\/\n    .pvx .card{\n      background: var(--card);\n      border: .0625rem solid var(--border);\n      border-radius: var(--radius-lg);\n      padding: var(--space-4);\n      box-shadow: var(--shadow);\n    }\n    .pvx .sticky{ position: sticky; top: 1rem }\n    @media (max-width:64rem){ .pvx .sticky{ position: static } }\n\n    \/* ================= Inputs ================= *\/\n    .pvx .inputs{ display:grid; grid-template-columns:1fr 1fr; gap: var(--space-3) }\n    @media (max-width:35rem){ .pvx .inputs{ grid-template-columns:1fr } }\n    .pvx .label{ font-size:.875rem; color:#111827; font-weight:600; margin:0 0 .375rem }\n\n    .pvx input[type=\"number\"]{\n      width:100%;\n      padding:.625rem .75rem;\n      border:.0625rem solid var(--border);\n      border-radius: var(--radius-sm);\n      background:#fff;\n      font-size:1rem;\n      line-height:1.4;\n      transition: box-shadow .18s ease, border-color .18s ease;\n    }\n    .pvx input[type=\"number\"]::-webkit-outer-spin-button,\n    .pvx input[type=\"number\"]::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0 }\n    .pvx input[type=\"number\"]{ -moz-appearance:textfield }\n    .pvx input[type=\"number\"]:hover{ border-color:#d5dae4 }\n    .pvx input[type=\"number\"]:focus-visible{\n      outline: none; border-color: var(--brand); box-shadow: 0 0 0 .2rem rgba(42,91,213,.15);\n    }\n\n    \/* ================= Result ================= *\/\n    .pvx .result{ display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap }\n    .pvx .result .title{ font-size:1.125rem; font-weight:800; letter-spacing:.01rem }\n    .pvx .result .sub{ margin:.125rem 0 0; color:var(--muted); font-size:.95rem }\n    .pvx .amount{ font-size:3rem; font-weight:900; letter-spacing:.02rem }\n    @media (max-width:48rem){\n      .pvx .amount{ font-size:2.25rem }\n      .pvx .result .title{ font-size:1rem }\n    }\n\n    \/* ================= Preset Tiles ================= *\/\n    .pvx .presets{ margin-top: var(--space-3) }\n    .pvx .presets .lead{ margin:0 0 .5rem; font-size:1rem; color:#111827 }\n    .pvx .tiles{ display:grid; grid-template-columns:repeat(5,1fr); gap: var(--space-3) }\n    @media (max-width:68.75rem){ .pvx .tiles{ grid-template-columns:repeat(4,1fr) } }\n    @media (max-width:51.25rem){ .pvx .tiles{ grid-template-columns:repeat(3,1fr) } }\n    @media (max-width:35rem){ .pvx .tiles{ grid-template-columns:repeat(1,1fr) } }\n\n    .pvx .tile{\n      cursor:pointer; background:#fff; border:.0625rem solid var(--border);\n      border-radius: var(--radius-md); padding: var(--space-3);\n      min-height:7.5rem; display:grid; place-items:center; gap:.625rem;\n      transition: transform .14s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;\n  \n    }\n    .pvx .tile:hover{ box-shadow:var(--shadow); transform: translateY(-.06rem) }\n    .pvx .tile:focus-visible{ outline:none; box-shadow:0 0 0 .25rem rgba(42,91,213,.18); border-color:transparent }\n    .pvx .tile img{ width:3.125rem; height:auto; transition: filter .18s ease, opacity .18s ease }\n    .pvx .tile .t{ font-weight:700; text-align:center; color:#0b1220 }\n    .pvx .tile.active{\n      background:#1d3fa6 linear-gradient(180deg, var(--brand), var(--brand2)) !important;\n      border-color: transparent; color:#fff;\n    }\n    .pvx .tile.active .t{ color:#fff !important }\n    .pvx .tile.active img{ filter: brightness(0) invert(1) !important }\n\n    \/* ================= Slider ================= *\/\n    .pvx .slider-wrap{ position:relative; margin-top: var(--space-3) }\n    .pvx .s-head{ display:flex; align-items:center; gap:.5rem; color:#111827; font-size:1rem; margin-bottom:.5rem}\n\n    \/* Fill via --val (0\u2013100%) *\/\n    .pvx input.slider{\n      --val: 0%;\n      -webkit-appearance:none; width:100%; height:.5rem; border-radius:999rem; outline:none;\n      background: linear-gradient(90deg, var(--brand) 0%, var(--brand) var(--val), var(--track) var(--val), var(--track) 100%);\n      transition: box-shadow .18s ease;\n    }\n    .pvx input.slider:hover{ box-shadow: 0 0 0 .2rem rgba(42,91,213,.08) }\n    .pvx input.slider:focus-visible{ box-shadow: 0 0 0 .25rem rgba(42,91,213,.18) }\n\n    .pvx input.slider::-webkit-slider-runnable-track{ height:.5rem; border-radius:999rem; background: transparent }\n    .pvx input.slider::-webkit-slider-thumb{\n      -webkit-appearance:none; width:1.125rem; height:1.125rem; border-radius:50%;\n      background: var(--brand); box-shadow:0 0 0 .25rem rgba(42,91,213,.18);\n      cursor:pointer; margin-top:-.3125rem;\n    }\n    .pvx input.slider::-moz-range-track{ height:.5rem; border-radius:999rem; background: var(--track) }\n    .pvx input.slider::-moz-range-progress{ height:.5rem; border-radius:999rem; background: var(--brand) }\n    .pvx input.slider::-moz-range-thumb{\n      width:1.125rem; height:1.125rem; border-radius:50%; border:0;\n      background: var(--brand); box-shadow:0 0 0 .25rem rgba(42,91,213,.18); cursor:pointer;\n    }\n\n    \/* ==== New percent badge above the thumb ==== *\/\n    .pvx .pct{\n      position:absolute; left:0; top:0; transform:translateX(-50%);\n      padding:.25rem .5rem; border-radius:.5rem;\n      background:#fff; border:.0625rem solid var(--border);\n      box-shadow:0 .3125rem .75rem rgba(16,24,40,.12);\n      font-weight:700; font-size:.875rem; line-height:1;\n      color:var(--ink); white-space:nowrap; pointer-events:none; z-index:2;\n    }\n    .pvx .pct::after{\n      content:\"\"; position:absolute; left:50%; bottom:-.35rem; transform:translateX(-50%) rotate(45deg);\n      width:.55rem; height:.55rem; background:#fff;\n      border-left:.0625rem solid var(--border); border-bottom:.0625rem solid var(--border);\n      box-shadow: 0 .125rem .25rem rgba(16,24,40,.06);\n    }\n    .pvx .minmax{ display:flex; justify-content:space-between; color:black; font-size:.8rem}\n\n    \/* ================= Experience band ================= *\/\n    .pvx .band{ position:relative; height:1.75rem; margin-top:.5rem }\n    .pvx .band::before{ content:\"\"; position:absolute; left:0; right:0; bottom:0; height:.375rem; border-radius:999rem; background:#eef2ff }\n    .pvx #band-indicator{ position:absolute; bottom:0; height:.375rem; border-radius:999rem; background:linear-gradient(90deg, var(--brand2), var(--brand)) }\n    .pvx .min-text, .pvx .max-text{\n      position:absolute; top:-.125rem; transform:translateX(-50%);\n      background:transparent; border:0; color:#0f172a; font-weight:800; font-size:.75rem; padding:0;\n    }\n\n    \/* ================= Motion\/Prefs ================= *\/\n    @media (prefers-reduced-motion: reduce){\n      .pvx .tile, .pvx input.slider, .pvx input[type=\"number\"]{ transition: none }\n    }\n\n    \/* ================= Additions ================= *\/\n\n    \/* 1) Tile titles 0.9rem *\/\n    .pvx .tile .t{\n      font-size:.8rem;\n      line-height:1.25;\n    }\n\n    \/* 2) Percent badge static next to the label *\/\n    .pvx .pct{\n      position: static !important;\n      left: auto !important;\n      top: auto !important;\n      transform: none !important;\n    }\n    .pvx .pct::after{ display:none; }\n    \n    \/* Fix: Elementor overrides our range slider.\n       -> Reset only for our slider inside the PVX section. *\/\n.elementor-kit-8 .pvx input[type=\"range\"].slider{\n  border: 0 !important;\n  padding: 0 !important;\n  border-radius: 999rem !important; \/* no sharp 1px edges *\/\n  -webkit-appearance: none;\n  appearance: none;\n}\n\n\/* Safety net: no border on the track *\/\n.elementor-kit-8 .pvx input[type=\"range\"].slider::-webkit-slider-runnable-track{ border: 0 !important; }\n.elementor-kit-8 .pvx input[type=\"range\"].slider::-moz-range-track{ border: 0 !important; }\n\n\/* (optional, if Elementor sets line-height etc.) *\/\n.elementor-kit-8 .pvx input[type=\"range\"].slider{\n  line-height: 1 !important;\n}\n\n\/* A) The hidden dummy label in the right field should NOT take up space *\/\n.pvx .inputs .label[style*=\"visibility:hidden\"]{\n  display:none !important;   \/* removes height -> fields align again *\/\n}\n\n\/* B) Elementor overrides number inputs \u2013 enforce our values here *\/\n.elementor-kit-8 .pvx input[type=\"number\"]{\n  border: .0625rem solid var(--border) !important;\n  border-radius: var(--radius-sm) !important;\n  padding: .625rem .75rem !important;\n  background:#fff !important;\n}\n\n\/* (in case Elementor forces a darker border color) *\/\n.elementor-kit-8 .pvx input[type=\"number\"]{\n  border-color: var(--border) !important;\n}\n\n\/* C) (You already fixed the slider \u2013 repeated here for completeness) *\/\n.elementor-kit-8 .pvx input[type=\"range\"].slider{\n  border:0 !important;\n  padding:0 !important;\n  border-radius:999rem !important;\n  -webkit-appearance:none;\n  appearance:none;\n}\n.elementor-kit-8 .pvx input[type=\"range\"].slider::-webkit-slider-runnable-track{ border:0 !important; }\n.elementor-kit-8 .pvx input[type=\"range\"].slider::-moz-range-track{ border:0 !important; }\n\n.erfahrung {\n      margin-bottom: 10px;\n      font-size: 1rem;\n    }\n  <\/style>\n\n  <div class=\"wrap\">\n    <div class=\"grid\">\n      <!-- Inputs -->\n      <div class=\"card\">\n        <div class=\"inputs\">\n          <div>\n            <div class=\"label\">Please fill in:<br><span>System capacity in kWp:<\/span><\/div>\n            <input id=\"power\" type=\"number\" value=\"750\" step=\"10\" inputmode=\"numeric\" placeholder=\"Your system capacity in kWp\" aria-label=\"System capacity in kilowatt-peak\">\n          <\/div>\n          <div>\n            <div class=\"label\" style=\"visibility:hidden;\">.<\/div>\n            <div class=\"label\"><span><br>Feed-in tariff in EUR:<\/span><\/div>\n            <input id=\"payment\" type=\"number\" value=\"0.11\" step=\"0.01\" inputmode=\"decimal\" placeholder=\"Feed-in tariff in \u20ac\" aria-label=\"Feed-in tariff in euros\">\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Result -->\n      <div class=\"card sticky\">\n        <div class=\"result\">\n          <div>\n            <div class=\"title\">Loss<\/div>\n            <div class=\"sub\">due to soiling per year (approx.):<\/div>\n          <\/div>\n          <div id=\"money\" class=\"amount\" aria-live=\"polite\">\u20ac0.00<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <!-- Presets -->\n    <div class=\"presets\">\n      <div class=\"lead\">Please select the most applicable site criterion for your PV system (also consider the surroundings):<\/div>\n      <div class=\"tiles range-slide-container\">\n        <button id=\"range-slide-1\" class=\"tile active range-3-5\" type=\"button\" aria-pressed=\"true\">\n          <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/08\/hc-icon_freiflaeche.svg\" alt=\"\" aria-hidden=\"true\">\n          <div class=\"t\">Open area<\/div>\n        <\/button>\n        <button id=\"range-slide-2\" class=\"tile range-9-15\" type=\"button\" aria-pressed=\"false\">\n          <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/08\/hc-icon_gewerbeimmobilie.svg\" alt=\"\" aria-hidden=\"true\">\n          <div class=\"t\">Commercial property<\/div>\n        <\/button>\n        <button id=\"range-slide-3\" class=\"tile range-16-30\" type=\"button\" aria-pressed=\"false\">\n          <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/08\/hc-icon_landwirtschaft.svg\" alt=\"\" aria-hidden=\"true\">\n          <div class=\"t\">Agriculture<\/div>\n        <\/button>\n        <button id=\"range-slide-4\" class=\"tile\" type=\"button\" aria-pressed=\"false\">\n          <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/08\/hc-icon_schmutziges-gewerbe.svg\" alt=\"\" aria-hidden=\"true\">\n          <div class=\"t\">Heavy-soiling industry<\/div>\n        <\/button>\n        <button id=\"range-slide-5\" class=\"tile\" type=\"button\" aria-pressed=\"false\">\n          <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/08\/hc-icon_wuestenregion.svg\" alt=\"\" aria-hidden=\"true\">\n          <div class=\"t\">Desert region<\/div>\n        <\/button>\n      <\/div>\n    <\/div>\n\n    <!-- Slider -->\n    <div class=\"slider-wrap\" role=\"group\" aria-label=\"Average soiling\">\n      <div class=\"s-head\">\n        Avg. soiling in %:\n        <span id=\"slider-pct\" class=\"pct\" aria-hidden=\"true\">5%<\/span>\n      <\/div>\n      <input id=\"pvx-slider\" type=\"range\" class=\"slider\" min=\"1\" max=\"50\" value=\"5\" aria-label=\"Soiling in percent\">\n  \n      <div class=\"erfahrung\">\n        Based on empirical values:\n      <\/div>\n      \n      <div class=\"minmax\">\n        <span class=\"min-label\">1%<\/span>\n        <span class=\"max-label\">50%<\/span>\n      <\/div>\n\n      <!-- Empirical range -->\n      <div class=\"band\">\n        <span class=\"min-text\" id=\"minText\" style=\"left:6%;\">3%<\/span>\n        <span class=\"max-text\" id=\"maxText\" style=\"left:16%;\">8%<\/span>\n        <div id=\"band-indicator\" style=\"left:6%; width:10%;\"><\/div>\n      <\/div>\n      <div class=\"note\" style=\"font-size:.75rem; color:var(--muted); margin-top:.25rem;\">* Figures are for guidance only.<\/div>\n    <\/div>\n  <\/div>\n\n  <script>\n    (function(){\n      \/* ========= Scope ========= *\/\n      const root     = document.getElementById('verlustrechner');\n      const $$       = sel => root.querySelector(sel);\n      const $$$      = sel => Array.from(root.querySelectorAll(sel));\n\n      \/* ========= Presets ========= *\/\n      const sliderSettings = [\n        { name:\"range-slide-1\", set:5,  min:3,  max:8  },\n        { name:\"range-slide-2\", set:12, min:8,  max:15 },\n        { name:\"range-slide-3\", default:22, min:15, max:30 },\n        { name:\"range-slide-4\", set:30, min:17, max:35 },\n        { name:\"range-slide-5\", set:45, min:30, max:50 }\n      ];\n\n      \/* ========= Elements ========= *\/\n      const slider  = $$('#pvx-slider');\n      const pctTxt  = $$('#slider-pct');\n      const power   = $$('#power');\n      const payment = $$('#payment');\n      const money   = $$('#money');\n      const minText = $$('#minText');\n      const maxText = $$('#maxText');\n      const bandEl  = $$('#band-indicator');\n\n      \/* ========= Helpers ========= *\/\n      function setSliderFill(){\n        const min = Number(slider.min)||0;\n        const max = Number(slider.max)||100;\n        const val = Number(slider.value)||0;\n        const p   = ((val - min) \/ (max - min)) * 100;\n        slider.style.setProperty('--val', p + '%');\n      }\n\n      function setBand(minPct, maxPct){\n        minText.style.left = minPct + '%';\n        maxText.style.left = maxPct + '%';\n        minText.textContent = Math.round(minPct\/2) + '%';\n        maxText.textContent = Math.round(maxPct\/2) + '%';\n        bandEl.style.left  = minPct + '%';\n        bandEl.style.width = Math.max(0, maxPct - minPct) + '%';\n      }\n\n      \/* ========= Calculation ========= *\/\n      function calc(){\n        const pwr  = parseFloat(String(power.value).replace(\",\", \".\"));\n        const pay  = parseFloat(String(payment.value).replace(\",\", \".\"));\n        const perc = parseFloat(slider.value);\n\n        const result = (pwr * 1000 * pay) * (perc\/100);\n        if(!isNaN(result)){\n          money.textContent = new Intl.NumberFormat('en-US',{style:'currency',currency:'EUR'}).format(result);\n        }\n\n        pctTxt.textContent = perc + '%';\n        setSliderFill();\n\n        $$('.min-label').style.opacity = (perc===1)?0:'1';\n        $$('.max-label').style.opacity = (perc===50)?0:'1';\n      }\n\n      \/* ========= Preset clicks ========= *\/\n      function onTileClick(e){\n        const tile = e.currentTarget;\n        $$$('.tile').forEach(t=>{\n          t.classList.toggle('active', t===tile);\n          t.setAttribute('aria-pressed', t===tile ? 'true' : 'false');\n        });\n\n        const conf = sliderSettings.find(s=>s.name===tile.id);\n        if(!conf) return;\n        const next = typeof conf.set===\"number\" ? conf.set : (typeof conf.default===\"number\" ? conf.default : 5);\n        slider.value = next;\n        setBand(conf.min*2, conf.max*2);\n        calc();\n      }\n\n      \/* ========= Events ========= *\/\n      ['input','change'].forEach(ev=>{\n        slider.addEventListener(ev, calc, {passive:true});\n        power.addEventListener(ev, calc, {passive:true});\n        payment.addEventListener(ev, calc, {passive:true});\n      });\n      $$$('.tile').forEach(t=>t.addEventListener('click', onTileClick));\n\n      \/* ========= Init ========= *\/\n      (function init(){\n        const s = sliderSettings[0];\n        slider.value = s.set;\n        setBand(s.min*2, s.max*2);\n        setSliderFill();\n        calc();\n      })();\n    })();\n  <\/script>\n<\/section>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>LOSS CALCULATOR FOR DIRTY PV SYSTEMS Calculate your loss due to soiling of your solar panels and find out how much additional yield you can achieve through professional cleaning. Please fill in:System capacity in kWp: . Feed-in tariff in EUR: Loss due to soiling per year (approx.): \u20ac0.00 Please select the most applicable site criterion [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":10858,"parent":11125,"menu_order":99,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"class_list":["post-10857","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PV System Loss Calculator | hyCLEANER<\/title>\n<meta name=\"description\" content=\"With the hyCLEANER Loss Calculator, you can calculate the yield loss due to dirty solar modules and the cleaning potential.\" \/>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PV System Loss Calculator | hyCLEANER\" \/>\n<meta property=\"og:description\" content=\"With the hyCLEANER Loss Calculator, you can calculate the yield loss due to dirty solar modules and the cleaning potential.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/\" \/>\n<meta property=\"og:site_name\" content=\"hyCLEANER\u00ae\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-06T11:35:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"860\" \/>\n\t<meta property=\"og:image:height\" content=\"530\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/\",\"url\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/\",\"name\":\"PV System Loss Calculator | hyCLEANER\",\"isPartOf\":{\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp\",\"datePublished\":\"2025-09-23T10:54:50+00:00\",\"dateModified\":\"2025-11-06T11:35:24+00:00\",\"description\":\"With the hyCLEANER Loss Calculator, you can calculate the yield loss due to dirty solar modules and the cleaning potential.\",\"breadcrumb\":{\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#primaryimage\",\"url\":\"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp\",\"contentUrl\":\"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp\",\"width\":860,\"height\":530,\"caption\":\"Someone is typing something into a calculator\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/hycleaner.blackpeppers.de\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Solar Cleaning\",\"item\":\"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Loss Calculator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/#website\",\"url\":\"https:\/\/hycleaner.blackpeppers.de\/en\/\",\"name\":\"hyCLEANER\u00ae\",\"description\":\"Experte f\u00fcr Reinigungsroboter\",\"publisher\":{\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/hycleaner.blackpeppers.de\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/#organization\",\"name\":\"hyCLEANER\u00ae\",\"url\":\"https:\/\/hycleaner.blackpeppers.de\/en\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/08\/hyCLEANER_Logo-1.webp\",\"contentUrl\":\"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/08\/hyCLEANER_Logo-1.webp\",\"width\":351,\"height\":99,\"caption\":\"hyCLEANER\u00ae\"},\"image\":{\"@id\":\"https:\/\/hycleaner.blackpeppers.de\/en\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PV System Loss Calculator | hyCLEANER","description":"With the hyCLEANER Loss Calculator, you can calculate the yield loss due to dirty solar modules and the cleaning potential.","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"PV System Loss Calculator | hyCLEANER","og_description":"With the hyCLEANER Loss Calculator, you can calculate the yield loss due to dirty solar modules and the cleaning potential.","og_url":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/","og_site_name":"hyCLEANER\u00ae","article_modified_time":"2025-11-06T11:35:24+00:00","og_image":[{"width":860,"height":530,"url":"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/","url":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/","name":"PV System Loss Calculator | hyCLEANER","isPartOf":{"@id":"https:\/\/hycleaner.blackpeppers.de\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#primaryimage"},"image":{"@id":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#primaryimage"},"thumbnailUrl":"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp","datePublished":"2025-09-23T10:54:50+00:00","dateModified":"2025-11-06T11:35:24+00:00","description":"With the hyCLEANER Loss Calculator, you can calculate the yield loss due to dirty solar modules and the cleaning potential.","breadcrumb":{"@id":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#primaryimage","url":"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp","contentUrl":"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/10\/teaser-verlustrechner-860x530-01.webp","width":860,"height":530,"caption":"Someone is typing something into a calculator"},{"@type":"BreadcrumbList","@id":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/loss-calculator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/hycleaner.blackpeppers.de\/en\/"},{"@type":"ListItem","position":2,"name":"Solar Cleaning","item":"https:\/\/hycleaner.blackpeppers.de\/en\/solar-cleaning\/"},{"@type":"ListItem","position":3,"name":"Loss Calculator"}]},{"@type":"WebSite","@id":"https:\/\/hycleaner.blackpeppers.de\/en\/#website","url":"https:\/\/hycleaner.blackpeppers.de\/en\/","name":"hyCLEANER\u00ae","description":"Experte f\u00fcr Reinigungsroboter","publisher":{"@id":"https:\/\/hycleaner.blackpeppers.de\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/hycleaner.blackpeppers.de\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/hycleaner.blackpeppers.de\/en\/#organization","name":"hyCLEANER\u00ae","url":"https:\/\/hycleaner.blackpeppers.de\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hycleaner.blackpeppers.de\/en\/#\/schema\/logo\/image\/","url":"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/08\/hyCLEANER_Logo-1.webp","contentUrl":"https:\/\/hycleaner.blackpeppers.de\/wp-content\/uploads\/2025\/08\/hyCLEANER_Logo-1.webp","width":351,"height":99,"caption":"hyCLEANER\u00ae"},"image":{"@id":"https:\/\/hycleaner.blackpeppers.de\/en\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/pages\/10857","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/comments?post=10857"}],"version-history":[{"count":4,"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/pages\/10857\/revisions"}],"predecessor-version":[{"id":11782,"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/pages\/10857\/revisions\/11782"}],"up":[{"embeddable":true,"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/pages\/11125"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/media\/10858"}],"wp:attachment":[{"href":"https:\/\/hycleaner.blackpeppers.de\/en\/wp-json\/wp\/v2\/media?parent=10857"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}