Skip to contentSkip to navigationSkip to topbar
On this page
Looking for more inspiration?Visit the
(information)
You're in the right place! Segment documentation is now part of Twilio Docs. The content you are used to is still here—just in a new home with a refreshed look.

Google Ads Source


Source Info
  • The Google Ads Source is an Object Cloud source. This means that it sends information (traits) about a thing that exists and persists over time, such as a person or company, and which can be updated over time. Data from this source can only be exported directly to a warehouse, but it can then be used for further analysis. Learn more about cloud sources.

Google Ads(link takes you to an external page) is an online advertising service developed by Google. With Google Ads, you can take advantage of online advertising to improve your internet marketing effectiveness.

(information)

Google Ads Source API Upgrade

In April 2022, Segment upgraded from using the Google AdWords API to the Google Ads API for the Segment Google Ads source. As a result of this change, Segment no longer supports(link takes you to an external page) "Include Zero Impressions." Queries that contain segments (date, product, country, etc.) will no longer return data for rows that have zero metrics. Because all collections reported to Segment contain date segments in their queries, Include Zero Impressions is no longer supported for any collection in the Google Ads source.
In addition, some properties in the following collections have different functionality:


Getting Started

getting-started page anchor
  1. From your workspace's /sources page, click Add Source.

  2. Choose Google Ads and click Connect.

    Screenshot of the Google Ads source in the Segment app.
  3. Click Authenticate Google Ads and go through the authentication flow.

  4. Select a Google Ads account to sync and click Next

  5. Choose a schema name. This will be the namespace you will be querying against in your warehouse. Segment recommends that you choose a name that reflects the source itself, like google_ads, or google_ads_usa.

    Screenshot of the second step of the Google Ads setup flow in the Segment app.

Permissions

permissions page anchor

When you set up your Google Ads Source, you may notice that all the Google Ads accounts your Google user can view aren't listed. This is because the Google Ads API doesn't expose a list of "managed" or sub-accounts to non-administrators using the API. That said, if you have read permissions to the account and would like to add it, please contact Support(link takes you to an external page). For more information about finding your Google Ads Customer ID, see Google's Find your Google Ads customer ID(link takes you to an external page) docs.

What Google Ads MCC do you sync?

what-google-ads-mcc-do-you-sync page anchor

By default, the primary Google Ads account connected to your Google account syncs to Segment. If you would like to override this, please contact Support(link takes you to an external page).

I'm getting an Internal Server Error!

im-getting-an-internal-server-error page anchor

If you're getting the error pictured below, try disabling any ad block extensions in your browser and attempting again.

Screenshot of an Internal Server Error message in the Segment app.

The Google Ads source contains a sync component. This enables Segment to the Google Ads API on your behalf on a 3 hour interval to pull the latest data into Segment. In the initial sync, Segment retrieves the Google Ads objects (and corresponding properties) according to the Collections Table below. The objects write into a separate schema, corresponding to the name of the source instance's schema you designated during configuration. For example, chose google-ads as the schema, the ads collection is accessible at google-ads.ads in SQL.

The sync component uses an upsert API, so the data in your warehouse loaded using sync will reflect the latest state of the corresponding resource in Google Ads. 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 syncs pull your data into the Segment Hub, and warehouse syncs flush that data to your warehouse. Sources sync with Segment every 3 hours. Depending on your Warehouses plan, Segment pushes the Source data to your warehouse on the interval associated with your billing plan.


Collections are the groupings of resources Segment pulls from your source. In your warehouse, each collection has its own table.

