{"id":21305,"date":"2025-07-03T13:01:00","date_gmt":"2025-07-03T17:01:00","guid":{"rendered":"https:\/\/dinorank.com\/en-us\/blog-seo\/?p=21305"},"modified":"2025-09-08T03:33:24","modified_gmt":"2025-09-08T07:33:24","slug":"seo-metrics","status":"publish","type":"post","link":"https:\/\/dinorank.com\/en-us\/blog-seo\/seo-metrics\/","title":{"rendered":"7 most important SEO metrics to measure the performance of your website"},"content":{"rendered":"\n<p>We\u2019ve mentioned many times that SEO is a long-term activity. It usually takes several weeks or months before we start to see the results of our efforts.<\/p>\n\n\n\n<p>But that doesn\u2019t mean you should just sit back and wait. <\/p>\n\n\n\n<p>Absolutely not.<\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#eef9f4\">During that time, <strong>we can detect signals that will tell us if we\u2019re heading in the right direction<\/strong> or if, on the contrary, we need to make some adjustments to our strategy.<\/p>\n\n\n\n<p>And to see those signals, we need to be able to <strong>measure the impact of everything we\u2019re doing<\/strong>.<\/p>\n\n\n\n<p>Want to know how I measure SEO?<\/p>\n\n\n\n<p>In this post, I&#8217;ll talk about the so-called SEO metrics and show you which ones, in my opinion, are <strong>the most important SEO metrics for efficiently tracking<\/strong> your web project.<\/p>\n\n\n\n<p>Let&#8217;s get started!<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/dinorank.com\/en-us\/blog-seo\/rank-tracker-seo-software\/\" target=\"_blank\" rel=\"noreferrer noopener\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1000\" height=\"450\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords.png\" alt=\"Find the best keywords\" class=\"wp-image-22028\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords.png 1000w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords-300x135.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords-768x346.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">What are SEO metrics?<\/h2>\n\n\n\n<p>SEO metrics are <strong>indicators used to evaluate and measure the performance of a website<\/strong>, especially concerning its positioning within search engines and the effects derived from it.<\/p>\n\n\n\n<p>Therefore, they provide objective information about the direction your web project is taking and are a fundamental basis for decision-making within any SEO strategy.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The main SEO metrics I review daily<\/h2>\n\n\n\n<p>There are a wide variety of SEO parameters that allow you to assess different aspects of your website.<\/p>\n\n\n\n<p>There are no better or worse metrics; the use of one or another will depend on the objectives you want to achieve within your business.<\/p>\n\n\n\n<p>Next, I\u2019m going to show you the <strong>7 metrics I usually pay the most attention to<\/strong> and that best allow me to measure the effectiveness of my actions as an SEO.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Organic Traffic<\/h3>\n\n\n\n<p>We start with the metric I consider the most important of all: the <strong>visits our website receives from Google<\/strong>.<\/p>\n\n\n\n<p>At the end of the day, we are measuring the results of our work as SEOs, whose goal is none other than to improve our positions in search engines so that users end up reaching our website.<\/p>\n\n\n\n<p>Therefore, the value of organic traffic and its evolution over time will tell us if we are achieving our goal or if, on the contrary, we need to rethink some aspects of our SEO strategy.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How to measure a Website&#8217;s Organic Traffic?<\/h4>\n\n\n\n<p>There are several software applications that provide information about a website&#8217;s traffic, but if you want the most accurate and reliable data, it&#8217;s best to always go to the source, that is, Google.<\/p>\n\n\n\n<p><strong>Google Search Console (GSC) is the essential tool<\/strong> that every SEO should be familiar with. In its &#8220;Performance&#8221; section, it shows us real data about the organic traffic of our domain.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1024\" height=\"610\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Organic-Traffic-with-Google-Search-Console-1024x691-1-1024x610.png\" alt=\"SEO Metrics How to Measure Organic Traffic with Google Search Console\" class=\"wp-image-21384\" title=\"SEO Metrics How to Measure Organic Traffic with Google Search Console\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Organic-Traffic-with-Google-Search-Console-1024x691-1-1024x610.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Organic-Traffic-with-Google-Search-Console-1024x691-1-300x179.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Organic-Traffic-with-Google-Search-Console-1024x691-1-768x457.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Organic-Traffic-with-Google-Search-Console-1024x691-1.png 1085w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>You will see a graph with the total clicks your website has received each day, as well as a table with the queries, URLs, countries, or devices that generated those clicks.<\/p>\n\n\n\n<p>This is very valuable information that you can filter and export to a spreadsheet for more detailed analysis if you wish.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Why is this SEO metric important?<\/h4>\n\n\n\n<p>Organic traffic is an objective indicator of how relevant our content is to users. However, when analyzing this metric, you can&#8217;t just focus on its overall value; you need to pay attention to the details.<\/p>\n\n\n\n<p>Filters by keywords, URLs, or countries are the ones that will truly indicate whether your visits reflect your actions as an SEO and have the potential to convert into sales or if, on the contrary, Google is telling you that you need to change your strategy.<\/p>\n\n\n\n<div id=\"brxe-dac047\" class=\"brxe-block p-2 gap-15\"><div id=\"brxe-481bc6\" class=\"brxe-text-basic h3\">Another SEO newsletter?\n\nYes.\n<\/div><div id=\"brxe-b11ebb\" class=\"brxe-text-basic\">This is what we can offer you:<\/div><div id=\"brxe-97bf62\" class=\"brxe-text-basic\"><strong>No fluff, no hype. 100% honesty. 100% straight to the point<\/strong>. All we need is your email and a bit of your attention\u2014we\u2019ll handle the rest.\n\nIt\u2019s your call.\n<\/div><div id=\"brxe-omkwmy\" data-script-id=\"omkwmy\" class=\"brxe-code\"><style>@import url(https:\/\/fonts.bunny.net\/css?family=source-sans-pro:400,700);<\/style>\n<style>\n#_form_311_{font-size:14px;line-height:1.6;font-family:arial, helvetica, sans-serif;margin:0}#_form_311_ *{outline:0}._form_hide{display:none;visibility:hidden}._form_show{display:block;visibility:visible}#_form_311_._form-top{top:0}#_form_311_._form-bottom{bottom:0}#_form_311_._form-left{left:0}#_form_311_._form-right{right:0}#_form_311_ input[type=\"text\"],#_form_311_ input[type=\"tel\"],#_form_311_ input[type=\"date\"],#_form_311_ textarea{padding:6px;height:auto;border:#979797 1px solid;border-radius:4px;color:#000 !important;font-size:14px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#_form_311_ textarea{resize:none}#_form_311_ ._submit{-webkit-appearance:none;cursor:pointer;font-family:arial, sans-serif;font-size:14px;text-align:center;background:#00C4A7 !important;border:0 !important;-moz-border-radius:3px !important;-webkit-border-radius:3px !important;border-radius:3px !important;color:#FFFFFF !important;padding:14px !important}#_form_311_ ._submit:disabled{cursor:not-allowed;opacity:0.4}#_form_311_ ._submit.processing{position:relative}#_form_311_ ._submit.processing::before{content:\"\";width:1em;height:1em;position:absolute;z-index:1;top:50%;left:50%;border:double 3px transparent;border-radius:50%;background-image:linear-gradient(#00C4A7, #00C4A7), conic-gradient(#00C4A7, #FFFFFF);background-origin:border-box;background-clip:content-box, border-box;animation:1200ms ease 0s infinite normal none running _spin}#_form_311_ ._submit.processing::after{content:\"\";position:absolute;top:0;bottom:0;left:0;right:0;background:#00C4A7 !important;border:0 !important;-moz-border-radius:3px !important;-webkit-border-radius:3px !important;border-radius:3px !important;color:#FFFFFF !important;padding:14px !important}@keyframes _spin{0%{transform:translate(-50%, -50%) rotate(90deg)}100%{transform:translate(-50%, -50%) rotate(450deg)}}#_form_311_ ._close-icon{cursor:pointer;background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/esfkyjh1u_forms-close-dark.png\");background-repeat:no-repeat;background-size:14.2px 14.2px;position:absolute;display:block;top:11px;right:9px;overflow:hidden;width:16.2px;height:16.2px}#_form_311_ ._close-icon:before{position:relative}#_form_311_ ._form-body{margin-bottom:30px}#_form_311_ ._form-image-left{width:150px;float:left}#_form_311_ ._form-content-right{margin-left:164px}#_form_311_ ._form-branding{color:#fff;font-size:10px;clear:both;text-align:left;margin-top:30px;font-weight:100}#_form_311_ ._form-branding ._logo{display:block;width:130px;height:14px;margin-top:6px;background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/hh9ujqgv5_aclogo_li.png\");background-size:130px auto;background-repeat:no-repeat}#_form_311_ .form-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}#_form_311_ ._form-label,#_form_311_ ._form_element ._form-label{font-weight:bold;margin-bottom:5px;display:block}#_form_311_._dark ._form-branding{color:#333}#_form_311_._dark ._form-branding ._logo{background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/jftq2c8s_aclogo_dk.png\")}#_form_311_ ._form_element{position:relative;margin-bottom:10px;font-size:0;max-width:100%}#_form_311_ ._form_element *{font-size:14px}#_form_311_ ._form_element._clear{clear:both;width:100%;float:none}#_form_311_ ._form_element._clear:after{clear:left}#_form_311_ ._form_element input[type=\"text\"],#_form_311_ ._form_element input[type=\"date\"],#_form_311_ ._form_element select,#_form_311_ ._form_element textarea:not(.g-recaptcha-response){display:block;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-family:inherit}#_form_311_ ._field-wrapper{position:relative}#_form_311_ ._inline-style{float:left}#_form_311_ ._inline-style input[type=\"text\"]{width:150px}#_form_311_ ._inline-style:not(._clear){margin-right:20px}#_form_311_ ._form_element img._form-image{max-width:100%}#_form_311_ ._form_element ._form-fieldset{border:0;padding:0.01em 0 0 0;margin:0;min-width:0}#_form_311_ ._clear-element{clear:left}#_form_311_ ._full_width{width:100%}#_form_311_ ._form_full_field{display:block;width:100%;margin-bottom:10px}#_form_311_ input[type=\"text\"]._has_error,#_form_311_ textarea._has_error{border:#F37C7B 1px solid}#_form_311_ input[type=\"checkbox\"]._has_error{outline:#F37C7B 1px solid}#_form_311_ ._show_be_error{float:left}#_form_311_ ._error{display:block;position:absolute;font-size:14px;z-index:10000001}#_form_311_ ._error._above{padding-bottom:4px;bottom:39px;right:0}#_form_311_ ._error._below{padding-top:8px;top:100%;right:0}#_form_311_ ._error._above ._error-arrow{bottom:-4px;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #FFDDDD}#_form_311_ ._error._below ._error-arrow{top:0;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid #FFDDDD}#_form_311_ ._error-inner{padding:12px 12px 12px 36px;background-color:#FFDDDD;background-image:url(\"data:image\/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16 8C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8C0 3.58172 3.58172 0 8 0C12.4183 0 16 3.58172 16 8ZM9 3V9H7V3H9ZM9 13V11H7V13H9Z' fill='%23CA0000'\/%3E%3C\/svg%3E\");background-repeat:no-repeat;background-position:12px center;font-size:14px;font-family:arial, sans-serif;font-weight:600;line-height:16px;color:#000;text-align:center;text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;box-shadow:0 1px 4px rgba(31, 33, 41, 0.298295)}@media only screen and (max-width:319px){#_form_311_ ._error-inner{padding:7px 7px 7px 25px;font-size:12px;line-height:12px;background-position:4px center;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}#_form_311_ ._error-inner._form_error{margin-bottom:5px;text-align:left}#_form_311_ ._button-wrapper ._error-inner._form_error{position:static}#_form_311_ ._error-inner._no_arrow{margin-bottom:10px}#_form_311_ ._error-arrow{position:absolute;width:0;height:0}#_form_311_ ._error-html{margin-bottom:10px}.pika-single{z-index:10000001 !important}#_form_311_ input[type=\"text\"].datetime_date{width:69%;display:inline}#_form_311_ select.datetime_time{width:29%;display:inline;height:32px}#_form_311_ input[type=\"date\"].datetime_date{width:69%;display:inline-flex}#_form_311_ input[type=\"time\"].datetime_time{width:29%;display:inline-flex}@media (min-width:320px) and (max-width:667px){::-webkit-scrollbar{display:none}#_form_311_{margin:0;width:100%;min-width:100%;max-width:100%;box-sizing:border-box}#_form_311_ *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:1em}#_form_311_ ._form-content{margin:0;width:100%}#_form_311_ ._form-inner{display:block;min-width:100%}#_form_311_ ._form-title,#_form_311_ ._inline-style{margin-top:0;margin-right:0;margin-left:0}#_form_311_ ._form-title{font-size:1.2em}#_form_311_ ._form_element{margin:0 0 20px;padding:0;width:100%}#_form_311_ ._form-element,#_form_311_ ._inline-style,#_form_311_ input[type=\"text\"],#_form_311_ label,#_form_311_ p,#_form_311_ textarea:not(.g-recaptcha-response){float:none;display:block;width:100%}#_form_311_ ._row._checkbox-radio label{display:inline}#_form_311_ ._row,#_form_311_ p,#_form_311_ label{margin-bottom:0.7em;width:100%}#_form_311_ ._row input[type=\"checkbox\"],#_form_311_ ._row input[type=\"radio\"]{margin:0 !important;vertical-align:middle !important}#_form_311_ ._row input[type=\"checkbox\"]+span label{display:inline}#_form_311_ ._row span label{margin:0 !important;width:initial !important;vertical-align:middle !important}#_form_311_ ._form-image{max-width:100%;height:auto !important}#_form_311_ input[type=\"text\"]{padding-left:10px;padding-right:10px;font-size:16px;line-height:1.3em;-webkit-appearance:none}#_form_311_ input[type=\"radio\"],#_form_311_ input[type=\"checkbox\"]{display:inline-block;width:1.3em;height:1.3em;font-size:1em;margin:0 0.3em 0 0;vertical-align:baseline}#_form_311_ button[type=\"submit\"]{padding:20px;font-size:1.5em}#_form_311_ ._inline-style{margin:20px 0 0 !important}#_form_311_ ._inline-style input[type=\"text\"]{width:100%}}#_form_311_ .sms_consent_checkbox{position:relative;width:100%;display:flex;align-items:flex-start;padding:20px 0}#_form_311_ .sms_consent_checkbox input[type=\"checkbox\"]{float:left;margin:5px 10px 10px 0}#_form_311_ .sms_consent_checkbox .sms_consent_message{display:inline;float:left;text-align:left;margin-bottom:10px;font-size:14px;color:#7D8799}#_form_311_ .sms_consent_checkbox .sms_consent_message.sms_consent_mini{width:90%}#_form_311_ .sms_consent_checkbox ._error._above{right:auto;bottom:0}#_form_311_ .sms_consent_checkbox ._error._above ._error-arrow{right:auto;left:5px}@media (min-width:320px) and (max-width:667px){#_form_311_ .sms_consent_checkbox ._error._above{top:-30px;left:0;bottom:auto}}#_form_311_ .field-required{color:#FF0000}#_form_311_{position:relative;text-align:left;margin:25px auto 0;padding:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255, 255, 255, 0) !important;border-top:0px solid #737373 !important;border-right:0px solid #737373 !important;border-bottom:0px solid #737373 !important;border-left:0px solid #737373 !important;max-width:800px;-moz-border-radius:1px !important;-webkit-border-radius:1px !important;border-radius:1px !important;color:#000000}#_form_311_ ._show_be_error{min-width:100%}#_form_311_._inline-form,#_form_311_._inline-form ._form-content{font-family:Source Sans Pro;font-size:14px;font-weight:400}#_form_311_._inline-form ._row span,#_form_311_._inline-form ._row label{font-family:Source Sans Pro;font-size:14px;font-weight:400;line-height:1.6em;color:#888 !important}#_form_311__inlineform input[type=\"text\"],#_form_311__inlineform input[type=\"date\"],#_form_311__inlineform input[type=\"tel\"],#_form_311__inlineform select,#_form_311__inlineform textarea:not(.g-recaptcha-response){font-family:Source Sans Pro;font-size:14px;font-weight:400;font-color:#000000;line-height:1.6em}#_form_311_._inline-form ._html-code *:not(h1, h2, h3, h4, h5, h6),#_form_311_._inline-form .sms_consent_message,#_form_311_._inline-form ._form-thank-you{font-family:Source Sans Pro;font-size:14px;font-weight:400;color:#888 !important}#_form_311_._inline-form ._form-label,#_form_311_._inline-form ._form-emailidentifier,#_form_311_._inline-form ._form-checkbox-option-label{font-family:Source Sans Pro;font-size:14px;font-weight:700;line-height:1.6em;color:#888 !important}#_form_311_._inline-form ._submit{margin-top:12px;font-family:Source Sans Pro;font-size:14px;font-weight:400}#_form_311_._inline-form ._html-code h1,#_form_311_._inline-form ._html-code h2,#_form_311_._inline-form ._html-code h3,#_form_311_._inline-form ._html-code h4,#_form_311_._inline-form ._html-code h5,#_form_311_._inline-form ._html-code h6,#_form_311_._inline-form ._form-title{font-family:Source Sans Pro;font-size:22px;line-height:normal;font-weight:700;color:black;margin-bottom:0;display:block}#_form_311_._inline-form ._form-branding{font-family:\"IBM Plex Sans\", Helvetica, sans-serif;font-size:13px;font-weight:100;font-style:normal;text-decoration:none}#_form_311_:before,#_form_311_:after{content:\" \";display:table}#_form_311_:after{clear:both}#_form_311_._inline-style{width:auto;display:inline-block}#_form_311_._inline-style input[type=\"text\"],#_form_311_._inline-style input[type=\"date\"]{padding:10px 12px}#_form_311_._inline-style button._inline-style{position:relative;top:27px}#_form_311_._inline-style p{margin:0}#_form_311_._inline-style ._button-wrapper{position:relative;margin:16px 12.5px 0 20px}#_form_311_ ._form-thank-you{position:relative;left:0;right:0;text-align:center;font-size:18px}#_form_311_ ._form-pc-confirmation ._submit{margin-top:16px}@media (min-width:320px) and (max-width:667px){#_form_311_._inline-form._inline-style ._inline-style._button-wrapper{margin-top:20px !important;margin-left:0 !important}}#_form_311_ .iti{width:100%}#_form_311_ .iti.iti--allow-dropdown.iti--separate-dial-code{width:100%}#_form_311_ .iti input{width:100%;border:#979797 1px solid;border-radius:4px}#_form_311_ .iti--separate-dial-code .iti__selected-flag{background-color:#FFFFFF;border-radius:4px}#_form_311_ .iti--separate-dial-code .iti__selected-flag:hover{background-color:rgba(0, 0, 0, 0.05)}#_form_311_ .iti__country-list{border-radius:4px;margin-top:4px;min-width:460px}#_form_311_ .iti__country-list--dropup{margin-bottom:4px}#_form_311_ .phone-error-hidden{display:none}#_form_311_ .phone-error{color:#E40E49}#_form_311_ .phone-input-error{border:1px solid #E40E49 !important}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field fieldset{margin:0;margin-bottom:1.1428571429em;border:none;padding:0}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field fieldset:last-child{margin-bottom:0}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field legend{margin-bottom:1.1428571429em}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field label{display:flex;align-items:flex-start;justify-content:flex-start;margin-bottom:0.8571428571em}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field label:last-child{margin-bottom:0}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field input{margin:0;margin-right:8px}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label{display:block;font-weight:400;margin-top:-4px}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label-with-description{display:block;font-weight:700;margin-top:-4px}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-description{margin:0;font-size:0.8571428571em}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-subscriptions-unsubscribe-all-description{line-height:normal;margin-top:-2px}\n#_form_311_ ._submit{width:100%;font-family:\"Source Sans Pro\", Sans-serif !important;font-size:18px !important;font-weight:500 !important}#_form_311_ ._submit:hover{background-color:#04937E !important}#_form_311_ input#email{padding:3px 12px;background-color:#ffffff;border-radius:2px}#_form_311_._form{margin-top:-5px}#_form_311_ ._error._below{position:relative !important}#_form_311_ ._error._above{position:absolute !important}@media (min-width:320px) and (max-width:667px){#_form_311_ ._form_element{margin:0 0 0px}}<\/style>\n<form method=\"POST\" action=\"https:\/\/deandelafuenteromero.activehosted.com\/proc.php\" id=\"_form_311_\" class=\"_form _form_311 _inline-form  _dark\" novalidate data-styles-version=\"5\">\n  <input type=\"hidden\" name=\"u\" value=\"311\" \/>\n  <input type=\"hidden\" name=\"f\" value=\"311\" \/>\n  <input type=\"hidden\" name=\"s\" \/>\n  <input type=\"hidden\" name=\"c\" value=\"0\" \/>\n  <input type=\"hidden\" name=\"m\" value=\"0\" \/>\n  <input type=\"hidden\" name=\"act\" value=\"sub\" \/>\n  <input type=\"hidden\" name=\"v\" value=\"2\" \/>\n  <input type=\"hidden\" name=\"or\" value=\"1d0d99d99ed2973ea9179629b793b9aa\" \/>\n  <div class=\"_form-content\">\n    <div class=\"_form_element _x74577619 _full_width \" >\n      <label for=\"email\" class=\"_form-label\">\n      <\/label>\n      <div class=\"_field-wrapper\">\n        <input type=\"text\" id=\"email\" name=\"email\" placeholder=\"Enter your email\" required\/>\n      <\/div>\n    <\/div>\n    <div class=\"_form_element _x06467309 _full_width \" >\n      <fieldset class=\"_form-fieldset\">\n        <div class=\"_row\">\n          <legend for=\"field[136][]\" class=\"_form-label\">\n          <\/legend>\n        <\/div>\n        <input data-autofill=\"false\" type=\"hidden\" id=\"field[136][]\" name=\"field[136][]\" value=\"~|\">\n        <div class=\"_row _checkbox-radio\">\n          <input id=\"field_136I have read and accept the privacy policy\" type=\"checkbox\" name=\"field[136][]\"\n          value=\"I have read and accept the privacy policy\"                                                                                 required                                >\n          <span>\n            <label for=\"field_136I have read and accept the privacy policy\">\n              I have read and accept the privacy policy<span class=\"field-required\">\n              *\n            <\/span>\n          <\/label>\n        <\/span>\n      <\/div>\n    <\/fieldset>\n  <\/div>\n  <div class=\"_form_element _x77210210 _full_width \" >\n    <label for=\"ls\" class=\"_form-label\">\n      Verify that you are human<span class=\"field-required\">\n      *\n    <\/span>\n  <\/label>\n  <div class=\"g-recaptcha\" data-sitekey=\"6LcwIw8TAAAAACP1ysM08EhCgzd6q5JAOUR1a0Go\">\n  <\/div>\n<\/div>\n<div class=\"_form_element _x09639014 _full_width \" >\n  <input type=\"hidden\" name=\"field[121]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x64811239 _full_width \" >\n  <input type=\"hidden\" name=\"field[122]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x58860354 _full_width \" >\n  <input type=\"hidden\" name=\"field[123]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x23331849 _full_width \" >\n  <input type=\"hidden\" name=\"field[125]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x72046679 _full_width \" >\n  <input type=\"hidden\" name=\"field[126]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x41336277 _full_width \" >\n  <input type=\"hidden\" name=\"field[127]\" value=\"\" \/>\n<\/div>\n<div class=\"_button-wrapper _full_width\">\n  <button id=\"_form_311_submit\" class=\"_submit\" type=\"submit\">\n    Subscribe here\n  <\/button>\n<\/div>\n<div class=\"_clear-element\">\n<\/div>\n<\/div>\n<div class=\"_form-thank-you\" style=\"display:none;\">\n<\/div>\n<\/form><script>\nwindow.cfields = {\"136\":\"i_have_read_and_accept_the_privacy_policy\",\"121\":\"utm_campaign\",\"122\":\"utm_source\",\"123\":\"utm_medium\",\"125\":\"utm_content\",\"126\":\"utm_adset\",\"127\":\"utm_ad\"};\nwindow._show_thank_you = function(id, message, trackcmp_url, email) {\n    var form = document.getElementById('_form_' + id + '_'), thank_you = form.querySelector('._form-thank-you');\n    form.querySelector('._form-content').style.display = 'none';\n    thank_you.innerHTML = message;\n    thank_you.style.display = 'block';\n    const vgoAlias = typeof visitorGlobalObjectAlias === 'undefined' ? 'vgo' : visitorGlobalObjectAlias;\n    var visitorObject = window[vgoAlias];\n    if (email && typeof visitorObject !== 'undefined') {\n        visitorObject('setEmail', email);\n        visitorObject('update');\n    } else if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {\n        \/\/ Site tracking URL to use after inline form submission.\n        _load_script(trackcmp_url);\n    }\n    if (typeof window._form_callback !== 'undefined') window._form_callback(id);\n};\nwindow._show_unsubscribe = function(id, message, trackcmp_url, email) {\n    var form = document.getElementById('_form_' + id + '_'), unsub = form.querySelector('._form-thank-you');\n    var branding = form.querySelector('._form-branding');\n    if (branding) {\n        branding.style.display = 'none';\n    }\n    form.querySelector('._form-content').style.display = 'none';\n    unsub.style.display = 'block';\n    form.insertAdjacentHTML('afterend', message)\n    const vgoAlias = typeof visitorGlobalObjectAlias === 'undefined' ? 'vgo' : visitorGlobalObjectAlias;\n    var visitorObject = window[vgoAlias];\n    if (email && typeof visitorObject !== 'undefined') {\n        visitorObject('setEmail', email);\n        visitorObject('update');\n    } else if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {\n        \/\/ Site tracking URL to use after inline form submission.\n        _load_script(trackcmp_url);\n    }\n    if (typeof window._form_callback !== 'undefined') window._form_callback(id);\n};\nwindow._show_error = function(id, message, html) {\n    var form = document.getElementById('_form_' + id + '_'),\n        err = document.createElement('div'),\n        button = form.querySelector('button[type=\"submit\"]'),\n        old_error = form.querySelector('._form_error');\n    if (old_error) old_error.parentNode.removeChild(old_error);\n    err.innerHTML = message;\n    err.className = '_error-inner _form_error _no_arrow';\n    var wrapper = document.createElement('div');\n    wrapper.className = '_form-inner _show_be_error';\n    wrapper.appendChild(err);\n    button.parentNode.insertBefore(wrapper, button);\n    var submitButton = form.querySelector('[id^=\"_form\"][id$=\"_submit\"]');\n    submitButton.disabled = false;\n    submitButton.classList.remove('processing');\n    if (html) {\n        var div = document.createElement('div');\n        div.className = '_error-html';\n        div.innerHTML = html;\n        err.appendChild(div);\n    }\n};\nwindow._show_pc_confirmation = function(id, header, detail, show, email) {\n    var form = document.getElementById('_form_' + id + '_'), pc_confirmation = form.querySelector('._form-pc-confirmation');\n    if (pc_confirmation.style.display === 'none') {\n        form.querySelector('._form-content').style.display = 'none';\n        pc_confirmation.innerHTML = \"<div class='_form-title'>\" + header + \"<\/div>\" + \"<p>\" + detail + \"<\/p>\" +\n        \"<button class='_submit' id='hideButton'>Administrar preferencias<\/button>\";\n        pc_confirmation.style.display = 'block';\n        var mp = document.querySelector('input[name=\"mp\"]');\n        mp.value = '0';\n    } else {\n        form.querySelector('._form-content').style.display = 'inline';\n        pc_confirmation.style.display = 'none';\n    }\n\n    var hideButton = document.getElementById('hideButton');\n    \/\/ Add event listener to the button\n    hideButton.addEventListener('click', function() {\n        var submitButton = document.querySelector('#_form_311_submit');\n        submitButton.disabled = false;\n        submitButton.classList.remove('processing');\n        var mp = document.querySelector('input[name=\"mp\"]');\n        mp.value = '1';\n        const cacheBuster = new URL(window.location.href);\n        cacheBuster.searchParams.set('v', new Date().getTime());\n        window.location.href = cacheBuster.toString();\n    });\n\n    const vgoAlias = typeof visitorGlobalObjectAlias === 'undefined' ? 'vgo' : visitorGlobalObjectAlias;\n    var visitorObject = window[vgoAlias];\n    if (email && typeof visitorObject !== 'undefined') {\n        visitorObject('setEmail', email);\n        visitorObject('update');\n    } else if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {\n        \/\/ Site tracking URL to use after inline form submission.\n        _load_script(trackcmp_url);\n    }\n    if (typeof window._form_callback !== 'undefined') window._form_callback(id);\n};\nwindow._load_script = function(url, callback, isSubmit) {\n    var head = document.querySelector('head'), script = document.createElement('script'), r = false;\n    var submitButton = document.querySelector('#_form_311_submit');\n    script.charset = 'utf-8';\n    script.src = url;\n    if (callback) {\n        script.onload = script.onreadystatechange = function() {\n            if (!r && (!this.readyState || this.readyState == 'complete')) {\n                r = true;\n                callback();\n            }\n        };\n    }\n    script.onerror = function() {\n        if (isSubmit) {\n            if (script.src.length > 10000) {\n                _show_error(\"311\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Acorta tus respuestas y vuelve a intentarlo.\");\n            } else {\n                _show_error(\"311\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Vuelve a intentarlo.\");\n            }\n            submitButton.disabled = false;\n            submitButton.classList.remove('processing');\n        }\n    }\n\n    head.appendChild(script);\n};\n(function() {\n    var iti;\n    if (window.location.search.search(\"excludeform\") !== -1) return false;\n    var getCookie = function(name) {\n        var match = document.cookie.match(new RegExp('(^|; )' + name + '=([^;]+)'));\n        return match ? match[2] : null;\n    }\n    var setCookie = function(name, value) {\n        var now = new Date();\n        var time = now.getTime();\n        var expireTime = time + 1000 * 60 * 60 * 24 * 365;\n        now.setTime(expireTime);\n        document.cookie = name + '=' + value + '; expires=' + now + ';path=\/; Secure; SameSite=Lax;';\n    }\n    var addEvent = function(element, event, func) {\n        if (element.addEventListener) {\n            element.addEventListener(event, func);\n        } else {\n            var oldFunc = element['on' + event];\n            element['on' + event] = function() {\n                oldFunc.apply(this, arguments);\n                func.apply(this, arguments);\n            };\n        }\n    }\n    var _removed = false;\n        var form_to_submit = document.getElementById('_form_311_');\n    var allInputs = form_to_submit.querySelectorAll('input, select, textarea'), tooltips = [], submitted = false;\n\n    var getUrlParam = function(name) {\n        if (name.toLowerCase() !== 'email') {\n            var params = new URLSearchParams(window.location.search);\n            return params.get(name) || false;\n        }\n        \/\/ email is a special case because a plus is valid in the email address\n        var qString = window.location.search;\n        if (!qString) {\n            return false;\n        }\n        var parameters = qString.substr(1).split('&');\n        for (var i = 0; i < parameters.length; i++) {\n            var parameter = parameters[i].split('=');\n            if (parameter[0].toLowerCase() === 'email') {\n                return parameter[1] === undefined ? true : decodeURIComponent(parameter[1]);\n            }\n        }\n        return false;\n    };\n\n    var acctDateFormat = \"%d\/%m\/%Y\";\n    var getNormalizedDate = function(date, acctFormat) {\n        var decodedDate = decodeURIComponent(date);\n        if (acctFormat && acctFormat.match(\/(%d|%e).*%m\/gi) !== null) {\n            return decodedDate.replace(\/(\\d{2}).*(\\d{2}).*(\\d{4})\/g, '$3-$2-$1');\n        } else if (Date.parse(decodedDate)) {\n            var dateObj = new Date(decodedDate);\n            var year = dateObj.getFullYear();\n            var month = dateObj.getMonth() + 1;\n            var day = dateObj.getDate();\n            return `${year}-${month < 10 ? `0${month}` : month}-${day < 10 ? `0${day}` : day}`;\n        }\n        return false;\n    };\n\n    var getNormalizedTime = function(time) {\n        var hour, minutes;\n        var decodedTime = decodeURIComponent(time);\n        var timeParts = Array.from(decodedTime.matchAll(\/(\\d{1,2}):(\\d{1,2})\\W*([AaPp][Mm])?\/gm))[0];\n        if (timeParts[3]) { \/\/ 12 hour format\n            var isPM = timeParts[3].toLowerCase() === 'pm';\n            if (isPM) {\n                hour = parseInt(timeParts[1]) === 12 ? '12' : `${parseInt(timeParts[1]) + 12}`;\n            } else {\n                hour = parseInt(timeParts[1]) === 12 ? '0' : timeParts[1];\n            }\n        } else { \/\/ 24 hour format\n            hour = timeParts[1];\n        }\n        var normalizedHour = parseInt(hour) < 10 ? `0${parseInt(hour)}` : hour;\n        var minutes = timeParts[2];\n        return `${normalizedHour}:${minutes}`;\n    };\n\n    for (var i = 0; i < allInputs.length; i++) {\n        var regexStr = \"field\\\\[(\\\\d+)\\\\]\";\n        var results = new RegExp(regexStr).exec(allInputs[i].name);\n        if (results != undefined) {\n            allInputs[i].dataset.name = allInputs[i].name.match(\/\\[time\\]$\/)\n                ? `${window.cfields[results[1]]}_time`\n                : window.cfields[results[1]];\n        } else {\n            allInputs[i].dataset.name = allInputs[i].name;\n        }\n        var fieldVal = getUrlParam(allInputs[i].dataset.name);\n\n        if (fieldVal) {\n            if (allInputs[i].dataset.autofill === \"false\") {\n                continue;\n            }\n            if (allInputs[i].type == \"radio\" || allInputs[i].type == \"checkbox\") {\n                if (allInputs[i].value == fieldVal) {\n                    allInputs[i].checked = true;\n                }\n            } else if (allInputs[i].type == \"date\") {\n                allInputs[i].value = getNormalizedDate(fieldVal, acctDateFormat);\n            } else if (allInputs[i].type == \"time\") {\n                allInputs[i].value = getNormalizedTime(fieldVal);\n            } else {\n                allInputs[i].value = fieldVal;\n            }\n        }\n    }\n\n    var remove_tooltips = function() {\n        for (var i = 0; i < tooltips.length; i++) {\n            tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);\n        }\n        tooltips = [];\n    };\n    var remove_tooltip = function(elem) {\n        for (var i = 0; i < tooltips.length; i++) {\n            if (tooltips[i].elem === elem) {\n                tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);\n                tooltips.splice(i, 1);\n                return;\n            }\n        }\n    };\n    var create_tooltip = function(elem, text) {\n        var tooltip = document.createElement('div'),\n            arrow = document.createElement('div'),\n            inner = document.createElement('div'), new_tooltip = {};\n        if (elem.type != 'radio' && (elem.type != 'checkbox' || elem.name === 'sms_consent')) {\n            tooltip.className = '_error';\n            arrow.className = '_error-arrow';\n            inner.className = '_error-inner';\n            inner.innerHTML = text;\n            tooltip.appendChild(arrow);\n            tooltip.appendChild(inner);\n            elem.parentNode.appendChild(tooltip);\n        } else {\n            tooltip.className = '_error-inner _no_arrow';\n            tooltip.innerHTML = text;\n            elem.parentNode.insertBefore(tooltip, elem);\n            new_tooltip.no_arrow = true;\n        }\n        new_tooltip.tip = tooltip;\n        new_tooltip.elem = elem;\n        tooltips.push(new_tooltip);\n        return new_tooltip;\n    };\n    var resize_tooltip = function(tooltip) {\n        var rect = tooltip.elem.getBoundingClientRect();\n        var doc = document.documentElement,\n            scrollPosition = rect.top - ((window.pageYOffset || doc.scrollTop)  - (doc.clientTop || 0));\n        if (scrollPosition < 40) {\n            tooltip.tip.className = tooltip.tip.className.replace(\/ ?(_above|_below) ?\/g, '') + ' _below';\n        } else {\n            tooltip.tip.className = tooltip.tip.className.replace(\/ ?(_above|_below) ?\/g, '') + ' _above';\n        }\n    };\n    var resize_tooltips = function() {\n        if (_removed) return;\n        for (var i = 0; i < tooltips.length; i++) {\n            if (!tooltips[i].no_arrow) resize_tooltip(tooltips[i]);\n        }\n    };\n    var validate_field = function(elem, remove) {\n        var tooltip = null, value = elem.value, no_error = true;\n        remove ? remove_tooltip(elem) : false;\n        if (elem.type != 'checkbox') elem.className = elem.className.replace(\/ ?_has_error ?\/g, '');\n        if (elem.getAttribute('required') !== null) {\n            if (elem.type == 'radio' || (elem.type == 'checkbox' && \/any\/.test(elem.className))) {\n                var elems = form_to_submit.elements[elem.name];\n                if (!(elems instanceof NodeList || elems instanceof HTMLCollection) || elems.length <= 1) {\n                    no_error = elem.checked;\n                }\n                else {\n                    no_error = false;\n                    for (var i = 0; i < elems.length; i++) {\n                        if (elems[i].checked) no_error = true;\n                    }\n                }\n                if (!no_error) {\n                    tooltip = create_tooltip(elem, \"Seleccione una opci\u00f3n.\");\n                }\n            } else if (elem.type =='checkbox') {\n                var elems = form_to_submit.elements[elem.name], found = false, err = [];\n                no_error = true;\n                for (var i = 0; i < elems.length; i++) {\n                    if (elems[i].getAttribute('required') === null) continue;\n                    if (!found && elems[i] !== elem) return true;\n                    found = true;\n                    elems[i].className = elems[i].className.replace(\/ ?_has_error ?\/g, '');\n                    if (!elems[i].checked) {\n                        no_error = false;\n                        elems[i].className = elems[i].className + ' _has_error';\n                        err.push(\"Es necesario verificar %s\".replace(\"%s\", elems[i].value));\n                    }\n                }\n                if (!no_error) {\n                    tooltip = create_tooltip(elem, err.join('<br\/>'));\n                }\n            } else if (elem.tagName == 'SELECT') {\n                var selected = true;\n                if (elem.multiple) {\n                    selected = false;\n                    for (var i = 0; i < elem.options.length; i++) {\n                        if (elem.options[i].selected) {\n                            selected = true;\n                            break;\n                        }\n                    }\n                } else {\n                    for (var i = 0; i < elem.options.length; i++) {\n                        if (elem.options[i].selected\n                            && (!elem.options[i].value\n                            || (elem.options[i].value.match(\/\\n\/g)))\n                        ) {\n                            selected = false;\n                        }\n                    }\n                }\n                if (!selected) {\n                    elem.className = elem.className + ' _has_error';\n                    no_error = false;\n                    tooltip = create_tooltip(elem, \"Seleccione una opci\u00f3n.\");\n                }\n            } else if (value === undefined || value === null || value === '') {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Este campo es obligatorio.\");\n            }\n        }\n        if (no_error && elem.name == 'email') {\n            if (!value.match(\/^[\\+_a-z0-9-'&=]+(\\.[\\+_a-z0-9-']+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,})$\/i)) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Introduzca una direcci\u00f3n de correo electr\u00f3nico v\u00e1lida.\");\n            }\n        }\n        if (no_error && (elem.id == 'phone')) {\n            if (elem.value.trim() && typeof iti != 'undefined' && !iti.isValidNumber()) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Ingresa un n\u00famero de tel\u00e9fono v\u00e1lido.\");\n            }\n        }\n        if (no_error && \/date_field\/.test(elem.className)) {\n            if (!value.match(\/^\\d\\d\\d\\d-\\d\\d-\\d\\d$\/)) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Introduzca una fecha v\u00e1lida.\");\n            }\n        }\n\n        if (no_error && elem.name === 'sms_consent') {\n            const elemShouldBeChecked = (!!elem.attributes.required && !elem.checked);\n            if (elemShouldBeChecked) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Marca esta casilla para continuar\");\n            } else {\n                elem.className = elem.className.replace(\/ ?_has_error ?\/g, '');\n            }\n        }\n        tooltip ? resize_tooltip(tooltip) : false;\n        return no_error;\n    };\n    var needs_validate = function(el) {\n        if(el.getAttribute('required') !== null){\n            return true;\n        }\n        if((el.name === 'email' || el.id === 'phone') && el.value !== \"\"){\n            return true;\n        }\n\n        return false;\n    };\n    var validate_form = function(e) {\n        var err = form_to_submit.querySelector('._form_error'), no_error = true;\n        if (!submitted) {\n            submitted = true;\n            for (var i = 0, len = allInputs.length; i < len; i++) {\n                var input = allInputs[i];\n                if (needs_validate(input)) {\n                    if (input.type == 'text' || input.type == 'number' || input.type == 'time' || input.type == 'tel') {\n                        addEvent(input, 'blur', function() {\n                            this.value = this.value.trim();\n                            validate_field(this, true);\n                        });\n                        addEvent(input, 'input', function() {\n                            validate_field(this, true);\n                        });\n                    } else if (input.type == 'radio' || input.type == 'checkbox') {\n                        (function(el) {\n                            function getElementsArray(name){\n                                const value =  form_to_submit.elements[name];\n                                if (Array.isArray(value)){\n                                    return value;\n                                }\n                                return [value];\n                            }\n                            var radios = getElementsArray(el.name);\n                            for (var i = 0; i < radios.length; i++) {\n                                addEvent(radios[i], 'change', function() {\n                                    validate_field(el, true);\n                                });\n                            }\n                        })(input);\n                    } else if (input.tagName == 'SELECT') {\n                        addEvent(input, 'change', function() {\n                            validate_field(this, true);\n                        });\n                    } else if (input.type == 'textarea'){\n                        addEvent(input, 'input', function() {\n                            validate_field(this, true);\n                        });\n                    }\n                }\n            }\n        }\n        remove_tooltips();\n        for (var i = 0, len = allInputs.length; i < len; i++) {\n            var elem = allInputs[i];\n            if (needs_validate(elem)) {\n                if (elem.tagName.toLowerCase() !== \"select\") {\n                    elem.value = elem.value.trim();\n                }\n                validate_field(elem) ? true : no_error = false;\n            }\n        }\n        if (!no_error && e) {\n            e.preventDefault();\n        }\n        resize_tooltips();\n        return no_error;\n    };\n    addEvent(window, 'resize', resize_tooltips);\n    addEvent(window, 'scroll', resize_tooltips);\n\n    window['recaptcha_callback'] = function() {\n  \/\/ Get all recaptchas in the DOM (there may be more than one form on the page).\n  var recaptchas = document.getElementsByClassName(\"g-recaptcha\");\n  for (var i in recaptchas) {\n    \/\/ Set the recaptcha element ID, so the recaptcha can be applied to each element.\n    var recaptcha_id = \"recaptcha_\" + i;\n    recaptchas[i].id = recaptcha_id;\n    var el = document.getElementById(recaptcha_id);\n    if (el != null) {\n      var sitekey = el.getAttribute(\"data-sitekey\");\n      var stoken = el.getAttribute(\"data-stoken\");\n      grecaptcha.render(recaptcha_id, {\"sitekey\":sitekey,\"stoken\":stoken});\n    }\n  }\n};    _load_script(\"https:\/\/www.google.com\/recaptcha\/api.js?onload=recaptcha_callback&render=explicit\");\n    var _form_serialize = function(form){if(!form||form.nodeName!==\"FORM\"){return }var i,j,q=[];for(i=0;i<form.elements.length;i++){if(form.elements[i].name===\"\"){continue}switch(form.elements[i].nodeName){case\"INPUT\":switch(form.elements[i].type){case\"tel\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].previousSibling.querySelector('div.iti__selected-dial-code').innerText)+encodeURIComponent(\" \")+encodeURIComponent(form.elements[i].value));break;case\"text\":case\"number\":case\"date\":case\"time\":case\"hidden\":case\"password\":case\"button\":case\"reset\":case\"submit\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break;case\"checkbox\":case\"radio\":if(form.elements[i].checked){q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value))}break;case\"file\":break}break;case\"TEXTAREA\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break;case\"SELECT\":switch(form.elements[i].type){case\"select-one\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break;case\"select-multiple\":for(j=0;j<form.elements[i].options.length;j++){if(form.elements[i].options[j].selected){q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].options[j].value))}}break}break;case\"BUTTON\":switch(form.elements[i].type){case\"reset\":case\"submit\":case\"button\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break}break}}return q.join(\"&\")};\n\n    const formSupportsPost = false;\n    var form_submit = function(e) {\n\n        e.preventDefault();\n        if (validate_form()) {\n            if(form_to_submit.querySelector('input[name=\"phone\"]') && typeof iti != 'undefined') {\n                form_to_submit.querySelector('input[name=\"phone\"]').value = iti.getNumber();\n            }\n            \/\/ use this trick to get the submit button & disable it using plain javascript\n            var submitButton = e.target.querySelector('#_form_311_submit');\n            submitButton.disabled = true;\n            submitButton.classList.add('processing');\n                    var serialized = _form_serialize(document.getElementById('_form_311_')).replace(\/%0A\/g, '\\\\n');\n            var err = form_to_submit.querySelector('._form_error');\n            err ? err.parentNode.removeChild(err) : false;\n            async function submitForm() {\n                var formData = new FormData();\n                const searchParams = new URLSearchParams(serialized);\n                searchParams.forEach((value, key) => {\n                    if (key !== 'hideButton') {\n                        formData.append(key, value);\n                    }\n                });\n                let request = {\n                    headers: {\n                        \"Accept\": \"application\/json\"\n                    },\n                    body: formData,\n                    method: \"POST\"\n                };\n\n                let pageUrlParams = new URLSearchParams(window.location.search);\n                if (pageUrlParams.has('t')) {\n                    request.headers.Authorization = 'Bearer ' + pageUrlParams.get('t');\n                }\n                const response = await fetch('https:\/\/deandelafuenteromero.activehosted.com\/proc.php?jsonp=true', request);\n\n                return response.json();\n            }\n            if (formSupportsPost) {\n                submitForm().then((data) => {\n                    eval(data.js);\n                }).catch(() => {\n                    _show_error(\"311\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Vuelve a intentarlo.\");\n                });\n            } else {\n                _load_script('https:\/\/deandelafuenteromero.activehosted.com\/proc.php?' + serialized + '&jsonp=true', null, true);\n            }\n        }\n        return false;\n    };\n    addEvent(form_to_submit, 'submit', form_submit);\n})();\n\n<\/script><\/div><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">2. Impressions<\/h3>\n\n\n\n<p>Impressions tell us the number of times <strong>any of the pages on your website have appeared in Google&#8217;s search results<\/strong> for user queries.<\/p>\n\n\n\n<p>Maybe it&#8217;s not as important a metric as organic traffic. Just because a URL appears in the search engine doesn&#8217;t mean someone will click on it.<\/p>\n\n\n\n<p>However, it is an <strong>indicator of a website&#8217;s visibility<\/strong>, especially useful in the early stages of a web project.<\/p>\n\n\n\n<p>It&#8217;s not typical for a URL to show up in Google&#8217;s Top 1 right off the bat; instead, it usually starts appearing in the Top 20, then within the Top 10, and gradually climbs up the ranks over time.<\/p>\n\n\n\n<p><strong>Impressions allow us to evaluate this trend<\/strong> and verify that our website, despite not receiving many clicks yet, is starting to gain a foothold in the SERPs.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How to Measure Website Impressions<\/h4>\n\n\n\n<p>Once again, <strong>Google Search Console is the best tool<\/strong> you have to evaluate the impressions of your website.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\" id=\"SEO-Metrics:-How-to-Measure-Impressions-with-Google-Search-Console\"><img decoding=\"async\" width=\"876\" height=\"382\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Impressions-with-Google-Search-Console-1.png\" alt=\"SEO Metrics: How to Measure Impressions with Google Search Console\" class=\"wp-image-21383\" style=\"width:737px;height:auto\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Impressions-with-Google-Search-Console-1.png 876w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Impressions-with-Google-Search-Console-1-300x131.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/07\/SEO-Metrics-How-to-Measure-Impressions-with-Google-Search-Console-1-768x335.png 768w\" sizes=\"(max-width: 876px) 100vw, 876px\" \/><\/figure><\/div>\n\n\n<p>If you look at the graph above, you&#8217;ll see that GSC also offers you two other metrics:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Average CTR<\/strong>, which is the percentage of impressions that generated a click.<\/li>\n\n\n\n<li><strong>Average position<\/strong> where your pages appear within the SERPs.<\/li>\n<\/ul>\n\n\n\n<p>Along with organic traffic and impressions, these two measures are also very helpful when analyzing your website&#8217;s performance.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Why is this SEO metric important?<\/h4>\n\n\n\n<p>You should always analyze the value of impressions in conjunction with your traffic.<\/p>\n\n\n\n<p>If your website appears many times on Google, but the clicks are lower than expected (the CTR is very low), something might be wrong.<\/p>\n\n\n\n<p class=\"has-background\" style=\"background-color:#eef9f4\">You might need to improve your meta titles and meta descriptions to make them more attractive and encourage users to click on your site. <\/p>\n\n\n\n<p>It&#8217;s also possible that you need to optimize your content to move up in the rankings for the keywords where the search engine is already valuing you.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Keyword Ranking<\/h3>\n\n\n\n<p>One of the usual tasks of an SEO involves conducting in-depth research on the keywords most used by users when making queries on search engines. <\/p>\n\n\n\n<p>However, it\u2019s difficult to know if your Keyword Research is correct if you don\u2019t <strong>track the evolution of the keywords you want to rank for<\/strong>.<\/p>\n\n\n\n<p>We\u2019ve already seen before that Google Search Console shows you the keywords that have impressions and receive clicks. But many of these keywords might not be the ones you are most interested in knowing about. <\/p>\n\n\n\n<p>Several of them may even have ranked by chance, without you intending it. Therefore, if you want to monitor your keywords professionally, it\u2019s best to use an SEO tool specialized in this function.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How to Measure the Evolution of a website\u2019s Keywords<\/h4>\n\n\n\n<p>To do a detailed tracking of the keywords I\u2019m interested in ranking in each of my projects, <strong>the SEO tool I use in my work is DinoRANK<\/strong>. <\/p>\n\n\n\n<p>Thanks to its <a href=\"https:\/\/dinorank.com\/en-us\/blog-seo\/rank-tracker-seo-software\/\">position tracker<\/a>, I can define which are the most important keywords for my websites and <strong>track their daily evolution within the SERPs<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"441\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/06\/Position-Tracking-with-AI-suggestions-1024x441.webp\" alt=\"Position Tracking with AI suggestions\" class=\"wp-image-22717\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/06\/Position-Tracking-with-AI-suggestions-1024x441.webp 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/06\/Position-Tracking-with-AI-suggestions-300x129.webp 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/06\/Position-Tracking-with-AI-suggestions-768x331.webp 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/06\/Position-Tracking-with-AI-suggestions.webp 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n<div class=\"su-box su-box-style-default\" id=\"\" style=\"border-color:#00604a;border-radius:3px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#00937D;color:#FFFFFF;border-top-left-radius:1px;border-top-right-radius:1px\">And not only that:<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:1px;border-bottom-right-radius:1px\">\n\n\n\n<p>DinoRANK will tell you the real visibility of that keyword, as it is able to show the % of scroll you have to do within the Google SERP, until you reach your organic result.<\/p>\n\n\n\n<\/div><\/div>\n\n\n\n<p>Finally, <strong>you can also see your position today in the organic SERP and also your current position within the AI Overviews<\/strong>, in case you appear in them.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"342\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/Tracking-with-AI-Overviews.jpg\" alt=\"Tracking with AI Overviews\" class=\"wp-image-22937\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/Tracking-with-AI-Overviews.jpg 900w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/Tracking-with-AI-Overviews-300x114.jpg 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/Tracking-with-AI-Overviews-768x292.jpg 768w\" sizes=\"(max-width: 900px) 100vw, 900px\" \/><\/figure><\/div>\n\n\n<p>Generally, informational keywords are easier to rank for, so in the early stages of a project, I usually focus on them. As they start to rank and the website gains authority, business keywords begin to take center stage. <\/p>\n\n\n<a href=\"https:\/\/dinorank.com\/en-us\/blog-seo\/discover-dinorank\/\" class=\"su-button su-button-style-default\" style=\"color:#FFFFFF;background-color:#00947D;border-color:#007764;border-radius:10px\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"color:#FFFFFF;padding:0px 26px;font-size:20px;line-height:40px;border-color:#4db5a4;border-radius:10px;text-shadow:none\"> Try DinoRANK right now!<\/span><\/a>\n\n\n<p><\/center><\/p>\n\n\n<p><\/p>\n\n\n\n<p>It\u2019s then time to focus efforts on this other group of much more transactional keywords. <\/p>\n\n\n\n<p>As you can see, <strong>having the right SEO tool not only allows us to track metrics<\/strong> but also to adjust the information to our needs and make decisions focused on different objectives.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Why is this SEO metric important?<\/h4>\n\n\n\n<p>Monitoring keywords will indicate how relevant our website is to Google when it tries to answer the most important queries within our business.<\/p>\n\n\n\n<p>Moreover, it allows us to detect errors in our strategy, such as keyword cannibalization. Thanks to SEO tools like DinoRANK, you can find out if multiple URLs on your site are competing for the same keyword and adjust your content to fix it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Indexed Pages<\/h3>\n\n\n\n<p>Keep this in mind: if you want your pages to rank, you must <strong>make sure Google has them indexed<\/strong>.<\/p>\n\n\n\n<p>And it&#8217;s not enough to check it once and forget about it, as Google tends to deindex certain pages from time to time.<\/p>\n\n\n\n<p>Therefore, my advice is to get into the habit of checking this metric periodically. Especially if you notice that your traffic or impressions drop unexpectedly.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How to Measure a Website&#8217;s Indexed Pages<\/h4>\n\n\n\n<p>Within <strong>Google Search Console, you can easily check the indexing status<\/strong> of your website&#8217;s URLs.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\" id=\"SEO-Metrics:-How-to-Measure-Indexed-Pages-with-Google-Search-Console\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"622\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Indexed-Pages-with-Google-Search-Console-1024x622.png\" alt=\"SEO Metrics: How to Measure Indexed Pages with Google Search Console\" class=\"wp-image-21344\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Indexed-Pages-with-Google-Search-Console-1024x622.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Indexed-Pages-with-Google-Search-Console-300x182.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Indexed-Pages-with-Google-Search-Console-768x466.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Indexed-Pages-with-Google-Search-Console.png 1169w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>You&#8217;ll see which pages are indexed and which are not. Additionally, you will know the reason preventing Google from indexing a particular URL and, if you wish, you can request its indexation again so you don&#8217;t have to wait for Google&#8217;s crawlers to decide to re-inspect your site.<\/p>\n\n\n\n<p>Why is this SEO metric important?<\/p>\n\n\n\n<p>For a URL to appear in Google&#8217;s results, its search engine must first crawl it and add it to its index.<\/p>\n\n\n\n<p>Knowing which pages are not being indexed allows us to detect errors such as crawl blocks, incorrect use of the noIndex tag, as well as the existence of duplicate or low-value content (thin content) that we need to correct.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Traffic by URL<\/h3>\n\n\n\n<p>Earlier, we talked about organic traffic and how you can measure it.<\/p>\n\n\n\n<p>However, it&#8217;s not the same if most of the traffic comes from a single URL compared to being distributed among several of them.<\/p>\n\n\n\n<p>It&#8217;s also different if the visits are going to your most transactional pages versus most of your users landing on informational articles that don&#8217;t have a commercial objective.<\/p>\n\n\n\n<p><strong>Knowing the exact destination of the traffic you capture from Google<\/strong> will allow you to make informed decisions about the actions you need to take to improve your results.<\/p>\n\n\n\n<p>For instance, if within the set of URLs you are working on, there is a group that is ranking above average and belongs to a specific cluster or category, it might be worth diving deeper into that cluster content-wise, because it\u2019s a topic for which Google is already giving you authority.<\/p>\n\n\n\n<p>Similarly, if you know which pages are bringing you the most visits, you can try to improve internal linking and the copy of your articles to direct them to more commercial sections, with the goal of increasing your sales.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How to Measure Traffic by URL on a Website<\/h4>\n\n\n\n<p>While Google Search Console allows you to apply filters to understand the behavior of each individual page, I don&#8217;t find it the most convenient tool for this purpose.<\/p>\n\n\n\n<p>That&#8217;s why <strong>I usually conduct this analysis through DinoRANK<\/strong>. Its organic traffic module collects data from GSC and displays it in a much more user-friendly and easy-to-analyze way.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\" id=\"SEO-Metrics:-How-to-Measure-Traffic-by-URL-with-DinoRANK\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"373\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-by-URL-with-DinoRANK-1024x373.png\" alt=\"SEO Metrics: How to Measure Traffic by URL with DinoRANK\" class=\"wp-image-21346\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-by-URL-with-DinoRANK-1024x373.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-by-URL-with-DinoRANK-300x109.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-by-URL-with-DinoRANK-768x280.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-by-URL-with-DinoRANK-1536x560.png 1536w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-by-URL-with-DinoRANK.png 1888w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<h4 class=\"wp-block-heading\">Why is this SEO Metric Important?<\/h4>\n\n\n\n<p>Knowing which pages are generating the most traffic and which are not allows us to segment our audience and better understand what type of content particularly attracts our users. <\/p>\n\n\n\n<p>Additionally, it can help us improve navigation within our website and optimize the Calls to Action (CTA) on high-traffic pages to increase conversions.<\/p>\n\n\n\n<p>On the other hand, knowing the URLs that Google is ranking can help us improve them to move up in the search results. There are several techniques we can apply for this, from a TF*IDF analysis, like the one conducted by DinoRANK, to optimizing internal linking to boost content within a cluster that is already being well-rated.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. Traffic Sources<\/h3>\n\n\n\n<p>We&#8217;re still talking about traffic, but this time from a slightly different perspective.<\/p>\n\n\n\n<p>If you work on SEO, it&#8217;s possible that most of your visits come from Google, as the main web positioning techniques focus on this search engine.<\/p>\n\n\n\n<p>Even so, you can also receive traffic from other search engines like Bing or Yahoo, as well as direct links from other websites, social media, or paid ads.<\/p>\n\n\n\n<p>In short, the origin of your traffic can be very varied and, depending on your strategy, <strong>you might be interested in focusing more on certain sources<\/strong>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How to Measure a Website&#8217;s Traffic Sources<\/h4>\n\n\n\n<p>To see your website&#8217;s traffic sources, <strong>the most effective tool is Google Analytics 4 (GA4)<\/strong>. Within the reports section, there&#8217;s an option called &#8220;traffic acquisition&#8221; that provides visit data grouped by their source.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\" id=\"SEO-Metrics:-How-to-Measure-Traffic-Sources-with-Google-Analytics-4\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"472\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-Sources-with-Google-Analytics-4-1024x472.png\" alt=\"SEO Metrics: How to Measure Traffic Sources with Google Analytics 4\" class=\"wp-image-21352\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-Sources-with-Google-Analytics-4-1024x472.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-Sources-with-Google-Analytics-4-300x138.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-Sources-with-Google-Analytics-4-768x354.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-Sources-with-Google-Analytics-4-1536x708.png 1536w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Traffic-Sources-with-Google-Analytics-4.png 1893w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>To view the information more clearly, I recommend configuring the table to show the rows based on the &#8220;Session source\/medium&#8221; criterion, as indicated in the image above.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Why is this SEO Metric Important?<\/h4>\n\n\n\n<p>Measuring the performance of the different marketing channels that bring visits to our website, such as SEO, pay-per-click (PPC) advertising, social media, email marketing, direct referrals, etc., allows us to focus on those that are more effective and reduce or adjust those that are not performing well.<\/p>\n\n\n\n<p>In short, it facilitates the efficient allocation of our resources (time, money, effort) to the channels that provide a higher return on investment (ROI).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">7. Page Load Speed<\/h3>\n\n\n\n<p>The last metric I tend to pay the most attention to is the loading speed of the different pages on my websites.<\/p>\n\n\n\n<p>That being said, I try not to obsess too much over this topic.<\/p>\n\n\n\n<p>While it is true that the performance of a website, expressed by Google through the Core Web Vitals (CWV), is taken by the search engine as a ranking factor, experience has shown me that it is not a decisive factor.<\/p>\n\n\n\n<p>One thing is having your website take forever to load and another is dedicating all your efforts to having a perfect score on PageSpeed.<\/p>\n\n\n\n<p>You need to find a middle ground. I am content with offering a good user experience and making sure the website loads quickly, but I do not aim to break speed records.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How to Measure a Website&#8217;s Loading Speed<\/h4>\n\n\n\n<p>When analyzing my website&#8217;s speed, <strong>I usually use the SEO audit module from DinoRANK<\/strong>, which indicates the most problematic URLs in terms of slow loading.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"373\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Loading-Speed-with-DinoRANK-1024x373.png\" alt=\"SEO Metrics: How to Measure Loading Speed with DinoRANK\" class=\"wp-image-21348\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Loading-Speed-with-DinoRANK-1024x373.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Loading-Speed-with-DinoRANK-300x109.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Loading-Speed-with-DinoRANK-768x280.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Loading-Speed-with-DinoRANK-1536x559.png 1536w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/06\/SEO-Metrics-How-to-Measure-Loading-Speed-with-DinoRANK.png 1898w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>Once I identify the pages that need my attention, I perform a more thorough analysis with other specialized tools, such as Pagespeed Insights or <a href=\"https:\/\/dinorank.com\/en-us\/blog-seo\/gtmetrix-guide-and-tutorial\/\">GTMetrix<\/a>, which give me more information on the specific aspects I need to improve.<\/p>\n\n\n\n<p>Why is this SEO Metric Important?<\/p>\n\n\n\n<p>Studies show that more than half of users will abandon your website if it takes more than 3 seconds to load.<\/p>\n\n\n\n<p>Don&#8217;t give them this option. Monitor your page load times and ensure that your site consistently delivers adequate performance.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusions<\/h2>\n\n\n\n<p>Here is my list of the SEO metrics that I use most frequently.<\/p>\n\n\n\n<p>However, these measurements alone are not very useful. It\u2019s not enough to collect data periodically, look at it for a while, and then forget about it. You need to interpret them correctly and act accordingly.<\/p>\n\n\n\n<p>If you notice that a metric is below your expectations, investigate the possible causes and make the necessary adjustments to improve <a href=\"https:\/\/dinorank.com\/en-us\/blog-seo\/conversion-funnels-in-seo\/\">conversion from an SEO perspective<\/a>. <\/p>\n\n\n\n<p>This way, you will refine your strategy and see how your website improves in the rankings progressively.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/dinorank.com\/en-us\/blog-seo\/discover-dinorank\/\" target=\"_blank\" rel=\"noreferrer noopener\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1000\" height=\"450\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords.png\" alt=\"Find the best keywords\" class=\"wp-image-22028\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords.png 1000w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords-300x135.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2025\/01\/Find-the-best-keywords-768x346.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>We\u2019ve mentioned many times that SEO is a long-term activity. It usually takes several weeks or months before we start to see the results of our efforts. But that doesn\u2019t mean you should just sit back and wait. Absolutely not. During that time, we can detect signals that will tell us if we\u2019re heading in [&hellip;]<\/p>\n","protected":false},"author":32,"featured_media":21311,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[52],"tags":[],"class_list":["post-21305","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-seo-for"],"acf":[],"_links":{"self":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts\/21305","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/comments?post=21305"}],"version-history":[{"count":19,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts\/21305\/revisions"}],"predecessor-version":[{"id":23069,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts\/21305\/revisions\/23069"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/media\/21311"}],"wp:attachment":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/media?parent=21305"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/categories?post=21305"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/tags?post=21305"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}