Google Ads

Google Ads is Google's advertising platform for search, display and video campaigns. Weld syncs your Google Ads account structure and performance reports into your warehouse, and can send audiences from your warehouse back to Google Ads user lists.

Feature nameSupported
Column HashingTrueField level
BlockingTrueField level
IncrementalTrue
Custom dataFalse
HistoryFalse
ReSyncTrueTable level
TemplatesTrue

Data Schema

Open full-page schema explorer

Before you start

  • To sync data from Google Ads, the Google user you connect with needs at least viewer access to the ad accounts. To send audiences to Google Ads, it needs editor access.
  • Ad blockers can interrupt the Google sign-in. Pause yours while you connect.

Set up Google Ads as a data source

  1. Click Data Sources in the sidebar, then Add Data Source, and choose Google Ads.
  2. Choose Create new connection, click Authorize and sign in with Google. Grant Weld access, and you're taken back to the setup.
  3. On Connection Settings, choose what to sync and click Next:
  • (1) Ad Accounts: the accounts to sync. Manager accounts can't be synced directly; choose the accounts under them.
  • (2) Add custom report: add a report of your own on top of the standard tables.
  • (3) Limit historical data: sync only data after a date. Leave it empty to sync the full history.
  1. On Data to sync, tick the tables you want. Object tables, such as account or ad_group, sync in full. Report tables, such as ad_group_stats, sync incrementally. See Tables below.
  1. On Configure sync, choose how often to sync and check the Destination schema name, then click Start Initial Sync.

Tables

Weld syncs two kinds of Google Ads data:

  • Objects describe how your account is set up: account, campaign, ad_group, ad and their settings. They sync in full each time.
  • Reports hold daily performance metrics, such as campaign_stats or ad_group_stats. They sync incrementally. Hourly versions (*_hourly_stats) and breakdowns such as country and province are available too.

Join reports to objects on their IDs, for example ad_stats.ad_id = ad.id. The SQL templates below are ready-made starting points, and Data models explains how to build your own.

Send audiences to Google Ads (reverse ETL)

Reverse ETL keeps a Google Ads user list, such as a Customer Match audience, in sync with a model in your warehouse.

  1. Click Reverse ETL in the sidebar, then Add Reverse ETL Sync, and choose Google Ads.
  2. On Target Details:
    • Should we automatically hash all personal identifiable information (PII)?: tick it to have Weld hash emails and phone numbers for you. Leave it unticked if your model already hashes them.
    • Ad Account: the account the list belongs to. Manager accounts are shown but disabled.
    • User List: choose an existing list, or type a name to create one.
  3. On Map Data, choose your source model. The destination object is user_list and the sync mode is Update. Map your columns to the user list fields:
  • First name, last name and country code help Google match people.
  • (1) Email and Phone Number are sent hashed, as Google requires: by Weld if you ticked the hashing option, or by your model.
  1. On Schedule Sync, choose how often to sync, or add it to an orchestration, and click Start Sync.

See Reverse ETL for the full flow.

Offline conversions

To import offline conversions into Google Ads, sync the conversions to a Google Sheet with the Google Sheets connector, then let Google Ads read it as a scheduled upload. Use the template that matches your setup:

Troubleshooting

The Google sign-in closes or never finishes. Pause your ad blocker and try again.

An account is missing from Ad Accounts. The connected Google user needs access to it. Manager accounts can't be synced themselves; choose the accounts under them.

Syncs are slow or delayed. Another tool may be using your account's Google Ads API quota. Weld slows down when 80% of the limit is used.

SQL templates

SQL Templates

View all →

Was this page helpful?