Skip to main content
Ctrl+K
Adverity Documentation  documentation - Home

Getting started with Adverity

  • Glossary
  • Get started with Adverity
    • Get to know Adverity
    • Creating a datastream
    • Applying Data Mapping
    • Loading data into Adverity Data Storage, Explore & Present, and external destinations
    • Creating widgets and a dashboard
  • Migrating to Adverity
    • Adverity for Fivetran users
    • Adverity for Funnel users
    • Adverity for Improvado users
    • Adverity for Marketing Cloud Intelligence users

Data sources

  • Available data sources in Adverity

Connect Data

  • Datastreams
    • Creating a datastream
    • Collecting data
      • Manual, Smart, and Custom fetches
      • Configuring advanced datastream settings
      • Managing datastreams
      • Scaling datastreams
      • Working with data extracts
      • Combining data extracts using Bundle
      • Using datastream templates
      • Using placeholders to name objects
      • Viewing datastream issues
      • Collecting and visualizing non-aggregatable metrics
      • Working with duration data
    • Data Mapping
      • Applying Data Mapping to a datastream
      • Configuring advanced Data Mapping
    • Troubleshooting
      • Troubleshooting data discrepancies
      • Troubleshooting errors when collecting and loading data
  • Authorizations
    • Creating and viewing authorizations
    • Managing authorizations
    • Setting up authorizations to store data extracts
    • Configuring required permissions for data extract storage
    • Authorizing specific data sources
      • Setting up an authorization to Amazon Athena
      • Setting up an authorization to Marketo
      • Setting up an authorization to Partnerize
      • Setting up an authorization to Rakuten Advertising
      • Setting up an authorization to Salesforce Marketing Cloud
      • Setting up an authorization to SFTP server with a public key
      • Setting up an authorization to Web Connect
      • Setting up an authorization to X Public Basic OAuth2
      • Setting up an authorization to TikTok Business
  • Activity
    • Using the Performance Manager

Manage Data

  • Transformations
    • Transforming data in Adverity
    • Using standard transformations
      • Create or Edit Columns
      • Adding rules to the Create or Edit Columns transformation
      • Currency Conversion
      • Join Datastream
      • Match & Map
      • Smart Naming Convention
      • Executing Smart Naming Conventions on conditions
      • Translation
      • Unify Location Data
      • Previewing transformations
    • Using custom script transformations
      • Available custom script instructions
      • Using the Transformation Copilot
      • Creating geolocation transformation scripts
      • Creating ISO region codes for geo maps
      • Creating rounding transformation script
      • Repository of ISO region codes for geo maps
      • Using Python expressions in custom scripts
      • Using Python expressions to manage dates
        • Adding certain dates to data extracts
        • Converting dates from one format to another
        • Converting time data between time zones
    • Mapping tables
      • Creating and applying mapping tables
      • Advanced mapping table settings
      • Automatically populate a mapping table
    • Value tables
      • Creating value tables
      • Advanced value table settings
      • Automatically populate a value table
  • Data Quality
    • Working with universal monitors
    • Working with custom monitors
    • Viewing details of the Data Quality issues
  • Data Dictionary
    • Creating and editing target fields
    • Default Data Mapping
    • Data types and measures
  • dbt Projects (Beta)
    • Adding a dbt project
    • Running a dbt project

Use Data

  • Data Conversations
    • Prompting Data Conversations
    • Setting up your data flow to use Data Conversations
  • Loading data into Explore & Present
  • Explore
    • Creating widgets and adding them to a dashboard
      • Selecting data to add to a widget
      • Configuring data tables
      • Configuring fields in data tables
      • Creating identical or similar widgets
      • Creating widgets comparing data over time
      • Filtering the data shown in widgets
      • Using Calculated KPIs and adding them to widgets
    • Creating visualization widgets
      • Configuring bar, line, and scatter chart widgets
      • Creating a bar chart to visualize potential impressions
      • Creating a Sankey diagram to visualize duration data
      • Creating custom data sets in widgets
      • Creating geo map widgets
      • Customizing KPI box widgets
      • Displaying images in data tables and KPI boxes
  • Present
    • Creating dashboards in Present
      • Adding widgets to a dashboard
      • Adding images to a dashboard
      • Adding websites and YouTube videos to a dashboard
      • Using dashboard templates
      • Using the Custom Library of widgets
      • Working with widget filter templates in Present
    • Managing dashboards
      • Adding filters to a dashboard
      • Cloning dashboards
      • Confirming data completeness
      • Deleting dashboards
      • Freezing dashboards
      • Optimizing dashboard performance
      • Switching the dimensions and metrics shown in widgets
      • Using dashboard labels
      • Using dashboard pages
      • Using dashboard themes
    • Sharing dashboards
      • Displaying dashboards in TV-screen mode
      • Embedding dashboards and widgets in Microsoft PowerPoint
      • Exporting dashboards
      • Publishing dashboards
      • Sharing dashboards and widgets
  • Destinations
    • Setting up destinations
    • Destination guides
    • Asking someone to set up an authorization to a destination
    • Configuring data loading settings
    • Data types across different database engines
    • Analyzing data with ChatGPT

