Skip to main content

Introduction

Google Ads is Google’s paid advertising platform, spanning Search, Display, YouTube, Shopping, Discovery, Performance Max, App, Local Services, Hotel, and other campaign types. Advertisers run paid campaigns through Google Ads Manager, and the connector imports the resulting architecture and performance data via the Google Ads API (GAQL, v23). As a marketing connector, metrics, breakdowns, and currencies are standardized so widgets can aggregate across sources without additional configuration. To connect this data source, see How to connect Google Ads to Adriel.

Data refresh strategy

Architecture data

Architecture covers ad accounts, campaigns, ad sets (ad groups), ads, and keywords. It refreshes every 4 hours, on the hour (UTC). Only campaigns created within the last 3 years are imported when the data source is first connected; campaigns created before that window are not back-filled.

Reports data

Reports include daily performance for ad accounts, campaigns, ad sets, ads, and keywords. Real-time. Report data is fetched from Google on demand when a dashboard loads, so the latest values are always visible. On top of that, scheduled cache refreshes keep historical data consistent across multiple time windows. Refresh schedule. Reports refresh on three overlapping schedules:
  • 11:40 PM and 6:40 AM UTC daily — syncs the last 3 days for ad account, campaign, ad set, and ad
  • 5:00 PM UTC daily — syncs the last 30 days for ad account, campaign, ad set, and ad
  • 7:30 AM UTC on the 1st and 15th of each month — syncs the last 90 days for ad account, campaign, ad set, and ad

Architecture levels

Ad account → Campaign → Ad set (ad group) → Ad → Keyword → Search term Performance Max campaigns replace the ad set / ad tier with an asset groupasset structure.

Date range limits

Metrics

How to read the API Key columnCode style like metrics.clicks is the literal Google Ads API field name. Italic text describes how a value is produced when it doesn’t map cleanly to a single API field (Adriel-computed rates, cross-connector fallbacks, or aggregated values).

Reach & impressions

Click performance

Cost & spend

Currency conversionEach ad account’s currency comes from its Google Ads settings. When an ad account’s currency differs from the workspace currency, costs are automatically converted using the current day’s exchange rate.

Engagement

Video performance

Video metrics at the ad-account levelGoogle’s API does not allow video quartile metrics to be queried at the ad-account level. When a video metric is requested at account level, the query is automatically promoted to campaign level and results are aggregated.

Conversion performance

Conversions vs. All conversions“Conversions” reflects only conversion actions flagged as primary in the Google Ads setup. “All conversions” includes every conversion action, primary or secondary. Two different numbers appearing in different widgets usually means each is using a different one of these.

Custom conversion events

Each conversion action configured in the Google Ads account is automatically imported. For every imported event, these metrics are auto-generated: Custom event metrics only appear in dashboards when the underlying event is active in the Google Ads account. Account-level KPI variants also exist for the standard reporting categories: Conversions: ROAS / CPA / CVR, Conversions (All Conv): ROAS / CPA / CVR, Interactions: CPA / CVR, Orders: CPA / CVR, View Through Conversions: CPA / CVR.

Auction insights

Cross-device conversions

Cross-sell & new customer

Active View (viewability)

Phone & call conversions

Location asset conversions

Cost & revenue (raw micros)

Budget & schedule

UTM tracking

Campaign structure metadata

AI creative analysis

Result Indicator mapping

The “Result Indicator” metric reflects the action a campaign is optimized for. It’s resolved in this order:
  1. If a campaign has a conversion goal (for example app installs, content views), the conversion goal is used.
  2. Otherwise, the campaign marketing objective maps to a default indicator:
  1. If neither applies, clicks is used as the default.

Breakdowns

Standard hierarchy

Demographics

Geographic

Time & device

Creative content

Performance Max

Overview & status

Time & date grouping

Google’s API returns daily records; Adriel groups them into these views for reporting. All time-grouping breakdowns are Adriel-side aggregations of the same underlying daily data.

Creative analysis

Adriel post-processes ad creatives to generate these breakdowns.

UTM tracking

UTM values are parsed by Adriel, not returned by Google. Adriel reads the UTM query parameters from each ad’s configuration and landing URL and exposes them as both metrics (for rollup) and breakdowns (for grouping).

Limitations

Based on the current connector, Google Ads has the following limits:
  • Campaign recency filter — only campaigns created within the last 3 years are imported when the data source is first connected; campaigns created before that window are not back-filled. Because Adriel caches data as it syncs, history accumulates from the connection date onward.
  • Ad-level PMax metrics unavailable — Performance Max campaigns do not expose metrics at the ad tier; reporting is available at the asset group and asset level (Google Ads Help — Performance Max asset reporting). Queries targeting ads that belong to PMax campaigns surface a GOOGLE_PMAX_AD_NO_METRICS warning (“Metrics are not available for Google PMax campaigns at the ads level (no metrics on assets).”). Query at asset-group or campaign level instead.
  • PMax with multiple breakdowns — mixing PMax data with more than one breakdown surfaces a GOOGLE_PMAX_DATA_NOT_AVAILABLE warning (“Google PMax campaign reports are not supported for this breakdown”). Campaign-level PMax metrics are not affected.
  • Video quartile metrics not available at account level — auto-promoted to campaign level and aggregated.
  • Search-only breakdowns — Keyword and Search term breakdowns only return data for Search campaigns.
  • Query truncation — when a query asks for more data than the connector can return in a single call, results are flagged with a dataTruncated warning on the widget. Narrow the date range, reduce the number of breakdowns, or query at a higher level (campaign instead of keyword) to resolve.
  • Google Local Services Ads is a separate connector — Local Services Ads requires its own connector setup, with a separate refresh schedule and limitations.

API references

See also