Google AdWords Source

Getting Started

  1. From your workspace’s /sources page, click add source.

  2. Choose AdWords.

  3. Give the source a nickname and a schema name. The nickname will be used to designate the source in the Segment interface, and the schema name is the namespace you’ll be querying against in your warehouse. Both can be whatever you like, but we recommend sticking to something that reflects the source itself, like AdWords for nickname and adwords, google_adwords, or adwords_usa for the schema name.

  4. Finally, just click Connect on the next page to OAuth into Google.

That’s it!



AdWords has a sync component, which means we’ll make requests to their API on your behalf on a 3 hour interval to pull the latest data into Segment. In the initial sync, we’ll grab all the Adwords objects (and their corresponding properties) according to the Collections table below. The objects will be written into a separate schema, corresponding to the source instance’s schema name you designated upon creation. For example, if you went with adwords, the ads collection will be accessible at in SQL.

Our sync component uses an upsert API, so the data in your warehouse loaded via sync will reflect the latest state of the corresponding resource in AdWords. For example, if budget from 0 to 100 between syncs, on its next sync that tickets status will be 100.

The source syncs and warehouse syncs are independent processes. Source runs pull your data into the Segment Hub, and warehouse runs flush that data to your warehouse. Sources will sync with Segment every 3 hours. Depending on your Warehouses plan, we will push the Source data to your warehouse on the interval associated with your billing plan.


Collections are the groupings of resources we pull from your source. In your warehouse, each collection gets its own table.

ad_groupsobjectAn ad group is a set of ads that share the same daily or lifetime budget, schedule, bid type, bid info, and targeting data
adsobjectAn ad object contains the data necessary to visually display an ad and associate it with a corresponding ad set.
campaignsobjectA campaign is a grouping of ad sets which are organized by the same business objective.
campaign_performance_reportobjectCampaign performance reports include a daily snapshot of performance statistics per campaign
click_performance_reportobjectClick performance reports include stats at the click level, including both valid and invalid clicks
search_performance_reportobjectSearch query performance reports include statistics aggregated at the search terms level, one row per combination of search terms.


When setting up your AdWords Source, you may notice that we don’t list all AdWords accounts your Google user can view. This is because AdWords API does not expose a list of “managed” or sub-accounts to non-administrator via the API. That said, if you have read permissions to the account, you can enter your AdWords Customer ID directly. For more information about finding your AdWords Customer ID, see here.


What unit is money in?

Currency values in AdWords are in micros, or one millionth of the smallest unit. For example, in USD, the value for campaign.budget would be in one millionth of a cent.

What AdWords MCC do you sync?

By default, we sync the “primary” AdWords account connected to your Google account, but if you’d like to override this, you can specify an AdWords Customer ID in settings.


I’m getting an Internal Server Error!

If you’re getting the error pictured below, try disabling any ad block extensions in your browser and attempting again. We find this typically resolves the setup problems.

If you have any questions or see anywhere we can improve our documentation, please let us know or kick off a conversation in the Segment Community!