Trasferimenti dei rapporti di Google Ads

BigQuery Data Transfer Service per Google Ads (noto in precedenza come Google AdWords) consente di pianificare e gestire automaticamente offerte di lavoro di caricamento ricorrenti per i dati dei report Google Ads.

Report supportati

BigQuery Data Transfer Service per Google Ads supporta API Google Ads v16:

Per informazioni su come i report di Google Ads vengono trasformati per le tabelle e le viste di BigQuery Data Transfer Service, consulta Trasformazioni dei report di Google Ads.

Per mappare i report Google Ads a ciò che vedi nell'interfaccia utente di Google Ads, consulta Mappatura dei report all'interfaccia utente di Google Ads.

Opzione di segnalazione Assistenza
Versione API supportata

v16

Pianificazione

Ogni giorno, nel momento in cui viene creato per la prima volta il trasferimento (impostazione predefinita)

Puoi configurare l'ora del giorno.

Finestra di aggiornamento

Ultimi 7 giorni (impostazione predefinita)

Configurabile fino a 30 giorni

Istantanee di tabelle delle corrispondenze vengono prese una volta al giorno e archiviate nella partizione per la data dell'ultima esecuzione. Gli snapshot della tabella delle corrispondenze non vengono aggiornati per i backfill o per i giorni di caricamento utilizzando la finestra di aggiornamento.

Durata massima del backfill

Nessun limite

Sebbene Google Ads non disponga di dati noti, limiti di conservazione Report sul rendimento dei clic BigQuery Data Transfer Service prevede dei limiti sul numero di giorni che possono essere richiesti un unico backfill. Per informazioni sui backfill, consulta Configura un backfill.

Numero di ID cliente per account amministratore

8000

BigQuery Data Transfer Service supporta un massimo di 8000 ID cliente per ogni account Google Ads account amministratore (Centro clienti).

Importazione dati da trasferimenti di Google Ads

Quando trasferisci i dati da Google Ads a BigQuery, vengono caricati in tabelle BigQuery partizionate per data. La partizione della tabella in cui vengono caricati i dati corrisponde alla data da l'origine dati. Se pianifichi più trasferimenti per la stessa data, BigQuery Data Transfer Service sovrascrive la partizione per quella data specifica con i dati più recenti. Più trasferimenti nello stesso giorno o backfill in esecuzione non generano dati duplicati e le partizioni per altre date non sono interessate.

Limitazioni

  • La frequenza massima con cui puoi configurare un account Google Ads il trasferimento per è una volta ogni 24 ore su 24. Per impostazione predefinita, un trasferimento inizia nel momento in cui crei trasferimento. Tuttavia, puoi configurare l'ora di inizio del trasferimento crea il trasferimento.
  • BigQuery Data Transfer Service non supporta i trasferimenti incrementali durante un Trasferimento da Google Ads. Quando specifichi una data per un dato vengono trasferiti tutti i dati disponibili per quella data.

Prima di iniziare

Prima di creare un trasferimento Google Ads:

Autorizzazioni obbligatorie

Assicurati che la persona che crea il trasferimento abbia quanto segue richiesto autorizzazioni:

  • BigQuery Data Transfer Service.

    • bigquery.transfers.update autorizzazioni per creare il trasferimento
    • Autorizzazioni bigquery.datasets.get e bigquery.datasets.update attive il set di dati di destinazione

    Il ruolo IAM predefinito bigquery.admin include bigquery.transfers.update, bigquery.datasets.update e Autorizzazioni bigquery.datasets.get. Per ulteriori informazioni sui ruoli IAM in BigQuery Data Transfer Service, consulta Riferimento per il controllo dell'accesso.

  • Google Ads: accesso in lettura ai dati di Google Ads. ID cliente o account amministratore (Centro clienti) utilizzato nella configurazione del trasferimento.

Crea trasferimento dati Google Ads

Per creare un trasferimento di dati per i report Google Ads, devi disporre il tuo ID cliente Google Ads o il tuo account amministratore (Centro clienti). Per informazioni sul recupero del tuo ID cliente Google Ads, consulta Individua l'ID cliente.

Per creare un trasferimento di dati per i report di Google Ads, seleziona una delle seguenti opzioni:

