{"id":2994,"date":"2026-04-10T19:20:32","date_gmt":"2026-04-10T17:20:32","guid":{"rendered":"https:\/\/nature-o.net\/?page_id=2994"},"modified":"2026-04-10T19:22:55","modified_gmt":"2026-04-10T17:22:55","slug":"plant-sunlight-needs-calculator","status":"publish","type":"page","link":"https:\/\/nature-o.net\/?page_id=2994","title":{"rendered":"Plant Sunlight Needs Calculator"},"content":{"rendered":"\n<div class=\"eco-tool wp-block-group\" id=\"eco-tool-sunlight-c37k5\">\n  <div class=\"eco-tool__header\">\n    <h2 class=\"eco-tool__title\">Plant Sunlight Needs Calculator<\/h2>\n    <p class=\"eco-tool__lead\">\n      Estimate whether your plant is getting too little, enough, or too much light based on plant type, window direction, and daily sun hours.\n    <\/p>\n  <\/div>\n\n  <form class=\"eco-tool__form\" id=\"eco-sun-form-c37k5\" novalidate>\n    <div class=\"eco-tool__grid3\">\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"type-c37k5\">Plant type<\/label>\n        <select class=\"eco-tool__input\" id=\"type-c37k5\">\n          <option value=\"shade\">Shade-loving plant<\/option>\n          <option value=\"houseplant\" selected>Common houseplant<\/option>\n          <option value=\"bright\">Bright-light plant<\/option>\n          <option value=\"sun\">Full-sun plant<\/option>\n        <\/select>\n        <div class=\"eco-tool__hint\">Choose the closest plant type.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"window-c37k5\">Window direction<\/label>\n        <select class=\"eco-tool__input\" id=\"window-c37k5\">\n          <option value=\"north\">North-facing<\/option>\n          <option value=\"east\">East-facing<\/option>\n          <option value=\"west\">West-facing<\/option>\n          <option value=\"south\" selected>South-facing<\/option>\n        <\/select>\n        <div class=\"eco-tool__hint\">Window direction changes light intensity.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"hours-c37k5\">Direct light (h\/day)<\/label>\n        <input class=\"eco-tool__input\" id=\"hours-c37k5\" type=\"number\" min=\"0\" max=\"12\" step=\"0.5\" value=\"4\" inputmode=\"decimal\" \/>\n        <div class=\"eco-tool__hint\">Approximate direct or strong bright light.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"distance-c37k5\">Distance from window<\/label>\n        <select class=\"eco-tool__input\" id=\"distance-c37k5\">\n          <option value=\"close\" selected>Very close<\/option>\n          <option value=\"medium\">About 1\u20132 meters<\/option>\n          <option value=\"far\">Far from window<\/option>\n        <\/select>\n        <div class=\"eco-tool__hint\">Light drops quickly farther from the window.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"curtain-c37k5\">Filtered light<\/label>\n        <select class=\"eco-tool__input\" id=\"curtain-c37k5\">\n          <option value=\"no\" selected>No curtain<\/option>\n          <option value=\"yes\">Curtain \/ filtered<\/option>\n        <\/select>\n        <div class=\"eco-tool__hint\">Curtains soften light intensity.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"season-c37k5\">Season<\/label>\n        <select class=\"eco-tool__input\" id=\"season-c37k5\">\n          <option value=\"winter\">Winter<\/option>\n          <option value=\"spring\" selected>Spring<\/option>\n          <option value=\"summer\">Summer<\/option>\n          <option value=\"autumn\">Autumn<\/option>\n        <\/select>\n        <div class=\"eco-tool__hint\">Sun intensity changes during the year.<\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"eco-tool__actions\">\n      <button type=\"button\" class=\"wp-element-button eco-tool__btn\" id=\"calc-c37k5\">Calculate<\/button>\n      <button type=\"button\" class=\"wp-element-button eco-tool__btn eco-tool__btn--ghost\" id=\"reset-c37k5\">Reset<\/button>\n      <div class=\"eco-tool__error\" id=\"error-c37k5\" aria-live=\"polite\"><\/div>\n    <\/div>\n  <\/form>\n\n  <div class=\"eco-tool__result\" id=\"result-c37k5\" hidden>\n    <h3 class=\"eco-tool__subtitle\">Result<\/h3>\n\n    <div class=\"eco-tool__cards\">\n      <div class=\"eco-tool__card\">\n        <div class=\"eco-tool__metric-label\">Light level<\/div>\n        <div class=\"eco-tool__metric-value\" id=\"level-c37k5\">\u2014<\/div>\n        <div class=\"eco-tool__metric-sub\" id=\"score-c37k5\"><\/div>\n      <\/div>\n\n      <div class=\"eco-tool__card\">\n        <div class=\"eco-tool__metric-label\">Recommendation<\/div>\n        <div class=\"eco-tool__metric-sub\" id=\"tip-c37k5\"><\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <details class=\"eco-tool__details\">\n    <summary class=\"eco-tool__summary\">How we calculate<\/summary>\n    <div class=\"eco-tool__details-body\">\n      <p class=\"eco-tool__text\">\n        This is a simple estimate using plant type, window direction, light hours, distance from the window, filtering, and season.\n      <\/p>\n    <\/div>\n  <\/details>\n<\/div>\n\n<style>\n.eco-tool{border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:16px;}\n.eco-tool__header{margin-bottom:12px;}\n.eco-tool__title{margin:0 0 8px;}\n.eco-tool__lead{margin:0;opacity:.9;}\n.eco-tool__form{margin-top:12px;}\n.eco-tool__grid3{display:grid;grid-template-columns:1fr;gap:16px;}\n@media (min-width:860px){.eco-tool__grid3{grid-template-columns:1fr 1fr 1fr;}}\n.eco-tool__field{display:flex;flex-direction:column;gap:6px;}\n.eco-tool__label{font-weight:600;}\n.eco-tool__input{width:100%;height:44px;padding:0 12px;border:1px solid rgba(0,0,0,.20);border-radius:10px;background:#fff;box-sizing:border-box;font:inherit;}\n.eco-tool select.eco-tool__input{\nappearance:none;-webkit-appearance:none;line-height:44px;padding-right:40px;\nbackground-image:\nlinear-gradient(45deg, transparent 50%, rgba(0,0,0,.60) 50%),\nlinear-gradient(135deg, rgba(0,0,0,.60) 50%, transparent 50%);\nbackground-position:calc(100% - 18px) 50%, calc(100% - 12px) 50%;\nbackground-size:6px 6px;background-repeat:no-repeat;\n}\n.eco-tool__hint{font-size:.92em;opacity:.78;min-height:38px;}\n.eco-tool__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px;}\n.eco-tool__btn{padding:10px 22px;}\n.eco-tool__btn--ghost{background:transparent !important;border:1px solid rgba(0,0,0,.20) !important;}\n.eco-tool__btn--ghost:hover,.eco-tool__btn--ghost:focus{background:rgba(0,0,0,.06) !important;border-color:rgba(0,0,0,.35) !important;}\n.eco-tool__error{min-height:1.2em;font-weight:600;flex:1 1 240px;}\n.eco-tool__result{margin-top:16px;}\n.eco-tool__subtitle{margin:0 0 10px;}\n.eco-tool__cards{display:grid;gap:10px;grid-template-columns:1fr;}\n@media (min-width:860px){.eco-tool__cards{grid-template-columns:1fr 1fr;}}\n.eco-tool__card{border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:12px;}\n.eco-tool__metric-label{opacity:.85;font-weight:600;}\n.eco-tool__metric-value{font-size:1.6em;font-weight:800;margin-top:6px;line-height:1.1;}\n.eco-tool__metric-sub{opacity:.85;margin-top:6px;}\n.eco-tool__details{margin-top:14px;}\n.eco-tool__summary{cursor:pointer;font-weight:700;}\n.eco-tool__details-body{margin-top:10px;}\n.eco-tool__text{margin:0 0 10px;}\n<\/style>\n\n<script>\n(function(){\n  const S = \"c37k5\";\n  const el = (id) => document.getElementById(id + \"-\" + S);\n\n  const TARGET = {\n    shade: 2,\n    houseplant: 4,\n    bright: 6,\n    sun: 8\n  };\n\n  const WINDOW = {\n    north: 0.7,\n    east: 0.9,\n    west: 1.0,\n    south: 1.15\n  };\n\n  const DIST = {\n    close: 1.0,\n    medium: 0.8,\n    far: 0.6\n  };\n\n  const SEASON = {\n    winter: 0.75,\n    spring: 1.0,\n    summer: 1.1,\n    autumn: 0.9\n  };\n\n  function calculate(){\n    const type = el(\"type\").value;\n    const windowDir = el(\"window\").value;\n    const hours = Number(el(\"hours\").value);\n    const distance = el(\"distance\").value;\n    const curtain = el(\"curtain\").value;\n    const season = el(\"season\").value;\n\n    if (!Number.isFinite(hours) || hours < 0) {\n      el(\"error\").textContent = \"Please enter valid light hours.\";\n      el(\"result\").hidden = true;\n      return;\n    }\n\n    el(\"error\").textContent = \"\";\n\n    let effective = hours * WINDOW[windowDir] * DIST[distance] * SEASON[season];\n    if (curtain === \"yes\") effective *= 0.8;\n\n    const target = TARGET[type];\n    const ratio = effective \/ target;\n\n    let level = \"\";\n    let tip = \"\";\n\n    if (ratio < 0.7) {\n      level = \"Too little light\";\n      tip = \"Move the plant closer to a brighter window or choose a lower-light plant.\";\n    } else if (ratio <= 1.2) {\n      level = \"Good light match\";\n      tip = \"This setup looks fairly suitable for the plant.\";\n    } else if (ratio <= 1.6) {\n      level = \"Bright but acceptable\";\n      tip = \"Watch for signs of stress or drying, especially in summer.\";\n    } else {\n      level = \"Too much light\";\n      tip = \"Use filtered light or move the plant farther from the window.\";\n    }\n\n    el(\"level\").textContent = level;\n    el(\"score\").textContent = `${effective.toFixed(1)} effective light hours\/day`;\n    el(\"tip\").textContent = tip;\n    el(\"result\").hidden = false;\n  }\n\n  function reset(){\n    el(\"type\").value = \"houseplant\";\n    el(\"window\").value = \"south\";\n    el(\"hours\").value = \"4\";\n    el(\"distance\").value = \"close\";\n    el(\"curtain\").value = \"no\";\n    el(\"season\").value = \"spring\";\n    el(\"error\").textContent = \"\";\n    el(\"result\").hidden = true;\n  }\n\n  el(\"calc\").addEventListener(\"click\", calculate);\n  el(\"reset\").addEventListener(\"click\", reset);\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Plant Sunlight Needs Calculator Estimate whether your plant is getting too little, enough, or too much light based on plant type, window direction, and daily sun hours. Plant type Shade-loving&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":2696,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","footnotes":""},"_links":{"self":[{"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages\/2994"}],"collection":[{"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nature-o.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2994"}],"version-history":[{"count":3,"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages\/2994\/revisions"}],"predecessor-version":[{"id":2997,"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages\/2994\/revisions\/2997"}],"up":[{"embeddable":true,"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages\/2696"}],"wp:attachment":[{"href":"https:\/\/nature-o.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2994"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}