If you want to work with the data output directly in BigQuery, getting started is straightforward. Below is an example query to analyse performance metrics from your Google Ads quality score report.
This query retrieves and summarises Google Ads performance data, focusing on total cost
, impressions
, clicks
, conversions
, and quality scores
for each campaign, starting from 1 January 2023. It groups the data by campaign name
and ad group name
to provide a clear summary of performance metrics across different campaigns and ad groups:
SELECT
campaign__name,
ad_group__name,
SUM(metrics__cost_micros) / 1e6 AS total_cost,
SUM(metrics__impressions) AS total_impressions,
SUM(metrics__clicks) AS total_clicks,
SUM(metrics__conversions) AS total_conversions, AVG(metrics__historical_quality_score) AS avg_quality_score
FROM `project.dataset.gads_keywords_quality_score_{table_suffix}`
WHERE date >= '2023-01-01'
GROUP BY
campaign__name,
ad_group__name
ORDER BY
campaign__name,
ad_group__name
Below is the detailed schema of the output tables in BigQuery:
Table: gads_keywords_quality_score_{table_suffix}
Full name | Type | Description |
date | DATE | The date of the record. |
customer__currency_code | STRING | The currency code used by the customer. |
custom_currency | STRING | The custom currency used for unified currency calculations. |
customer__descriptive_name | STRING | The descriptive name of the customer. |
customer__time_zone | STRING | The time zone of the customer. |
ad_group__id | STRING | The ID of the ad group. |
ad_group__name | STRING | The name of the ad group. |
campaign__id | STRING | The ID of the campaign. |
campaign__name | STRING | The name of the campaign. |
customer__id | STRING | The ID of the customer. |
pseudo_helper | INTEGER | A helper field for pseudo calculations. |
ad_group_criterion__keyword__text | STRING | The keyword text of the ad group criterion. |
ad_group_criterion__keyword__match_type | STRING | The match type of the keyword (e.g., exact, phrase, broad). |
metrics__cost_micros | FLOAT | The cost in micros (1,000,000 micros = 1 unit of currency). |
metrics__impressions | INTEGER | The number of impressions. |
metrics__clicks | INTEGER | The number of clicks. |
metrics__conversions | FLOAT | The number of conversions. |
metrics__conversions_value | FLOAT | The value of conversions. |
metrics__all_conversions_value | FLOAT | The value of all conversions. |
metrics__search_impression_share | FLOAT | The search impression share. |
metrics__historical_quality_score | FLOAT | The historical quality score. |
metrics__historical_creative_quality_score | STRING | The historical creative quality score. |
metrics__historical_landing_page_quality_score | STRING | The historical landing page quality score. |
metrics__historical_search_predicted_ctr | STRING | The historical predicted click-through rate (CTR) quality score. |
metrics__average_cpc | FLOAT | The average cost per click (CPC). |
custom_cost | FLOAT | The custom cost in unified currency. |
custom_conversion_value | FLOAT | The custom conversion value in unified currency. |
custom_metrics__average_cpc | FLOAT | The custom average cost per click (CPC) in unified currency. |