Console

  1. Vai alla pagina BigQuery nella console Google Cloud.

    Vai alla pagina di BigQuery

  2. Fai clic su Trasferimenti di dati.

  3. Fai clic su Crea trasferimento.

  4. Nella sezione Tipo di origine, per Origine, scegli Google Ads.

  5. Nella sezione Nome configurazione di trasferimento, per Nome visualizzato, inserisci un nome del trasferimento, ad esempio My Transfer. Il nome del trasferimento può essere qualsiasi valore che ti consenta di identificare il trasferimento, se necessario per modificarlo in un secondo momento.

  6. Nella sezione Opzioni di pianificazione:

    • In Frequenza di ripetizione, scegli un'opzione per la frequenza di esecuzione del trasferimento. Se selezioni Giorni, fornisci un orario valido nel formato UTC.

      • Ore
      • Giorni
      • On demand
    • Se applicabile, seleziona Inizia ora o Inizia all'ora impostata. e specificare una data di inizio e un'ora di esecuzione.

  7. Nella sezione Impostazioni destinazione, per Set di dati, seleziona il set di dati che hai creato per archiviare i tuoi dati.

  8. Nella sezione Dettagli origine dati:

    1. In ID cliente, inserisci il tuo ID cliente Google Ads:

      Dettagli dell'origine Google Ads

    2. (Facoltativo) Seleziona le opzioni per escludere gli elementi rimossi o disattivati e includere le tabelle nuove in Google Ads.

    3. (Facoltativo) Inserisci un elenco separato da virgole di tabelle da includere, ad esempio Campaign, AdGroup. Aggiungi a questo elenco il prefisso - per escluderne alcune come -Campaign, AdGroup. Tutte le tabelle sono incluse da predefinito.

    4. (Facoltativo) Seleziona l'opzione per includere tabelle specifiche di PMax report. Per ulteriori informazioni sull'assistenza di PMax, consulta PMax. assistenza.

    5. (Facoltativo) Per Aggiorna finestra, inserisci un valore compreso tra 1 e 30.

  9. Nel menu Account di servizio, seleziona un account di servizio dagli account di servizio associati progetto Google Cloud. Puoi associare un account di servizio a il trasferimento anziché utilizzare le tue credenziali utente. Per ulteriori informazioni informazioni sull'uso di account di servizio con i trasferimenti di dati, vedi Utilizzare gli account di servizio.

    • Se hai eseguito l'accesso con un'identità federata: per creare un trasferimento è necessario un account di servizio. Se hai firmato con un Account Google, poi l'account di servizio per il trasferimento è facoltativo.
    • L'account di servizio deve disporre delle autorizzazioni richieste.
  10. (Facoltativo) Nella sezione Opzioni di notifica:

    • Fai clic sul pulsante di attivazione/disattivazione per abilitare le notifiche via email. Se attivi questa opzione, l'amministratore dei trasferimenti riceve una notifica via email se un trasferimento non va a buon fine.

    • Fai clic sul pulsante di attivazione/disattivazione per abilitare le notifiche Pub/Sub. Per Seleziona un argomento Cloud Pub/Sub, scegli l'argomento o fai clic su Crea un argomento. Questa opzione configura l'esecuzione delle notifiche in Pub/Sub per il trasferimento.

      Notifiche di Google Ads

  11. Fai clic su Salva.

bq

Inserisci il comando bq mk e fornisci il flag di creazione del trasferimento: --transfer_config. Sono necessari anche i seguenti flag:

  • --data_source
  • --target_dataset
  • --display_name
  • --params

I seguenti flag sono facoltativi:

  • --project_id: specifica il progetto da utilizzare. Se il flag non è specificato, viene utilizzato il progetto predefinito.
  • --table_filter: specifica le tabelle da includere nel trasferimento. Se il flag non è specificato, sono incluse tutte le tabelle. Per includere solo tabelle specifiche, utilizza un elenco di valori separati da virgole (ad esempio, Ad, Campaign e AdGroup). Per escludere tabelle specifiche, aggiungi il prefisso ai valori con Un trattino (-) (ad esempio -Ad, Campaign, AdGroup).
  • --service_account_name: specifica un account di servizio da utilizzare per Google Ads anziché al tuo account utente.
