{"id":2145,"date":"2026-06-01T03:07:26","date_gmt":"2026-06-01T03:07:26","guid":{"rendered":"https:\/\/aiper.com\/blogs\/?page_id=2145"},"modified":"2026-10-21T09:14:48","modified_gmt":"2026-10-21T09:14:48","slug":"calculadora-dureza-calcica-piscina","status":"publish","type":"page","link":"https:\/\/aiper.com\/blogs\/es\/calculadora-dureza-calcica-piscina\/","title":{"rendered":"Calculadora de dureza c\u00e1lcica para piscina"},"content":{"rendered":"\n<div class=\"pool-calcium-calc-container\">\n  <h2 class=\"calc-title\">Calculadora de dureza c\u00e1lcica para piscina<\/h2>\n\n  <!-- Step 1: Volume -->\n  <div class=\"calc-step\">\n    <label class=\"calc-label\" for=\"poolVolume\">Paso 1: introduce el volumen de la piscina<\/label>\n    <div class=\"input-group\">\n      <input type=\"number\" id=\"poolVolume\" value=\"10000\" min=\"1\" placeholder=\"e.g. 15000\">\n      <select id=\"volumeUnit\">\n        <option value=\"gallons\" selected>Galones (gal)<\/option>\n        <option value=\"liters\">Litros (L)<\/option>\n        <option value=\"m3\">Metros c\u00fabicos (m\u00b3)<\/option>\n      <\/select>\n    <\/div>\n    <p class=\"helper-prompt\">\u00bfNo lo sabes? Usa nuestra <a href=\"https:\/\/aiper.com\/blogs\/pool-volume-calculator\/\" target=\"_blank\">calculadora de volumen de piscina<\/a>.<\/p>\n  <\/div>\n\n  <!-- Step 2: Hardness -->\n  <div class=\"calc-step\">\n    <label class=\"calc-label\">Paso 2: introduce la dureza c\u00e1lcica (ppm)<\/label>\n    <div class=\"grid-inputs\">\n      <div>\n        <label class=\"sub-label\" for=\"currentHardness\">Dureza actual<\/label>\n        <input type=\"number\" id=\"currentHardness\" value=\"150\" min=\"0\" placeholder=\"e.g. 150\">\n      <\/div>\n      <div>\n        <label class=\"sub-label\" for=\"targetHardness\">Dureza objetivo<\/label>\n        <input type=\"number\" id=\"targetHardness\" value=\"250\" min=\"0\" placeholder=\"e.g. 250\">\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- Step 3: Button & Output Unit Toggle -->\n  <div class=\"calc-step action-zone\">\n    <div class=\"btn-group\">\n      <button type=\"button\" id=\"calculateBtn\" onclick=\"calculateCalcium()\">Calcular<\/button>\n      <button type=\"button\" id=\"resetBtn\" onclick=\"resetCalculator()\">Restablecer<\/button>\n    <\/div>\n\n    <div class=\"output-unit-selector\">\n      <label for=\"resultUnit\" class=\"sub-label\">Unidad de peso del resultado:<\/label>\n      <select id=\"resultUnit\" onchange=\"calculateCalcium()\">\n        <option value=\"oz\" selected>Onzas (oz)<\/option>\n        <option value=\"lbs\">Libras (lbs)<\/option>\n        <option value=\"g\">Gramos (g)<\/option>\n        <option value=\"kg\">Kilogramos (kg)<\/option>\n      <\/select>\n    <\/div>\n  <\/div>\n\n  <!-- Results Section -->\n  <div id=\"calcResults\" class=\"calc-results\" style=\"display: none;\">\n    <div class=\"target-range-box\">\n      <strong>Rango objetivo recomendado:<\/strong> <span class=\"highlight-range\">200 \u2013 400 ppm<\/span>\n    <\/div>\n\n    <div class=\"result-card\">\n      <div class=\"result-value\" id=\"anhydrousResult\">0 oz<\/div>\n      <div class=\"result-name\">Cloruro de calcio (anhidro \/ 77-80 %)<\/div>\n      <p class=\"result-guide\">Usa esta opci\u00f3n si tu envase indica cloruro de calcio sin mencionar \u00abdihidratado\u00bb. Es m\u00e1s concentrado, por lo que se necesita menos peso.<\/p>\n    <\/div>\n\n    <div class=\"result-card\">\n      <div class=\"result-value\" id=\"dihydrateResult\">0 oz<\/div>\n      <div class=\"result-name\">Cloruro de calcio dihidratado (74 %)<\/div>\n      <p class=\"result-guide\">Usa esta opci\u00f3n si tu choque o aumentador de calcio indica expresamente \u00abdihidratado\u00bb. Contiene agua ligada, por lo que necesitas algo m\u00e1s de producto en peso.<\/p>\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n.pool-calcium-calc-container {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 550px;\n  margin: 20px auto;\n  padding: 25px;\n  border: 2px solid #eef2f5;\n  border-radius: 12px;\n  background-color: #ffffff;\n  box-shadow: 0 4px 15px rgba(0,0,0,0.05);\n}\n.calc-title {\n  color: #333;\n  margin-top: 0;\n  margin-bottom: 25px;\n  font-size: 22px;\n  text-align: center;\n  font-weight: 700;\n}\n.calc-step {\n  margin-bottom: 22px;\n}\n.calc-label {\n  display: block;\n  font-weight: 600;\n  margin-bottom: 8px;\n  color: #2c3e50;\n  font-size: 15px;\n}\n.sub-label {\n  display: block;\n  font-size: 13px;\n  color: #7f8c8d;\n  margin-bottom: 4px;\n}\n.input-group, .grid-inputs {\n  display: flex;\n  gap: 10px;\n}\n.grid-inputs > div {\n  flex: 1;\n}\n.pool-calcium-calc-container input[type=\"number\"],\n.pool-calcium-calc-container select {\n  width: 100%;\n  padding: 10px 12px;\n  border: 1px solid #cccccc;\n  border-radius: 6px;\n  font-size: 15px;\n  box-sizing: border-box;\n  background-color: #fff;\n}\n.pool-calcium-calc-container input:focus,\n.pool-calcium-calc-container select:focus {\n  border-color: #1ecad3;\n  outline: none;\n  box-shadow: 0 0 0 2px rgba(30, 202, 211, 0.2);\n}\n.helper-prompt {\n  font-size: 13px;\n  color: #555;\n  margin: 6px 0 0 0;\n}\n.helper-prompt a {\n  color: #1ecad3;\n  text-decoration: underline;\n  font-weight: 500;\n}\n.helper-prompt a:hover {\n  color: #159ba2;\n}\n.action-zone {\n  display: flex;\n  align-items: flex-end;\n  justify-content: space-between;\n  gap: 15px;\n  border-top: 1px dashed #eef2f5;\n  padding-top: 20px;\n}\n.btn-group {\n  display: flex;\n  gap: 10px;\n}\n#calculateBtn {\n  background-color: #1ecad3;\n  color: #ffffff;\n  border: none;\n  padding: 12px 24px;\n  font-size: 15px;\n  font-weight: 600;\n  border-radius: 6px;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n}\n#calculateBtn:hover {\n  background-color: #159ba2;\n}\n#resetBtn {\n  background-color: #f1f5f9;\n  color: #64748b;\n  border: 1px solid #cbd5e1;\n  padding: 12px 20px;\n  font-size: 15px;\n  font-weight: 500;\n  border-radius: 6px;\n  cursor: pointer;\n  transition: all 0.2s ease;\n}\n#resetBtn:hover {\n  background-color: #e2e8f0;\n  color: #334155;\n  border-color: #94a3b8;\n}\n.output-unit-selector {\n  min-width: 140px;\n}\n.calc-results {\n  margin-top: 25px;\n  padding-top: 20px;\n  border-top: 2px solid #eef2f5;\n  animation: fadeIn 0.4s ease;\n}\n@keyframes fadeIn {\n  from { opacity: 0; transform: translateY(5px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n.target-range-box {\n  background-color: rgba(30, 202, 211, 0.08);\n  border-left: 4px solid #1ecad3;\n  padding: 12px;\n  border-radius: 4px;\n  font-size: 14px;\n  color: #2c3e50;\n  margin-bottom: 20px;\n}\n.highlight-range {\n  background-color: #1ecad3;\n  color: #fff;\n  padding: 2px 8px;\n  border-radius: 4px;\n  font-weight: bold;\n}\n.result-card {\n  background-color: #f8fafc;\n  border: 1px solid #e2e8f0;\n  border-radius: 8px;\n  padding: 15px;\n  margin-bottom: 15px;\n}\n.result-value {\n  font-size: 24px;\n  font-weight: 700;\n  color: #1ecad3;\n  margin-bottom: 2px;\n}\n.result-name {\n  font-weight: 600;\n  color: #334155;\n  font-size: 14px;\n}\n.result-guide {\n  font-size: 12px;\n  color: #64748b;\n  margin: 6px 0 0 0;\n  line-height: 1.4;\n}\n<\/style>\n\n<script>\nfunction calculateCalcium() {\n  const volumeInput = parseFloat(document.getElementById('poolVolume').value);\n  const volUnit = document.getElementById('volumeUnit').value;\n  const currentPpm = parseFloat(document.getElementById('currentHardness').value);\n  const targetPpm = parseFloat(document.getElementById('targetHardness').value);\n  const outUnit = document.getElementById('resultUnit').value;\n\n  if (isNaN(volumeInput) || isNaN(currentPpm) || isNaN(targetPpm) || volumeInput <= 0) {\n    alert(\"Introduce n\u00fameros positivos v\u00e1lidos.\");\n    return;\n  }\n\n  let volumeInGallons = volumeInput;\n  if (volUnit === 'liters') {\n    volumeInGallons = volumeInput * 0.264172;\n  } else if (volUnit === 'm3') {\n    volumeInGallons = volumeInput * 264.172;\n  }\n\n  const ppmChange = targetPpm - currentPpm;\n\n  if (ppmChange <= 0) {\n    document.getElementById('anhydrousResult').innerText = \"0 \" + outUnit;\n    document.getElementById('dihydrateResult').innerText = \"0 \" + outUnit;\n    document.getElementById('calcResults').style.display = 'block';\n    return;\n  }\n\n  let anhydrousOz = (volumeInGallons \/ 10000) * (ppmChange \/ 10) * 11.02;\n  let dihydrateOz = (volumeInGallons \/ 10000) * (ppmChange \/ 10) * 14.26;\n\n  let finalAnhydrous = anhydrousOz;\n  let finalDihydrate = dihydrateOz;\n\n  switch(outUnit) {\n    case 'lbs':\n      finalAnhydrous = anhydrousOz \/ 16;\n      finalDihydrate = dihydrateOz \/ 16;\n      break;\n    case 'g':\n      finalAnhydrous = anhydrousOz * 28.3495;\n      finalDihydrate = dihydrateOz * 28.3495;\n      break;\n    case 'kg':\n      finalAnhydrous = (anhydrousOz * 28.3495) \/ 1000;\n      finalDihydrate = (dihydrateOz * 28.3495) \/ 1000;\n      break;\n  }\n\n  const precision = (outUnit === 'oz' || outUnit === 'lbs') ? 1 : 0;\n\n  document.getElementById('anhydrousResult').innerText = finalAnhydrous.toFixed(precision) + \" \" + outUnit;\n  document.getElementById('dihydrateResult').innerText = finalDihydrate.toFixed(precision) + \" \" + outUnit;\n\n  document.getElementById('calcResults').style.display = 'block';\n}\n\nfunction resetCalculator() {\n  \/\/ Restore all inputs to their default initial values\n  document.getElementById('poolVolume').value = \"10000\";\n  document.getElementById('volumeUnit').value = \"gallons\";\n  document.getElementById('currentHardness').value = \"150\";\n  document.getElementById('targetHardness').value = \"250\";\n  document.getElementById('resultUnit').value = \"oz\";\n\n  \/\/ Hide the calculation results section cleanly\n  document.getElementById('calcResults').style.display = 'none';\n}\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\">Preguntas frecuentes sobre la dureza c\u00e1lcica de la piscina<\/h2>\n\n\n\n<div class=\"schema-faq wp-block-yoast-faq-block\"><div class=\"schema-faq-section\" id=\"faq-question-1779411779153\"><strong class=\"schema-faq-question\">\u00bfCu\u00e1nto tiempo despu\u00e9s de a\u00f1adir calcio se puede nadar en la piscina?<\/strong> <p class=\"schema-faq-answer\">Por lo general, debes esperar de 2 a 4 horas tras a\u00f1adir cloruro de calcio antes de nadar. As\u00ed el producto se disuelve por completo y se distribuye de manera uniforme por el agua a trav\u00e9s del sistema de filtraci\u00f3n. Para mayor seguridad, haz funcionar la bomba a alta velocidad y comprueba el equilibrio del agua antes de entrar.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779411807436\"><strong class=\"schema-faq-question\">\u00bfCu\u00e1nto calcio puedo a\u00f1adir a la piscina de una sola vez?<\/strong> <p class=\"schema-faq-answer\">Lo mejor es no a\u00f1adir m\u00e1s de 5 a 10 libras (aprox. 2,2 a 4,5 kg) de cloruro de calcio por cada 10 000 galones de agua en una sola aplicaci\u00f3n. Si tu piscina necesita un ajuste muy grande, divide la cantidad total en dosis m\u00e1s peque\u00f1as y sep\u00e1ralas de 12 a 24 horas para evitar el agua turbia y los picos qu\u00edmicos localizados.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779411827672\"><strong class=\"schema-faq-question\">\u00bfCu\u00e1ndo debo a\u00f1adir dureza c\u00e1lcica a mi piscina?<\/strong> <p class=\"schema-faq-answer\">Debes a\u00f1adir calcio siempre que tu an\u00e1lisis del agua muestre niveles por debajo del rango ideal. En la mayor\u00eda de las piscinas, esto forma parte de la rutina de apertura en primavera. Como el calcio no se evapora, rara vez hace falta a\u00f1adirlo durante la temporada, salvo que el nivel del agua haya bajado mucho por salpicaduras, contralavado o vaciado.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779411863888\"><strong class=\"schema-faq-question\">\u00bfEs importante la dureza c\u00e1lcica en una piscina de vinilo?<\/strong> <p class=\"schema-faq-answer\">S\u00ed, pero el rango es m\u00e1s tolerante. Aunque los liners de vinilo no sufren \u00abgrabado\u00bb (etching) como las superficies de yeso u hormig\u00f3n, los niveles de calcio extremadamente bajos s\u00ed pueden hacer que el liner pierda elasticidad y se vuelva quebradizo, arrugado o propenso a agrietarse. Se recomienda mantener el calcio en torno a 175 a 225 ppm para prolongar la vida \u00fatil del liner y proteger las piezas met\u00e1licas expuestas.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779411880324\"><strong class=\"schema-faq-question\">\u00bfQu\u00e9 ocurre si el calcio est\u00e1 demasiado bajo o demasiado alto en la piscina?<\/strong> <p class=\"schema-faq-answer\">Si est\u00e1 demasiado bajo (agua blanda): el agua se vuelve agresiva y \u00ab\u00e1vida\u00bb. Corroe activamente los equipos met\u00e1licos, destruye las juntas y extrae el calcio del hormig\u00f3n, el yeso o los acabados de guijarro, lo que provoca picaduras y grabado permanentes. Si est\u00e1 demasiado alto (agua dura): el exceso de calcio se precipita fuera del agua. Esto genera costras cristalinas rugosas en las paredes, obstruye las tuber\u00edas, arruina los elementos filtrantes y provoca una turbidez cr\u00f3nica y dif\u00edcil de corregir.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779411951434\"><strong class=\"schema-faq-question\">\u00bfC\u00f3mo s\u00e9 si mi piscina necesita calcio?<\/strong> <p class=\"schema-faq-answer\">La \u00fanica forma fiable de saberlo es hacer una prueba de gotas l\u00edquidas (como un kit Taylor) o llevar una muestra de agua a tu tienda de piscinas local. Las se\u00f1ales visuales de que la prueba est\u00e1 atrasada son costras blancas rugosas cerca de la l\u00ednea de agua (calcio demasiado alto) o picaduras repentinas y un aspecto calc\u00e1reo en las paredes de yeso (calcio peligrosamente bajo).<\/p> <\/div><\/div>\n\n\n<!-- aiper-tool-links -->\n<div class=\"aiper-tool-links\">\n  <div class=\"aiper-tl-section\">\n    <div class=\"aiper-tl-heading\">M\u00e1s herramientas<\/div>\n    <div class=\"aiper-tl-tags\">\n      <a href=\"https:\/\/aiper.com\/blogs\/es\/calculadora-tiempo-llenado-piscina\/\" class=\"aiper-tl-tag\">Calculadora de tiempo de llenado de piscina<\/a>\n<a href=\"https:\/\/aiper.com\/blogs\/es\/calculadora-tasa-recambio-piscina\/\" class=\"aiper-tl-tag\">Calculadora de tasa de recambio de piscina<\/a>\n<a href=\"https:\/\/aiper.com\/blogs\/es\/calculadora-indice-saturacion-piscina\/\" class=\"aiper-tl-tag\">Calculadora del \u00edndice de saturaci\u00f3n de piscina (LSI)<\/a>\n    <\/div>\n  <\/div>\n  <div class=\"aiper-tl-section\">\n    <div class=\"aiper-tl-heading\">Art\u00edculos relacionados<\/div>\n    <div class=\"aiper-tl-tags\">\n      <a href=\"https:\/\/aiper.com\/blogs\/es\/bajar-alcalinidad-piscina\/\" class=\"aiper-tl-tag\">C\u00f3mo bajar la alcalinidad de la piscina<\/a>\n<a href=\"https:\/\/aiper.com\/blogs\/es\/robot-piscina-atascado-desague-principal\/\" class=\"aiper-tl-tag\">\u00bfPor qu\u00e9 el robot de piscina se queda atascado en el desag\u00fce principal?<\/a>\n<a href=\"https:\/\/aiper.com\/blogs\/es\/preparar-piscina-para-invierno\/\" class=\"aiper-tl-tag\">C\u00f3mo preparar una piscina enterrada para el invierno: gu\u00eda paso a paso<\/a>\n<a href=\"https:\/\/aiper.com\/blogs\/es\/dejar-robot-limpiapiscinas-en-el-agua\/\" class=\"aiper-tl-tag\">\u00bfSe puede dejar el robot limpiapiscinas en el agua?<\/a>\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n.aiper-tool-links{margin:2.5rem 0 1.5rem;padding:1.5rem 1.75rem;background:linear-gradient(135deg,rgba(148,134,247,.04),rgba(30,202,211,.04));border-radius:12px;border:1px solid rgba(148,134,247,.10)}\n.aiper-tl-section{margin-bottom:1.25rem}\n.aiper-tl-section:last-child{margin-bottom:0}\n.aiper-tl-heading{font-size:.75rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#8899aa;margin:0 0 .65rem}\n.aiper-tl-tags{display:flex;flex-wrap:wrap;gap:.5rem}\n.aiper-tl-tag{display:inline-block;padding:.4rem .95rem;font-size:.82rem;font-weight:500;line-height:1.35;color:#9486f7;background:rgba(148,134,247,.055);border:1px solid rgba(30,202,211,.25);border-radius:22px;text-decoration:none;transition:all .18s}\n.aiper-tl-tag:hover{background:#1ecad3;color:#fff;border-color:#1ecad3;box-shadow:0 2px 10px rgba(30,202,211,.22)}\n<\/style>","protected":false},"excerpt":{"rendered":"<p>Calculadora de dureza c\u00e1lcica para piscina Paso 1: introduce el volumen de la piscina Galones (gal)Litros (L)Metros c\u00fabicos (m\u00b3) \u00bfNo lo sabes? Usa nuestra calculadora de volumen de piscina. Paso 2: introduce la dureza c\u00e1lcica (ppm) Dureza actual Dureza objetivo Calcular Restablecer Unidad de peso del resultado: Onzas (oz)Libras (lbs)Gramos (g)Kilogramos (kg) Rango objetivo recomendado: [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"aiper_reading_time":4,"aiper_last_reviewed":"","aiper_reviewer":0,"aiper_related_ids":[],"aiper_layout":"","footnotes":""},"class_list":["post-2145","page","type-page","status-publish","hentry"],"lang":"es","translations":{"es":2145,"de":2143,"en":1829,"fr":2144},"_links":{"self":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages\/2145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/comments?post=2145"}],"version-history":[{"count":4,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages\/2145\/revisions"}],"predecessor-version":[{"id":11875,"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/pages\/2145\/revisions\/11875"}],"wp:attachment":[{"href":"https:\/\/aiper.com\/blogs\/wp-json\/wp\/v2\/media?parent=2145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}