Administration

  • Adverity core connectors and destinations
  • Understanding your Adverity usage
    • Measuring Adverity usage with unique data rows
    • Viewing resource usage
  • Managing workspaces
    • Creating and deleting workspaces
    • Configuring workspace settings
    • Best practices for workspace structure
    • Cloning workspaces
    • Selecting workspaces
    • Configuring data warehouses for workspaces
    • Setting up storage for data extracts
  • Managing users
    • Adding and deleting Adverity users
    • Changing user settings and passwords
    • Managing user notifications
    • Managing user permissions
    • Configuring Single Sign-On
    • Using two-factor authentication
  • Connecting an external data warehouse
    • Connecting a Google BigQuery warehouse
    • Connecting a Snowflake warehouse
  • Providing Adverity Support with a browser log
  • Administration in Explore and Present
    • Workspace
      • Creating and deleting workspaces in Explore & Present
      • Configuring workspace settings in Explore & Present
      • Configuring the default color palette for Explore and Present
      • White labeling in Explore & Present
    • Users & roles
      • Getting an overview of users in Explore & Present
      • Adding and deleting Explore & Present users
      • Roles and permissions in Explore & Present
      • Changing your user settings in Explore & Present
      • Using role-based filters in Explore & Present
    • Manage
      • Configuring columns settings
      • Managing your dashboards
      • Configuring visualisation settings
      • Using alerts in Explore & Present
    • Security
      • Security settings in Explore & Present
      • Viewing activity audits in Explore & Present

Management API

  • Getting Started
  • Authorization
  • Managing workspaces
    • Creating workspaces
    • Configuring workspaces
  • Creating and configuring authorizations
  • Managing datastreams
    • Creating datastreams
    • Configuring datastreams
  • Collecting data
    • Collecting data
    • Scheduling fetches
  • Configuring Data Mapping
  • Transforming data
    • Creating and configuring transformations
    • Configuring mapping tables
  • Transferring data
    • Creating and deleting destinations
    • Assigning destinations to datastreams
  • Administration
    • Managing jobs
    • Listing issues
    • Managing users
    • Configuring notifications

What's new?

  • Release notes
  • Announcements
  • Incidents

AI & Automation

  • LLM-Ready Documentation

Google Ads: Tips and best practices

Contents

  • Reporting on Performance Max campaigns
  • Selecting the date range for a fetch
  • Previewing an image
  • Using Adverity datastream templates
  • Performance optimization
  • Understanding Performance Max campaigns
  • Recommended datastream configurations
    • Google Ads | Campaign Report | Campaign Level
    • Google Ads | Keyword Report
    • Google Ads | Custom Report | Gender
    • Google Ads | Custom Report | Age Range
  • Understanding campaign types
  • Reach reporting limitations
  • Understanding “Mixed” network reporting
  • Organic search data sources
  • Performance Max campaign access
  • Revenue field selection
  • Available granularity levels
  • Connector limitations
  • Setup best practices
    • Visualization considerations
    • Authentication setup
    • Data retention recommendations
  • Using filters with Google Ads
  • Calculating impression share and related metrics
    • Prerequisites
    • Procedure

Google Ads: Tips and best practices#

Reporting on Performance Max campaigns#

Performance Max campaigns are included in reports that use the Campaign or Asset Group resource level.

Reports using ad group or ad level dimensions will not include Performance Max campaigns, as these campaigns use asset groups instead of traditional ad groups or ads.