bq mk \
--transfer_config \
--project_id=project_id \
--target_dataset=dataset \
--display_name=name \
--params='parameters' \
--data_source=data_source \
--table_filter=tables
--service_account_name=service_account_name

Dove:

  • project_id è l'ID progetto.
  • dataset è il set di dati di destinazione per la configurazione del trasferimento.
  • name è il nome visualizzato della configurazione di trasferimento. La Transfer name può essere qualsiasi valore che ti consenta di identificare se devi modificarlo in un secondo momento.
  • parameters contiene i parametri per il trasferimento creato configurazione in formato JSON. Ad esempio: --params='{"param":"param_value"}'. Per Google Ads, devi fornire il parametro customer_id. Tu può impostare facoltativamente il parametro exclude_removed_items su true in impedire il trasferimento di entità e metriche rimosse o disattivate.
  • data_source è l'origine dati: google_ads.
  • tables è l'elenco separato da virgole di tabelle da includere o escludere dal trasferimento.
  • service_account_name è il nome dell'account di servizio utilizzato di autenticare il trasferimento. Il servizio deve essere di proprietà dello stesso project_id usato per creare e deve disporre di tutte le autorizzazioni richieste.

Ad esempio, il seguente comando crea un trasferimento Google Ads denominato My Transfer con l'ID cliente 123-123-1234 e il set di dati di destinazione mydataset. Il trasferimento viene creato nel progetto predefinito:

bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"customer_id":"123-123-1234","exclude_removed_items":"true"}' \
--data_source=google_ads

La prima volta che esegui il comando, viene visualizzato un messaggio simile al seguenti:

[URL omitted] Please copy and paste the above URL into your web browser and follow the instructions to retrieve an authentication code.

Segui le istruzioni nel messaggio e incolla il codice di autenticazione la riga di comando.

API

Utilizza la projects.locations.transferConfigs.create e fornisce un'istanza del metodo TransferConfig risorsa.

Java

Prima di provare questo esempio, segui le istruzioni per la configurazione di Java nel Guida rapida di BigQuery con librerie client. Per ulteriori informazioni, consulta API Java BigQuery documentazione di riferimento.

Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per le librerie client.

import com.google.api.gax.rpc.ApiException;
import com.google.cloud.bigquery.datatransfer.v1.CreateTransferConfigRequest;
import com.google.cloud.bigquery.datatransfer.v1.DataTransferServiceClient;
import com.google.cloud.bigquery.datatransfer.v1.ProjectName;
import com.google.cloud.bigquery.datatransfer.v1.TransferConfig;
import com.google.protobuf.Struct;
import com.google.protobuf.Value;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

// Sample to create ads(formerly AdWords) transfer config
public class CreateAdsTransfer {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    final String projectId = "MY_PROJECT_ID";
    String datasetId = "MY_DATASET_ID";
    // the customer_id only allows digits and hyphen ('-').
    String customerId = "012-345-6789";
    String refreshWindow = "100";
    Map<String, Value> params = new HashMap<>();
    params.put("customer_id", Value.newBuilder().setStringValue(customerId).build());
    params.put("refreshWindow", Value.newBuilder().setStringValue(refreshWindow).build());
    TransferConfig transferConfig =
        TransferConfig.newBuilder()
            .setDestinationDatasetId(datasetId)
            .setDisplayName("Your Ads Transfer Config Name")
            .setDataSourceId("adwords")
            .setParams(Struct.newBuilder().putAllFields(params).build())
            .build();
    createAdsTransfer(projectId, transferConfig);
  }

  public static void createAdsTransfer(String projectId, TransferConfig transferConfig)
      throws IOException {
    try (DataTransferServiceClient client = DataTransferServiceClient.create()) {
      ProjectName parent = ProjectName.of(projectId);
      CreateTransferConfigRequest request =
          CreateTransferConfigRequest.newBuilder()
              .setParent(parent.toString())
              .setTransferConfig(transferConfig)
              .build();
      TransferConfig config = client.createTransferConfig(request);
      System.out.println("Ads transfer created successfully :" + config.getName());
    } catch (ApiException ex) {
      System.out.print("Ads transfer was not created." + ex.toString());
    }
  }
}