CollectionTypeDescription
ad_groupsobjectAn ad group(link takes you to an external page) is a set of ads that share the same daily or lifetime budget, schedule, bid type, bid info, and targeting data
ad_performance_reportobjectAd Performance Report(link takes you to an external page) includes all statistics aggregated at the ad level, one row per ad. Segment pulls 7 days of data.(link takes you to an external page)
adsobjectAn ad object(link takes you to an external page) contains the data necessary to visually display an ad and associate it with a corresponding ad set.
campaignsobjectA campaign(link takes you to an external page) is a grouping of ad sets which are organized by the same business goal.
campaign_performance_reportobjectCampaign performance reports(link takes you to an external page) include a daily snapshot of performance statistics per campaign. Segment pulls 7 days of data.(link takes you to an external page)
click_performance_reportobjectClick performance Reports(link takes you to an external page) include stats at the click level, including both valid and invalid clicks. Segment pulls 7 days of data.(link takes you to an external page)
search_performance_reportobjectContact Support(link takes you to an external page) to add this collection Search query performance Reports(link takes you to an external page) include statistics aggregated at the search terms level, one row per combination of search terms. Segment pulls 7 days of data.(link takes you to an external page)
keywords_performance_reportobjectContact Support(link takes you to an external page) to add this collection Keywords Performance Report(link takes you to an external page) includes all statistics aggregated at the keyword level, one row per keyword. Segment pulls 7 days of data.(link takes you to an external page)

Segment doesn't pull "Video Campaign Reports", because the Google Ads API(link takes you to an external page) doesn't support that report.


Below are tables outlining the properties included in the collections listed above. To see the full description of each property, refer to the Google Ads documentation linked in each collection above.

What unit is money in?

what-unit-is-money-in page anchor

Currency values in Google Ads 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.

Property NameDescription
adwords_customer_idThe 10-digit Google Ads Customer ID.
campaign_idID of the campaign with which this ad group is associated.
nameName of this ad group.
received_atThis timestamp is added to incoming messages as soon as they hit Segment API.
statusStatus(link takes you to an external page) of this ad group.
Property NameDescription
account_currency_codeThe currency of the Customer account.
account_descriptive_nameThe descriptive name of the Customer account.
active_view_impressionsHow often your ad has become viewable on a Display Network site.
active_view_measurabilityThe ratio of impressions that could be measured by Active View over the number of served impressions.
active_view_measurable_costThe cost of the impressions you received that were measurable by Active View.
active_view_measurable_impressionsThe number of times your ads are appearing on placements in positions where they can be seen.
active_view_viewabilityThe percentage of time when your ad appeared on an Active View enabled site (measurable impressions) and was viewable (viewable impressions).
ad_group_idThe ID of the AdGroup.
ad_idThe ID of the Ad.
adwords_customer_idThe 10-digit Google Ads Customer ID.
all_conversion_rateHow often a click on your ad resulted in a conversion.
This was previously a percentage, but as of April 2022, is now a decimal value. For example, a previous value of 75 is now 0.75.
all_conversion_valueThe total value of your conversions, including estimated conversions.
This was previously limited to two decimal places, but as of April 2022, you can now have up to nine values after the decimal.
all_conversionsBest estimate of the total number of conversions that Google Ads drives. Includes website, cross-device, and phone call conversions.
average_costThe average amount you pay per interaction.
average_positionDeprecated by Google. Your ad's position relative to those of other advertisers.
average_time_on_siteTotal duration of all sessions (in seconds) / number of sessions.
bounce_ratePercentage of clicks where the user visited a single page on your site.
click_assisted_conversion_valueDeprecated by Google. The total value of all conversions for which this keyword, ad, ad group, or campaign triggered assisted clicks.
click_assisted_conversionsDeprecated by Google. The total number of conversions for which this keyword, ad, ad group, or campaign contributed to one or more assisted clicks.
click_assisted_conversions_over_last_click_conversionsDeprecated by Google. The total number of conversions for which this keyword, ad, ad group, or campaign received in assisted clicks divided by the total number of conversions for which it triggered the last click.
clicksThe number of clicks.
conversion_valueThe sum of conversion values for all conversions.
conversionsThe number of conversions for all conversion actions that you have opted into optimization.
costThe sum of your cost-per-click (CPC) and cost-per-thousand impressions (CPM) costs during this period.
date_startThe date start formatted as yyyy-MM-dd.
date_stopThe date stop formatted as yyyy-MM-dd.
engagementsThe number of engagements. An engagement occurs when a viewer expands your Lightbox ad.
gmail_forwardsThe number of times your ad was forwarded to someone else as a message.
gmail_savesThe number of times someone has saved your Gmail ad to their inbox as a message.
gmail_secondary_clicksThe number of clicks to your landing page on the expanded state of Gmail ads.
impression_assisted_conversionsDeprecated by Google. Total number of conversions for which this object triggered assist impressions before the last click.
impressionsCount of how often your ad has appeared on a search results page or website on the Google Network.
interaction_typesThe types of interactions that are reflected in the Interactions, InteractionRate, and AverageCost columns.
interactionsThe number of interactions. An interaction is the main user action associated with an ad format--clicks for text and shopping ads, views for video ads, and so on.
value_per_all_conversionThe value, on average, of all conversions.
video_quartile_100_ratePercentage of impressions where the viewer watched 100% of your video.
video_quartile_25_ratePercentage of impressions where the viewer watched 25% of your video.
video_quartile_50_ratePercentage of impressions where the viewer watched 50% of your video.
video_quartile_75_ratePercentage of impressions where the viewer watched 75% of your video.
video_view_rateThe number of views your TrueView video ad receives divided by its number of impressions, including thumbnail impressions for TrueView in-display ads.
video_viewsThe number of times your video ads were viewed.
view_through_conversionsThe total number of view-through conversions.
(information)

