{"id":2877,"date":"2026-04-03T22:28:11","date_gmt":"2026-04-03T20:28:11","guid":{"rendered":"https:\/\/nature-o.net\/?page_id=2877"},"modified":"2026-04-03T22:28:12","modified_gmt":"2026-04-03T20:28:12","slug":"plastic-usage-calculator","status":"publish","type":"page","link":"https:\/\/nature-o.net\/?page_id=2877","title":{"rendered":"Plastic Usage Calculator"},"content":{"rendered":"\n<div class=\"eco-tool wp-block-group\" id=\"eco-tool-plastic-a12f9\">\n  <div class=\"eco-tool__header\">\n    <h2 class=\"eco-tool__title\">Plastic Usage Calculator<\/h2>\n    <p class=\"eco-tool__lead\">\n      Estimate how many single-use plastic items you use in a year.\n    <\/p>\n  <\/div>\n\n  <form class=\"eco-tool__form\" id=\"eco-plastic-form-a12f9\" novalidate>\n    <div class=\"eco-tool__grid2\">\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"eco-plastic-bottles-a12f9\">Plastic bottles<br>per week<\/label>\n        <input class=\"eco-tool__input\" id=\"eco-plastic-bottles-a12f9\" type=\"number\" min=\"0\" step=\"1\" value=\"2\" inputmode=\"numeric\" \/>\n        <div class=\"eco-tool__hint\">Water, soda, and other drink bottles.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"eco-plastic-bags-a12f9\">Plastic bags<br>per week<\/label>\n        <input class=\"eco-tool__input\" id=\"eco-plastic-bags-a12f9\" type=\"number\" min=\"0\" step=\"1\" value=\"3\" inputmode=\"numeric\" \/>\n        <div class=\"eco-tool__hint\">Shopping and grocery bags.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"eco-plastic-containers-a12f9\">Takeout containers<br>per week<\/label>\n        <input class=\"eco-tool__input\" id=\"eco-plastic-containers-a12f9\" type=\"number\" min=\"0\" step=\"1\" value=\"1\" inputmode=\"numeric\" \/>\n        <div class=\"eco-tool__hint\">Food boxes and takeaway containers.<\/div>\n      <\/div>\n\n      <div class=\"eco-tool__field\">\n        <label class=\"eco-tool__label\" for=\"eco-plastic-cups-a12f9\">Disposable cups<br>per week<\/label>\n        <input class=\"eco-tool__input\" id=\"eco-plastic-cups-a12f9\" type=\"number\" min=\"0\" step=\"1\" value=\"2\" inputmode=\"numeric\" \/>\n        <div class=\"eco-tool__hint\">Coffee cups and cold drink cups.<\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"eco-tool__actions\">\n      <button type=\"button\" class=\"wp-element-button eco-tool__btn\" id=\"eco-plastic-calc-a12f9\">Calculate<\/button>\n      <button type=\"button\" class=\"wp-element-button eco-tool__btn eco-tool__btn--ghost\" id=\"eco-plastic-reset-a12f9\">Reset<\/button>\n      <div class=\"eco-tool__error\" id=\"eco-plastic-error-a12f9\" aria-live=\"polite\"><\/div>\n    <\/div>\n  <\/form>\n\n  <div class=\"eco-tool__result\" id=\"eco-plastic-result-a12f9\" 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\">Single-use items per year<\/div>\n        <div class=\"eco-tool__metric-value\" id=\"eco-plastic-total-items-a12f9\">\u2014<\/div>\n        <div class=\"eco-tool__metric-sub\" id=\"eco-plastic-breakdown-a12f9\"><\/div>\n      <\/div>\n\n      <div class=\"eco-tool__card\">\n        <div class=\"eco-tool__metric-label\">Approximate plastic waste<\/div>\n        <div class=\"eco-tool__metric-value\" id=\"eco-plastic-total-weight-a12f9\">\u2014<\/div>\n        <div class=\"eco-tool__metric-sub\">Very rough estimate based on typical item weights.<\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"eco-tool__card eco-tool__card--wide\">\n      <div class=\"eco-tool__metric-label\">Quick tip<\/div>\n      <div class=\"eco-tool__metric-sub\" id=\"eco-plastic-tip-a12f9\"><\/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        We multiply your weekly use by 52 to estimate yearly totals. Plastic waste is based on simplified average item weights.\n      <\/p>\n      <ul class=\"eco-tool__list\" id=\"eco-plastic-factors-a12f9\"><\/ul>\n    <\/div>\n  <\/details>\n<\/div>\n\n<style>\n.eco-tool{\n  border: 1px solid rgba(0,0,0,.12);\n  border-radius: 12px;\n  padding: 16px;\n}\n\n.eco-tool__header{ margin-bottom: 12px; }\n.eco-tool__title{ margin: 0 0 8px; }\n.eco-tool__lead{ margin: 0; opacity: .9; }\n\n.eco-tool__form{ margin-top: 12px; }\n\n.eco-tool__grid2{\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 16px;\n}\n@media (min-width: 860px){\n  .eco-tool__grid2{ grid-template-columns: 1fr 1fr; }\n}\n\n.eco-tool__field{\n  display: flex;\n  flex-direction: column;\n  gap: 6px;\n}\n\n.eco-tool__label{\n  font-weight: 600;\n}\n\n.eco-tool__input{\n  width: 100%;\n  height: 44px;\n  padding: 0 12px;\n  border: 1px solid rgba(0,0,0,.20);\n  border-radius: 10px;\n  background: #fff;\n  box-sizing: border-box;\n  font: inherit;\n}\n\n.eco-tool__hint{\n  font-size: .92em;\n  opacity: .78;\n  min-height: 38px;\n}\n\n.eco-tool__actions{\n  display: flex;\n  flex-wrap: wrap;\n  gap: 10px;\n  align-items: center;\n  margin-top: 16px;\n}\n\n.eco-tool__btn{\n  padding: 10px 22px;\n}\n\n.eco-tool__btn--ghost{\n  background: transparent !important;\n  border: 1px solid rgba(0,0,0,.20) !important;\n}\n.eco-tool__btn--ghost:hover,\n.eco-tool__btn--ghost:focus{\n  background: rgba(0,0,0,.06) !important;\n  border-color: rgba(0,0,0,.35) !important;\n}\n\n.eco-tool__error{\n  min-height: 1.2em;\n  font-weight: 600;\n  flex: 1 1 240px;\n}\n\n.eco-tool__result{ margin-top: 16px; }\n.eco-tool__subtitle{ margin: 0 0 10px; }\n\n.eco-tool__cards{\n  display: grid;\n  gap: 10px;\n  grid-template-columns: 1fr;\n}\n@media (min-width: 860px){\n  .eco-tool__cards{ grid-template-columns: 1fr 1fr; }\n}\n\n.eco-tool__card{\n  border: 1px solid rgba(0,0,0,.12);\n  border-radius: 12px;\n  padding: 12px;\n}\n\n.eco-tool__card--wide{\n  margin-top: 10px;\n}\n\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\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.eco-tool__list{ margin: 0; padding-left: 18px; }\n<\/style>\n\n<script>\n(function(){\n  const S = \"a12f9\";\n  const el = (id) => document.getElementById(id + \"-\" + S);\n\n  const bottlesEl = el(\"eco-plastic-bottles\");\n  const bagsEl = el(\"eco-plastic-bags\");\n  const containersEl = el(\"eco-plastic-containers\");\n  const cupsEl = el(\"eco-plastic-cups\");\n\n  const calcBtn = el(\"eco-plastic-calc\");\n  const resetBtn = el(\"eco-plastic-reset\");\n  const errorEl = el(\"eco-plastic-error\");\n  const resultEl = el(\"eco-plastic-result\");\n\n  const totalItemsEl = el(\"eco-plastic-total-items\");\n  const breakdownEl = el(\"eco-plastic-breakdown\");\n  const totalWeightEl = el(\"eco-plastic-total-weight\");\n  const tipEl = el(\"eco-plastic-tip\");\n  const factorsEl = el(\"eco-plastic-factors\");\n\n  const WEIGHTS = {\n    bottle: 20,\n    bag: 8,\n    container: 30,\n    cup: 12\n  };\n\n  function setError(msg){\n    errorEl.textContent = msg || \"\";\n  }\n\n  function fmt(n){\n    return Math.round(n).toLocaleString();\n  }\n\n  function fillFactors(){\n    factorsEl.innerHTML = [\n      `<li><strong>Plastic bottle:<\/strong> ~${WEIGHTS.bottle} g each<\/li>`,\n      `<li><strong>Plastic bag:<\/strong> ~${WEIGHTS.bag} g each<\/li>`,\n      `<li><strong>Takeout container:<\/strong> ~${WEIGHTS.container} g each<\/li>`,\n      `<li><strong>Disposable cup:<\/strong> ~${WEIGHTS.cup} g each<\/li>`\n    ].join(\"\");\n  }\n\n  function getNum(v){\n    return Number(v);\n  }\n\n  function calculate(){\n    setError(\"\");\n\n    const bottles = getNum(bottlesEl.value);\n    const bags = getNum(bagsEl.value);\n    const containers = getNum(containersEl.value);\n    const cups = getNum(cupsEl.value);\n\n    const values = [bottles, bags, containers, cups];\n    if (values.some(v => !Number.isFinite(v) || v < 0)){\n      setError(\"Please enter 0 or more for all fields.\");\n      resultEl.hidden = true;\n      return;\n    }\n\n    const yearlyBottles = bottles * 52;\n    const yearlyBags = bags * 52;\n    const yearlyContainers = containers * 52;\n    const yearlyCups = cups * 52;\n\n    const totalItems = yearlyBottles + yearlyBags + yearlyContainers + yearlyCups;\n\n    const totalWeightGrams =\n      yearlyBottles * WEIGHTS.bottle +\n      yearlyBags * WEIGHTS.bag +\n      yearlyContainers * WEIGHTS.container +\n      yearlyCups * WEIGHTS.cup;\n\n    const totalWeightKg = totalWeightGrams \/ 1000;\n\n    totalItemsEl.textContent = `${fmt(totalItems)} items\/year`;\n    breakdownEl.textContent = `${fmt(yearlyBottles)} bottles \u2022 ${fmt(yearlyBags)} bags \u2022 ${fmt(yearlyContainers)} containers \u2022 ${fmt(yearlyCups)} cups`;\n    totalWeightEl.textContent = `${totalWeightKg.toFixed(1)} kg\/year`;\n\n    const maxType = [\n      {label: \"bottles\", value: yearlyBottles},\n      {label: \"bags\", value: yearlyBags},\n      {label: \"containers\", value: yearlyContainers},\n      {label: \"cups\", value: yearlyCups}\n    ].sort((a,b)=>b.value-a.value)[0];\n\n    if (maxType.label === \"bottles\") {\n      tipEl.textContent = \"Switching to a reusable water bottle could make the biggest difference.\";\n    } else if (maxType.label === \"bags\") {\n      tipEl.textContent = \"Using reusable shopping bags could reduce your plastic use the most.\";\n    } else if (maxType.label === \"containers\") {\n      tipEl.textContent = \"Reducing takeout packaging or using reusable containers could have the biggest impact.\";\n    } else {\n      tipEl.textContent = \"A reusable cup could be your easiest high-impact swap.\";\n    }\n\n    resultEl.hidden = false;\n  }\n\n  function reset(){\n    setError(\"\");\n    bottlesEl.value = \"2\";\n    bagsEl.value = \"3\";\n    containersEl.value = \"1\";\n    cupsEl.value = \"2\";\n    resultEl.hidden = true;\n  }\n\n  fillFactors();\n  calcBtn.addEventListener(\"click\", calculate);\n  resetBtn.addEventListener(\"click\", reset);\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Plastic Usage Calculator Estimate how many single-use plastic items you use in a year. Plastic bottlesper week Water, soda, and other drink bottles. Plastic bagsper week Shopping and grocery bags.&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":2432,"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\/2877"}],"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=2877"}],"version-history":[{"count":1,"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages\/2877\/revisions"}],"predecessor-version":[{"id":2878,"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages\/2877\/revisions\/2878"}],"up":[{"embeddable":true,"href":"https:\/\/nature-o.net\/index.php?rest_route=\/wp\/v2\/pages\/2432"}],"wp:attachment":[{"href":"https:\/\/nature-o.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2877"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}