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.
The Google Ads connector uses v23 of the Google Ads API.
| Feature name | Supported | |
|---|---|---|
| Column Hashing | True | Field level |
| Blocking | True | Field level |
| Incremental | True | |
| Custom data | False | |
| History | False | |
| ReSync | True | Table level |
| Templates | True |
Data Schema
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
- Click Data Sources in the sidebar, then Add Data Source, and choose Google Ads.
- Choose Create new connection, click Authorize and sign in with Google. Grant Weld access, and you're taken back to the setup.
- 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.
- On Data to sync, tick the tables you want. Object tables, such as
accountorad_group, sync in full. Report tables, such asad_group_stats, sync incrementally. See Tables below.
- On Configure sync, choose how often to sync and check the Destination schema name, then click Start Initial Sync.
Google Ads applies rate limits across your whole account. If other tools also use the Google Ads API for the same account, syncs can hit those limits. When usage reaches 80% of the limit, Weld slows down its Google Ads syncs to stay below it.
Tables
Weld syncs two kinds of Google Ads data:
- Objects describe how your account is set up:
account,campaign,ad_group,adand their settings. They sync in full each time. - Reports hold daily performance metrics, such as
campaign_statsorad_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.
- Click Reverse ETL in the sidebar, then Add Reverse ETL Sync, and choose Google Ads.
- 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.
- 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.
- 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.