Returning removed ads

As of April 2022, the Google Ads source uses the Google Ads API, which returns ads with a status of REMOVED. Prior to April 2022, REMOVED ads were not returned by the default AdWords API.

Property NameDescription
ad_group_idThe id of the adgroup containing this ad.
adwords_customer_idThe 10-digit Google Ads Customer ID.
final_mobile_urlsA list of final mobile landing page urls.
final_urlsA list of final landing page urls.
received_atThis timestamp is added to incoming messages as soon as they hit Segment API.
statusThe status(link takes you to an external page) of the ad.
typeThe type of this ad.
urlDeprecated by Google. Unique identifier for this instance of UrlData.
Property NameDescription
adwords_customer_idThe 10-digit Google Ads Customer ID.
end_dateDate the campaign ends.
nameName of this campaign.
received_atThis timestamp is added to incoming messages as soon as they hit Segment API.
serving_statusServing status(link takes you to an external page) of the campaign.
start_dateDate the campaign begins.
statusStatus(link takes you to an external page) of the campaign.

Campaign Performance Report

campaign-performance-report page anchor
Property NameDescription
active_view_impressionsHow often your ad has become viewable on a Display Network site.
active_view_measurabilityThe ratio of impressions that could be measured by Active View over the number of served impressions.
active_view_measurable_costThe cost of the impressions you received that were measurable by Active View.
active_view_measurable_impressionsThe number of times your ads are appearing on placements in positions where they can be seen.
active_view_viewabilityThe percentage of time when your ad appeared on an Active View enabled site (measurable impressions) and was viewable (viewable impressions).
advertising_channel_sub_typePrimary serving target for ads in the campaign.
adwords_customer_idThe 10-digit Google Ads Customer ID.
all_conversion_rateHow often a click on your ad resulted in a conversion.
This was previously a percentage, but as of April 2022, is now a decimal value. For example, a previous value of 75 is now 0.75.
all_conversion_valueThe total value of all of your conversions, including those that are estimated.
This was previously limited to two decimal places, but as of April 2022, you can now have up to nine values after the decimal.
all_conversionsBest estimate of the total number of conversions that Google Ads drives. Includes website, cross-device, and phone call conversions.
amountThe daily budget.
average_costThe average amount you pay per interaction.
average_positionDeprecated by Google. Your ad's position relative to those of other advertisers.
average_time_on_siteTotal duration of all sessions (in seconds) / number of sessions.
base_campaign_idThe ID of base campaign of trial campaigns.
As of April 2022, the attribute type has changed from a xsd:long(link takes you to an external page) to a string(link takes you to an external page).
bounce_ratePercentage of clicks where the user only visited a single page on your site.
This was previously a percentage, but as of April 2022, is now a decimal value. For example, a previous value of 75 (for example, 75%) is now 0.75.
budget_idThe ID of the Budget.
campaign_idThe ID of the Campaign.
campaign_statusThe status of the Campaign.
campaign_trial_typeThe type of campaign. This shows if the campaign is a trial campaign or not.
click_assisted_conversion_valueDeprecated by Google. The total value of all conversions for which this keyword, ad, ad group, or campaign triggered assisted clicks.
click_assisted_conversionsDeprecated by Google. The total number of conversions for which this keyword, ad, ad group, or campaign contributed to one or more assisted clicks.
click_assisted_conversions_over_last_click_conversionsDeprecated by Google. The total number of conversions for which this keyword, ad, ad group, or campaign received in assisted clicks divided by the total number of conversions for which it triggered the last click.
clicksThe number of clicks.
conversion_valueThe sum of conversion values for all conversions.
conversionsThe number of conversions for all conversion actions that you have opted into optimization.
costThe sum of your cost-per-click (CPC) and cost-per-thousand impressions (CPM) costs during this period.
date_startThe date start formatted as yyyy-MM-dd.
date_stopThe date stop formatted as yyyy-MM-dd.
engagementsThe number of engagements. An engagement occurs when a viewer expands your Lightbox ad.
gmail_forwardsThe number of times your ad was forwarded to someone else as a message.
gmail_savesThe number of times someone has saved your Gmail ad to their inbox as a message.
gmail_secondary_clicksThe number of clicks to your landing page on the expanded state of Gmail ads.
impression_assisted_conversionsDeprecated by Google. Total number of conversions for which this object triggered assist impressions prior to the last click.
impression_reachDeprecated by Google. Number of unique cookies that were exposed to your ad over a given time period, or the special value "< 100" if the number of cookies is less than 100.
impressionsCount of how often your ad has appeared on a search results page or website on the Google Network.
interaction_typesThe types of interactions that are reflected in the Interactions, InteractionRate, and AverageCost columns.
As of April 2022, the case of the value changed from Pascal case (Click) to upper case (CLICK)(link takes you to an external page).
interactionsThe number of interactions. An interaction is the main user action associated with an ad format--clicks for text and shopping ads, views for video ads, and so on.
invalid_clicksNumber of clicks Google considers illegitimate and doesn't charge you for.
is_budget_explicitly_sharedIndicates if the budget is a shared budget (true) or specific to the campaign (false).
As of April 2022, the case of the value changed from lowercase (false) to Pascal case (False).
url_custom_parametersCustom URL parameters of the main object of this row.
value_per_all_conversionThe value, on average, of all conversions.
video_quartile_100_ratePercentage of impressions where the viewer watched all of your video.
video_quartile_25_ratePercentage of impressions where the viewer watched 25% of your video.
video_quartile_50_ratePercentage of impressions where the viewer watched 50% of your video.
video_quartile_75_ratePercentage of impressions where the viewer watched 75% of your video.
video_view_rateThe number of views your TrueView video ad receives divided by its number of impressions, including thumbnail impressions for TrueView in-display ads.
video_viewsThe number of times your video ads were viewed.
view_through_conversionsThe total number of view-through conversions.

