Transferências do Google Ads
Com o serviço de transferência de dados do BigQuery para o conector do Google Ads (antes conhecido como Google AdWords), é possível programar e gerenciar automaticamente jobs de carregamento recorrentes dos dados de relatórios do Google Ads. Para saber mais sobre as mudanças recentes na fonte de dados, consulte o Registro de mudanças na fonte de dados do serviço de transferência de dados do BigQuery.
Relatórios compatíveis
O serviço de transferência de dados do BigQuery para Google Ads é compatível com a API Google Ads v16:
Para informações sobre como os relatórios do Google Ads são transformados em tabelas e visualizações do serviço de transferência de dados do BigQuery, consulte Transformações de relatórios do Google Ads.
Para mapear os relatórios do Google Ads para a IU do Google Ads, consulte Como mapear relatórios para a IU do Google Ads.
Opção de relatório | Suporte |
---|---|
Versão da API compatível | |
Repetir frequência | Diariamente, no horário em que a transferência de dados foi criada pela primeira vez (padrão) Você pode configurar a hora do dia. |
Atualizar janela | Últimos 7 dias (padrão) Configurável para até 30 dias Snapshots de tabelas de correspondência são produzidos uma vez por dia e armazenados na partição referente à data de execução mais recente. Esses snapshots NÃO são atualizados quanto a preenchimentos ou dias carregados por meio da janela de atualização. |
Duração máxima do preenchimento | Sem limite O Google Ads não tem limites conhecidos de retenção de dados, exceto o Relatório de desempenho de cliques, mas o serviço de transferência de dados do BigQuery tem limites em relação a quantos dias podem ser solicitados em um único preenchimento. Para informações sobre preenchimentos, consulte Acionar manualmente uma transferência. |
Número de IDs de cliente por conta de administrador | 8.000 O serviço de transferência de dados do BigQuery aceita no máximo 8.000 IDs de clientepara cada conta de administrador (MCC) do Google Ads. |
Ingestão de dados de transferências do Google Ads
Ao transferir dados do Google Ads para o BigQuery, eles são carregados em tabelas do BigQuery particionadas por data. A partição da tabela em que os dados são carregados corresponde à data da fonte de dados. Se você programar várias transferências para a mesma data, o serviço de transferência de dados do BigQuery substituirá a partição dessa data específica pelos dados mais recentes. Várias transferências no mesmo dia ou preenchimentos não resultam em dados duplicados, e as partições de outras datas não são afetadas.Atualizar janelas
Uma janela de atualização é o número de dias que uma transferência de dados recupera dados quando ocorre uma transferência de dados. Por exemplo, se a janela de atualização for de três dias e uma transferência diária ocorrer, o serviço de transferência de dados do BigQuery vai extrair todos os dados da tabela de origem dos últimos três dias. Nesse exemplo, quando uma transferência diária ocorre, o serviço de transferência de dados do BigQuery cria uma nova partição de tabela de destino do BigQuery com uma cópia dos dados da tabela de origem do dia atual e, em seguida, aciona automaticamente as execuções de preenchimento para atualizar as partições de tabela de destino do BigQuery com os dados da tabela de origem dos últimos dois dias. As execuções de preenchimento automático acionadas automaticamente vão substituir ou atualizar de forma incremental a tabela de destino do BigQuery, dependendo de se as atualizações incrementais são aceitas ou não pelo conector do serviço de transferência de dados do BigQuery.
Quando você executa uma transferência de dados pela primeira vez, ela recupera todos os dados de origem disponíveis na janela de atualização. Por exemplo, se a janela de atualização for de três dias e você executar a transferência de dados pela primeira vez, o serviço de transferência de dados do BigQuery vai recuperar todos os dados de origem em três dias.
As janelas de atualização são mapeadas para o campo da APITransferConfig.data_refresh_window_days
.
Para recuperar dados fora da janela de atualização, como dados históricos, ou para recuperar dados de interrupções ou lacunas de transferência, inicie ou programe uma execução de preenchimento.
Limitações
- A frequência máxima para configurar uma transferência de dados do Google Ads é de uma vez a cada 24 horas. Por padrão, uma transferência começa no momento em que você cria a transferência. No entanto, é possível configurar o horário de início da transferência ao criar sua transferência.
- O serviço de transferência de dados do BigQuery não é compatível com transferências incrementais durante uma transferência do Google Ads. Ao especificar uma data para uma transferência de dados, todos os dados disponíveis para essa data são transferidos.
Antes de começar
Antes de criar uma transferência de dados do Google Ads, faça o seguinte:
- Verifique se você realizou todas as ações necessárias para ativar o serviço de transferência de dados do BigQuery.
- Crie um conjunto de dados do serviço de transferência de dados do BigQuery para armazenar os dados do Google Ads.
- Se você pretende configurar notificações de transferência do Pub/Sub,
verifique se tem a permissão
pubsub.topics.setIamPolicy
. As permissões do Pub/Sub não serão necessárias caso você configure as notificações por e-mail. Para saber mais informações, consulte Notificações de execução do serviço de transferência de dados do BigQuery.
Permissões necessárias
Verifique se a pessoa que está criando a transferência de dados tem as seguintes permissões necessárias:
Serviço de transferência de dados do BigQuery:
- Permissões
bigquery.transfers.update
para criar a transferência de dados - Permissões
bigquery.datasets.get
ebigquery.datasets.update
no conjunto de dados de destino
O papel predefinido
bigquery.admin
do IAM inclui permissõesbigquery.transfers.update
,bigquery.datasets.update
ebigquery.datasets.get
. Para mais informações sobre os papéis do IAM no serviço de transferência de dados do BigQuery, consulte Referência de controle de acesso.- Permissões
Google Ads: acesso de leitura ao ID de cliente do Google Ads ou à conta de administrador (MCC) usada na configuração de transferência.
Criar transferência de dados do Google Ads
Para criar uma transferência de dados dos relatórios do Google Ads, você precisa do ID de cliente do Google Ads ou da sua conta de administrador (MCC). Para mais informações sobre como recuperar seu ID de cliente do Google Ads, consulte Encontrar seu ID de cliente.
Para criar uma transferência de dados dos relatórios do Google Ads, selecione uma das seguintes opções:
Console
Acesse a página "Transferências de dados" no console do Google Cloud.
Clique em
Criar transferência.Na seção Tipo de origem, em Origem, escolha Google Ads.
No campo Nome de exibição da seção Transferir nome da configuração, insira um nome para a transferência de dados, como
My Transfer
. O nome da transferência pode ser qualquer valor que permita identificá-la, caso você precise modificá-la mais tarde.Na seção Opções de programação, faça o seguinte:
Em Frequência de repetição, escolha uma opção para a frequência de execução da transferência de dados: Se você selecionar Dias, forneça um horário válido em UTC.
- Horas
- Dias
- Sob demanda
Se aplicável, selecione Começar agora ou Começar no horário definido e forneça uma data de início e um horário de execução.
Na seção Configurações de destino, em Conjunto de dados, selecione o conjunto de dados que você criou para armazenar seus dados.
Na seção Detalhes da fonte de dados:
Em ID de cliente, insira seu ID de cliente do Google Ads:
Opcional: selecione opções para excluir itens removidos ou desativados, além de incluir tabelas novas no Google Ads.
Opcional: insira uma lista de tabelas separadas por vírgulas para incluir, por exemplo,
Campaign, AdGroup
. Adicione o caractere-
como prefixo para excluir determinadas tabelas, por exemplo,-Campaign, AdGroup
. Todas as tabelas são incluídas por padrão.Opcional: selecione a opção para incluir tabelas específicas de relatórios de campanhas de maior desempenho. Para mais informações sobre a compatibilidade com PMax, consulte Suporte da PMax.
Opcional: em Período de atualização, insira um valor entre 1 e 30.
No menu Conta de serviço, selecione uma conta de serviço nas contas de serviço associadas ao seu projeto do Google Cloud. É possível associar uma conta de serviço à transferência de dados em vez de usar suas credenciais de usuário. Para mais informações sobre o uso de contas de serviço com transferências de dados, consulte Usar contas de serviço.
- Se você fez login com uma identidade federada, é necessário uma conta de serviço para criar uma transferência. Se você fez login com uma Conta do Google, uma conta de serviço para a transferência é opcional.
- A conta de serviço precisa ter as permissões necessárias.
Opcional: na seção Opções de notificação
Clique no botão para ativar as notificações por e-mail. Quando você ativa essa opção, o administrador de transferência recebe uma notificação por e-mail se uma execução de transferência falhar.
Clique no botão para ativar as notificações do Pub/Sub. Em Selecionar um tópico do Cloud Pub/Sub, escolha o nome do seu tópico ou clique em Criar um tópico. Essa opção configura notificações de execução do Pub/Sub da sua transferência.
Clique em Salvar.
bq
Insira o comando bq mk
e forneça a sinalização de execução da transferência
--transfer_config
. As sinalizações abaixo também são obrigatórias:
--data_source
--target_dataset
--display_name
--params
As sinalizações a seguir são opcionais:
--project_id
: especifica qual projeto usar. Se a sinalização não for especificada, o projeto padrão será usado.--table_filter
: especifica as tabelas a serem incluídas na transferência de dados. Se a sinalização não for especificada, todas as tabelas serão incluídas. Para incluir apenas tabelas específicas, use uma lista de valores separados por vírgula (por exemplo,Ad
,Campaign
,AdGroup
). Para excluir tabelas específicas, prefixe os valores com um hífen (-
) (por exemplo,-Ad
,Campaign
,AdGroup
).--schedule
: especifica a frequência de execução da consulta. Se você não especificar--schedule
, o padrão será definido comoevery 24 hours
. Para saber mais sobre a sintaxe da programação, consulte Como formatar a programação.--refresh_window_days
: especifica a janela de atualização para uma configuração de transferência em dias. O valor padrão é7
.--service_account_name
: especifica uma conta de serviço a ser usada para a autenticação de transferência do Google Ads, em vez da sua conta de usuário.
bq mk \ --transfer_config \ --project_id=PROJECT_ID \ --target_dataset=DATASET \ --display_name=NAME \ --params='PARAMETERS' \ --data_source=DATA_SOURCE \ --table_filter=TABLES \ --schedule=SCHEDULE --refresh_window_days=REFRESH_DAYS --service_account_name=SERVICE_ACCOUNT_NAME
Em que:
- PROJECT_ID é o ID do projeto;
- DATASET é o conjunto de dados de destino na configuração da transferência de dados.
- NAME é o nome de exibição da configuração de transferência de dados. O nome da transferência pode ser qualquer valor que permita identificá-la facilmente, caso precise modificá-la mais tarde.
- PARAMETERS contém os parâmetros da configuração da
transferência criada no formato JSON. Por exemplo:
--params='{"param":"param_value"}'
. No Google Ads, você precisa fornecer o parâmetrocustomer_id
. Se quiser, defina o parâmetroexclude_removed_items
comotrue
para evitar a transferência de entidades e métricas removidas ou desativadas. - DATA_SOURCE é a fonte de dados:
google_ads
. - TABLES é a lista separada por vírgulas de tabelas a serem incluídas ou excluídas da transferência de dados.
- SCHEDULE é a frequência de execução da consulta. Se
--schedule
não for especificado, o padrão será a cada 24 horas, a partir do momento em que a transferência for criada. - REFRESH_DAYS é um número inteiro que especifica a janela de atualização
para uma configuração de transferência em dias. O valor padrão é
7
. - SERVICE_ACCOUNT_NAME é o nome da conta de serviço usado para autenticar a transferência. A conta de serviço precisa pertencer ao mesmo
project_id
usado para criar a transferência e ter todas as permissões necessárias.
Por exemplo, o comando a seguir cria uma transferência de dados do Google Ads chamada
My Transfer
usando o ID de cliente 123-123-1234
e o conjunto de dados de destino
mydataset
. A transferência de dados é criada no projeto padrão:
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
Ao executar o comando pela primeira vez, você recebe uma mensagem como esta:
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
Siga as instruções na mensagem e cole o código de autenticação na linha de comando.
API
Use o método projects.locations.transferConfigs.create
e forneça uma instância do recurso
TransferConfig
.
Java
Antes de testar esta amostra, siga as instruções de configuração do Java no Guia de início rápido do BigQuery: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API BigQuery em Java.
Para autenticar no BigQuery, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Acionar manualmente uma transferência do Google Ads
Quando você aciona manualmente uma transferência do Google Ads, os snapshots das tabelas de correspondência são criados uma vez por dia e armazenados na partição da data de execução mais recente. Quando você aciona uma transferência manual, os snapshots da tabela de correspondências para as tabelas a seguir não são atualizados:
- Anúncio
- AdGroup
- AdGroupAudience
- AdGroupBidModifier
- AdGroupAdLabel
- AdGroupCriterion
- AdGroupCriterionLabel
- AdGroupLabel
- AgeRange
- Recurso
- AssetGroup
- AssetGroupAsset
- AssetGroupListingGroupFilter
- AssetGroupSignal
- Público-alvo
- BidGoal
- Budget
- Campanha
- CampaignAudience
- CampaignCriterion
- CampaignLabel
- Cliente
- Gender
- Keyword
- LocationBasedCampaignCriterion
- ParentalStatus
- Placement
- Vídeo
Suporte a campanhas de maior desempenho
Com o conector do Google Ads, é possível exportar dados de campanhas de maior desempenho. É necessário marcar a caixa de seleção Incluir tabelas da campanha Performance Max ao criar uma transferência de dados, já que os dados da PMax não são exportados por padrão.
A inclusão de dados da PMax remove os campos ad_group
de determinadas tabelas e inclui novas tabelas. Não é possível incluir campos ad_group
porque a API Google Ads filtra os dados PMax.
As tabelas a seguir excluem as colunas relacionadas ad_group
quando a caixa de seleção Include PMax
Tables está marcada:
- GeoStats
- GeoConversionStats
- ShoppingProductConversionStats
- ShoppingProductStats
- LocationsUserLocationsStats
As tabelas a seguir são adicionadas quando a caixa de seleção Incluir tabelas de campanhas de maior desempenho é marcada:
- Recurso
- AssetGroup
- AssetGroupAsset
- AssetGroupListingGroupFilter
- AssetGroupSignal
- Público-alvo
- AssetGroupProductGroupStats
- CampaignAssetStats
Suporte para contas de administrador do Google Ads
Recomendamos aos clientes existentes que tenham várias transferências do Google Ads de ID de cliente específico que configurem uma única transferência do Google Ads no nível de conta de administrador (MCC), programem um preenchimento e desabilitem transferências do Google Ads específicas de ID de cliente individual.
O uso de contas de administrador do Google Ads oferece várias vantagens em relação ao uso de IDs de cliente individuais:
- Não é mais necessário gerenciar várias transferências de dados para gerar relatórios sobre vários IDs de cliente.
- As consultas entre clientes são muito mais simples de escrever porque todos os IDs de cliente são armazenados na mesma tabela.
- O uso de MCCs reduz os problemas de cota de carregamento do serviço de transferência de dados do BigQuery porque vários IDs de cliente são carregados no mesmo job.
Para mais informações sobre contas de administrador do Google Ads (MCCs), consulte Como trabalhar com contas gerenciadas e Como vincular contas à sua conta de administrador.
Exemplo
Confira na lista a seguir os IDs de cliente vinculados a determinadas contas de administrador do Google Ads:
- 1234567890: conta de administrador raiz
- 1234: conta de subadministrador
- 1111: ID de cliente
- 2222 - ID de cliente
- 3333 - ID de cliente
- 4444: ID de cliente
- 567: conta de subadministrador
- 5555: ID de cliente
- 6666 - ID de cliente
- 7777: ID de cliente
- 89: conta de subadministrador
- 8888: ID de cliente
- 9999 - ID de cliente
- 0000 - ID de cliente
- 1234: conta de subadministrador
Todo ID de cliente vinculado a uma conta de administrador é exibido em cada relatório. Para mais informações sobre a estrutura de relatórios do Google Ads no serviço de transferência de dados do BigQuery, consulte Transformação de relatórios do Google Ads.
Configuração de transferência do ID de cliente 1234567890
Uma configuração de transferência da conta de administrador raiz (ID de cliente 1234567890) geraria execuções de transferência de dados que incluem os seguintes IDs de cliente:
- 1111 (por meio da conta de subadministrador 1234)
- 2222 (por meio da conta de subadministrador 1234)
- 3333 (por meio da conta de subadministrador 1234)
- 4444 (por meio da conta de subadministrador 1234)
- 5555 (por meio da conta de subadministrador 567 e da conta de subadministrador 1234)
- 6666 (por meio da conta de subadministrador 567 e da conta de subadministrador 1234)
- 7777 (por meio da conta de subadministrador 567 e da conta de subadministrador 1234)
- 8888 (por meio da conta de subadministrador 89)
- 9999 (por meio da conta de subadministrador 89)
- 0000 (ID de cliente individual)
Configuração de transferência do ID de cliente 1234
Uma configuração de transferência da conta de subadministrador 123 (ID de cliente 1234) geraria execuções de transferência que incluem os seguintes IDs de cliente:
- 1111
- 2222
- 3333
- 4444
- 5555 (por meio da conta de subadministrador 567)
- 6666 (por meio da conta de subadministrador 567)
- 7777 (por meio da conta de subadministrador 567)
Configuração de transferência do ID de cliente 567
Uma configuração de transferência da conta de subadministrador 567 (ID de cliente 567) geraria execuções de transferência que incluem os seguintes IDs de cliente:
- 5555
- 6666
- 7777
Configuração de transferência do ID de cliente 89
Uma configuração de transferência da conta de subadministrador 89 (ID de cliente 89) geraria execuções de transferência que incluem os seguintes IDs de cliente:
- 8888
- 9999
Configuração de transferência do ID de cliente 0000
Uma configuração de transferência do ID de cliente 0000 gera execuções de transferência de dados que incluem apenas o ID de cliente individual:
- 0000
Migrar dados do Google Ads para MCCs
Para migrar os dados atuais do Google Ads no serviço de transferência de dados do BigQuery para a estrutura da MCC, configure um preenchimento para adicioná-los às tabelas criadas pela configuração de transferência vinculada à conta de administrador. Quando você programa um preenchimento, as tabelas de correspondência não são atualizadas.
Resolver problemas de configuração de transferência do Google Ads
Se você tiver problemas para configurar a transferência de dados, consulte Problemas de transferência do Google Ads em Solução de problemas de configurações de transferência.
Consultar dados
Quando os dados são movidos para o serviço de transferência de dados do BigQuery, eles são gravados em tabelas particionadas por tempo de processamento. Para mais informações, consulte Introdução às tabelas particionadas.
Use a pseudocoluna _PARTITIONTIME
para consultar suas tabelas diretamente em vez de usar visualizações geradas automaticamente. Para mais informações, veja Como consultar tabelas particionadas.
Consultas de amostra do Google Ads
Use as consultas de amostra do Google Ads a seguir para analisar os dados transferidos. Também é possível usar as consultas em uma ferramenta de visualização, como o Looker Studio. Essas consultas são fornecidas para ajudar você a começar a consultar seus dados do Google Ads com o serviço de transferência do BigQuery. Para outras perguntas sobre o que é possível fazer com esses relatórios, entre em contato com o representante técnico do Google Ads.
Em todas as consultas a seguir, substitua dataset pelo nome do conjunto de dados. Substitua customer_id por seu ID de cliente do Google Ads.
Use a pseudocoluna _PARTITIONTIME
para consultar suas tabelas diretamente em vez
de usar visualizações geradas automaticamente. Para mais informações, veja Como consultar tabelas particionadas.
Desempenho da campanha
A consulta de amostra a seguir analisa o desempenho da campanha do Google Ads nos últimos 30 dias.
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'
Contagem de palavras-chave
Na consulta de amostra a seguir, analisamos as palavras-chave por
campanha, grupo de anúncios e status da palavra-chave. Nesta consulta, a função KeywordMatchType
é usada. Com os tipos de correspondência de palavras-chave, você controla quais pesquisas podem acionar o anúncio. Para mais informações sobre as opções de correspondência de palavras-chave, consulte Sobre opções de correspondência de palavras-chave.
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'