Pinterest Ads
Autorização na plataforma, nada para digitar. Dois avisos valem antes: a tela de permissões pede bem mais do que anúncios, e o desempenho diário só existe nos últimos 90 dias.
Começar
Conectarautorização na plataforma
Em Fontes · Conectar nova fonte · Pinterest Ads, o cartão abre a autorização com a lista de permissões. Não há formulário. A janela só fecha depois que o caOS já buscou as contas.
Em seguida marque as contas do workspace. Do Pinterest vêm o identificador, o nome e a moeda.
Avise que a tela pede mais do que anúncios. O caOS solicita, de uma vez: leitura e escrita de anúncios, de quadros e de pins, mais leitura da conta. Não é excesso decorativo: sem as permissões de quadros e pins o Pinterest recusa renovar o acesso depois, e a conexão para. As de escrita servem para pausar campanha e publicar pin pelos produtos do caOS. Quem autoriza precisa aceitar a lista inteira.
Libere pop-up no navegador antes de começar.
Sua credencial, e o que acontece com ela
Conectou uma vez, está conectado. A credencial se renova sozinha, indefinidamente. Você não precisa marcar data no calendário nem reconectar de tempos em tempos.
Só existe um jeito de a conexão cair: alguém revogar o acesso do lado da plataforma (senha trocada, pessoa removida da conta, autorização cancelada). Aí a conta aparece em Conexões perdidas e reconectar resolve, com as tags que ela já tinha.
A credencial fica cifrada de ponta a ponta. Ela é cifrada antes de ser gravada, e a chave não vive no banco: nem quem tem acesso ao banco lê o valor. Ninguém no caOS, nem você, vê a credencial de volta depois de salva; a tela mostra apenas que ela existe e está válida.
Só é lida a métrica que você pediu. O caOS não escreve na sua conta de anúncio para extrair dados, e não guarda dado pessoal de quem viu o anúncio. O tratamento segue a LGPD, e a exclusão é sua: revogar a conexão apaga a credencial guardada.
Referência
Métricas e dimensõeso que cada campo quer dizer
O Pinterest nomeia os campos em maiúsculas, e oferece variações da mesma métrica com sufixo 1 e 2 (janelas de atribuição diferentes). Use sempre a mesma família no relatório inteiro.
Métricas principais10 de 104
| Campo na API | O que é | Onde aparece |
|---|---|---|
| SPEND_IN_DOLLAR | Investimento. Apesar do nome, vem na moeda da conta. | Investimento no Pacer. |
| IMPRESSION_1 | Quantas vezes o anúncio foi exibido. | Impressões. |
| CLICKTHROUGH_1 | Cliques que levam ao destino. | Cliques. |
| TOTAL_IMPRESSION_USER | Pessoas diferentes que viram o anúncio. | Alcance. Não some entre dias, contas ou campanhas. |
| ENGAGEMENT_1 | Engajamento pago, análogo ao do Meta e do TikTok. | Engajamento. |
| OUTBOUND_CLICK_1 | Cliques que saem do Pinterest para o site. | Número menor que o de cliques, e costuma ser o que o cliente quer. |
| TOTAL_VIDEO_MRC_VIEWS | Visualização válida de vídeo, no padrão do mercado. | É a métrica de vídeo comparável entre plataformas. |
| TOTAL_VIDEO_3SEC_VIEWS | Assistiu 3 segundos. | Existe também o tempo médio assistido. |
| TOTAL_VIDEO_P100_COMPLETE | Assistiu até o fim. Há 25, 50, 75 e 95. | Use para curva de retenção. |
| CPM_IN_DOLLAR | Custo por mil impressões. | CPM. O Pacer recalcula a partir das somas. |
Dimensões3
| Campo na API | O que é | Onde aparece |
|---|---|---|
| DATE | O dia da linha. | Desempenho vem sempre por dia. |
| AD_ID | O anúncio. | A tabela de desempenho é uma linha por anúncio e dia. |
| CAMPAIGN_ID | A campanha. | Não existe tabela de desempenho por campanha: o id da campanha vem dentro da tabela de análise. |
Parâmetros do relatório
Os campos acima dizem o que volta. Estes parâmetros dizem como: eles decidem o grão da linha, o período que ela cobre e o que conta como conversão. Dois relatórios da mesma conta com números diferentes quase sempre diferem aqui.
| Parâmetro | O que muda | Valores |
|---|---|---|
| granularity | A agregação de cada linha. | O caOS pede DAY. A API também aceita hora, semana, mês e o período inteiro. |
| columns | As métricas pedidas. | Você escolhe da lista. Pedir métrica que a conta não gera devolve coluna zerada, não erro. |
| janela de 90 dias | Limite duro da plataforma. | Desempenho diário não existe antes disso. Campanhas, anúncios e pins não têm essa restrição. |
| sufixo 1 e 2 | Qual janela de atribuição a métrica usa. | IMPRESSION_1 e IMPRESSION_2 são a mesma métrica em janelas diferentes. Fique numa família só no relatório inteiro. |
Tudo que dá para puxar
As tabelas acima são as que a maior parte dos relatórios usa, mas você não está preso a elas. O catálogo inteiro do Pinterest tem 7 tabelas e 286 campos, e ao montar a fonte você escolhe o que entra. O que aparece marcado como puxada por padrão é o que a fonte de exemplo usa; o resto está disponível do mesmo jeito.
A lista abaixo sai do próprio catálogo do Xtractor, o mesmo que a tela de nova fonte lê. Se um campo está aqui, a tela oferece.
ad_analytics puxada por padrão104 campos
AD_ID, DATE, AD_ACCOUNT_ID, AD_GROUP_ENTITY_STATUS, AD_GROUP_ID, CAMPAIGN_DAILY_SPEND_CAP, CAMPAIGN_ENTITY_STATUS, CAMPAIGN_ID, CAMPAIGN_LIFETIME_SPEND_CAP, CHECKOUT_ROAS, CLICKTHROUGH_1, CLICKTHROUGH_1_GROSS, CLICKTHROUGH_2, CPC_IN_MICRO_DOLLAR, CPM_IN_DOLLAR, CPM_IN_MICRO_DOLLAR, CTR, CTR_2, ECPCV_IN_DOLLAR, ECPCV_P95_IN_DOLLAR, ECPC_IN_DOLLAR, ECPC_IN_MICRO_DOLLAR, ECPE_IN_DOLLAR, ECPM_IN_MICRO_DOLLAR, ECPV_IN_DOLLAR, ECTR, EENGAGEMENT_RATE, ENGAGEMENT_1, ENGAGEMENT_2, ENGAGEMENT_RATE, IDEA_PIN_PRODUCT_TAG_VISIT_1, IDEA_PIN_PRODUCT_TAG_VISIT_2, IMPRESSION_1, IMPRESSION_1_GROSS, IMPRESSION_2, INAPP_CHECKOUT_COST_PER_ACTION, OUTBOUND_CLICK_1, OUTBOUND_CLICK_2, PAGE_VISIT_COST_PER_ACTION, PAGE_VISIT_ROAS, PAID_IMPRESSION, PIN_ID, REPIN_1, REPIN_2, REPIN_RATE, SPEND_IN_DOLLAR, SPEND_IN_MICRO_DOLLAR, TOTAL_CHECKOUT, TOTAL_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_CLICKTHROUGH, TOTAL_CLICK_CHECKOUT, TOTAL_CLICK_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_CLICK_LEAD, TOTAL_CLICK_SIGNUP, TOTAL_CLICK_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_CONVERSIONS, TOTAL_CUSTOM, TOTAL_ENGAGEMENT, TOTAL_ENGAGEMENT_CHECKOUT, TOTAL_ENGAGEMENT_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_ENGAGEMENT_LEAD, TOTAL_ENGAGEMENT_SIGNUP, TOTAL_ENGAGEMENT_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_IDEA_PIN_PRODUCT_TAG_VISIT, TOTAL_IMPRESSION_FREQUENCY, TOTAL_IMPRESSION_USER, TOTAL_LEAD, TOTAL_PAGE_VISIT, TOTAL_REPIN_RATE, TOTAL_SIGNUP, TOTAL_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_VIDEO_3SEC_VIEWS, TOTAL_VIDEO_AVG_WATCHTIME_IN_SECOND, TOTAL_VIDEO_MRC_VIEWS, TOTAL_VIDEO_P0_COMBINED, TOTAL_VIDEO_P100_COMPLETE, TOTAL_VIDEO_P25_COMBINED, TOTAL_VIDEO_P50_COMBINED, TOTAL_VIDEO_P75_COMBINED, TOTAL_VIDEO_P95_COMBINED, TOTAL_VIEW_CHECKOUT, TOTAL_VIEW_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_VIEW_LEAD, TOTAL_VIEW_SIGNUP, TOTAL_VIEW_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_CHECKOUT, TOTAL_WEB_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_CLICK_CHECKOUT, TOTAL_WEB_CLICK_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_ENGAGEMENT_CHECKOUT, TOTAL_WEB_ENGAGEMENT_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_VIEW_CHECKOUT, TOTAL_WEB_VIEW_CHECKOUT_VALUE_IN_MICRO_DOLLAR, VIDEO_3SEC_VIEWS_2, VIDEO_LENGTH, VIDEO_MRC_VIEWS_2, VIDEO_P0_COMBINED_2, VIDEO_P100_COMPLETE_2, VIDEO_P25_COMBINED_2, VIDEO_P50_COMBINED_2, VIDEO_P75_COMBINED_2, VIDEO_P95_COMBINED_2, WEB_CHECKOUT_COST_PER_ACTION, WEB_CHECKOUT_ROAS
account_analytics100 campos
AD_ACCOUNT_ID, DATE, AD_GROUP_ENTITY_STATUS, CAMPAIGN_DAILY_SPEND_CAP, CAMPAIGN_ENTITY_STATUS, CAMPAIGN_ID, CAMPAIGN_LIFETIME_SPEND_CAP, CAMPAIGN_NAME, CHECKOUT_ROAS, CLICKTHROUGH_1, CLICKTHROUGH_1_GROSS, CLICKTHROUGH_2, CPC_IN_MICRO_DOLLAR, CPM_IN_DOLLAR, CPM_IN_MICRO_DOLLAR, CTR, CTR_2, ECPCV_IN_DOLLAR, ECPCV_P95_IN_DOLLAR, ECPC_IN_DOLLAR, ECPC_IN_MICRO_DOLLAR, ECPE_IN_DOLLAR, ECPM_IN_MICRO_DOLLAR, ECPV_IN_DOLLAR, ECTR, EENGAGEMENT_RATE, ENGAGEMENT_1, ENGAGEMENT_2, ENGAGEMENT_RATE, IDEA_PIN_PRODUCT_TAG_VISIT_1, IDEA_PIN_PRODUCT_TAG_VISIT_2, IMPRESSION_1, IMPRESSION_1_GROSS, IMPRESSION_2, INAPP_CHECKOUT_COST_PER_ACTION, OUTBOUND_CLICK_1, OUTBOUND_CLICK_2, PAGE_VISIT_COST_PER_ACTION, PAGE_VISIT_ROAS, PAID_IMPRESSION, PIN_ID, REPIN_1, REPIN_2, REPIN_RATE, SPEND_IN_DOLLAR, SPEND_IN_MICRO_DOLLAR, TOTAL_CHECKOUT, TOTAL_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_CLICKTHROUGH, TOTAL_CLICK_CHECKOUT, TOTAL_CLICK_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_CLICK_SIGNUP, TOTAL_CLICK_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_CONVERSIONS, TOTAL_CUSTOM, TOTAL_ENGAGEMENT, TOTAL_ENGAGEMENT_CHECKOUT, TOTAL_ENGAGEMENT_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_ENGAGEMENT_SIGNUP, TOTAL_ENGAGEMENT_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_IDEA_PIN_PRODUCT_TAG_VISIT, TOTAL_IMPRESSION_FREQUENCY, TOTAL_IMPRESSION_USER, TOTAL_LEAD, TOTAL_PAGE_VISIT, TOTAL_REPIN_RATE, TOTAL_SIGNUP, TOTAL_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_VIDEO_3SEC_VIEWS, TOTAL_VIDEO_AVG_WATCHTIME_IN_SECOND, TOTAL_VIDEO_MRC_VIEWS, TOTAL_VIDEO_P0_COMBINED, TOTAL_VIDEO_P100_COMPLETE, TOTAL_VIDEO_P25_COMBINED, TOTAL_VIDEO_P50_COMBINED, TOTAL_VIDEO_P75_COMBINED, TOTAL_VIDEO_P95_COMBINED, TOTAL_VIEW_CHECKOUT, TOTAL_VIEW_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_VIEW_SIGNUP, TOTAL_VIEW_SIGNUP_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_CHECKOUT, TOTAL_WEB_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_CLICK_CHECKOUT, TOTAL_WEB_CLICK_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_ENGAGEMENT_CHECKOUT, TOTAL_WEB_ENGAGEMENT_CHECKOUT_VALUE_IN_MICRO_DOLLAR, TOTAL_WEB_VIEW_CHECKOUT, TOTAL_WEB_VIEW_CHECKOUT_VALUE_IN_MICRO_DOLLAR, VIDEO_3SEC_VIEWS_2, VIDEO_LENGTH, VIDEO_MRC_VIEWS_2, VIDEO_P0_COMBINED_2, VIDEO_P100_COMPLETE_2, VIDEO_P25_COMBINED_2, VIDEO_P50_COMBINED_2, VIDEO_P75_COMBINED_2, VIDEO_P95_COMBINED_2, WEB_CHECKOUT_COST_PER_ACTION, WEB_CHECKOUT_ROAS
ads27 campos
ad_group_id, android_deep_link, carousel_android_deep_links, carousel_destination_urls, carousel_ios_deep_links, click_tracking_url, creative_type, destination_url, ios_deep_link, is_pin_deleted, is_removable, name, pin_id, status, tracking_urls, view_tracking_url, ad_account_id, campaign_id, collection_items_destination_url_template, created_time, id, rejected_reasons, rejection_labels, review_status, type, updated_time, summary_status
ad_groups23 campos
name, status, budget_in_micro_currency, bid_in_micro_currency, budget_type, start_time, end_time, targeting_spec, lifetime_frequency_cap, tracking_urls, auto_targeting_enabled, placement_group, pacing_delivery_type, conversion_learning_mode_type, summary_status, feed_profile_id, campaign_id, billable_event, id, type, ad_account_id, created_time, updated_time
pins15 campos
ad_id, pin_id, ad_account_id, media_type, image_url, all_image_urls, cover_image_url, video_url, title, description, alt_text, link, pin_url, board_id, created_at
campaigns12 campos
id, ad_account_id, name, status, lifetime_spend_cap, daily_spend_cap, order_line_id, tracking_urls, objective_type, created_time, updated_time, type
ad_accounts5 campos
id, name, owner, country, currency
Duas escalas de dinheiro na mesma plataforma. O gasto vem na moeda da conta. Já os tetos de verba e os orçamentos e lances dos conjuntos vêm em micro: divida por 1.000.000.
Saída
Onde os dados chegamplanilha e banco são coisas diferentes
Planilha do Google
Para quem monta relatório na mão
Marque investimento, impressões, cliques e o nome da campanha. Se o cliente cobra clique para o site, use o campo de clique de saída, que é menor.
Como o histórico só volta 90 dias, vale começar a extração o quanto antes: a planilha é o que vai guardar o que a plataforma deixa de oferecer.
BigQuery
Para quem vai modelar em cima
7 tabelas: duas de desempenho e cinco de estrutura.
Desempenho, sempre por dia: uma linha por anúncio e dia, e uma linha por conta e dia. Estrutura: campanhas, conjuntos, anúncios, pins e contas.
A tabela de pins traz o criativo (imagem, capa, vídeo, título, descrição e link), mas é uma linha por anúncio, não por pin.
Confiança
Atualização do dadoe o limite de 90 dias
Plataforma de anúncio reescreve o passado. Conversão que só é atribuída dias depois, gasto revisado, linha corrigida: o número de terça-feira muda na quinta. Se a extração só trouxesse o dia novo, sua planilha ficaria congelada no primeiro valor e passaria a divergir da plataforma sem ninguém perceber.
Por isso o caOS relê os últimos 30 dias a cada sincronização, e reescreve o que mudou. O histórico mais antigo continua no destino e não é tocado. Na prática: o que está na sua planilha ou no seu banco é o que a plataforma diz hoje, não o que ela dizia no dia da primeira carga.
Desempenho diário só volta 90 dias. Gasto, impressões e cliques não existem antes disso. Campanhas, anúncios e pins não têm essa restrição. Consequência prática: não existe histórico profundo no Pinterest. O histórico começa a valer no dia em que a fonte passa a rodar, então conectar cedo é a única forma de ter o ano inteiro.
Detalhe
Bom sabero que costuma gerar dúvida
Conta com impressão e gasto zero é normal. Contas que não veiculam mídia paga aparecem na lista e trazem impressão sem gasto. Antes de abrir chamado por gasto zerado, confira se a conta veicula mídia paga.
Nome não faz parte da chave. Campanhas, conjuntos e anúncios são identificados por id, e renomear no Pinterest não cria entidade nova. Quem cruza a tabela de campanhas com a de desempenho precisa garantir uma linha por id antes de juntar: senão o mesmo id com dois nomes duplica a métrica, e a inflação passa despercebida porque nada dá erro.
O Pinterest tem alcance, diferente do Kwai e do Google. E, como todo alcance, ele não soma.
Suporte
Quando dá erradoa mensagem e o que fazer
Clico e não acontece nada. É o pop-up bloqueado. O caOS espera dez minutos em silêncio e desiste sem mensagem. Libere pop-up e tente de novo.
“Invalid state.” O link venceu (vale 10 minutos) ou já foi usado. Recomece por Conectar nova fonte.
Conectou, mas não há conta para escolher. O sintoma é 1 conexão ativa e 0 contas, e na tela de nova fonte o cartão continua com cadeado, porque zero conta vale o mesmo que nenhuma conexão. Confirme que aquele login enxerga uma conta de anúncio.
“Nenhuma conta de Pinterest Ads conectada”, ao criar a fonte. Se logo abaixo aparecer o aviso de contas encontradas, a autorização funcionou e falta só marcar.
Selo “precisa reautorizar”. Alguém revogou o acesso do lado do Pinterest. Refaça a autorização: as contas já escolhidas continuam.