Click Performance Report

click-performance-report page anchor
Property NameDescription
ad_formatDeprecated by Google. The underlying media format of the ad.
ad_group_idThe ID of the AdGroup.
ad_network_typeThe network type. Previously ad_network_type_1 and ad_network_type_2.
adwords_customer_idThe 10-digit Google Ads Customer ID.
aoi_most_specific_target_idThe most specific location target.
campaign_idThe ID of the Campaign.
click_typeIndicates the click type for metric fields such as Impressions.
creative_idID of the ad.
criteria_parametersDeprecated by Google. Descriptive string for the Criterion.
date_startThe date start formatted as yyyy-MM-dd.
date_stopThe date stop formatted as yyyy-MM-dd.
deviceDevice type where the impression was shown.
As of April 2022, the device values have been updated(link takes you to an external page).
gcl_idThe Google Click ID.
pagePage number in search results where the ad was shown.
slotThe position of the Ad.
As of April 2022, the case of the value changed(link takes you to an external page) from Pascal case (SearchTop) to screaming snake case (SEARCH_TOP).
user_list_idThe ID of the UserList (audience).

Search Performance Report

search-performance-report page anchor
(information)

Ads API updates

As of April 2022, in the absence of a value the following fields return 0 or empty strings instead of null values:

  • conversion_category_name:0
  • conversion_name: empty string
  • conversion_tracker_id: empty string
  • cross_device_conversions: 0
  • external_conversion_source: 0
  • tracking_url_template: empty string