For more detailed analysis, select the Asset Group, Asset Group Asset, or Asset Group Product Group View resource levels to access additional attributes such as ad strength and performance labels, or to report on listing groups in retail campaigns.

Selecting the date range for a fetch#

The selected date segment determines the date range you can choose for a data fetch. Because of the requirements of the Google Ads API, the date range needs to start and end on the first day of the selected date segment. Adverity automatically changes the date range of the fetch to be compatible with this requirement. For example, if you select a custom date range of 15 March - 15 April with a monthly date segment, Adverity modifies the time range to 1 March - 1 April, and collects data for the months of March and April. To collect data for the month of March only, select a date range of 1 March - 1 March.

Previewing an image#

To be able to preview an image, you need to collect Image ad preview image URL dimension.

Using Adverity datastream templates#

Use Adverity Datastream Templates to save you time editing all the options in this connector.

Performance optimization#

Enrichment required to calculate the aggregate metric potential impressions.

Fetch field Advertising Channel to view campaign type in the UI.

Clients may be confused by the Google Ads Keyword Planner connector. This is used for researching search terms, not reporting on own paid performance.

For dashboards, if there are multiple Google Ads datastreams make sure widgets are filtered by datastream to avoid double counting metrics.

Understanding Performance Max campaigns#

Performance Max automates ad serving. (It started around Sept 2022). You’ll see it reported as Network = Mixed because the actual networks are not yet reported. Use Advertising Channel to report the type of campaign. Performance Max is reported at campaign level, they do not have an ad group.

Recommended datastream configurations#

Google Ads | Campaign Report | Campaign Level#

This is your standard datastream with basic metrics.

  • Report Type = Campaign Basic Performance

  • Resource Level = Campaign

  • Segments = Day, Network

Google Ads | Keyword Report#

Select ‘Custom’ report type and resource level ‘Keyword View’ or ‘Search Term View’. Segments may include Day, Network, Device, Keyword, Match type.

Google Ads | Custom Report | Gender#

If you require gender breakdown, select custom report type and resource level ‘Gender View’

Google Ads | Custom Report | Age Range#

If you require age breakdown, select custom report type and resource level ‘Age Range View’

Understanding campaign types#

The API calls this Advertising Channel you can add it to attributes in your datastream settings.

Reach reporting limitations#

Unfortunately reach is not supported by the Google Ads API. Google Ads AverageFrequency and ImpressionReach have been deprecated.

Understanding “Mixed” network reporting#

This is how Google Ads currently reports on its automated campaigns, this could be Performance Max, Discovery Ads and Dynamic search ads. Use the Advertising Channel to denote between those types.

Organic search data sources#

Google Ads only reports on paid search. The most common data sources our clients are using for organic search are:

  • Google Analytics: traffic by keywords

  • SEMRush: Competitors in Organic Search

Performance Max campaign access#

Performance Max-related data is only accessible in the ‘Campaign Basic Performance’ report type and ‘Campaign’ resource level. If you’re unable to view PMAX campaigns you’ve likely selected the wrong resource level.

Revenue field selection#

API field corresponding to revenue is “Conversion value (current model)” - the first part returns the sum of conversion values for all conversions, the second stands for the current attribution model selected in the Google Ads UI.

Available granularity levels#

  1. Account

  2. Campaign

  3. Ad Group (recommended level if not specified)

  4. Ad

Connector limitations#

  • There are many different report combinations. You may require numerous datastreams to pull all the fields you require.

  • Search Impressions Share comes through as a percentage and must be enriched to calculate the aggregate metric potential impressions

  • Keywords report doesn’t allow ad group

  • Reach not currently supported by the API

  • Custom columns are not supported by the Google Ads API

Setup best practices#

Visualization considerations#

If there are multiple Google Ads datastreams make sure widgets are filtered by datastream to avoid double counting metrics.

Authentication setup#

All customers in one authorisation. You must have ‘Read only’ or higher permissions.

Data retention recommendations#

  • Local data retention: unique by day using Day

  • Overwrite: Date range is Day

Using filters with Google Ads#

When configuring a Google Ads datastream, you can use the Custom Filter field in the Advanced section to filter your data before fetching results. This allows you to apply specific conditions to your queries, such as retrieving only certain campaign types or filtering by performance metrics.

When configuring the Custom Filter field, you are defining conditions for the WHERE clause described in the Google Ads documentation.

