---
title: "Connettore Google Ads"
description: "Guida completa all'integrazione di Google Ads per sincronizzare dati di campagne, liste audience e tracciamento conversioni con Brevo tramite Tajo."
url: https://tajo.io/it/docs/connectors/marketing/google-ads/
markdown: https://tajo.io/it/docs/connectors/marketing/google-ads.md
lang: it-IT
robots: noindex
---

Richiedi l’accesso anticipato

Inserisci il tuo nome e indirizzo email aziendale. Ti invieremo un link per confermare la richiesta di accesso a Tajo.

# Connettore Google Ads

Stato del connettore: Pianificato Non ancora realizzato. Oggi Tajo non esegue questo connettore.

| Campo di origine | Campo di destinazione | Valore di esempio |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Collega Google Ads a Brevo tramite Tajo per sincronizzare le audience pubblicitarie, importare dati di conversione e creare profili cliente unificati che colleghino l’acquisizione a pagamento al marketing lifecycle.

## Panoramica

| Proprietà | Valore |
| --- | --- |
| **Piattaforma** | Google Ads |
| **Categoria** | Marketing |
| **Complessità di setup** | Avanzata |
| **Integrazione ufficiale** | No |
| **Dati sincronizzati** | Campagne, Audience, Conversioni, Clienti |
| **Skill disponibili** | 7 |

## Funzionalità

- **Sync Customer Match** - Carica le liste contatti Brevo su Google Ads come audience Customer Match
- **Tracciamento conversioni** - Importa conversioni offline dagli eventi Brevo in Google Ads
- **Sync delle audience** - Sync bidirezionale tra liste Brevo e audience Google Ads
- **Reportistica delle campagne** - Estrai dati di performance delle campagne nelle dashboard Tajo
- **Tracciamento GCLID** - Acquisisci i Google Click ID per l’attribuzione di conversioni offline
- **Dati per smart bidding** - Invia i dati di valore conversione a Google per l’ottimizzazione delle offerte
- **Sync Lead Form** - Importa le sottomissioni dei lead form di Google Ads nei contatti Brevo

## Prerequisiti

Prima di iniziare, assicurati di avere:

1. Un account Google Ads con accesso API abilitato
2. Un progetto Google Cloud con la Google Ads API abilitata
3. Credenziali OAuth 2.0 (Client ID e Client Secret)
4. Un Google Ads Developer Token (richiedilo su [Google Ads API Center](https://ads.google.com/aw/apicenter))
5. Un account Brevo con accesso API
6. Un account Tajo con credenziali API

## Autenticazione

### OAuth 2.0

La Google Ads API utilizza OAuth 2.0 per l’autenticazione. È necessario ottenere un refresh token tramite il flusso di consenso OAuth.

```bash
# Required OAuth scopes
https://www.googleapis.com/auth/adwords
```

### Developer Token

Un Developer Token è richiesto per tutte le richieste API Google Ads e deve essere approvato da Google.

```bash
# Set up authentication headers
curl -X POST https://googleads.googleapis.com/v18/customers/1234567890/googleAds:search \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "developer-token: DEVELOPER_TOKEN" \
  -H "login-customer-id: MANAGER_ACCOUNT_ID"
```

## Configurazione

### Setup di base

```yaml
connectors:
  google_ads:
    enabled: true
    developer_token: "your-developer-token"
    oauth:
      client_id: "your-client-id"
      client_secret: "your-client-secret"
      refresh_token: "your-refresh-token"
    customer_id: "123-456-7890"
    login_customer_id: "111-222-3333"  # Manager account (optional)

    # Data sync options
    sync:
      customer_match: true
      conversions: true
      campaigns: true
      lead_forms: true

    # Conversion tracking
    conversions:
      action_id: "123456789"
      default_currency: "USD"
```

### Configurazione Customer Match

Carica i contatti Brevo come audience Google Ads:

```yaml
customer_match:
  enabled: true
  lists:
    - brevo_list_id: 5
      audience_name: "All Customers"
      match_type: "CONTACT_INFO"
    - brevo_list_id: 7
      audience_name: "High Value Customers"
      match_type: "CONTACT_INFO"

  # Data fields to match
  match_fields:
    - email
    - phone
    - first_name
    - last_name
    - country_code
    - zip_code

  # Sync schedule
  schedule: "daily"
  sync_mode: "mirror"  # mirror, append, or remove
```

### Importazione conversioni offline

```yaml
conversion_import:
  enabled: true
  conversion_action: "purchase"
  gclid_attribute: "GCLID"  # Brevo attribute storing GCLID
  conversion_events:
    - brevo_event: "order_completed"
      conversion_name: "Purchase"
      value_field: "revenue"
    - brevo_event: "subscription_created"
      conversion_name: "Subscription"
      value_field: "plan_value"
```

## Endpoint API

| Metodo | Endpoint | Descrizione |
| --- | --- | --- |
| `POST` | `/v18/customers/{id}/googleAds:search` | Cerca campagne e risorse (GAQL) |
| `POST` | `/v18/customers/{id}/googleAds:searchStream` | Stream dei risultati di ricerca |
| `POST` | `/v18/customers/{id}/offlineUserDataJobs:create` | Crea un job di upload Customer Match |
| `POST` | `/v18/customers/{id}/conversionUploads:uploadClickConversions` | Carica conversioni offline |
| `POST` | `/v18/customers/{id}/conversionUploads:uploadCallConversions` | Carica conversioni di chiamata |
| `GET` | `/v18/customers/{id}/campaignBudgets` | Ottieni i budget delle campagne |
| `POST` | `/v18/customers/{id}/customerLists:mutate` | Gestisci le liste cliente |

## Esempi di codice

### Inizializza il connettore Google Ads

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect Google Ads account
await tajo.connectors.connect('google-ads', {
  developerToken: process.env.GOOGLE_ADS_DEV_TOKEN,
  clientId: process.env.GOOGLE_OAUTH_CLIENT_ID,
  clientSecret: process.env.GOOGLE_OAUTH_CLIENT_SECRET,
  refreshToken: process.env.GOOGLE_OAUTH_REFRESH_TOKEN,
  customerId: '123-456-7890'
});
```

### Carica un’audience Customer Match

```javascript
// Sync a Brevo list to Google Ads Customer Match
await tajo.connectors.syncAudience('google-ads', {
  brevoListId: 5,
  audienceName: 'High Value Customers',
  matchType: 'CONTACT_INFO',
  syncMode: 'mirror'
});
```

### Importa conversioni offline

```javascript
// Upload offline conversions from Brevo order events
await tajo.connectors.uploadConversions('google-ads', {
  conversionAction: 'customers/123456/conversionActions/789',
  conversions: [
    {
      gclid: 'CjwKCAiA...',
      conversionDateTime: '2024-01-15 10:30:00-05:00',
      conversionValue: 89.99,
      currencyCode: 'USD'
    }
  ]
});
```

### Interroga la performance delle campagne (GAQL)

```javascript
// Query campaign metrics using Google Ads Query Language
const query = `
  SELECT
    campaign.name,
    campaign.status,
    metrics.impressions,
    metrics.clicks,
    metrics.cost_micros,
    metrics.conversions
  FROM campaign
  WHERE segments.date DURING LAST_30_DAYS
  ORDER BY metrics.impressions DESC
  LIMIT 20
`;

const results = await tajo.connectors.query('google-ads', { gaql: query });
```

## Limiti di velocità

| Risorsa | Limite | Dettagli |
| --- | --- | --- |
| **Richieste API** | 15.000/giorno | Per developer token |
| **Operazioni mutate** | 10.000/giorno | Per account cliente |
| **Query GAQL** | 1.500/giorno | Per account cliente |
| **Upload Customer Match** | 10 job/giorno | Per lista cliente |
| **Upload conversioni** | 2.000/richiesta | Per batch di upload |
| **Page size** | 10.000 righe | Massimo per risposta di ricerca |

Approvazione del Developer Token

La Google Ads API richiede un Developer Token approvato. Richiedilo tramite il Google Ads API Center nel tuo account Manager. Gli account di test hanno limiti di velocità ridotti.

## Risoluzione dei problemi

| Problema | Causa | Soluzione |
| --- | --- | --- |
| `DEVELOPER_TOKEN_NOT_APPROVED` | Token in attesa di revisione | Attendi l’approvazione di Google o usa un account di test |
| `CUSTOMER_NOT_FOUND` | Customer ID errato | Rimuovi i trattini dal customer ID o controlla l’account manager |
| Match rate basso Customer Match | Dati insufficienti | Includi più identificatori (email, telefono, nome, zip) |
| Conversioni non visualizzate | Finestra di attribuzione | Le conversioni possono richiedere fino a 24 ore per essere processate |
| `OAUTH_TOKEN_EXPIRED` | Refresh token non valido | Riautentica e ottieni un nuovo refresh token |
| `PERMISSION_DENIED` | Accesso insufficiente | Controlla il livello di accesso API e il collegamento dell’account |

## Best practice

1. **Usa un account Manager** - Gestisci più account Ads tramite un singolo account Manager (MCC)
2. **Hash dei dati Customer Match** - Effettua sempre l’hash SHA-256 dei dati PII prima di caricarli su Customer Match
3. **Traccia i GCLID** - Memorizza i Google Click ID negli attributi Brevo per il tracciamento delle conversioni offline
4. **Upload conversioni in batch** - Raggruppa le conversioni in batch giornalieri invece di upload in tempo reale
5. **Usa GAQL per la reportistica** - Sfrutta il Google Ads Query Language per una reportistica flessibile delle campagne
6. **Monitora i match rate** - Traccia i match rate delle audience Customer Match e migliora la qualità dei dati
7. **Imposta Enhanced Conversions** - Usa Enhanced Conversions per una misurazione delle conversioni più accurata

## Sicurezza

- **OAuth 2.0** - Autenticazione sicura basata su token con refresh token
- **Hashing SHA-256** - I dati Customer Match vengono hashati prima dell’upload
- **Minimizzazione dei dati** - Solo i campi richiesti vengono trasmessi a Google
- **Conformità Google Cloud** - Conforme a SOC 2, ISO 27001 e GDPR
- **Accesso con scope** - Permessi API limitati a specifici account cliente
- **Audit logging** - Tutte le richieste API loggate nello storico modifiche di Google Ads

## Risorse correlate

- [Connettore Meta Ads](https://tajo.io/it/docs/connectors/marketing/meta-ads)
- [Connettore Klaviyo](https://tajo.io/it/docs/connectors/marketing/klaviyo)
- [Connettore Brevo](https://tajo.io/it/docs/connectors/marketing/brevo)
- [Skill Customer Sync](https://tajo.io/it/docs/skills/data-sync/customer-sync)