Property NameDescription
ad_group_idThe ID of the AdGroup.
ad_group_nameThe name of the AdGroup.
ad_group_stateStatus of the ad group.
ad_idThe ID of the Ad.
adwords_customer_idThe 10-digit Google Ads Customer ID.
all_conversion_rateHow often a click on your ad resulted in a conversion.
all_conversion_valueThe total value of all of your conversions, including those that are estimated.
all_conversionsBest estimate of the total number of conversions that Google Ads drives. Includes website, cross-device, and phone call conversions.
average_costThe average amount you pay per interaction.
average_cpcThe total cost of all clicks divided by the total number of clicks received.
average_cpeThe average amount that you've been charged for an ad engagement.
average_cpmAverage Cost-per-thousand impressions (CPM).
average_cpvThe average amount you pay each time someone views your ad.
average_positionDeprecated by Google. Your ad's position relative to those of other advertisers.
campaign_idThe ID of the Campaign.
clicksThe number of clicks.
conversion_rateThe number of conversions divided by total clicks that can be tracked to conversions
conversion_valueThe sum of conversion values for all conversions.
conversionsThe number of conversions for all conversion actions that you have opted into optimization.
costThe sum of your cost-per-click (CPC) and cost-per-thousand impressions (CPM) costs during this period.
cost_per_all_conversionTotal cost divided by all conversions.
cost_per_conversionThe Cost attributable to conversion-tracked clicks divided by the number of conversions.
cross_device_conversionsConversions from when a customer clicks on an Google Ads ad on one device, then converts on a different device or browser.
ctrThe number of clicks your ad receives (Clicks) divided by the number of times your ad is shown (Impressions).
dateThe date formatted as yyyy-MM-dd.
deviceDevice type where the impression was shown.
engagement_rateHow often people engage with your ad after it's shown to them.
engagementsThe number of engagements. An engagement occurs when a viewer expands your Lightbox ad.
external_conversion_sourceThe source of conversion such as website, import from calls.
external_customer_idThe Customer ID.
final_urlFinal URL of the impressions.
This previously contained the protocol, domain, and path for your URL, but as of April 2022, now only contains the protocol and domain. For example, a previous value of https://segment.com/docs/ is now https://segment.com/(link takes you to an external page).
impressionsCount of how often your ad has appeared on a search results page or website on the Google Network.
interaction_rateHow often people interact with your ad after it is shown to them.
interaction_typesThe types of interactions that are reflected in the Interactions, InteractionRate, and AverageCost columns.
interactionsThe number of interactions.
keyword_idThe ID of the Keyword that triggered the ad.
networkFirst level network type.
network_with_search_partnersDeprecated by Google. Second level network type (includes search partners).
original_ad_id-
queryKeyword that triggered the ad.
query_match_type_with_variantMatch type of the keyword that triggered the ad, including variants.
As of April 2022, query_match_type_with_variant doesn't support the following metrics(link takes you to an external page), so they will return a null value: average_cpv, video_quartile_p100_rate, video_quartile_p25_rate, video_quartile_p50_rate, video_quartile_p75_rate, video_view_rate, video_views
tracking_url_templateTracking template of the main object of this row.
value_per_all_conversionThe value, on average, of all conversions.
value_per_conversionThe total value of your conversions divided by the total number of conversions.
video_quartile_100_ratePercentage of impressions where the viewer watched all of your video.
video_quartile_25_ratePercentage of impressions where the viewer watched 25% of your video.
video_quartile_50_ratePercentage of impressions where the viewer watched 50% of your video.
video_quartile_75_ratePercentage of impressions where the viewer watched 75% of your video.
video_view_rateThe number of views your TrueView video ad receives divided by its number of impressions, including thumbnail impressions for TrueView in-display ads.
video_viewsThe number of times your video ads were viewed.
view_through_conversionsThe total number of view-through conversions.
weekThe date for the Monday of the week, formatted as yyyy-MM-dd.
yearThe year, formatted as yyyy.

