TLDR
Scopri i vantaggi dell’esportazione in blocco da GSC a BigQuery in 15 minuti o meno. Credo che valga la pena dedicare il tuo tempo come SEO ad imparare questo processo.
L’articolo discute i vantaggi dell’esportazione di dati in blocco da Google Search Console a BigQuery, evidenziando come ciò superi le limitazioni di altri metodi, permettendo una maggiore analisi dei dati, una migliore conservazione dei dati e un’elaborazione più efficiente delle query. Discussione ulteriore include dettagli tecnici sull’implementazione e suggerimenti per gli analisti SEO.
Introduzione
Google Search Console (GSC) è uno strumento prezioso per gli esperti SEO. Tuttavia, l’uso esclusivo dell’interfaccia presenta alcune limitazioni. In alternativa è necessario avere conoscenze specifiche o l’assistenza di uno sviluppatore per superare queste limitazioni, estraendo i dati direttamente dalle API.
Nel 2018, Google ha introdotto un connettore nativo tra GSC e quello che era Google Data Studio (ora Looker Studio). Questa integrazione permette di trasferire direttamente i dati da GSC a Looker Studio, per creare report e dashboard personalizzabili senza bisogno di connettori di terze parti o configurazioni API aggiuntive.
Nel febbraio 2023, la situazione è diventata più interessante. Google ha introdotto una funzione di esportazione massiva di dati automatizzata e integrata verso BigQuery, la soluzione di archiviazione dati di Google. Questa novità è significativa perché la maggior parte degli utenti continua a dipendere dall’interfaccia GSC per molte delle loro attività.
L’esportazione massiva di dati verso BigQuery è particolarmente utile per siti web di grandi dimensioni o analisi SEO che richiedono un set di dati completo. A differenza di altre opzioni di esportazione dati, non ci sono limiti sul numero di righe che possono essere esportate. Inoltre, BigQuery permette una conservazione illimitata dei dati, superando il limite di conservazione dei dati di 16 mesi di GSC, e fornendo una capacità reale di visualizzare le evoluzioni su più anni.
Ad esempio, se un sito web sperimenta fluttuazioni stagionali o eventi che causano picchi periodici di traffico, la possibilità di esaminare dati storici più estesi fornirà intuizioni preziose. La conservazione illimitata dei dati facilita anche la generazione di report personalizzati, il troubleshooting migliorato, e una maggiore adattabilità delle strategie SEO, mantenendo al contempo una prospettiva storica completa.
L’esportazione massiva di dati inizia a inviare dati quotidianamente a BigQuery solo dopo la sua configurazione, quindi non è possibile accedere ai dati precedenti a tale punto. È un sistema “da questo punto in poi”, il che significa che è necessario pianificare in anticipo se si desidera utilizzare dati storici in seguito. E anche pianificando in anticipo, le esportazioni di dati inizieranno fino a 48 ore dopo.
Durante l’esportazione massiva di dati, vengono create due tabelle principali: searchdata_site_impression e searchdata_url_impression. La prima aggrega i dati per proprietà, quindi se due pagine appaiono per la stessa query, conta come una sola impression. Il secondo fornisce dati aggregati per URL, offrendo una visione più dettagliata.
Un altro elemento importante è che si tratta di tabelle di dati partizionate. I dati in BigQuery sono organizzati in tabelle partizionate basate su date, con i dati di ogni giorno che ricevono un aggiornamento. Questo è cruciale da tenere a mente quando si formulano le query, soprattutto se si desidera mantenere efficienti le operazioni.
Superare i Limiti dei Dati con le Esportazioni in Blocco BigQuery
Originariamente, l’esportazione in blocco era ideata per siti con traffico diretto verso o proveniente da decine di migliaia di pagine o query. Al momento, oltre all’esportazione in blocco BigQuery, hai tre alternative:
- Report GSC Standard: Limitati a 1.000 righe per report.
- Integrazione con Looker Studio: Permette l’esportazione di fino a 50.000 righe.
- Utilizzo dell’API: Esporta fino a 50.000 righe a chiamata, con accesso a funzionalità extra come ispezione URL, sitemaps, e dati del sito.
Per esempio, supponiamo di avere una campagna SEO in corso e desideri analizzare la performance di diverse pagine del tuo sito. Con Looker Studio, potresti essere limitato, ma con l’esportazione in blocco in BigQuery (oppure con un furbo utilizzo delle API), potrai eseguire analisi più approfondite su un ampio volume di dati.
Come sottolineato da Daniel Waisberg nel video che segue, Search Advocate presso Google, l’esportazione in blocco rappresenta l’approccio più potente per accedere a un volume di dati più ampio, fornendo agli analisti SEO una risorsa inestimabile per comprendere e ottimizzare la performance del sito.
Volume dei Dati
L’esportazione in blocco BigQuery abolisce i limiti sul numero di righe esportabili, rendendola una risorsa ineguagliabile per siti di grandi dimensioni o analisi SEO che necessitano di un dataset completo. Ad esempio, per analizzare l’efficacia di parole chiave specifiche nel tempo, l’accesso a un ampio volume di dati è indispensabile.
Conservazione dei Dati
BigQuery offre una conservazione dei dati illimitata, superando il limite di 16 mesi di Google Search Console. Questo permette analisi storiche prolungate, visione di tendenze su più anni e generazione di report personalizzati. La conservazione illimitata dei dati è cruciale per:
- Analisi a Lungo Termine: Conduci analisi dettagliate su come le strategie SEO stanno performando nel tempo.
- Tendenze Stagionali: Analizza le fluttuazioni stagionali o i picchi di traffico causati da eventi.
- Report Personalizzati: Crea report specifici per rispondere a qualsiasi domanda.
- Miglioramento della Risoluzione dei Problemi: Identifica e risolvi i problemi in modo più efficace monitorando le prestazioni nel tempo.
- Adattabilità: Adatta le strategie SEO con una visione storica completa, permettendo una maggiore flessibilità nell’analisi e nella strategia.
Avvertenze sui Dati
Anche se BigQuery offre molti vantaggi, è importante considerare alcune avvertenze:
- Retroattività: Non c’è retroattività nei dati, l’esportazione inizia solo dopo la configurazione.
- Pianificazione: È essenziale pianificare in anticipo per conservare i dati storici.
- Tipi di Dati Esportati: Non tutti i dati sono esportati; alcuni report specifici di GSC sono esclusi.
- Tabelle Generate: Vengono create due tabelle principali, ciascuna con un livello di dettaglio diverso.
- Partizionamento dei Dati: I dati sono organizzati in tabelle partizionate, che influenzano come formulare le query.
- Aggiornamenti Quotidiani: I dati vengono aggiornati quotidianamente, un aspetto cruciale da considerare durante l’analisi.
Tabelle Generate
L’esportazione in blocco crea due tabelle principali:
- searchdata_site_impression: Fornisce una panoramica delle performance del sito su Google. Per esempio, se due pagine del tuo sito appaiono nella ricerca per “miglior costume da cane salsiccia”, verrà contata una sola “impressione” per l’intero sito, non due separate per ciascuna pagina.
- searchdata_url_impression: Offre dati più dettagliati, focalizzandosi sulle singole pagine. Nello stesso esempio, se due pagine del sito appaiono nei risultati, verranno contate come due impressioni separate, una per ciascuna pagina.
Partizionamento dei Dati
I dati in BigQuery sono organizzati in tabelle partizionate per data. Ogni giorno i dati vengono aggiornati, e questo è cruciale da considerare quando si formulano le query, per mantenere efficienti le operazioni.
La natura quotidiana dell’aggiornamento dei dati influisce sull’analisi, rendendo essenziale comprendere come i dati sono organizzati e aggiornati in BigQuery.
Perché usare BigQuery?
La configurazione delle esportazioni collettive in BigQuery presenta numerosi vantaggi che potrebbero rivelarsi fondamentali per un’analisi dati più profonda ed efficace. Uno degli aspetti chiave è l’unione dei dati provenienti dalla Google Search Console (GSC) con altre fonti di dati. Portando i dati della GSC in un data warehouse come BigQuery, si apre la possibilità di combinare questi dati con altre origini, sia direttamente in BigQuery che nel proprio data warehouse. Un esempio pratico potrebbe essere l’unione dei dati di GSC e Google Analytics 4, che potrebbe fornire informazioni più approfondite sulle conversioni e sui comportamenti guidati dal traffico organico di Google.
Inoltre, BigQuery fornisce una piattaforma robusta per eseguire calcoli e operazioni complesse utilizzando il linguaggio SQL. Questo permette di interrogare i dati in modo flessibile, permettendo segmentazioni, filtraggi ed esecuzioni di formule personalizzate per affinare ulteriormente l’analisi. La capacità di eseguire operazioni complesse attraverso query SQL rende BigQuery una soluzione potente per analizzare grandi set di dati ed estrarre insight significativi.
Un altro vantaggio distintivo di BigQuery risiede nella gestione delle query anonime. A differenza di altri fornitori ETL che accedono ai dati tramite l’API, BigQuery ha un approccio diverso nella gestione delle query rese anonime. Invece di semplicemente omettere le righe, BigQuery aggrega tutte le metriche per le query anonimizzate per sito o URL al giorno. Questo aiuta gli analisti a ottenere somme complete di impressioni e clic quando si aggregano i dati, fornendo una vista più precisa e completa del traffico e delle interazioni degli utenti. In sintesi, l’aggregazione delle metriche per le query anonimizzate contribuisce a mantenere un’analisi dati precisa e informativa, nonostante le limitazioni imposte dall’anonimizzazione.
Quali sono i requisiti ed i limiti?
L’integrazione delle esportazioni collettive con BigQuery, pur essendo un’innovazione potente, porta con sé alcuni requisiti e limiti che possono rappresentare delle sfide per gli utenti, in particolar modo per coloro che provengono da un background prettamente SEO. Uno dei principali requisiti è l’espansione delle competenze oltre la sfera SEO. È essenziale acquisire una certa familiarità con la piattaforma Google Cloud, BigQuery e il linguaggio SQL, in aggiunta alla preesistente conoscenza della Google Search Console (GSC). L’avvio di un’esportazione di dati in blocco non solo implica l’esecuzione di attività in GSC, ma richiede anche una gestione attiva dentro l’ambiente Google Cloud.
BigQuery, essendo una piattaforma basata su SQL, necessita di competenze specifiche in tale linguaggio per poter accedere e sfruttare al massimo i dati a disposizione. Questo implica la necessità di eseguire query SQL o avere a disposizione risorse interne che possano gestire questa parte del processo. La padronanza di BigQuery e del suo funzionamento può richiedere tempo ed esperienza, e sebbene strumenti come Looker Studio offrano una manipolazione dei dati in stile SQL, potrebbero non fornire tutta la potenza e la flessibilità che SQL offre per analisi più complesse. Ad esempio, mentre Looker Studio potrebbe facilitare alcune operazioni, le analisi più avanzate o personalizzate potrebbero richiedere una conoscenza diretta del SQL.
Un’altra sfida è rappresentata dalla necessità di ulteriori elaborazioni dei dati API per ottenere risultati simili a quelli desiderati. Questo potrebbe richiedere l’implementazione di processi aggiuntivi per garantire che i dati siano pronti per l’analisi.
Inoltre, è importante considerare la differenza nel volume delle query anonimizzate tra la tabella searchdata_url_impression e la tabella searchdata_site_impression. Simile all’interfaccia GSC, alcune query per specifici URL in determinati paesi potrebbero essere così poco frequenti da poter potenzialmente identificare l’utente che effettua la ricerca. Di conseguenza, è probabile che si verifichi una maggiore porzione di query anonimizzate nella tabella searchdata_url_impression rispetto alla tabella searchdata_site_impression. Questo può influenzare la quantità e la qualità dei dati disponibili per l’analisi, ed è un aspetto cruciale da considerare quando si lavora con queste tabelle in BigQuery.
Costi potenziali
L’integrazione delle esportazioni collettive con BigQuery si paga e senza dati di fatturazione non è possibile collegare Search Console a BigQuery.
BigQuery struttura i suoi costi basandosi sulla quantità di dati archiviati in un progetto e sulle query eseguite su tali dati. La piattaforma prevede delle soglie specifiche, oltrepassate le quali si inizia a incorrere in costi che potrebbero manifestarsi su base mensile.
Con il passare del tempo, l’accumulo dei dati e l’esecuzione frequente di query potrebbero tradursi in costi crescenti. La natura e l’entità di questi costi dipendono largamente dalla quantità di dati esportati e dalle query eseguite per accedere e manipolare tali dati. Siti web con un elevato numero di pagine e query saranno probabilmente più onerosi sotto questo profilo, dato che generano una maggiore quantità di dati che necessitano di essere archiviati e analizzati.
Per esempio, supponendo che un sito web abbia milioni di pagine e generi un elevato volume di query organiche, la quantità di dati accumulati in BigQuery crescerebbe proporzionalmente, così come i costi associati. Inoltre, se le query sono eseguite frequentemente per analizzare questi dati, i costi delle operazioni di query si sommerebbero ai costi di archiviazione, potenzialmente incrementando ulteriormente le spese.
In questo scenario, è prudente considerare non solo i costi immediati, ma anche quelli potenziali a lungo termine associati all’archiviazione e all’analisi dei dati in BigQuery. Potrebbe essere utile monitorare attentamente l’uso delle risorse e valutare periodicamente le opzioni disponibili per ottimizzare la gestione dei dati e contenere i costi.
Come ottenere i dati GSC in BigQuery
Crea un progetto Google Cloud con BigQuery e fatturazione abilitati
Il primo passaggio è creare un progetto in Google Cloud con BigQuery e fatturazione abilitata.
Accedi alla Consolle. In alto a sinistra, fai clic sul progetto in cui ti trovi attualmente (o Seleziona un progetto se non ne hai nessuno), si aprirà un popup.
Clicca su NUOVO PROGETTO e segui i passaggi. Fai attenzione quando scegli la regione perché dovrai scegliere la stessa quando imposti l’esportazione in blocco nell’SGC. Se desideri eseguire query su due set di dati come i dati GSC e GA4, devono trovarsi nella stessa regione. Entrambi i set di dati devono trovarsi esattamente nella stessa posizione.
Una volta creato il progetto, vai alla sezione Fatturazione. Usa la barra di ricerca in alto per trovarlo. Un consiglio prima di procedere: prenditi il tempo necessario per indagare se non hai già un account di fatturazione creato da qualcun altro in azienda.
Fatto ciò, puoi assegnare l’account di fatturazione al tuo progetto. Per impostare l’esportazione collettiva è necessario un account di fatturazione. Per farlo, segui le istruzioni fornite dalla documentazione di Google Cloud.
Quindi, devi andare alla sezione API e servizi (di nuovo, puoi utilizzare la barra di ricerca per trovarla). Cerca la API BigQuery. Abilitale per il progetto che hai creato.
Un altro passaggio: devi aggiungere un utente. Ciò consentirà a Google Search Console di scaricare i dati in BigQuery. Ecco la documentazione ufficiale per farlo.
Analizziamolo rapidamente:
- Passare nella barra laterale a IAM e Admin. La pagina dovrebbe indicare Permissions for project xy.
- Fare clic su + CONCEDI ACCESSO.
- Si aprirà un pannello con Aggiungi entità.
- In New Principals, inserisci search-console-data-export@system.gserviceaccount.com
- Seleziona due ruoli: BigQuery Job User e BigQuery Data Editor. Puoi utilizzare la barra di ricerca per trovarli.
- Salva.
- Infine, seleziona il tuo progetto e copia l’ID del progetto Cloud ad esso associato.
Hai finito con Google Cloud!
Configura GSC
Imposta l’esportazione di dati in blocco nella proprietà GSC di tua scelta
Una volta completata la parte Google Cloud, dovrai attivare l’esportazione massiva dei dati sul tuo nuovo progetto Google Cloud direttamente nella Google Search Console.
Per fare ciò, vai nella sezione Impostazioni della proprietà da cui vuoi esportare i dati e clicca su Esportazione dati in blocco.
Incolla l’ID progetto cloud del progetto creato in precedenza. Puoi anche personalizzare il nome del set di dati che GSC creerà nel tuo progetto (è “searchconsole” per impostazione predefinita).
Infine, scegli la stessa posizione del set di dati scelta per il tuo progetto Google Cloud.
Una volta che tutto è pronto, fai clic su Continua . L’SGC ti farà sapere se questa configurazione iniziale è funzionante o meno. Il set di dati verrà creato anche nel tuo progetto.
Le esportazioni dei dati inizieranno fino a 48 ore dopo. Gli export sono giornalieri e comprendono i dati relativi al giorno del setup.
Tieni presente che l’SGC può incorrere in problemi di esportazione dei dati dopo questa configurazione iniziale, nel qual caso dovrebbe ritentare un’esportazione il giorno successivo.
Ti consiglio di interrogare i tuoi dati nei primi giorni per verificare se sono stati archiviati correttamente.
Monitorare lo stato dell’esportazione
Monitorare lo stato dell’esportazione dei dati dalla Search Console è una pratica cruciale per assicurare la continuità e l’accuratezza dell’accesso ai dati. Accedendo alla sezione Impostazioni, è possibile visualizzare lo stato dell’ultimo tentativo di esportazione accanto all’opzione Esportazione collettiva dei dati. Cliccando su questa opzione, si apre una pagina dettagliata dove, in caso di problemi non temporanei durante l’esportazione, viene fornito un messaggio informativo, oltre a un elenco di possibili errori e correzioni suggerite.
È fondamentale affrontare prontamente qualsiasi problema, poiché la Search Console interromperà i tentativi di esportazione per una data specifica dopo circa una settimana di tentativi falliti, e l’esportazione collettiva verrà completamente interrotta dopo circa un mese di tentativi non riusciti. L’interfaccia fornisce una chiara indicazione dello stato dell’esportazione, permettendo di prendere misure correttive tempestive per assicurare una gestione dei dati efficiente e continua. Questa pratica proattiva contribuisce a mantenere un flusso di dati costante, favorendo analisi accurate e decisioni basate su dati solidi.
Come procedere ora?
Puoi iniziare a eseguire query sui dati! Ecco alcune cose che puoi analizzare che non possono essere analizzate facilmente in un altro modo:
- Esegui query su più pagine contemporaneamente: in BigQuery, puoi eseguire una singola query SQL per ottenere metriche per tutte le pagine (o un sottoinsieme di pagine) senza dover fare clic su ciascuna di esse singolarmente.
- Rapporto sulla stagionalità del traffico: confronta i parametri di rendimento per stagione per identificare le tendenze e ottimizzare le campagne di conseguenza.
- Analisi collettiva su più siti: se gestisci un marchio con più di un sito web, questo ti consente di esaminare i clic su tutti questi siti contemporaneamente.
- Percentuale di clic (CTR) per pagina e query: invece di limitarsi a considerare il CTR medio, potresti calcolare il CTR per ogni singola pagina e query di ricerca.
Esempi di query SQL
Esempio 1:
SELECT
query,
device,
sum(impressions) AS impressions,
sum(clicks) AS clicks,
sum(clicks) / sum(impressions) AS ctr,
((sum(sum_top_position) / sum(impressions)) + 1.0) AS avg_position
FROM searchconsole.searchdata_site_impression
WHERE search_type = 'WEB'
AND country = 'ITA'
AND device = 'MOBILE'
AND data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day) and CURRENT_DATE()
GROUP BY 1,2
ORDER BY clicks
LIMIT 1000
La query SQL fornita è progettata per estrarre dati dalla tabella searchconsole.searchdata_site_impression in BigQuery, filtrando per tipo di ricerca ‘WEB’, paese ‘ITA’, dispositivo ‘MOBILE’, e data degli ultimi 14 giorni. L’obiettivo è aggregare e organizzare dati relativi a query, dispositivo, impressioni, clic, tasso di clic (CTR) e posizione media per ogni combinazione di query e dispositivo. I risultati vengono raggruppati per query e dispositivo, ordinati in base al numero di clic in ordine crescente, e limitati ai primi 1000 record.
Esempio 2:
SELECT
url,
search_type,
sum(impressions) as impressions,
sum(clicks) as clicks
FROM searchconsole.searchdata_url_impression
WHERE data_date between DATE_SUB(CURRENT_DATE(), INTERVAL 14 day) and CURRENT_DATE()
GROUP BY 1,2
ORDER BY 3 desc
LIMIT 1000
La query SQL fornita mira a estrarre e aggregare dati dalla tabella searchconsole.searchdata_url_impression in BigQuery, focalizzandosi sulle impressioni e i clic per ogni URL e tipo di ricerca negli ultimi 14 giorni. Raggruppa i risultati per URL e tipo di ricerca, ordinando in modo decrescente basato sul numero di impressioni. Infine, limita l’output ai primi 1000 record. Questa query permette di analizzare le performance di diversi URL e tipi di ricerca in termini di impressioni e clic in un periodo di tempo specifico.
Per maggiori informazioni sulle tabelle ed i campi, leggi la documentazione ufficiale. RTFM!
Connetti Lookerstudio
In questa fase, è possibile semplificare notevolmente la creazione di report.
Ecco un modello di report per Google Looker Studio basato su Search Console. Utilizza il foglio denominato “Bulk BQ Test”, che è stato progettato per l’esportazione massiva delle parole chiave da Google Search Console.
Per iniziare, fai una copia del modello cliccando sui tre puntini in alto a destra. Successivamente, aggiungi le tue fonti dati:
- Vai su Risorse -> Gestisci Fonti Dati Aggiunte.
- Aggiungi una nuova fonte dati.
- Seleziona BigQuery.
- Scegli il tuo progetto, dataset e la tabella pianificata creata in precedenza.
- Salva i dati.
- Verifica che la tabella in Looker Studio stia utilizzando questa nuova fonte dati.
- Dovresti ora vedere i tuoi dati provenienti da BigQuery. Se noti che i metriche sono cambiate, potrebbe essere necessario aggiornarle manualmente. Personalizza la tabella secondo le tue esigenze!
- Puoi anche combinare tabelle in BigQuery per un reporting più completo su Looker Studio.
In questo specifico caso, l’utilizzo di Looker Studio offre il vantaggio di semplificare e personalizzare la creazione di report basati sui dati esportati in massa da Google Search Console a BigQuery. Con Looker Studio, puoi visualizzare questi dati in modo dinamico e interattivo, consentendo un’analisi più approfondita delle prestazioni di ricerca. Inoltre, la possibilità di combinare tabelle e filtrare i dati direttamente in Looker Studio permette di ottenere insight più accurati e mirati, rendendo la gestione dei dati molto più efficiente e flessibile rispetto agli strumenti standard.
Conclusione
In sintesi
La funzionalità integrata di esportazione di dati in blocco da Google Search Console a BigQuery di Google offre una soluzione più solida per l’analisi dei dati nella SEO rispetto ai (pochi) dati forniti dalla UX di Google Search Console. Tuttavia, esistono limitazioni, come la necessità di sviluppare competenze in Google Cloud e SQL e i potenziali costi associati all’archiviazione e alle query BigQuery.