Google Ad Manager 360 (GAM360)
This guide explains how to connect your first-party data from InfoSum to Google Ad Manager 360 by leveraging Google’s batch file upload ingestion process. Using a Google Cloud Storage (GCS) bucket provided by GAM, InfoSum can securely push CSV files containing audience segments. Follow the steps below to prepare your GAM environment, configure authentication, and activate your data.
Table of contents
Authenticating your GAM GCS bucket
GAM Bucket Ownership & Access Management
Pre-requisites
Before beginning the setup, confirm that you meet all prerequisites and have coordinated with your Google account manager. For more details or updated instructions, please refer to Google’s official support article or contact your Google account manager.
GAM Prerequisites:
-
Google’s Batch Upload Setup:
Work with your Google account manager to complete the “Batch upload identifiers to audience segments” prerequisites. -
Network Code & Account Info:
- Locate your GAM network code by navigating to Admin > Global Settings > Network Code in Ad Manager.
- Confirm your Ad Manager account details.
-
First-Party Audience Segments:
- Create and activate a first-party audience segment.
- If you prefer not to use your own inventory, choose Publisher Managed as the Population method.
- Note: It may take up to 24 hours from segment creation before a batch upload is permitted.
-
Google Group for Access Management:
- Create a G Suite Google Group containing all Google user/service accounts that need access to upload and view files.
- (Only G Suite groups are accepted; non-G Suite groups will not work.)
- Provide your group’s name to your account manager during activation.
InfoSum pre-requisites
- You must have an Activation Bunker to activate data out of your the InfoSum platform.
- Please ensure you have at least one of the following identifiers in your Activation Bunker, as GAM only accepts:
-
- PPIDs (Publisher Provided IDs)
- MAIDs (Mobile Advertising IDs)
- Roku IDs, tvOS IDs, Vizio IFAs, Samsung TIFAs, or cookies from Google’s Data Transfer “UserId” field
Authenticating your GAM GCS bucket
Two authentication options are available for connecting to the GAM-provided GCS bucket. Both methods use a service account; however, note the following important clarification:
Important: The GAM bucket is not part of your own GCP project. Instead, it is hosted in a Google-managed project and appears via the URL: https://console.developers.google.com/storage/browser/gdfp_cookieupload_[Ad Manager network code]
Because of this, you will not see the bucket under your project list, and you cannot directly modify its IAM permissions via your own GCP console. Instead, access is managed through approved Google Groups coordinated by your account manager.
Option A: Service Account Inheriting User Permissions
-
Steps:
- Determine the Required Access: Identify a Google account that already has access (via the approved Google Group) to the GAM bucket.
- Create the Service Account: Create a service account using that Google account. This account will inherit the same access privileges.
- Configure Authentication: Generate a JSON key (via the Service Account Key Setup or Workload Identity Federation Setup) and input it into your GCS import connector.
Note: Because the bucket is managed by Google, the service account must be included in the approved Google Group for access to be effective.
Option B: Standalone Service Account with Group-Based Access
-
Steps:
- Create a New Service Account: Create the service account in your preferred GCP project.
- Ensure Group Membership: Because you cannot assign bucket-specific IAM permissions on a bucket in a Google-managed project, add the service account’s email address to the approved Google Group (as coordinated by your account manager).
- Configure Authentication: Generate and use the JSON key as above.
GAM Bucket Ownership & Access Management
GAM Bucket Ownership
- The GAM bucket (named gdfp_cookieupload_[Ad Manager network code]) is owned by a Google-managed project. This means:
- Location: You will access the bucket via this URL “https://console.developers.google.com/storage/browser/gdfp_cookieupload_[Ad Manager network code]”. It does not appear under your own GCP project.
- IAM Permissions: Since it is not part of your project, you cannot use your usual GCPIAM tools to grant permissions on this bucket.
How to Manage Access to the GAM Bucket
-
Primary Access Control: Access is managed through an approved Google Group. To allow your users or service accounts to interact with the bucket (upload, view, etc.):
- Add Users/Service Accounts to the Group: Provide your account manager with the email addresses or the name of your G Suite Google Group. Google will then ensure that the group has been granted the necessary permissions on the bucket.
-
Implications for Service Accounts:
- If using a service account created in your project, ensure that its email is added to the approved Google Group.
- Directly assigning permissions from your own GCP project’s IAM console is not possible because the bucket is owned by Google.
Data Activation in InfoSum
Once your GAM environment and authentication are configured, you can begin exporting your audience segments.
1. Create a GCS Destination
- Please refer to Google Cloud Storage (GCS) Destination to set up the GCS destination.
- Set the following accordingly:
- Bucket: gdfp_cookieupload_[Ad Manager network code]
- Authentication: Select the method you are using. Workload Identity Federation or Service Access Key.
- JSON: Paste the GCS credentials obtained from downloading the JSON in the key section of your service account. Make sure to include everything contained in the opening and closing brackets { }.
- Filename: It is highly recommended to set this as “Editable during export” and put a placeholder filename such as “ChangeMe.csv”.
- The same destination can be reused across multiple Activation Bunkers.
2. Create an Activation Query
You can create an activation segment using either the Segment Builder or the Query Tool:
Important setting |
If the activation bunker you are using has GAM-supported identifiers as Multi-value keys as is often the case, you need to tell the platform to flatten your activation output. This option is available only in the Query tool. If you do not see “Flatten output” as a tick box in your query tool screen, please reach out to your local Customer Success Manager or InfoSum Support to have it enabled. |
Using the Segment Builder:
- Create Your Segment: Build your audience segment as required.
- Start a New Activation: Click New Activation in the Segment Builder.
-
Configure the Output:
- Fill in the Activation name.
- Select the Activation bunker.
- Select the output column that includes a GAM-supported identifier.
- Rename the column header to one of the following:
- For encrypted cookies: cookie_encrypted
- For raw Apple IDFAs: cookie_idfa
- For raw Android AdIDs: cookie_adid
- For raw PPIDs: ppid
- For raw Roku IDs: cookie_rida
- For raw tvOS IDs: cookie_tvos
- For raw Vizio IFAs: cookie_vida
- For raw Samsung TIFAs: cookie_tifa
- Add a new column named list_id (with the GAM audience segment ID).
- Add a new column named process_consent.
- According to Google, the "process_consent" is mandatory to include but it can be left blank. We require a default value when adding a new column so input “Null” which will be treated the same as leaving it blank.
- The "process_consent" column should be the final column.
- Set the column delimiter to a comma.
- Submit: Finalize your activation and submit it to your Activation Bunker.
Using the Query Tool:
- Select Activation as Your Query Type: Open the Query Tool and choose Activation.
-
Build Your Activation:
- Write a query to select the key from the Activation Bunker.
- Name your activation.
- If applicable, tick “Flatten output data” (If not visible, contact support).
- Toggle “Add values to your output data”
- Add list_id and use your GAM audience segment ID as the value.
- Add process_consent and use “Null” as the value.
- The "process_consent" column should be the final column.
- If applicable, use the Override queried column headers with new headers option to rename the key’s header as follows:
- For encrypted cookies: cookie_encrypted
- For raw Apple IDFAs: cookie_idfa
- For raw Android AdIDs: cookie_adid
- For raw PPIDs: ppid
- For raw Roku IDs: cookie_rida
- For raw tvOS IDs: cookie_tvos
- For raw Vizio IFAs: cookie_vida
- For raw Samsung TIFAs: cookie_tifa
- Set the column delimiter to a comma.
- Submit: Finalize your activation and submit it to your Activation Bunker.
Deleting Identifiers: To remove all identifiers from a segment, add an extra column:
- Create a column with header delete and set its value to 1 on a new row along with the appropriate list_id. (For example, if your segment ID is “3153490,” this instructs GAM to delete all identifiers for that segment.)
Activating Data to GAM
- Navigate to the Activate Tab: In the “Activations” page, select your Activation query.
- Select the Destination: At the bottom of the page, choose the GAM Destination from the dropdown. You may create a new one if necessary. If you have accepted an activation bunker permission from a publisher, you will only have one preconfigured destination option.
- Push Activation to GAM: Input a name for your file and click the “Export to destination” to push the data to the destination.
- Verify Ingestion: The “Export History” tab will show a success or failure message. If successful Google recommends waiting up to 48 hours for the audience to be fully ingested into GAM. In the case of a failure, an error message will appear to elaborate on why it failed. If you are unsure what the error message means, please contact InfoSum Support for assistance.
Limitations
-
Upload Limits:
- Maximum of 1GB per hour
- Up to 5GB per day
- Bucket Ownership: Since the GAM bucket is part of a Google-managed project, access is controlled solely through the approved Google Group. You cannot change its permissions directly via your own GCP project.