Keyword Performance Report

keyword-performance-report page anchor
Property NameDescription
ad_group_idThe ID of the AdGroup.
adwords_customer_idThe 10-digit Google Ads Customer ID.
all_conversion_rateHow often a click on your ad resulted in a conversion.
This value was previously a percentage, but as of April 2022, is now a decimal. For example, a previous value of 75 is now 0.75.
all_conversion_valueThe total value of all of your conversions, including those that are estimated.
This was previously limited to two decimal places, but as of April 2022, you can now have up to nine values after the decimal.
all_conversionsBest estimate of the total number of conversions that Google Ads drives. Includes website, cross-device, and phone call conversions.
approval_statusApproval status of the criterion.
average_costThe average amount you pay per interaction.
average_cpcThe total cost of all clicks divided by the total number of clicks received.
average_cpmAverage Cost-per-thousand impressions (CPM).
This was previously limited to two decimal places, but as of April 2022, you can now have up to nine values after the decimal.
average_cpvThe average amount you pay each time someone views your ad.
average_pageviewsAverage number of pages viewed per session.
average_positionDeprecated by Google. Your ad's position relative to those of other advertisers.
average_time_on_siteTotal duration of all sessions (in seconds) / number of sessions.
campaign_idThe ID of the Campaign.
click_assisted_conversion_valueDeprecated by Google. The total value of all conversions for which this keyword, ad, ad group, or campaign triggered assisted clicks.
click_assisted_conversionsDeprecated by Google. The total number of conversions for which this keyword, ad, ad group, or campaign contributed to one or more assisted clicks.
clicksThe number of clicks.
conversionsThe number of conversions for all conversion actions that you have opted into optimization.
cpc_bidCost per click bid.
This value was previously one of three units(link takes you to an external page): a monetary amount in micros, "auto: x" or "auto", but as of April 2022, is now a monetary amount in micros.
cpc_bid_sourceSource of the CPC bid.
As of April 2022, the ENUM values have been updated(link takes you to an external page).
criteriaDescriptive string for the Criterion.
ctrThe number of clicks your ad receives (Clicks) divided by the number of times your ad is shown (Impressions).
This value was previously a percentage, but as of April 2022, is now a decimal. For example, a previous value of 75 is now 0.75.
date_startThe date start formatted as yyyy-MM-dd.
date_stopThe date stop formatted as yyyy-MM-dd.
impression_assisted_conversionsDeprecated by Google. Total number of conversions for which this object triggered assist impressions prior to the last click.
impressionsCount of how often your ad has appeared on a search results page or website on the Google Network.
keyword_idID of the main object of this row. As of April 2022, the format of this value changed from the keyword_id itself to the entire link: for example, a previous value of 10004380 is now customers/.../adGroupCriteria/39801374490~10004380
original_keyword_id-

Warehouses are the sole supported destination for object-cloud sources.