{"id":1666,"date":"2026-09-23T18:40:50","date_gmt":"2026-09-23T18:40:50","guid":{"rendered":"https:\/\/blog.racksweekend.com.br\/?page_id=1666"},"modified":"2026-09-28T21:26:20","modified_gmt":"2026-09-28T21:26:20","slug":"free-age-calculator","status":"publish","type":"page","link":"https:\/\/blog.racksweekend.com.br\/de\/free-age-calculator\/","title":{"rendered":"Free Age Calculator"},"content":{"rendered":"\n<!-- ============================================================\n     Age Calculator widget - blog.racksweekend.com.br\n     Paste this whole block into a \"Custom HTML\" block on the page,\n     replacing the old calculator block.\n     Fires dataLayer event \"tool_used\" (once per page load) after a\n     successful calculation, so the existing GTM\/GA4 setup keeps working.\n     ============================================================ -->\n<style>\n.rwac{--c:#0b6b50;--c2:#e8f3ef;--t:#1d2327;--m:#5f6b73;--b:#cfd6dc;max-width:560px;margin:0 auto 24px;color:var(--t);font-family:inherit}\n.rwac *{box-sizing:border-box}\n.rwac [hidden]{display:none!important}\n.rwac h1{font-size:26px;line-height:1.2;margin:0 0 4px;font-weight:700;letter-spacing:0}\n.rwac .rwac-sub{font-size:15px;line-height:1.4;color:var(--m);margin:0 0 14px}\n.rwac form{background:#fff;border:1px solid var(--b);border-radius:12px;padding:16px;margin:0}\n.rwac .rwac-label{display:block;font-weight:600;font-size:15px;margin:0 0 8px}\n.rwac .rwac-row{display:grid;grid-template-columns:1.5fr 1fr 1.2fr;gap:8px}\n.rwac select,.rwac input{width:100%;height:52px;font-size:17px;padding:0 12px;border:1px solid var(--b);border-radius:8px;background:#fff;color:var(--t);margin:0;box-shadow:none}\n.rwac input{-webkit-appearance:none;appearance:none}\n.rwac input:focus,.rwac select:focus{outline:2px solid var(--c);outline-offset:1px;border-color:var(--c)}\n.rwac .rwac-asof{margin-top:14px}\n.rwac .rwac-err{color:#b32d2e;font-size:14px;margin:10px 0 0}\n.rwac .rwac-err:empty{display:none}\n.rwac .rwac-btn{display:block;width:100%;height:54px;margin:14px 0 0;border:0;border-radius:8px;background:var(--c);color:#fff;font-size:18px;font-weight:700;cursor:pointer;text-transform:none;letter-spacing:0}\n.rwac .rwac-btn:hover{filter:brightness(1.08)}\n.rwac .rwac-btn:active{transform:translateY(1px)}\n.rwac .rwac-toggle{display:inline-block;background:none;border:0;padding:0;margin:12px 0 0;color:var(--c);font-size:14px;text-decoration:underline;cursor:pointer}\n.rwac .rwac-res{margin-top:16px;background:var(--c2);border-radius:12px;padding:18px}\n.rwac .rwac-res-l{font-size:14px;color:var(--m)}\n.rwac .rwac-big{font-size:28px;font-weight:800;color:var(--c);line-height:1.2;margin:4px 0 14px}\n.rwac dl{display:grid;grid-template-columns:1fr auto;gap:8px 12px;margin:0;font-size:15px}\n.rwac dt{color:var(--m);margin:0}\n.rwac dd{margin:0;font-weight:700;text-align:right}\n.rwac .rwac-more{margin-top:16px;font-size:15px;line-height:1.6}\n.rwac .rwac-more a{color:var(--c);font-weight:600}\n\/* --- Overrides: the theme styles all <button> elements (pink, uppercase), so force ours --- *\/\n#rwac h1{font-size:26px!important;line-height:1.2!important;margin:0 0 4px!important}\n#rwac .rwac-btn,#rwac .rwac-btn:hover,#rwac .rwac-btn:focus,#rwac .rwac-btn:active{background:#0b6b50!important;background-image:none!important;color:#fff!important;border:0!important;border-radius:8px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;font-size:18px!important;font-weight:700!important;line-height:54px!important;height:54px!important;padding:0 16px!important;width:100%!important;text-shadow:none!important}\n#rwac .rwac-btn:hover{background:#0e7f5f!important}\n#rwac .rwac-toggle,#rwac .rwac-toggle:hover,#rwac .rwac-toggle:focus,#rwac .rwac-toggle:active{background:transparent!important;background-image:none!important;color:#0b6b50!important;border:0!important;box-shadow:none!important;padding:0!important;margin:12px 0 0!important;height:auto!important;line-height:1.4!important;font-size:14px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;text-decoration:underline!important;width:auto!important;min-height:0!important}\n@media (max-width:380px){.rwac .rwac-row{grid-template-columns:1fr 1fr}.rwac .rwac-row .rwac-y{grid-column:1\/-1}}\n<\/style>\n\n<div class=\"rwac\" id=\"rwac\">\n  <h1>Age Calculator<\/h1>\n  <p class=\"rwac-sub\">Enter your date of birth to see your exact age in years, months and days.<\/p>\n\n  <form id=\"rwac-form\" novalidate>\n    <span class=\"rwac-label\" id=\"rwac-dob-l\">Date of birth<\/span>\n    <div class=\"rwac-row\" role=\"group\" aria-labelledby=\"rwac-dob-l\">\n      <select id=\"rwac-m\" aria-label=\"Month\" autocomplete=\"bday-month\"><option value=\"\">Month<\/option><\/select>\n      <input id=\"rwac-d\" type=\"text\" inputmode=\"numeric\" pattern=\"[0-9]*\" maxlength=\"2\" placeholder=\"Day\" aria-label=\"Day\" autocomplete=\"bday-day\">\n      <input id=\"rwac-y\" class=\"rwac-y\" type=\"text\" inputmode=\"numeric\" pattern=\"[0-9]*\" maxlength=\"4\" placeholder=\"Year\" aria-label=\"Year\" autocomplete=\"bday-year\">\n    <\/div>\n\n    <div class=\"rwac-asof\" id=\"rwac-asof\" hidden>\n      <span class=\"rwac-label\" id=\"rwac-asof-l\">Age on this date<\/span>\n      <div class=\"rwac-row\" role=\"group\" aria-labelledby=\"rwac-asof-l\">\n        <select id=\"rwac-m2\" aria-label=\"Month\"><option value=\"\">Month<\/option><\/select>\n        <input id=\"rwac-d2\" type=\"text\" inputmode=\"numeric\" pattern=\"[0-9]*\" maxlength=\"2\" placeholder=\"Day\" aria-label=\"Day\">\n        <input id=\"rwac-y2\" class=\"rwac-y\" type=\"text\" inputmode=\"numeric\" pattern=\"[0-9]*\" maxlength=\"4\" placeholder=\"Year\" aria-label=\"Year\">\n      <\/div>\n    <\/div>\n\n    <p class=\"rwac-err\" id=\"rwac-err\" role=\"alert\"><\/p>\n    <button type=\"submit\" class=\"rwac-btn\" id=\"rwac-btn\">Calculate<\/button>\n    <button type=\"button\" class=\"rwac-toggle\" id=\"rwac-tg\" aria-expanded=\"false\" aria-controls=\"rwac-asof\">Calculate age on a different date<\/button>\n  <\/form>\n\n  <div class=\"rwac-res\" id=\"rwac-res\" hidden aria-live=\"polite\">\n    <div class=\"rwac-res-l\" id=\"rwac-res-l\">Your age today<\/div>\n    <div class=\"rwac-big\" id=\"rwac-big\"><\/div>\n    <dl id=\"rwac-dl\"><\/dl>\n  <\/div>\n\n  <div class=\"rwac-more\" id=\"rwac-more\" hidden>\n    More free tools: <a href=\"\/en\/bmi-calculator\/\">BMI Calculator<\/a>\n    <!-- Add more internal links here, e.g.:  \u00b7 <a href=\"\/en\/tip-calculator\/\">Tip Calculator<\/a> -->\n  <\/div>\n<\/div>\n\n<script>\n(function () {\n  var root = document.getElementById('rwac');\n  if (!root) return;\n  function $(id) { return document.getElementById(id); }\n\n  var MONTHS = ['January','February','March','April','May','June','July','August','September','October','November','December'];\n  var WEEKDAYS = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];\n  var DAY = 86400000;\n  var eventSent = false;\n\n  ['rwac-m', 'rwac-m2'].forEach(function (id) {\n    var s = $(id);\n    MONTHS.forEach(function (name, i) {\n      var o = document.createElement('option');\n      o.value = i + 1; o.textContent = name; s.appendChild(o);\n    });\n  });\n\n  function dim(y, m) { return new Date(y, m, 0).getDate(); }          \/\/ m = 1..12\n  function utc(o) { return Date.UTC(o.y, o.m - 1, o.d); }\n  function fmt(n) { return n.toLocaleString('en-US'); }\n  function plural(n, w) { return fmt(n) + ' ' + w + (n === 1 ? '' : 's'); }\n\n  function read(s) {\n    var m = parseInt($('rwac-m' + s).value, 10);\n    var d = parseInt($('rwac-d' + s).value, 10);\n    var y = parseInt($('rwac-y' + s).value, 10);\n    if (!m || !d || !y) return { err: 'Please enter the month, day and year.' };\n    if (y < 1900 || y > 2100) return { err: 'Please enter a 4-digit year (e.g. 1990).' };\n    if (d < 1 || d > dim(y, m)) return { err: MONTHS[m - 1] + ' ' + y + ' has only ' + dim(y, m) + ' days.' };\n    return { y: y, m: m, d: d };\n  }\n\n  function age(b, t) {\n    var y = t.y - b.y, m = t.m - b.m;\n    if (t.d < b.d) m--;\n    if (m < 0) { y--; m += 12; }\n    var ay = b.y + y, am = b.m + m;\n    if (am > 12) { am -= 12; ay++; }\n    var anchor = { y: ay, m: am, d: Math.min(b.d, dim(ay, am)) };\n    return { y: y, m: m, d: Math.round((utc(t) - utc(anchor)) \/ DAY) };\n  }\n\n  function nextBirthday(b, t) {\n    function inYear(yr) {\n      var d = (b.m === 2 && b.d === 29 && dim(yr, 2) === 28) ? 28 : b.d;\n      return Date.UTC(yr, b.m - 1, d);\n    }\n    var nb = inYear(t.y);\n    if (nb < utc(t)) nb = inYear(t.y + 1);\n    return Math.round((nb - utc(t)) \/ DAY);\n  }\n\n  function row(label, value) { return '<dt>' + label + '<\/dt><dd>' + value + '<\/dd>'; }\n\n  \/\/ Input helpers: digits only, auto-advance, hide keyboard when the year is complete\n  ['', '2'].forEach(function (s) {\n    var m = $('rwac-m' + s), d = $('rwac-d' + s), y = $('rwac-y' + s);\n    [d, y].forEach(function (el) {\n      el.addEventListener('input', function () { el.value = el.value.replace(\/\\D\/g, ''); });\n    });\n    m.addEventListener('change', function () { if (!d.value) d.focus(); });\n    d.addEventListener('input', function () { if (d.value.length === 2) y.focus(); });\n    y.addEventListener('input', function () { if (y.value.length === 4) y.blur(); });\n  });\n\n  $('rwac-tg').addEventListener('click', function () {\n    var box = $('rwac-asof'), open = box.hasAttribute('hidden');\n    if (open) box.removeAttribute('hidden'); else box.setAttribute('hidden', '');\n    this.setAttribute('aria-expanded', String(open));\n    this.textContent = open ? 'Use today\u2019s date instead' : 'Calculate age on a different date';\n  });\n\n  $('rwac-form').addEventListener('submit', function (e) {\n    e.preventDefault();\n    var err = $('rwac-err');\n    err.textContent = '';\n\n    var b = read('');\n    if (b.err) { err.textContent = b.err; return; }\n\n    var useAsOf = !$('rwac-asof').hasAttribute('hidden');\n    var t;\n    if (useAsOf) {\n      t = read('2');\n      if (t.err) { err.textContent = 'Age-on date: ' + t.err; return; }\n    } else {\n      var n = new Date();\n      t = { y: n.getFullYear(), m: n.getMonth() + 1, d: n.getDate() };\n    }\n    if (utc(b) > utc(t)) { err.textContent = 'The date of birth must be before ' + (useAsOf ? 'the age-on date.' : 'today.'); return; }\n\n    var a = age(b, t);\n    var totalDays = Math.round((utc(t) - utc(b)) \/ DAY);\n    var nb = nextBirthday(b, t);\n\n    $('rwac-res-l').textContent = useAsOf ? 'Age on ' + MONTHS[t.m - 1] + ' ' + t.d + ', ' + t.y : 'Your age today';\n    $('rwac-big').textContent = plural(a.y, 'year') + ', ' + plural(a.m, 'month') + ', ' + plural(a.d, 'day');\n    $('rwac-dl').innerHTML =\n      row('Total months', fmt(a.y * 12 + a.m)) +\n      row('Total weeks', fmt(Math.floor(totalDays \/ 7))) +\n      row('Total days', fmt(totalDays)) +\n      row('Total hours (approx.)', fmt(totalDays * 24)) +\n      row('You were born on a', WEEKDAYS[new Date(utc(b)).getUTCDay()]) +\n      row('Next birthday', nb === 0 ? 'Today \u2014 happy birthday!' : 'in ' + plural(nb, 'day'));\n\n    $('rwac-res').removeAttribute('hidden');\n    $('rwac-more').removeAttribute('hidden');\n    $('rwac-res').scrollIntoView({ behavior: 'smooth', block: 'center' });\n\n    if (!eventSent) {\n      eventSent = true;\n      window.dataLayer = window.dataLayer || [];\n      window.dataLayer.push({ event: 'tool_used', tool_name: 'age_calculator' });\n    }\n  });\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Age Calculator Enter your date of birth to see your exact age in years, months and days. Date of birth Month Age on this date Month Calculate Calculate age on a different date Your age today More free tools: BMI Calculator<\/p>","protected":false},"author":11,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1666","page","type-page","status-publish","hentry","latest_post"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Free Age Calculator - Blog Racks<\/title>\n<meta name=\"description\" content=\"Calculate your exact age or the time between any two dates \u2014 years, months, and days, instantly and free.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.racksweekend.com.br\/de\/free-age-calculator\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Free Age Calculator - Blog Racks\" \/>\n<meta property=\"og:description\" content=\"Calculate your exact age or the time between any two dates \u2014 years, months, and days, instantly and free.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.racksweekend.com.br\/de\/free-age-calculator\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Racks\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-28T21:26:20+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data1\" content=\"1\u00a0Minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/free-age-calculator\\\/\",\"url\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/free-age-calculator\\\/\",\"name\":\"Free Age Calculator - Blog Racks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/#website\"},\"datePublished\":\"2026-09-23T18:40:50+00:00\",\"dateModified\":\"2026-09-28T21:26:20+00:00\",\"description\":\"Calculate your exact age or the time between any two dates \u2014 years, months, and days, instantly and free.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/free-age-calculator\\\/#breadcrumb\"},\"inLanguage\":\"de-CH\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.racksweekend.com.br\\\/free-age-calculator\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/free-age-calculator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Free Age Calculator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/#website\",\"url\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/\",\"name\":\"Blog Racks\",\"description\":\"Weekend\",\"publisher\":{\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de-CH\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/#organization\",\"name\":\"Blog Racks\",\"url\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-CH\",\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/cropped-BLOG.png\",\"contentUrl\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/cropped-BLOG.png\",\"width\":1248,\"height\":771,\"caption\":\"Blog Racks\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.racksweekend.com.br\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Free Age Calculator - Blog Racks","description":"Calculate your exact age or the time between any two dates \u2014 years, months, and days, instantly and free.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.racksweekend.com.br\/de\/free-age-calculator\/","og_locale":"de_DE","og_type":"article","og_title":"Free Age Calculator - Blog Racks","og_description":"Calculate your exact age or the time between any two dates \u2014 years, months, and days, instantly and free.","og_url":"https:\/\/blog.racksweekend.com.br\/de\/free-age-calculator\/","og_site_name":"Blog Racks","article_modified_time":"2026-09-28T21:26:20+00:00","twitter_card":"summary_large_image","twitter_misc":{"Gesch\u00e4tzte Lesezeit":"1\u00a0Minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.racksweekend.com.br\/free-age-calculator\/","url":"https:\/\/blog.racksweekend.com.br\/free-age-calculator\/","name":"Free Age Calculator - Blog Racks","isPartOf":{"@id":"https:\/\/blog.racksweekend.com.br\/#website"},"datePublished":"2026-09-23T18:40:50+00:00","dateModified":"2026-09-28T21:26:20+00:00","description":"Calculate your exact age or the time between any two dates \u2014 years, months, and days, instantly and free.","breadcrumb":{"@id":"https:\/\/blog.racksweekend.com.br\/free-age-calculator\/#breadcrumb"},"inLanguage":"de-CH","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.racksweekend.com.br\/free-age-calculator\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.racksweekend.com.br\/free-age-calculator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.racksweekend.com.br\/"},{"@type":"ListItem","position":2,"name":"Free Age Calculator"}]},{"@type":"WebSite","@id":"https:\/\/blog.racksweekend.com.br\/#website","url":"https:\/\/blog.racksweekend.com.br\/","name":"Blog-Racks","description":"Wochenende","publisher":{"@id":"https:\/\/blog.racksweekend.com.br\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.racksweekend.com.br\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de-CH"},{"@type":"Organization","@id":"https:\/\/blog.racksweekend.com.br\/#organization","name":"Blog-Racks","url":"https:\/\/blog.racksweekend.com.br\/","logo":{"@type":"ImageObject","inLanguage":"de-CH","@id":"https:\/\/blog.racksweekend.com.br\/#\/schema\/logo\/image\/","url":"https:\/\/blog.racksweekend.com.br\/wp-content\/uploads\/2024\/02\/cropped-BLOG.png","contentUrl":"https:\/\/blog.racksweekend.com.br\/wp-content\/uploads\/2024\/02\/cropped-BLOG.png","width":1248,"height":771,"caption":"Blog Racks"},"image":{"@id":"https:\/\/blog.racksweekend.com.br\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/pages\/1666","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/comments?post=1666"}],"version-history":[{"count":3,"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/pages\/1666\/revisions"}],"predecessor-version":[{"id":1683,"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/pages\/1666\/revisions\/1683"}],"wp:attachment":[{"href":"https:\/\/blog.racksweekend.com.br\/de\/wp-json\/wp\/v2\/media?parent=1666"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}