SEO y Google Sheets

En este post vengo a resumir algunas de las fórmulas más interesantes que te pueden ayudar con las hojas de cálculo de Google SpreadSheets a la hora de trabajar el SEO de cierto volumen de urls.

La idea es que el volumen sobre el que vayas a trabajar no sea demasiado grande, primero porque probablemente la herramienta de Google online te de problemas para procesar todas esas peticiones, y segundo porque para tratar con volúmenes tan altos, es preferible utilizar herramientas de mercado especializadas por ejemplo en extraer información, analizar servicios, etc. como por ejemplo Screaming Frog.

Otra de las herramientas online gratuitas que he descubierto recientemente es «seosensor.com» que recoge por países, dispositivos y categorías del site, los tres principales sensores (Semrush Sensor, CognitiveSEO y Rank Ranger) de herramientas de mercado que miden la sensibilidad de los algoritmos de Google a experimentar cambios que afectan a las SERPs.

Algunas de las opciones que considero interesantes desde el punto de visto SEO para analizar a través de GSheets son:

CANONICAL

=IMPORTXML(A10;"//link[@rel='canonical']/@href")
//A10 es el lugar donde se encuentra la url a extraer su canonical//

EXTRAER URLS DESDE UN SITEMAP.XML

Funciona sólo con xmls que contienen urls, no es válido para extraer sitemaps y urls de un index.xml:

=IMPORTXML(A2;"//*[local-name() ='url']/*[local-name() ='loc']")
//A2 es el lugar donde se encuentra la url del xml//

DETECTAR URLS DUPLICADAS

=IF(A5=C5;"REPETIDO";"OK")
//También puedes usar formatos condicionales para destacar celdas con un mismo criterio//

STATUS CODE HTTP

=getStatusCode(A5)

Para utilizar la fórmula anterior de código de estado sobre una url, necesitas añadir un script dentro de la extensión de GSheets «Apps Script»:

function getStatusCode(url){
   var options = {
     'muteHttpExceptions': true,
     'followRedirects': false
   };
   var url_trimmed = url.trim();
   var response = UrlFetchApp.fetch(url_trimmed, options);
   return response.getResponseCode();
}

TITLE & H1

=IMPORTXML(B3;"//title")
//B3 es el lugar donde se encuentra la url a extraer title o el h1 - sustituyendo ese texto//

Puedes añadir otra columna que sea un contador de caracteres del title o h1 utilizando la función =LARGO(celda)

Puedes añadir otra columna para comparar Title Propuesto vs Title actual utilizando la función =SI(B2=C2;»Sí»;»No»)

META DESCRIPTION

=importxml(B3;"//meta[@name='description']/@content")
//B3 es el lugar donde se encuentra la url a extraer la meta description//

Otra de las utilidades para SEO en Google Sheets es la de poder identificar redirecciones, número de saltos y url final. En esta web «The Tech SEO» se comparte un ejemplo de plantilla de su solución llamada Redirectinator, muy recomendable para un listado pequeño de urls y comprobarlas rápidamente.