Attivare manualmente un trasferimento Google Ads

Quando attivi manualmente un trasferimento Per Google Ads, le istantanee delle tabelle delle corrispondenze vengono acquisite una volta al giorno e archiviato nella partizione per l'ultima data di esecuzione. Quando attivi una trasferimento manuale, gli snapshot delle tabelle delle corrispondenze per le seguenti tabelle non vengono aggiornati:

  • Annuncio
  • AdGroup
  • AdGroupAudience
  • AdGroupBidModifier
  • AdGroupAdLabel
  • AdGroupCriterion
  • AdGroupCriterionLabel
  • AdGroupLabel
  • AgeRange
  • Asset
  • AssetGroup
  • AssetGroupAsset
  • AssetGroupListingGroupFilter
  • AssetGroupSignal
  • Pubblico
  • BidGoal
  • Budget
  • Campagna
  • CampaignAudience
  • CampaignCriterion
  • CampaignLabel
  • Cliente
  • Genere
  • Parola chiave
  • LocationBasedCampaignCriterion
  • ParentalStatus
  • Posizionamento
  • Video

Assistenza di Performance Max

Il connettore Google Ads ti consente di esportare PMax campagne. Devi seleziona la casella di controllo Includi tabelle delle campagne PMax quando creazione di un trasferimento di dati, poiché i dati PMax non vengono esportati per impostazione predefinita.

L'inclusione dei dati di Performance Max rimuove i dati ad_group campi da alcune tabelle e include nuove tabelle. Non puoi includere ad_group campi perché l'API Google Ads filtra i dati PMax.

Le seguenti tabelle escludono ad_group colonne correlate quando Includi PMax La casella di controllo Tabelle delle campagne è selezionata:

  • GeoStats
  • GeoConversionStats
  • ShoppingProductConversionStats
  • ShoppingProductStats
  • LocationsUserLocationsStats

Le seguenti tabelle vengono aggiunte quando Includi tabelle delle campagne PMax. casella di controllo selezionata:

  • Asset
  • AssetGroup
  • AssetGroupAsset
  • AssetGroupListingGroupFilter
  • AssetGroupSignal
  • Pubblico
  • AssetGroupProductGroupStats
  • CampaignAssetStats

Assistenza per gli account amministratore Google Ads

Clienti esistenti con più trasferimenti Google Ads specifici per l'ID cliente ti invitiamo a configurare un unico trasferimento Google Ads nell'account amministratore (Centro clienti), pianificare un backfill e disabilitare singoli ID cliente specifici Trasferimenti dei rapporti Google Ads.

L'utilizzo degli account amministratore Google Ads offre diversi vantaggi rispetto all'utilizzo ID cliente individuali:

  • Non è più necessario gestire più trasferimenti per generare report su più ID cliente.
  • Le query tra clienti sono molto più semplici da scrivere perché tutti gli ID cliente sono archiviati nella stessa tabella.
  • L'utilizzo dei Centri clienti riduce i problemi di quota di carico di BigQuery Data Transfer Service perché nello stesso job vengono caricati più ID cliente.

Per saperne di più sugli account amministratore Google Ads (Centri clienti), consulta Utilizzo degli account gestiti e Informazioni sul collegamento degli account all'account amministratore.

Esempio

Il seguente elenco mostra gli ID cliente collegati a un determinato account Google Ads account amministratore:

  • 1234567890 - account amministratore radice
    • 1234 - account amministratore secondario
      • 1111 - ID cliente
      • 2222 - ID cliente
      • 3333 - ID cliente
      • 4444 - ID cliente
      • 567 - account amministratore secondario
        • 5555 - ID cliente
        • 6666 - ID cliente
        • 7777 - ID cliente
    • 89 - account amministratore secondario
      • 8888 - ID cliente
      • 9999 - ID cliente
    • 0000 - ID cliente

Ciascun ID cliente collegato a un account amministratore compare in ogni report. Per ulteriori informazioni informazioni sulla struttura dei report di Google Ads in BigQuery Data Transfer Service; vedi Trasformazione dei report di Google Ads.