The filter expressions support a number of operators, including:

  • Equality operators: =, !=

  • Comparison operators: >, >=, <, <=

  • String matching: LIKE, NOT LIKE, CONTAINS ANY, CONTAINS ALL, CONTAINS NONE

  • Set operators: IN, NOT IN

  • Null checks: IS NULL, IS NOT NULL

  • Date ranges: DURING, BETWEEN

  • Regular expressions: REGEXP_MATCH, NOT REGEXP_MATCH

Example filter expressions:

metrics.clicks > 7
campaign.id IN (918735746)
campaign.name LIKE '%Brand%'
metrics.impressions > 0 AND metrics.clicks > 10
campaign.advertising_channel_type = 'PERFORMANCE_MAX'

You can combine multiple conditions using AND operators. If your filter syntax is incorrect, you’ll see a validation error.

For more complex queries, refer to the full query grammar reference in the Google Ads documentation.

Calculating impression share and related metrics#

The Google Ads connector returns some metrics as percentages (including impression share). Percentages cannot be aggregated or combined. However, data returned as percentages can be further processed to make them ready for aggregation. For more information, see the Google documentation.

This section enables you to calculate potential impressions from the impression share metric. You can then send potential impressions to Explore & Present or load them into destinations and use this metric to calculate impression share percentages for any combination of dimensions.

Prerequisites#

  • Create a Google Ads datastream.

  • Apply the correct Data Mapping to your datastream.

  • Make sure that your data extract contains the following fields:

    • Impressions

    • Search impression share

    • Search lost impression share (budget)

    • Search lost impression share (rank)

Procedure#

To calculate potential impressions from the impression share metric, apply the following Custom Script transformation:

[
    [
        "extendmissing",
        {
            "subtable": null,
            "fieldnames": [
                "Search lost impression share (rank)",
                "Search lost impression share (budget)"
            ],
            "missing": "0.0",
            "_comment": null
        }
    ],
    [
        "convertnumbers",
        {
            "fields": [
                "Impressions",
                "Search impression share",
                "Search lost impression share (rank)",
                "Search lost impression share (budget)"
            ],
            "default": 0,
            "strict": false,
            "subtable": null,
            "locale": "en",
            "_comment": null
        }
    ],
    [
        "addfieldx",
        {
            "index": null,
            "subtable": null,
            "field": "Potential impressions",
            "expression": "round({Impressions} / {Search impression share}) if {Search impression share} > 0 else '0'",
            "_comment": null
        }
    ],
    [
        "addfieldx",
        {
            "index": null,
            "subtable": null,
            "field": "Lost impressions (budget)",
            "expression": "round({Potential impressions}*{Search lost impression share (budget)}) if {Search lost impression share (budget)} > 0 else '0'",
            "_comment": null
        }
    ],
    [
        "addfieldx",
        {
            "index": null,
            "subtable": null,
            "field": "Lost impressions (rank)",
            "expression": "round({Potential impressions}*{Search lost impression share (rank)}) if {Search lost impression share (rank)} > 0 else '0'",
            "_comment": null
        }
    ]
]

After applying the transformation, map the new fields in Data Mapping as follows:

  • Potential impressions → potential_impressions (Type: Float, Measure: Sum)

  • Lost impressions (rank) → your target field (Type: Float, Measure: Sum)

  • Lost impressions (budget) → your target field (Type: Float, Measure: Sum)

Contents
  • Reporting on Performance Max campaigns
  • Selecting the date range for a fetch
  • Previewing an image
  • Using Adverity datastream templates
  • Performance optimization
  • Understanding Performance Max campaigns
  • Recommended datastream configurations
    • Google Ads | Campaign Report | Campaign Level
    • Google Ads | Keyword Report
    • Google Ads | Custom Report | Gender
    • Google Ads | Custom Report | Age Range
  • Understanding campaign types
  • Reach reporting limitations
  • Understanding “Mixed” network reporting
  • Organic search data sources
  • Performance Max campaign access
  • Revenue field selection
  • Available granularity levels
  • Connector limitations
  • Setup best practices
    • Visualization considerations
    • Authentication setup
    • Data retention recommendations
  • Using filters with Google Ads
  • Calculating impression share and related metrics
    • Prerequisites
    • Procedure

By Adverity

© Copyright 2025, Adverity.