Connect DataAnalytics & Marketing
Google Ads
Google Ads is in Preview in the connection wizard: it is built on Google Ads’s documented API and has not yet been proven against a live account, so check the imported tables before relying on them. Sign in with a Google Cloud service account added to your Google Ads account — no OAuth app needed. A developer token comes from a manager account’s API Center.
-
In DataSquares, open Data Sources and choose Connect Source. The Connect a data source page opens.
-
Pick Google Ads on that page (search or browse by category).
-
Fill in the connection details below, then test the connection and save.
Connection details
Section titled “Connection details”| Field | What to enter |
|---|---|
| Customer ID | The account’s ten digits, without dashes (top right in Google Ads). e.g. 1234567890 |
| Service account key (JSON) | Google Cloud → IAM → Service accounts → Keys → Add key (JSON). In Google Ads, add the service account’s email under Admin → Access and security. Paste the whole JSON key file. Stored encrypted and never shown again. |
| Developer token | From a manager account’s API Center. Leave it blank to use DataSquares’ token where one is set up. Stored encrypted and never shown again. |
| Manager account ID | Only when the access comes through a manager account: its ten digits. e.g. 9876543210 Optional. |
Test Connection reads one page of records with these values; nothing is saved until you import.
Tables
Section titled “Tables”Pick the tables to import — each one becomes a table in the source:
| Table | What it holds |
|---|---|
campaigns |
Campaigns |
ad_groups |
Ad groups |
campaign_performance_daily |
Campaign results by day (12 months) — re-read in full on every refresh |
ad_group_performance_daily |
Ad group results by day (90 days) — re-read in full on every refresh (not selected by default) |
keyword_performance_daily |
Keyword results by day (90 days) — re-read in full on every refresh (not selected by default) |
Every table is read through all of its pages, nested fields become parent.child
columns, and the whole set is imported at once: the import’s row and size limits
count the picked tables together, and if they pass one, nothing is imported and
the message says which table and which limit. Refresh the source on a schedule,
or by hand, to re-read every table; a table that comes back empty is refused
rather than emptied unless you allow it. Nothing is ever written to Google Ads.
The requests follow Google Ads’s API reference.
Setting up access
Section titled “Setting up access”Google Ads reads with a service account: a key file instead of a personal sign-in.
-
In a Google Cloud project, enable the Google Ads API, create a service account under IAM & Admin → Service accounts, and add a JSON key. Paste the whole file into Service account key (JSON).
-
In Google Ads, open Admin → Access and security and add the service account’s email as a user. Read-only access is enough.
-
Developer token: Google requires one for every Google Ads API call. It comes from a manager account’s Admin → API Center and needs at least Basic access to read live accounts. Leave the field blank only if your DataSquares server has its own token set up — the test says so if it does not.
-
Customer ID is the account’s ten digits without dashes. If the access comes through a manager account, also enter that manager’s ID.
DataSquares only asks Google for a token with the key: the key file’s own token address is never used, and nothing is ever written to Google Ads.
No developer token?
Section titled “No developer token?”Google’s BigQuery Data Transfer Service can copy the same Google Ads reports into BigQuery every day with no developer token. Connect DataSquares to that dataset with the BigQuery connector instead.
Related
Section titled “Related”- Connector catalog — everything DataSquares connects to.
- Quickstart — from connection to shared dashboard.