Configurazione di trasferimento per l'ID cliente 1234567890

Una configurazione di trasferimento per l'account amministratore principale (ID cliente 1234567890) genererebbe esecuzioni di trasferimento che includono i seguenti ID cliente:

  • 1111 (tramite l'account amministratore secondario 1234)
  • 2222 (tramite l'account amministratore secondario 1234)
  • 3333 (tramite l'account amministratore secondario 1234)
  • 4444 (tramite l'account amministratore secondario 1234)
  • 5555 (tramite l'account amministratore secondario 567 e l'account amministratore secondario 1234)
  • 6666 (tramite l'account amministratore secondario 567 e l'account amministratore secondario 1234)
  • 7777 (tramite l'account amministratore secondario 567 e l'account amministratore secondario 1234)
  • 8888 (tramite account amministratore secondario 89)
  • 9999 (tramite account amministratore secondario 89)
  • 0000 (ID cliente individuale)

Configurazione di trasferimento per l'ID cliente 1234

Una configurazione di trasferimento per l'account amministratore secondario 123 (ID cliente 1234) generare esecuzioni di trasferimento che includano i seguenti ID cliente:

  • 1111
  • 2222
  • 3333
  • 4444
  • 5555 (tramite l'account amministratore secondario 567)
  • 6666 (tramite l'account amministratore secondario 567)
  • 7777 (tramite l'account amministratore secondario 567)

Configurazione di trasferimento per l'ID cliente 567

Una configurazione di trasferimento per l'account amministratore secondario 567 (ID cliente 567) generare esecuzioni di trasferimento che includano i seguenti ID cliente:

  • 5555
  • 6666
  • 7777

Configurazione di trasferimento per l'ID cliente 89

Una configurazione di trasferimento per l'account amministratore secondario 89 (ID cliente 89) generare esecuzioni di trasferimento che includano i seguenti ID cliente:

  • 8888
  • 9999

Configurazione di trasferimento per l'ID cliente 0000

Una configurazione di trasferimento per l'ID cliente 0000 genererebbe esecuzioni di trasferimento che includi solo l'ID cliente individuale:

  • 0000

Eseguire la migrazione dei dati Google Ads al Centro clienti

Per eseguire la migrazione dei dati Google Ads esistenti in BigQuery Data Transfer Service in Centro clienti, puoi configurare un backfill per aggiungere i dati esistenti alle tabelle create dalla configurazione di trasferimento collegate all'account amministratore. Tieni presente che quando pianifichi un backfill, le tabelle non vengono aggiornate.

Risolvere i problemi relativi alla configurazione del trasferimento di Google Ads

Se riscontri problemi durante la configurazione del trasferimento, vedi Problemi di trasferimento google ads in Risoluzione dei problemi relativi alle configurazioni di trasferimento.

Eseguire query sui dati

Quando vengono trasferiti in BigQuery Data Transfer Service, i dati vengono vengono scritte in tabelle partizionate in fase di importazione. Per ulteriori informazioni, vedi Introduzione alle tabelle partizionate.

Se esegui una query direttamente sulle tabelle anziché utilizzare le viste generate automaticamente, deve utilizzare la pseudocolonna _PARTITIONTIME nella query. Per ulteriori informazioni, consulta Esecuzione di query su tabelle partizionate.

Query di esempio Google Ads

Per analizzare i dati trasferiti, puoi utilizzare le seguenti query di esempio in Google Ads e i dati di Google Cloud. Puoi utilizzare le query anche in uno strumento di visualizzazione come Looker Studio Queste query vengono fornite per aiutarti a iniziare a inviare query sui tuoi annunci Google Ads con BigQuery Data Transfer Service. Per ulteriori domande sulle utenti con questi report, contatta il tuo rappresentante tecnico Google Ads.

In ciascuna delle seguenti query, sostituisci dataset con il tuo set di dati . Sostituisci customer_id con il tuo ID cliente Google Ads.

Se esegui una query direttamente sulle tabelle invece di utilizzare il modello generato automaticamente devi utilizzare la pseudocolonna _PARTITIONTIME nella query. Per ulteriori informazioni consulta Esecuzione di query su tabelle partizionate.

Rendimento delle campagne

La seguente query di esempio analizza il rendimento delle campagne Google Ads nel passato 30 giorni.

Console

SELECT
  c.customer_id,
  c.campaign_name,
  c.campaign_status,
  SUM(cs.metrics_impressions) AS Impressions,
  SUM(cs.metrics_interactions) AS Interactions,
  (SUM(cs.metrics_cost_micros) / 1000000) AS Cost
FROM
  `DATASET.ads_Campaign_CUSTOMER_ID` c
LEFT JOIN
  `DATASET.ads_CampaignBasicStats_CUSTOMER_ID` cs
ON
  (c.campaign_id = cs.campaign_id
  AND cs._DATA_DATE BETWEEN
  DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) AND DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY))
WHERE
  c._DATA_DATE = c._LATEST_DATE
GROUP BY
  1, 2, 3
ORDER BY
  Impressions DESC

bq

  bq query --use_legacy_sql=false '
  SELECT
    c.customer_id,
    c.campaign_name,
    c.campaign_status,
    SUM(cs.metrics_impressions) AS Impressions,
    SUM(cs.metrics_interactions) AS Interactions,
    (SUM(cs.metrics_cost_micros) / 1000000) AS Cost
  FROM
    `DATASET.ads_Campaign_CUSTOMER_ID` c
  LEFT JOIN
    `DATASET.ads_CampaignBasicStats_CUSTOMER_ID` cs
  ON
    (c.campaign_id = cs.campaign_id
    AND cs._DATA_DATE BETWEEN
    DATE_ADD(CURRENT_DATE(), INTERVAL -31 DAY) AND DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY))
  WHERE
    c._DATA_DATE = c._LATEST_DATE
  GROUP BY
    1, 2, 3
  ORDER BY
    Impressions DESC'

Numero di parole chiave

La seguente query di esempio analizza le parole chiave in base alla campagna, al gruppo di annunci e alla parola chiave . Questa query utilizza la funzione KeywordMatchType. Tipi di corrispondenza delle parole chiave per controllare le ricerche che attivano la pubblicazione del tuo annuncio. Per ulteriori informazioni sulle parole chiave le opzioni di corrispondenza, consulta Informazioni sulle opzioni di corrispondenza delle parole chiave.

Console

  SELECT
    c.campaign_status AS CampaignStatus,
    a.ad_group_status AS AdGroupStatus,
    k.ad_group_criterion_status AS KeywordStatus,
    k.ad_group_criterion_keyword_match_type AS KeywordMatchType,
    COUNT(*) AS count
  FROM
    `DATASET.ads_Keyword_CUSTOMER_ID` k
    JOIN
    `DATASET.ads_Campaign_CUSTOMER_ID` c
  ON
    (k.campaign_id = c.campaign_id AND k._DATA_DATE = c._DATA_DATE)
  JOIN
    `DATASET.ads_AdGroup_CUSTOMER_ID` a
  ON
    (k.ad_group_id = a.ad_group_id AND k._DATA_DATE = a._DATA_DATE)
  WHERE
    k._DATA_DATE = k._LATEST_DATE
  GROUP BY
    1, 2, 3, 4

bq

  bq query --use_legacy_sql=false '
  SELECT
    c.campaign_status AS CampaignStatus,
    a.ad_group_status AS AdGroupStatus,
    k.ad_group_criterion_status AS KeywordStatus,
    k.ad_group_criterion_keyword_match_type AS KeywordMatchType,
    COUNT(*) AS count
  FROM
    `DATASET.ads_Keyword_CUSTOMER_ID` k
  JOIN
    `DATASET.ads_Campaign_CUSTOMER_ID` c
  ON
    (k.campaign_id = c.campaign_id AND k._DATA_DATE = c._DATA_DATE)
  JOIN
    `DATASET.ads_AdGroup_CUSTOMER_ID` a
  ON
    (k.ad_group_id = a.ad_group_id AND k._DATA_DATE = a._DATA_DATE)
  WHERE
    k._DATA_DATE = k._LATEST_DATE
  GROUP BY
    1, 2, 3, 4'