{"id":2007,"date":"2020-08-19T18:23:37","date_gmt":"2020-08-19T16:23:37","guid":{"rendered":"https:\/\/dinorank.com\/blog\/?p=2007"},"modified":"2026-02-20T09:31:09","modified_gmt":"2026-02-20T08:31:09","slug":"google-data-studio-tutorial-seo-para-principiantes","status":"publish","type":"post","link":"https:\/\/dinorank.com\/blog\/google-data-studio-tutorial-seo\/","title":{"rendered":"Google Data Studio: tutorial SEO para principiantes"},"content":{"rendered":"<p>Indagar en el mundo del SEO es darte cuenta de que siempre tienes algo que aprender, una nueva estrategia que probar, una herramienta que investigar. En este post queremos hablarte precisamente de una herramienta que no se suele mencionar demasiado pero que tiene una gran importancia, en especial si trabajas como consultor SEO. De hecho, <strong>cualquier consultor SEO deber\u00eda tener conocimientos, aunque sean b\u00e1sicos, de Google Data Studio<\/strong> para darle un toque m\u00e1s profesional a su trabajo.<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter wp-image-2568 size-large\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/09\/Tutorial-Google-Data-Studio-Nivel-I-1024x559.png\" alt=\"Tutorial Google Data\" width=\"770\" height=\"420\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/09\/Tutorial-Google-Data-Studio-Nivel-I-1024x559.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/09\/Tutorial-Google-Data-Studio-Nivel-I-300x164.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/09\/Tutorial-Google-Data-Studio-Nivel-I-768x419.png 768w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/09\/Tutorial-Google-Data-Studio-Nivel-I.png 1100w\" sizes=\"(max-width: 770px) 100vw, 770px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Aunque en este post nos vamos a centrar en el SEO hay <strong>otros sectores del mundo digital que pueden beneficiarse de esta herramienta y su capacidad para ordenar datos<\/strong> como los <em>community manager<\/em> o los <em>ecommerce manager<\/em>. Los primeros necesitan elaborar tablas y gr\u00e1ficos con estad\u00edsticas de redes sociales y los segundos, llevar un control de ventas y productos.<\/p>\n<p>Adem\u00e1s, trat\u00e1ndose de una herramienta gratuita creada por el propio Google, que es a fin de cuentas a quienes todos queremos contentar de alguna forma, \u00bfc\u00f3mo no prestar atenci\u00f3n a<strong> Google Data Studio<\/strong>? Sigue leyendo para averiguar qu\u00e9 es lo que tiene que ofrecerte esta herramienta. Te aseguramos que te vas a sorprender \ud83d\ude09<\/p>\n<p><span data-sheets-root=\"1\"><div id=\"brxe-vappve\" class=\"brxe-block p-2 gap-15\"><div id=\"brxe-nwuakt\" class=\"brxe-text-basic h2\">\u00bfTe dedicas al SEO o est\u00e1s pensando en ofrecerlo como servicio?\n<\/div><div id=\"brxe-aphiih\" class=\"brxe-text-basic\"><strong>Accede gratis a 2 clases del M\u00e1ster SEO de DinoRANK<\/strong> y lleva tu nivel un poquito m\u00e1s all\u00e1:<\/div><div id=\"brxe-ovsanc\" data-script-id=\"ovsanc\" class=\"brxe-code incontent-form-html\"><style>@import url(https:\/\/fonts.bunny.net\/css?family=ibm-plex-sans:400,700);<\/style>\n<style>\n#_form_307_{font-size:14px;line-height:1.6;font-family:arial, helvetica, sans-serif;margin:0}#_form_307_ *{outline:0}._form_hide{display:none;visibility:hidden}._form_show{display:block;visibility:visible}#_form_307_._form-top{top:0}#_form_307_._form-bottom{bottom:0}#_form_307_._form-left{left:0}#_form_307_._form-right{right:0}#_form_307_ input[type=\"text\"],#_form_307_ input[type=\"tel\"],#_form_307_ input[type=\"date\"],#_form_307_ 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_307_ textarea{resize:none}#_form_307_ ._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:5px !important;-webkit-border-radius:5px !important;border-radius:5px !important;color:#FFFFFF !important;padding:13px !important}#_form_307_ ._submit:disabled{cursor:not-allowed;opacity:0.4}#_form_307_ ._submit.processing{position:relative}#_form_307_ ._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_307_ ._submit.processing::after{content:\"\";position:absolute;top:0;bottom:0;left:0;right:0;background:#00C4A7 !important;border:0 !important;-moz-border-radius:5px !important;-webkit-border-radius:5px !important;border-radius:5px !important;color:#FFFFFF !important;padding:13px !important}@keyframes _spin{0%{transform:translate(-50%, -50%) rotate(90deg)}100%{transform:translate(-50%, -50%) rotate(450deg)}}#_form_307_ ._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_307_ ._close-icon:before{position:relative}#_form_307_ ._form-body{margin-bottom:30px}#_form_307_ ._form-image-left{width:150px;float:left}#_form_307_ ._form-content-right{margin-left:164px}#_form_307_ ._form-branding{color:#fff;font-size:10px;clear:both;text-align:left;margin-top:30px;font-weight:100}#_form_307_ ._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_307_ .form-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}#_form_307_ ._form-label,#_form_307_ ._form_element ._form-label{font-weight:bold;margin-bottom:5px;display:block}#_form_307_._dark ._form-branding{color:#333}#_form_307_._dark ._form-branding ._logo{background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/jftq2c8s_aclogo_dk.png\")}#_form_307_ ._form_element{position:relative;margin-bottom:10px;font-size:0;max-width:100%}#_form_307_ ._form_element *{font-size:14px}#_form_307_ ._form_element._clear{clear:both;width:100%;float:none}#_form_307_ ._form_element._clear:after{clear:left}#_form_307_ ._form_element input[type=\"text\"],#_form_307_ ._form_element input[type=\"date\"],#_form_307_ ._form_element select,#_form_307_ ._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_307_ ._field-wrapper{position:relative}#_form_307_ ._inline-style{float:left}#_form_307_ ._inline-style input[type=\"text\"]{width:150px}#_form_307_ ._inline-style:not(._clear){margin-right:20px}#_form_307_ ._form_element img._form-image{max-width:100%}#_form_307_ ._form_element ._form-fieldset{border:0;padding:0.01em 0 0 0;margin:0;min-width:0}#_form_307_ ._clear-element{clear:left}#_form_307_ ._full_width{width:100%}#_form_307_ ._form_full_field{display:block;width:100%;margin-bottom:10px}#_form_307_ input[type=\"text\"]._has_error,#_form_307_ textarea._has_error{border:#F37C7B 1px solid}#_form_307_ input[type=\"checkbox\"]._has_error{outline:#F37C7B 1px solid}#_form_307_ ._show_be_error{float:left}#_form_307_ ._error{display:block;position:absolute;font-size:14px;z-index:10000001}#_form_307_ ._error._above{padding-bottom:4px;bottom:39px;right:0}#_form_307_ ._error._below{padding-top:8px;top:100%;right:0}#_form_307_ ._error._above ._error-arrow{bottom:-4px;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #FFDDDD}#_form_307_ ._error._below ._error-arrow{top:0;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid #FFDDDD}#_form_307_ ._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_307_ ._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_307_ ._error-inner._form_error{margin-bottom:5px;text-align:left}#_form_307_ ._button-wrapper ._error-inner._form_error{position:static}#_form_307_ ._error-inner._no_arrow{margin-bottom:10px}#_form_307_ ._error-arrow{position:absolute;width:0;height:0}#_form_307_ ._error-html{margin-bottom:10px}.pika-single{z-index:10000001 !important}#_form_307_ input[type=\"text\"].datetime_date{width:69%;display:inline}#_form_307_ select.datetime_time{width:29%;display:inline;height:32px}#_form_307_ input[type=\"date\"].datetime_date{width:69%;display:inline-flex}#_form_307_ input[type=\"time\"].datetime_time{width:29%;display:inline-flex}@media (min-width:320px) and (max-width:667px){::-webkit-scrollbar{display:none}#_form_307_{margin:0;width:100%;min-width:100%;max-width:100%;box-sizing:border-box}#_form_307_ *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:1em}#_form_307_ ._form-content{margin:0;width:100%}#_form_307_ ._form-inner{display:block;min-width:100%}#_form_307_ ._form-title,#_form_307_ ._inline-style{margin-top:0;margin-right:0;margin-left:0}#_form_307_ ._form-title{font-size:1.2em}#_form_307_ ._form_element{margin:0 0 20px;padding:0;width:100%}#_form_307_ ._form-element,#_form_307_ ._inline-style,#_form_307_ input[type=\"text\"],#_form_307_ label,#_form_307_ p,#_form_307_ textarea:not(.g-recaptcha-response){float:none;display:block;width:100%}#_form_307_ ._row._checkbox-radio label{display:inline}#_form_307_ ._row,#_form_307_ p,#_form_307_ label{margin-bottom:0.7em;width:100%}#_form_307_ ._row input[type=\"checkbox\"],#_form_307_ ._row input[type=\"radio\"]{margin:0 !important;vertical-align:middle !important}#_form_307_ ._row input[type=\"checkbox\"]+span label{display:inline}#_form_307_ ._row span label{margin:0 !important;width:initial !important;vertical-align:middle !important}#_form_307_ ._form-image{max-width:100%;height:auto !important}#_form_307_ input[type=\"text\"]{padding-left:10px;padding-right:10px;font-size:16px;line-height:1.3em;-webkit-appearance:none}#_form_307_ input[type=\"radio\"],#_form_307_ 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_307_ button[type=\"submit\"]{padding:20px;font-size:1.5em}#_form_307_ ._inline-style{margin:20px 0 0 !important}#_form_307_ ._inline-style input[type=\"text\"]{width:100%}}#_form_307_ .sms_consent_checkbox{position:relative;width:100%;display:flex;align-items:flex-start;padding:20px 0}#_form_307_ .sms_consent_checkbox input[type=\"checkbox\"]{float:left;margin:5px 10px 10px 0}#_form_307_ .sms_consent_checkbox .sms_consent_message{display:inline;float:left;text-align:left;margin-bottom:10px;font-size:14px;color:#7D8799}#_form_307_ .sms_consent_checkbox .sms_consent_message.sms_consent_mini{width:90%}#_form_307_ .sms_consent_checkbox ._error._above{right:auto;bottom:0}#_form_307_ .sms_consent_checkbox ._error._above ._error-arrow{right:auto;left:5px}@media (min-width:320px) and (max-width:667px){#_form_307_ .sms_consent_checkbox ._error._above{top:-30px;left:0;bottom:auto}}#_form_307_ .field-required{color:#FF0000}#_form_307_{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_307_ ._show_be_error{min-width:100%}#_form_307_._inline-form,#_form_307_._inline-form ._form-content{font-family:IBM Plex Sans;font-size:14px;font-weight:400}#_form_307_._inline-form ._row span,#_form_307_._inline-form ._row label{font-family:IBM Plex Sans;font-size:14px;font-weight:400;line-height:1.6em;color:black !important}#_form_307__inlineform input[type=\"text\"],#_form_307__inlineform input[type=\"date\"],#_form_307__inlineform input[type=\"tel\"],#_form_307__inlineform select,#_form_307__inlineform textarea:not(.g-recaptcha-response){font-family:IBM Plex Sans;font-size:14px;font-weight:400;font-color:#000000;line-height:1.6em}#_form_307_._inline-form ._html-code *:not(h1, h2, h3, h4, h5, h6),#_form_307_._inline-form .sms_consent_message,#_form_307_._inline-form ._form-thank-you{font-family:IBM Plex Sans;font-size:14px;font-weight:400;color:black !important}#_form_307_._inline-form ._form-label,#_form_307_._inline-form ._form-emailidentifier,#_form_307_._inline-form ._form-checkbox-option-label{font-family:IBM Plex Sans;font-size:14px;font-weight:700;line-height:1.6em;color:black !important}#_form_307_._inline-form ._submit{margin-top:12px;font-family:IBM Plex Sans;font-size:14px;font-weight:400}#_form_307_._inline-form ._html-code h1,#_form_307_._inline-form ._html-code h2,#_form_307_._inline-form ._html-code h3,#_form_307_._inline-form ._html-code h4,#_form_307_._inline-form ._html-code h5,#_form_307_._inline-form ._html-code h6,#_form_307_._inline-form ._form-title{font-family:IBM Plex Sans;font-size:22px;line-height:normal;font-weight:700;color:black;margin-bottom:0;display:block}#_form_307_._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_307_:before,#_form_307_:after{content:\" \";display:table}#_form_307_:after{clear:both}#_form_307_._inline-style{width:auto;display:inline-block}#_form_307_._inline-style input[type=\"text\"],#_form_307_._inline-style input[type=\"date\"]{padding:10px 12px}#_form_307_._inline-style button._inline-style{position:relative;top:27px}#_form_307_._inline-style p{margin:0}#_form_307_._inline-style ._button-wrapper{position:relative;margin:16px 12.5px 0 20px}#_form_307_ ._form-thank-you{position:relative;left:0;right:0;text-align:center;font-size:18px}#_form_307_ ._form-pc-confirmation ._submit{margin-top:16px}@media (min-width:320px) and (max-width:667px){#_form_307_._inline-form._inline-style ._inline-style._button-wrapper{margin-top:20px !important;margin-left:0 !important}}#_form_307_ .iti{width:100%}#_form_307_ .iti.iti--allow-dropdown.iti--separate-dial-code{width:100%}#_form_307_ .iti input{width:100%;border:#979797 1px solid;border-radius:4px}#_form_307_ .iti--separate-dial-code .iti__selected-flag{background-color:#FFFFFF;border-radius:4px}#_form_307_ .iti--separate-dial-code .iti__selected-flag:hover{background-color:rgba(0, 0, 0, 0.05)}#_form_307_ .iti__country-list{border-radius:4px;margin-top:4px;min-width:460px}#_form_307_ .iti__country-list--dropup{margin-bottom:4px}#_form_307_ .phone-error-hidden{display:none}#_form_307_ .phone-error{color:#E40E49}#_form_307_ .phone-input-error{border:1px solid #E40E49 !important}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field fieldset{margin:0;margin-bottom:1.1428571429em;border:none;padding:0}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field fieldset:last-child{margin-bottom:0}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field legend{margin-bottom:1.1428571429em}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field label{display:flex;align-items:flex-start;justify-content:flex-start;margin-bottom:0.8571428571em}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field label:last-child{margin-bottom:0}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field input{margin:0;margin-right:8px}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label{display:block;font-weight:400;margin-top:-4px}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label-with-description{display:block;font-weight:700;margin-top:-4px}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-description{margin:0;font-size:0.8571428571em}#_form_307_._inline-form ._form-content ._form-list-subscriptions-field ._form-subscriptions-unsubscribe-all-description{line-height:normal;margin-top:-2px}\n#_form_307_ ._submit{width:100%;font-family:\"Source Sans Pro\", Sans-serif !important;font-size:20px !important;font-weight:600 !important}#_form_307_ ._submit:hover{background-color:#04937E !important}#_form_307_ input#email{padding:12px;background-color:#ffffff}#_form_307_ ._row{margin-top:-5px;margin-bottom:-10px}#_form_307_._form{margin-top:-5px}#_form_307_ ._error._below{position:relative !important}#_form_307_ ._error._above{position:absolute !important}@media (min-width:320px) and (max-width:667px){#_form_307_ ._form_element{margin:0 0 0px}#_form_307_ ._row{margin-top:0px;margin-bottom:0px}#_form_307_ ._submit{margin-top:-10px}}<\/style>\n<form method=\"POST\" action=\"https:\/\/deandelafuenteromero.activehosted.com\/proc.php\" id=\"_form_307_\" class=\"_form _form_307 _inline-form  _dark\" novalidate data-styles-version=\"5\">\n  <input type=\"hidden\" name=\"u\" value=\"307\" \/>\n  <input type=\"hidden\" name=\"f\" value=\"307\" \/>\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=\"2910697a81fdfefbca4abdcfbec4cfc9\" \/>\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=\"Tu email...\" required\/>\n      <\/div>\n    <\/div>\n    <div class=\"_form_element _x87696446 _full_width \" >\n      <fieldset class=\"_form-fieldset\">\n        <div class=\"_row\">\n          <legend for=\"field[15][]\" class=\"_form-label\">\n          <\/legend>\n        <\/div>\n        <input data-autofill=\"false\" type=\"hidden\" id=\"field[15][]\" name=\"field[15][]\" value=\"~|\">\n        <div class=\"_row _checkbox-radio\">\n          <input id=\"field_15He le\u00eddo y acepto la pol\u00edtica de privacidad\" type=\"checkbox\" name=\"field[15][]\"\n          value=\"He le\u00eddo y acepto la pol\u00edtica de privacidad\"                                                                                 required                                >\n          <span>\n            <label for=\"field_15He le\u00eddo y acepto la pol\u00edtica de privacidad\">\n              He le\u00eddo y acepto la pol\u00edtica de privacidad<span class=\"field-required\">\n              *\n            <\/span>\n          <\/label>\n        <\/span>\n      <\/div>\n    <\/fieldset>\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_307_submit\" class=\"_submit\" type=\"submit\">\n      \u00a1Me apunto!\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 = {\"15\":\"poltica_privacidad\",\"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_307_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_307_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(\"307\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Acorta tus respuestas y vuelve a intentarlo.\");\n            } else {\n                _show_error(\"307\", \"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_307_');\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    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_307_submit');\n            submitButton.disabled = true;\n            submitButton.classList.add('processing');\n                    var serialized = _form_serialize(document.getElementById('_form_307_')).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(\"307\", \"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><style>\/* Texto junto al checkbox: blanco y en l\u00ednea *\/\n._form_307 ._checkbox-radio label {\n  display: inline !important;\n  margin-left: 8px !important;\n}\n\n\/* Color blanco del texto \"Verifica que eres un humano\" *\/\n._form_307 label[for=\"ls\"],\n._form_307 ._form_element label._form-label {\n  color: #ffffff !important;\n  display: inline-block;\n  font-weight: 400 !important;\n  margin-left: 8px;\n}\n\n\/* Placeholder del campo de email *\/\n#_form_307_ #email::placeholder {\n  color: #002132 !important;\n}\n\n\/* Altura del campo de email reducida *\/\n#_form_307_ #email {\n  padding: 8px 12px !important;\n  height: 40px !important;\n  font-size: 14px !important;\n  line-height: 1.2 !important;\n  margin-bottom: 16px !important;\n}\n<\/style><\/div><\/div><\/span><\/p>\n<h2>\u00bfQu\u00e9 es Google Data Studio?<\/h2>\n<p><strong>Google Data Studio es una herramienta creada por Google que sirve para organizar y visualizar datos en forma de informes interactivos<\/strong>, es decir, sirve para crear gr\u00e1ficos a partir de los datos que se introduzcan. Como podr\u00e1s imaginar, el potencial de Google Data Studio va mucho m\u00e1s all\u00e1 de dibujar simples gr\u00e1ficos. Pensar as\u00ed es una forma demasiado b\u00e1sica de considerar esta herramienta.<\/p>\n<p>Google Data Studio te permite importar hojas de c\u00e1lculo y powerpoint y <strong>manejar datos de otras herramientas de Google como Analytics, Adwords, My Business y Search Console<\/strong>. La principal ventaja es que, cuando modificas estos datos en su fuente original, se actualizan a la vez en Data Studio por lo que siempre podr\u00e1s contar con informes actualizados ahorr\u00e1ndote mucho tiempo y esfuerzo.<\/p>\n<blockquote><p>La versi\u00f3n gratuita te permite crear hasta 5 informes por usuario y la opci\u00f3n <em>premium<\/em> te proporciona informes ilimitados<\/p><\/blockquote>\n<p>El punto fuerte de Google Data Studio es que te permite ordenar y visualizar tus datos de una forma sencilla y atractiva y esto te permitir\u00e1 <strong>obtener visiones globales que, a su vez, te llevar\u00e1n a una mejor toma de decisiones<\/strong> respecto al SEO, que es lo que nos ocupa aqu\u00ed. Para ello, hay que saber sacarle todo su provecho y no limitarse a crear gr\u00e1ficos sin m\u00e1s. Data Studio puede ser tu gran aliado en cuando a anal\u00edtica web.<\/p>\n<p>Pero adem\u00e1s, Data Studio puede obtener fuentes de redes sociales como Facebook Insight o Pinterest, de partners como Amazon, de software libre como Google Fit o Page Speed&#8230; Actualmente hay <strong>decenas de conectores de los que obtener datos para crear tus gr\u00e1ficos e informes<\/strong>.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-2014\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/google-data-studio-seo.png\" alt=\"google-data-studio-seo\" width=\"1100\" height=\"503\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/google-data-studio-seo.png 1100w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/google-data-studio-seo-300x137.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/google-data-studio-seo-1024x468.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/google-data-studio-seo-768x351.png 768w\" sizes=\"(max-width: 1100px) 100vw, 1100px\" \/><\/p>\n<h2>Google Data Studio para SEO<\/h2>\n<p>Si hay algo que se hace cuando se trabaja en SEO es <strong>manejar una gran cantidad de datos de todo tipo<\/strong> repartidos en innumerables archivos descargados de varias herramientas o incluso creados por ti mismo. Estamos seguros de que te resulta familiar el panorama que te estamos pintando.<\/p>\n<p>Siendo Google Data Studio una herramienta que permite<strong> importar y administrar datos para crear informes y gr\u00e1ficas<\/strong> con ellos no es de extra\u00f1ar que tenga un sitio muy especial para muchos consultores SEO o incluso para quienes trabajan tan solo proyectos personales. <strong>Conectarse a la base de datos y visualizar las gr\u00e1ficas<\/strong> ahorra mucho tiempo y esfuerzo.<\/p>\n<blockquote><p>Cada vez es m\u00e1s importante el an\u00e1lisis de datos para hacer una buena estrategia SEO<\/p><\/blockquote>\n<p>Por supuesto, Google Data Studio es compatible con otras herramientas del gran gigante como dec\u00edamos m\u00e1s arriba pero tambi\u00e9n permite que importes datos de aplicaciones tan potentes y populares como <strong>SEMRUsh o Moz aunque necesitar\u00e1s contar con la versi\u00f3n premium de Data Studio.<\/strong><\/p>\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-hand-o-right\" style=\"color:#00937D\"><\/i> Descubre aqu\u00ed <a href=\"https:\/\/dinorank.com\/blog\/plantillas-de-looker-studio-para-seo\/\">las mejores Plantillas de Looker Studio para SEO<\/a>.<\/li>\n<\/ul>\n<\/div>\n<p>El principal inconveniente es que su manejo no resulta demasiado intuitivo la primera vez que te acercas a esta herramienta pero para eso te hemos dejado m\u00e1s abajo<strong> un tutorial b\u00e1sico que te servir\u00e1 para arrancar y aprender las nociones b\u00e1sicas de Google Data Studio<\/strong>.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-2015\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/seo-google-data-studio.png\" alt=\"seo-google-data-studio\" width=\"1100\" height=\"600\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/seo-google-data-studio.png 1100w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/seo-google-data-studio-300x164.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/seo-google-data-studio-1024x559.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/seo-google-data-studio-768x419.png 768w\" sizes=\"(max-width: 1100px) 100vw, 1100px\" \/><\/p>\n<h3>Ventajas de usar Google Data Studio para SEO<\/h3>\n<p>Ya que aqu\u00ed hablamos de SEO vamos a ver c\u00f3mo puede ayudarte esta herramienta de Google a la hora de elaborar una estrategia de mejora de posicionamiento, ya sea para un proyecto propio o para tus clientes en el caso de que seas consultor SEO.<\/p>\n<ul>\n<li>Te permite <strong>combinar varias fuentes de datos en una misma hoja<\/strong>, es decir, visualizar en un mismo papel de control los datos e informaci\u00f3n de Google Search Console y Google Analytics, sin que tengas que estar saltando de una ventana a otra o creando excel de forma manual.<\/li>\n<li>Puedes descargar los informes en PDF y entregarlos a los clientes; de hecho, <strong>Google Data Studio es una de las mejores opciones de generaci\u00f3n de informes para clientes.<\/strong> Tambi\u00e9n puedes proporcionarles un enlace para que puedan ver datos actualizados y manejar los filtros.<\/li>\n<li>Los<strong> informes se actualizan de forma autom\u00e1tica<\/strong>.<\/li>\n<li>Permite<strong> compartir los informes<\/strong> a trav\u00e9s de sus opciones de privacidad, de forma que puedes mostr\u00e1rselos a tus compa\u00f1eros de agencia, por ejemplo.<\/li>\n<li>Los<strong> datos se muestran de una forma clara<\/strong> por lo que trabajar\u00e1s con m\u00e1s agilidad y rapidez.<\/li>\n<li>Utiliza<strong> datos de Google Search Console<\/strong>, es decir, informaci\u00f3n lo m\u00e1s cerca posible de la realidad.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2016\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-tudio-search-console.png\" alt=\"vincular-data-tudio-search-console\" width=\"1099\" height=\"310\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-tudio-search-console.png 1099w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-tudio-search-console-300x85.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-tudio-search-console-1024x289.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-tudio-search-console-768x217.png 768w\" sizes=\"(max-width: 1099px) 100vw, 1099px\" \/><\/p>\n<h2>Vincular Google Data Studio con Search Console<\/h2>\n<p>En la p\u00e1gina principal de Google Data Studio ver\u00e1s un bot\u00f3n arriba a la izquierda que dice &#8220;Crear&#8221;. Haz clic ah\u00ed y ver\u00e1s un listado de las distintas herramientas que son vinculables. Los primeros que aparecen son los de Google as\u00ed que busca Search Console y selecci\u00f3nalo.<\/p>\n<p>Ahora tendr\u00e1s que<strong> elegir la web de la que quieres obtener datos<\/strong> -suponiendo que tengas varias- y a continuaci\u00f3n, hacer las dos conexiones que te ofrece Google Data Studio: Impresi\u00f3n del sitio web e Impresi\u00f3n de URL. Es muy importantes que conectes ambas opciones.<\/p>\n<blockquote><p>Aprovecha para nombrar ambas conexiones y poder diferenciarlas claramente en el futuro cuando trabajes con este proyecto<\/p><\/blockquote>\n<p>Ahora tienes que hacer clic en &#8220;<em>Crear informe<\/em>&#8220;, arriba a la derecha, y despu\u00e9s, en la nueva pantalla emergente que te va a aparecer, en &#8220;<em>A\u00f1adir al informe<\/em>&#8220;. Con esto habr\u00e1s conectado el sitio web as\u00ed que ahora tienes que incluir la URL.<\/p>\n<p>En el informe en blanco que se habr\u00e1 creado tienes que ir a la parte superior y hacer clic en &#8220;<em>Recurso<\/em>&#8221; y luego en &#8220;<em>Gestionar fuentes de datos a\u00f1adidas<\/em>&#8220;. Ah\u00ed tendr\u00e1s que ver los datos que ya has a\u00f1adido, es decir, las impresiones de sitio web. Ahora haz clic en &#8220;<em>A\u00f1adir una fuente de datos<\/em>&#8221; y elige Search Console, despu\u00e9s Propiedad y por \u00faltimo, Impresi\u00f3n de URL.\u00a0 Por \u00faltimo, selecciona &#8220;<em>A\u00f1adir al informe<\/em>&#8221; y ya tendr\u00e1s ambas fuentes de <strong>Google Search Console<\/strong> conectadas.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2017\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-studio-analytics.png\" alt=\"vincular-data-studio-analytics\" width=\"1099\" height=\"374\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-studio-analytics.png 1099w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-studio-analytics-300x102.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-studio-analytics-1024x348.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/vincular-data-studio-analytics-768x261.png 768w\" sizes=\"(max-width: 1099px) 100vw, 1099px\" \/><\/p>\n<h2>Vincular Google Data Studio con Google Analytics<\/h2>\n<p>Y si hablamos de Google y de SEO no podemos dejar a un lado <strong>Google Analytics, la herramienta de an\u00e1lisis de tr\u00e1fico web de Google que tambi\u00e9n puedes vincular con Google Data Studio<\/strong>. Aunque no vas a utilizarlo para analizar la posici\u00f3n de tus keywords, como explicamos m\u00e1s abajo, consideramos que debes saber c\u00f3mo hacer esta vinculaci\u00f3n para que <a href=\"https:\/\/dinorank.com\/blog\/como-hacer-un-informe-seo\/\">te animes a crear tus propios informes<\/a> usando los datos de tr\u00e1fico web de tus proyectos o los de tus clientes.<\/p>\n\t\t<div data-elementor-type=\"section\" data-elementor-id=\"30836\" class=\"elementor elementor-30836\" data-elementor-post-type=\"elementor_library\">\n\t\t\t<div class=\"elementor-element elementor-element-19a0f8ad e-con-full e-flex e-con e-parent\" data-id=\"19a0f8ad\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4be7d8fe elementor-widget elementor-widget-image\" data-id=\"4be7d8fe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/seowarriors.club\/\" target=\"_blank\" rel=\"nofollow noopener\">\n\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"263\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-10-162612-768x263.png\" class=\"attachment-medium_large size-medium_large wp-image-30778\" alt=\"\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-10-162612-768x263.png 768w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-10-162612-300x103.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-10-162612-1024x351.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-10-162612.png 1034w\" sizes=\"(max-width: 768px) 100vw, 768px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<pre>\ud83d\udc49 Descubre <a href=\"https:\/\/seowarriors.club\/plataforma\/curso-looker-studio\/\" target=\"_blank\" rel=\"noopener\">c\u00f3mo usar Looker Studio para SEO paso a paso<\/a> y aprende a analizar datos, crear dashboards claros y tomar mejores decisiones con el Curso de Looker Studio de SEOWarriors.<\/pre>\n<p>Una vez en el panel principal de Google Data Studio tendr\u00e1s que <strong>agregar la nueva fuente de datos<\/strong> haciendo clic en el bot\u00f3n que ver\u00e1s arriba a la izquierda, siguiendo el mismo paso que antes, cuando vinculaste Google Search Console. En la secci\u00f3n Conectores de Google tienes que seleccionar Google Analytics y la cuenta que quieres vincular as\u00ed como el sitio web. Despu\u00e9s, haz clic en &#8220;<em>Conectar<\/em>&#8220;.<\/p>\n<p>Sabr\u00e1s que lo has hecho bien porque en este momento aparecer\u00e1n todas las dimensiones y m\u00e9tricas posibles derivadas de los datos de Google Analytics. Recuerda, como dijimos antes, renombrar esta fuente de datos de forma que puedas reconocerla sin complicaciones cuando la quieras emplear en una gr\u00e1fica o informe. Tras hacer clic en &#8220;<em>A\u00f1adir al informe<\/em>&#8221; habr\u00e1s terminado el proceso de vincular Google Data Studio con Google Analytics.<\/p>\n<h2>C\u00f3mo medir la posici\u00f3n de tus keywords con Data Studio<\/h2>\n<p>Teniendo en cuenta que Google Data Studio es una herramienta creada para organizar y analizar datos, uno de los principales usos que puedes darle en tu estrategia SEO es <strong>medir la posici\u00f3n de tus keywords de un solo vistazo<\/strong> y de forma muy sencilla a trav\u00e9s de gr\u00e1ficos.<\/p>\n<p>Aunque el proceso te pueda parecer algo engorroso, una vez que comprendas c\u00f3mo funciona Google Data Studio y la forma en la que obtiene los datos y los ordena, ser\u00e1s capaz de sacarle el jugo a esta herramienta no solo para tus estrategias SEO sino tambi\u00e9n en otros aspectos.<\/p>\n<p>Recuerda que, aunque siempre se habla de los gr\u00e1ficos y tablas de Google Data Studio,<strong> lo verdaderamente interesante de esta herramienta es que es capaz de obtener datos de las fuentes que le indiques y ordenarlos para visualizarlos y estudiarlos con facilidad<\/strong>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2018\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/data-studio-keywords.png\" alt=\"data-studio-keywords\" width=\"907\" height=\"452\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/data-studio-keywords.png 907w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/data-studio-keywords-300x150.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/data-studio-keywords-768x383.png 768w\" sizes=\"(max-width: 907px) 100vw, 907px\" \/><\/p>\n<h3>Tutorial para poder medir la posici\u00f3n de las keywords con Data Studio<\/h3>\n<p>A continuaci\u00f3n te vamos a explicar c\u00f3mo crear un gr\u00e1fico en el que poder analizar cualquiera de tus keywords gracias a un sistema de control de filtros. Antes de nada tendr\u00e1s que vincular Google Data Studio con Google Search Console.\u00a0 Antes te hemos explicado c\u00f3mo hacerlo.<\/p>\n<p>Una vez conectadas las fuentes, tienes que empezar a hacer que Google Data Studio recopile los datos con los que quieres crear tu gr\u00e1fica. Una cosa que debes saber es que<strong> los datos de Search Console (sitio web y URL, como hemos visto antes) son tratados como si fueran dos fuentes de datos distintas<\/strong>. Los datos del sitio web recogen m\u00e9tricas globales sobre la p\u00e1gina mientras que los datos de URL acumulan informaci\u00f3n sobre links concretos.<\/p>\n<p>Vamos a comenzar<strong> creando un primer gr\u00e1fico usando los datos de impresi\u00f3n de sitio web<\/strong>. Para ello, a\u00f1ade un gr\u00e1fico de Serie temporal eligiendo la fuente de datos correspondiente (si las has nombrado como te dec\u00edamos te resultar\u00e1 muy f\u00e1cil localizarla). En dimensi\u00f3n elige <em>Date<\/em> y en m\u00e9trica, <em>Average Position<\/em>.<\/p>\n<ul>\n<li>Gr\u00e1fico de Serie temporal<br \/>\nFuente de datos: impresi\u00f3n de sitio web<br \/>\nDimensi\u00f3n: Date<br \/>\nM\u00e9trica: Average Position<\/li>\n<\/ul>\n<p>Ahora toca <strong>crear un segundo gr\u00e1fico con los datos de impresi\u00f3n de URL.<\/strong> A\u00f1ade de nuevo un gr\u00e1fico de Serie temporal con la fuente de datos que toque. En dimensi\u00f3n selecci\u00f3n <em>Date<\/em> de nuevo y en m\u00e9trica, <em>URL Clicks<\/em>.<\/p>\n<ul>\n<li>Gr\u00e1fico de Serie temporal<br \/>\nFuente de datos: impresi\u00f3n de URL<br \/>\nDimensi\u00f3n: Date<br \/>\nM\u00e9trica: URL Clicks<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2019\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/graficos-data-studio.png\" alt=\"graficos-data-studio\" width=\"912\" height=\"490\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/graficos-data-studio.png 912w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/graficos-data-studio-300x161.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/graficos-data-studio-768x413.png 768w\" sizes=\"(max-width: 912px) 100vw, 912px\" \/><\/p>\n<p>El siguiente paso consiste en <strong>combinar ambas gr\u00e1ficas<\/strong>. Para ello, selecci\u00f3nalas arrastrando el rat\u00f3n de la misma forma en que seleccionar\u00edas dos archivos en una carpeta del ordenador y despu\u00e9s, haciendo clic con el bot\u00f3n secundario del rat\u00f3n, selecciona <em>Combinar Datos<\/em>. Ahora tendr\u00e1s un nuevo gr\u00e1fico como resultado de esta combinaci\u00f3n por lo que ya puedes borrar las dos primeras que has creado y quedarte con la \u00faltima.<\/p>\n<p>Tendr\u00e1s que <strong>configurar la gr\u00e1fica para que te sirva para medir la posici\u00f3n de tus keywords<\/strong> as\u00ed que sigue los pasos que te vamos a dar. Aunque el proceso te est\u00e9 pareciendo engorroso ver\u00e1s que merece la pena cuando veas los resultados y su utilidad.<\/p>\n<p>Haz clic en la propia gr\u00e1fica y en las opciones, selecciona <em>Estilo<\/em> y elige los siguientes par\u00e1metros: en la Serie n\u00famero 1 que corresponde a los Clicks elige Barras y Eje derecho y en la Serie n\u00famero 2 que corresponde a Posici\u00f3n Media elige Etiquetas de datos. Por \u00faltimo, decora la gr\u00e1fica a tu gusto: colores, fuentes, tama\u00f1os, fondos, bordes&#8230; \ud83d\ude09<\/p>\n<ul>\n<li>Serie n\u00famero 1 (clicks): Barras, Eje derecho<br \/>\nSerie n\u00famero 2 (posici\u00f3n media): Etiquetas de datos<\/li>\n<\/ul>\n<p>Ya nos vamos acercando al final. Ahora es el momento de <strong>a\u00f1adir el control de filtros para analizar las keywords<\/strong> tanto por su posici\u00f3n media como por los clics que reciben. Para eso tan solo tendr\u00e1s que a\u00f1adir un Control de filtros desde la barra de herramientas de la parte superior del informe, eligiendo como fuente de datos las impresiones por URL y como dimensi\u00f3n, Query.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2020\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/confiuracion-data-studio.png\" alt=\"confiuracion-data-studio\" width=\"1100\" height=\"428\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/confiuracion-data-studio.png 1100w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/confiuracion-data-studio-300x117.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/confiuracion-data-studio-1024x398.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/confiuracion-data-studio-768x299.png 768w\" sizes=\"(max-width: 1100px) 100vw, 1100px\" \/><\/p>\n<p>Ahora, selecciona tanto el control de filtros como la gr\u00e1fica, haz clic en el bot\u00f3n secundario del rat\u00f3n y selecciona <em>Grupo<\/em>. Con esta acci\u00f3n acabas de <strong>vincular la gr\u00e1fica con el control de filtros.<\/strong> Una vez fuera del modo de edici\u00f3n tan solo tendr\u00e1s que hacer clic en la opci\u00f3n <em>Ver<\/em> para comprobar que el desplegable del control de filtros funciona y te permite seleccionar la query que quieras.<\/p>\n<p>\u00a1Listo! Ya tienes <strong>una gr\u00e1fica que te permitir\u00e1 analizar cada d\u00eda la evoluci\u00f3n de una keyword y<\/strong> los clicks que recibe. A partir de aqu\u00ed puedes seguir a\u00f1adiendo datos, otros controles de filtros, comparaciones etc\u00e9tera.<\/p>\n<p>Pero vamos a ir un poco m\u00e1s all\u00e1 explotando las posibilidades de Google Data Studio y vamos a crear una <strong>tabla de keywords con su posici\u00f3n media y n\u00famero de clicks<\/strong>. Te permitir\u00e1 ordenar tus palabra clave por n\u00famero de clicks o seg\u00fan su posici\u00f3n en los resultados de b\u00fasqueda de Google. Los pasos son los siguientes:<\/p>\n<ol>\n<li>A\u00f1ade un gr\u00e1fico tipo Tabla (tendr\u00e1s que elegir entre los tres formatos disponibles) y agr\u00e9galo al informe.<\/li>\n<li>Combina los datos de ambas fuentes, es decir, sitio web y URL.<\/li>\n<li>Selecciona como Dimensi\u00f3n Q<em>uery<\/em> y como m\u00e9tricas, Clicks y Average Position.<\/li>\n<li>En la parte superior haz clic en <em>Recurso<\/em> y a continuaci\u00f3n, en <em>Gestionar datos combinados<\/em>.<\/li>\n<\/ol>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2021\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/tabla-keywords-data-studio.png\" alt=\"tabla-keywords-data-studio\" width=\"1196\" height=\"311\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/tabla-keywords-data-studio.png 1196w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/tabla-keywords-data-studio-300x78.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/tabla-keywords-data-studio-1024x266.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2020\/08\/tabla-keywords-data-studio-768x200.png 768w\" sizes=\"(max-width: 1196px) 100vw, 1196px\" \/><\/p>\n<p>Ahora tendr\u00e1s que configurar cada una de las fuentes de datos de la siguiente manera: para impresiones de URL elige Dimensi\u00f3n <em>Query<\/em> y M\u00e9trica URL Clicks; y para impresiones de sitio web selecciona Dimensi\u00f3n <em>Query<\/em> y M\u00e9trica Average Position. Una vez creada la combinaci\u00f3n ponle un nombre con el que identificarla con facilidad.<\/p>\n<p>El siguiente paso es agregar esta combinaci\u00f3n de datos a la nueva tabla eligiendo la nueva fuente de datos combinada. Comprueba que tanto la dimensi\u00f3n como las m\u00e9tricas son correctas y escoge c\u00f3mo quieres que est\u00e9 ordenada la tabla, si por clicks o por posici\u00f3n media.<\/p>\n<p>Ya que tienes esta tabla te recomendamos <strong>a\u00f1adir un nuevo control de filtros para elegir la URL que quieras y poder analizar solo los datos que corresponden a la misma<\/strong>. El proceso es parecido a lo que ya has hecho para crear la primera gr\u00e1fica: a\u00f1adir Control de filtros, elegir como fuente de datos Impresiones por URL, Dimensi\u00f3n Landing Page, M\u00e9tricas URL Clicks y crear Grupo con la tabla y el control de filtros que acabas de crear.<\/p>\n<p><strong>Google Data Studio es el gran descubrimiento que han hecho muchos consultores SEO<\/strong> debido a todas las posibilidades que ofrece. Hoy te hemos contado c\u00f3mo usar esta herramienta para controlar los datos acerca de las keywords de tu sitio web pero hay muchas funcionalidades m\u00e1s que te pueden resultar de utilidad.<\/p>\n<p>Te recomendamos que vayas m\u00e1s all\u00e1 de la creaci\u00f3n de gr\u00e1ficos y analices todas sus opciones ya que, cuanto m\u00e1s explores las posibilidades de Google Data Studio, m\u00e1s utilidades le vas a encontrar. Como siempre, cu\u00e9ntanos tus impresiones en los comentarios tanto si eres usuario habitual de esta herramienta como si te acabas de lanzar a probarla y nos lo quieres contar.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Indagar en el mundo del SEO es darte cuenta de que siempre tienes algo que aprender, una nueva estrategia que probar, una herramienta que investigar. En este post queremos hablarte precisamente de una herramienta que no se suele mencionar demasiado pero que tiene una gran importancia, en especial si trabajas como consultor SEO. De hecho, [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":2568,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2],"tags":[],"class_list":["post-2007","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutoriales-herramientas-seo"],"acf":[],"_links":{"self":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/2007","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/comments?post=2007"}],"version-history":[{"count":3,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/2007\/revisions"}],"predecessor-version":[{"id":32430,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/2007\/revisions\/32430"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/media\/2568"}],"wp:attachment":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/media?parent=2007"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/categories?post=2007"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/tags?post=2007"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}