Google Ads Conversions Destination
The Google Ads destination allows users to upload conversions, conversion adjustments, and customer match lists in a privacy-safe manner. Marketers can use this integration to re-engage users across Search, Shopping, Gmail, YouTube, and Display by combining conversion data with customer match lists for more effective targeting.
Consent mode
Google enforced consent on March 6, 2024 for European Economic Area (EEA) users. Learn more about consent mode and how to set it up.
Getting started
You can connect the Google Ads Conversions Destination to an event source, Reverse ETL source, or Engage space.
Prerequisites
- A Google Ads account and the account ID of your Google Ads Account. This should be 10-digits and in XXX-XXX-XXXX format.
- For sending data to a Google Customer Match list, you will either need
- An Engage Audience configured which you can connect to this destination
- A Reverse ETL source already set up. If you don’t yet have a Reverse ETL source, follow the instructions in Segment’s Reverse ETL documentation.
Connect to Google Ads
- From the Segment web app, navigate to Catalog > Destinations.
- Search for “Google Ads Conversions” in the Destinations Catalog and select the destination.
- Click Add destination.
- Select the source that will send data to Google Ads Conversions.
- If you select an Engage space, you’ll be redirected to Engage to complete the following steps.
- If you select a Reverse ETL source, you must enter a name for your destination and click Create destination.
- On the Settings tab for your Google Ads Conversions destination:
- Enter your account-level Conversion ID and/or Customer ID and click Save.
- Click Connect to Google Ads Conversions to authenticate with Google. Follow the prompts to authenticate using OAuth, with a Google account that is a member of your Google Ads account.
- Follow the steps in the Destinations Actions documentation to customize your mappings.
Connect to Google Ads Customer Match lists
Segment users can send data to Google Ads Customer Match lists using Engage Audiences or Reverse ETL.
Connect Engage Audiences to Google Ads Customer Match
- Navigate to the Engage Audience you’d like to connect to Google Ads and click Add destination.
- Select the instance of Google Ads you added to your Engage space.
- Complete your Audience settings.
- Disable Send Identify and enable Send Track.
Optional: Configure your event settings and opt in to Trait Enrichment. - Click Save.
- Navigate to the destination’s mappings tab and click View all destination settings.
- Navigate to the Mappings tab.
- Click + New Mapping.
- Configure your mappings and use the Show test record preview toggle to verify your mappings.
- Click Save and enable your mapping.
Connect Reverse ETL to Google Ads Customer Match
After you’ve connected your Google Ads destination to Segment, set up Reverse ETL mappings to sync to a Google Customer Match List.
Add users to your Google Customer Match User List
- From your Segment workspace, navigate to your Reverse ETL source.
- Select the Reverse ETL model you’d like to sync with Google Ads.
- Click Add Mapping.
- Select the Google Ads Conversions destination and click Next.
- Select the Customer Match User List action and the Adds users to the connected Google Customer Match User List sync mode.
- Select an existing List ID or provide a name for the list that Segment creates for you.
- Select an External ID Type, configure your mappings, and click Next.
- Enter a name for your mapping, set your sync schedule, and click Save.
- On the mapping’s overview page, set the Status toggle to Enabled.
Remove users from the connected Google Customer Match User List
- From your Segment workspace, navigate to your Reverse ETL source.
- Select the Reverse ETL model you’d like to sync with Google Ads.
- Click Add Mapping.
- Select the Google Ads Conversions destination and click Next.
- Select the Customer Match User List action and the Remove users from the connected Google Customer Match User List sync mode.
- Select the List ID that you configured when you set up the Add users to your Google Customer Match User List mapping.
- Select an External ID Type, configure your mappings, and click Next.
- Enter a name for your mapping, set your sync schedule, and click Save.
- On the mapping’s overview page, set the Status toggle to Enabled.
Data normalization
To improve match rates, Segment built in normalization and hashing for common fields to align with Google’s best practices outlined in Google’s Prepare data for upload and Add customer data documentation.
Normalization
Segment automatically strips whitespace and converts the following fields to lowercase:
- First name
- Last name
Segment normalizes the Phone field by removing any non-numeric symbols. Segment also converts each phone number to E.164 format before hashing. E.164 format represents a phone number as a number up to fifteen digits in length starting with a + sign.
Hashing
Google requires you to hash all PII before sending it to the Google API.
Segment automatically hashes any of the following fields that are not already hashed at egress:
- Phone number
- First name
- Last name
Destination Settings
Setting | Description |
---|---|
Conversion ID | You will find this information in the event snippet for your conversion action, for example |
Customer ID | ID of your Google Ads Account. This should be 10-digits and in XXX-XXX-XXXX format. Required if you are using a mapping that sends data to the Google Ads API. |
Available Actions
Build your own Mappings. Combine supported triggers with the following Google Ads Conversions-supported actions:
Mapping limits per destination
Individual destination instances have support a maximum of 50 mappings.
Upload Enhanced Conversion (Legacy)
Upload a conversion enhancement to the legacy Google Enhanced Conversions API.
Upload Enhanced Conversion (Legacy) is a Cloud action.
Field | Description |
---|---|
Conversion Label* | Type: STRING The Google Ads conversion label. You can find it in your Google Ads account using the instructions in the article Google Ads conversions. |
Email* | Type: STRING Email address of the individual who triggered the conversion event. |
Order ID* | Type: STRING Order ID or Transaction ID of the conversion event. Google requires an Order ID even if the event is not an ecommerce event. Learn more in the article Use a transaction ID to minimize duplicate conversions. |
User Agent | Type: STRING User agent of the individual who triggered the conversion event. This should match the user agent of the request that sent the original conversion so the conversion and its enhancement are either both attributed as same-device or both attributed as cross-device. This field is optional but recommended. |
Conversion Time* | Type: DATETIME Timestamp of the conversion event. |
Value | Type: NUMBER The monetary value attributed to the conversion event. |
Currency Code | Type: STRING Currency of the purchase or items associated with the conversion event, in 3-letter ISO 4217 format. |
App Conversion for Incrementality Study | Type: BOOLEAN Set to true if this is an app conversion for an incrementality study. |
PCC Game Flag | Type: BOOLEAN Alpha feature offered by Google for gaming industry. When set to true, Segment will send pcc_game = 1 to Google. |
Phone Number | Type: STRING Phone number of the individual who triggered the conversion event, in E.164 standard format, e.g. +14150000000. |
First Name | Type: STRING First name of the individual who triggered the conversion event. |
Last Name | Type: STRING Last name of the individual who triggered the conversion event. |
Street Address | Type: STRING Street address of the individual who triggered the conversion event. |
City | Type: STRING City of the individual who triggered the conversion event. |
Region | Type: STRING Region of the individual who triggered the conversion event. |
Postal Code | Type: STRING Postal code of the individual who triggered the conversion event. |
Country | Type: STRING Country of the individual who triggered the conversion event. |
Upload Conversion Adjustment
Upload a conversion adjustment to the Google Ads API.
Upload Conversion Adjustment is a Cloud action.
Field | Description | ||
---|---|---|---|
Conversion Action ID* | Type: NUMBER The ID of the conversion action associated with this conversion. |
||
Adjustment Type* | Type: STRING The adjustment type. See Google’s documentation for details on each type. |
||
Adjustment Timestamp | Type: STRING
|
||
Order ID | Type: STRING The order ID of the conversion to be adjusted. If the conversion was reported with an order ID specified, that order ID must be used as the identifier here. |
||
GCLID | Type: STRING Google click ID associated with the original conversion for this adjustment. This is used for the GCLID Date Time Pair. |
||
Conversion Timestamp | Type: STRING
|
||
Restatement Value | Type: NUMBER The restated conversion value. This is the value of the conversion after restatement. For example, to change the value of a conversion from 100 to 70, an adjusted value of 70 should be reported. Required for RESTATEMENT adjustments. |
||
Restatement Currency Code | Type: STRING The currency of the restated value. If not provided, then the default currency from the conversion action is used, and if that is not set then the account currency is used. This is the ISO 4217 3-character currency code, e.g. USD or EUR. |
||
Email Address | Type: STRING Email address of the individual who triggered the conversion event. Segment will hash this value before sending to Google. |
||
Phone Number | Type: STRING Phone number of the individual who triggered the conversion event, in E.164 standard format, e.g. +14150000000. Segment will hash this value before sending to Google. |
||
First Name | Type: STRING First name of the user who performed the conversion. Segment will hash this value before sending to Google. |
||
Last Name | Type: STRING Last name of the user who performed the conversion. Segment will hash this value before sending to Google. |
||
City | Type: STRING City of the user who performed the conversion. |
||
State | Type: STRING State of the user who performed the conversion. |
||
Country | Type: STRING 2-letter country code in ISO-3166-1 alpha-2 of the user who performed the conversion. |
||
Postal Code | Type: STRING Postal code of the user who performed the conversion. |
||
Street Address | Type: STRING Street address of the user who performed the conversion. Segment will hash this value before sending to Google. |
||
User Agent | Type: STRING The user agent to enhance the original conversion. User agent can only be specified in enhancements with user identifiers. This should match the user agent of the request that sent the original conversion so the conversion and its enhancement are either both attributed as same-device or both attributed as cross-device. |
Upload Click Conversion
Upload an offline click conversion to the Google Ads API.
Upload Click Conversion is a Cloud action.
Field | Description | ||
---|---|---|---|
Conversion Action ID* | Type: NUMBER The ID of the conversion action associated with this conversion. |
||
GCLID | Type: STRING The Google click ID (gclid) associated with this conversion. |
||
GBRAID | Type: STRING The click identifier for clicks associated with app conversions and originating from iOS devices starting with iOS14. |
||
WBRAID | Type: STRING The click identifier for clicks associated with web conversions and originating from iOS devices starting with iOS14. |
||
Conversion Timestamp* | Type: STRING
|
||
Email Address | Type: STRING Email address of the individual who triggered the conversion event. Segment will hash this value before sending to Google. |
||
Phone Number | Type: STRING Phone number of the individual who triggered the conversion event, in E.164 standard format, e.g. +14150000000. Segment will hash this value before sending to Google. |
||
Order ID | Type: STRING The order ID associated with the conversion. An order ID can only be used for one conversion per conversion action. |
||
Value | Type: NUMBER The value of the conversion for the advertiser. |
||
Currency | Type: STRING Currency associated with the conversion value. This is the ISO 4217 3-character currency code. |
||
Conversion Environment | Type: STRING The environment this conversion was recorded on, e.g. APP or WEB. Sending the environment field requires an allowlist in your Google Ads account. Leave this field blank if your account has not been allowlisted. |
||
Merchant Center ID | Type: STRING The ID of the Merchant Center account where the items are uploaded. |
||
Merchant Center Feed Country Code | Type: STRING The ISO 3166 two-character region code of the Merchant Center feed where the items are uploaded. |
||
Merchant Center Feed Language Code | Type: STRING The ISO 639-1 language code of the Merchant Center feed where the items are uploaded. |
||
Local Transaction Cost | Type: NUMBER Sum of all transaction-level discounts, such as free shipping and coupon discounts for the whole cart. |
||
Items | Type: OBJECT Data of the items purchased. |
||
Custom Variables | Type: OBJECT The custom variables associated with this conversion. On the left-hand side, input the name of the custom variable as it appears in your Google Ads account. On the right-hand side, map the Segment field that contains the corresponding value See Google’s documentation on how to create custom conversion variables. |
||
Ad User Data Consent State | Type: STRING This represents consent for ad user data.For more information on consent, refer to Google Ads API Consent. |
||
Ad Personalization Consent State | Type: STRING This represents consent for ad personalization. This can only be set for OfflineUserDataJobService and UserDataService.For more information on consent, refer to Google Ads API Consent. |
Upload Call Conversion
Upload an offline call conversion to the Google Ads API.
Upload Call Conversion is a Cloud action.
Field | Description | ||
---|---|---|---|
Conversion Action ID* | Type: NUMBER The ID of the conversion action associated with this conversion. |
||
Caller ID* | Type: STRING The caller ID from which this call was placed. Caller ID is expected to be in E.164 format with preceding + sign, e.g. “+16502531234”. |
||
Call Timestamp* | Type: STRING
|
||
Conversion Timestamp* | Type: STRING
|
||
Value | Type: NUMBER The value of the conversion for the advertiser. |
||
Currency | Type: STRING Currency associated with the conversion value. This is the ISO 4217 3-character currency code. |
||
Custom Variables | Type: OBJECT The custom variables associated with this conversion. On the left-hand side, input the name of the custom variable as it appears in your Google Ads account. On the right-hand side, map the Segment field that contains the corresponding value See Google’s documentation on how to create custom conversion variables. |
||
Ad User Data Consent State | Type: STRING This represents consent for ad user data. For more information on consent, refer to Google Ads API Consent. |
||
Ad Personalization Consent State | Type: STRING This represents consent for ad personalization. This can only be set for OfflineUserDataJobService and UserDataService.For more information on consent, refer to Google Ads API Consent. |
Customer Match User List
Sync a Segment Engage Audience into a Google Customer Match User List.
Customer Match User List is a Cloud action. The default Trigger is: event = "Audience Entered" or event = "Audience Exited"
Field | Description |
---|---|
First Name | Type: STRING The user’s first name. If not hashed, Segment will normalize and hash this value. |
Last Name | Type: STRING The user’s last name. If not hashed, Segment will normalize and hash this value. |
Type: STRING The user’s email address. If not hashed, Segment will normalize and hash this value. |
|
Phone | Type: STRING The user’s phone number. If not hashed, Segment will convert the phone number to the E.164 format and hash this value. |
Country Code | Type: STRING 2-letter country code in ISO-3166-1 alpha-2 of the user’s address |
Postal Code | Type: STRING Postal code of the user’s address. |
CRM ID | Type: STRING Advertiser-assigned user ID for Customer Match upload. Required if external ID type is CRM ID. |
Mobile Advertising ID | Type: STRING Mobile device ID (advertising ID/IDFA). Required if external ID type is mobile advertising ID. |
Ad User Data Consent State* | Type: STRING This represents consent for ad user data.For more information on consent, refer to Google Ads API Consent. |
Ad Personalization Consent State* | Type: STRING This represents consent for ad personalization. This can only be set for OfflineUserDataJobService and UserDataService.For more information on consent, refer to Google Ads API Consent. |
Existing List ID | Type: STRING The ID of an existing Google list that you would like to sync users to. If you provide this, we will not create a new list. |
List Name | Type: STRING The name of the Google list that you would like to create. |
External ID Type* | Type: STRING Customer match upload key types. |
App ID | Type: STRING A string that uniquely identifies a mobile application from which the data was collected. Required if external ID type is mobile advertising ID |
Connect to a Google Customer Match User List | Type: OBJECT When saving this mapping, we will create a list in Google using the fields you provide. |
Call Conversion V2
Send an offline call conversion to the Google Ads API.
Call Conversion V2 is a Cloud action.
Field | Description | ||
---|---|---|---|
Conversion Action ID* | Type: NUMBER The ID of the conversion action associated with this conversion. |
||
Caller ID* | Type: STRING The caller ID from which this call was placed. Caller ID is expected to be in E.164 format with preceding + sign, e.g. “+16502531234”. |
||
Call Timestamp* | Type: STRING
|
||
Conversion Timestamp* | Type: STRING
|
||
Value | Type: NUMBER The value of the conversion for the advertiser. |
||
Currency | Type: STRING Currency associated with the conversion value. This is the ISO 4217 3-character currency code. |
||
Custom Variables | Type: OBJECT The custom variables associated with this conversion. On the left-hand side, input the name of the custom variable as it appears in your Google Ads account. On the right-hand side, map the Segment field that contains the corresponding value See Google’s documentation on how to create custom conversion variables. |
||
Ad User Data Consent State | Type: STRING This represents consent for ad user data. For more information on consent, refer to Google Ads API Consent. |
||
Ad Personalization Consent State | Type: STRING This represents consent for ad personalization. This can only be set for OfflineUserDataJobService and UserDataService.For more information on consent, refer to Google Ads API Consent. |
Conversion Adjustment V2
Send a conversion adjustment to the Google Ads API.
Conversion Adjustment V2 is a Cloud action.
Field | Description | ||
---|---|---|---|
Conversion Action ID* | Type: NUMBER The ID of the conversion action associated with this conversion. |
||
Adjustment Type* | Type: STRING The adjustment type. See Google’s documentation for details on each type. |
||
Adjustment Timestamp | Type: STRING
|
||
Order ID | Type: STRING The order ID of the conversion to be adjusted. If the conversion was reported with an order ID specified, that order ID must be used as the identifier here. |
||
GCLID | Type: STRING Google click ID associated with the original conversion for this adjustment. This is used for the GCLID Date Time Pair. |
||
Conversion Timestamp | Type: STRING
|
||
Restatement Value | Type: NUMBER The restated conversion value. This is the value of the conversion after restatement. For example, to change the value of a conversion from 100 to 70, an adjusted value of 70 should be reported. Required for RESTATEMENT adjustments. |
||
Restatement Currency Code | Type: STRING The currency of the restated value. If not provided, then the default currency from the conversion action is used, and if that is not set then the account currency is used. This is the ISO 4217 3-character currency code, e.g. USD or EUR. |
||
Email Address | Type: STRING Email address of the individual who triggered the conversion event. Segment will hash this value before sending to Google. |
||
Phone Number | Type: STRING Phone number of the individual who triggered the conversion event, in E.164 standard format, e.g. +14150000000. Segment will hash this value before sending to Google. |
||
First Name | Type: STRING First name of the user who performed the conversion. Segment will hash this value before sending to Google. |
||
Last Name | Type: STRING Last name of the user who performed the conversion. Segment will hash this value before sending to Google. |
||
City | Type: STRING City of the user who performed the conversion. |
||
State | Type: STRING State of the user who performed the conversion. |
||
Country | Type: STRING 2-letter country code in ISO-3166-1 alpha-2 of the user who performed the conversion. |
||
Postal Code | Type: STRING Postal code of the user who performed the conversion. |
||
Street Address | Type: STRING Street address of the user who performed the conversion. Segment will hash this value before sending to Google. |
||
User Agent | Type: STRING The user agent to enhance the original conversion. User agent can only be specified in enhancements with user identifiers. This should match the user agent of the request that sent the original conversion so the conversion and its enhancement are either both attributed as same-device or both attributed as cross-device. |
Click Conversion V2
Send an offline click conversion to the Google Ads API.
Click Conversion V2 is a Cloud action.
Field | Description | ||
---|---|---|---|
Conversion Action ID* | Type: NUMBER The ID of the conversion action associated with this conversion. |
||
GCLID | Type: STRING The Google click ID (gclid) associated with this conversion. |
||
GBRAID | Type: STRING The click identifier for clicks associated with app conversions and originating from iOS devices starting with iOS14. |
||
WBRAID | Type: STRING The click identifier for clicks associated with web conversions and originating from iOS devices starting with iOS14. |
||
Conversion Timestamp* | Type: STRING
|
||
Email Address | Type: STRING Email address of the individual who triggered the conversion event. Segment will hash this value before sending to Google. |
||
Phone Number | Type: STRING Phone number of the individual who triggered the conversion event, in E.164 standard format, e.g. +14150000000. Segment will hash this value before sending to Google. |
||
Order ID | Type: STRING The order ID associated with the conversion. An order ID can only be used for one conversion per conversion action. |
||
Value | Type: NUMBER The value of the conversion for the advertiser. |
||
Currency | Type: STRING Currency associated with the conversion value. This is the ISO 4217 3-character currency code. |
||
Conversion Environment | Type: STRING The environment this conversion was recorded on, e.g. APP or WEB. Sending the environment field requires an allowlist in your Google Ads account. Leave this field blank if your account has not been allowlisted. |
||
Merchant Center ID | Type: STRING The ID of the Merchant Center account where the items are uploaded. |
||
Merchant Center Feed Country Code | Type: STRING The ISO 3166 two-character region code of the Merchant Center feed where the items are uploaded. |
||
Merchant Center Feed Language Code | Type: STRING The ISO 639-1 language code of the Merchant Center feed where the items are uploaded. |
||
Local Transaction Cost | Type: NUMBER Sum of all transaction-level discounts, such as free shipping and coupon discounts for the whole cart. |
||
Items | Type: OBJECT Data of the items purchased. |
||
Custom Variables | Type: OBJECT The custom variables associated with this conversion. On the left-hand side, input the name of the custom variable as it appears in your Google Ads account. On the right-hand side, map the Segment field that contains the corresponding value See Google’s documentation on how to create custom conversion variables. |
||
Ad User Data Consent State | Type: STRING This represents consent for ad user data.For more information on consent, refer to Google Ads API Consent. |
||
Ad Personalization Consent State | Type: STRING This represents consent for ad personalization. This can only be set for OfflineUserDataJobService and UserDataService.For more information on consent, refer to Google Ads API Consent. |
Consent mode
Consent mode is a feature provided by Google in the context of its products, particularly the Gtag library and Google Analytics. As of March 6, 2024, Google announced that consent mode must function for European Economic Area (EEA) users, otherwise data from EEA users won’t process.
Consent mode in the Gtag library and Google Analytics is designed to help website owners comply with privacy regulations, such as the General Data Protection Regulation (GDPR) in the European Union. It allows website owners to adjust how these tools use and collect data based on user consent.
With consent mode, you can configure your website to dynamically adjust the tracking behavior of the Gtag library and Google Analytics based on the user’s consent status. If a user provides consent to data processing, both the Gtag library and Google Analytics can collect and use that data for analysis. If a user doesn’t provide consent, both tools limit data collection to essential functions, helping businesses respect user privacy preferences.
Consent mode may involve updates to your sources outside of Segment, such as incorporating a consent management system for consent functionality.
Set up consent mode
To enable consent mode for your Google Ads Conversions destination, you must update the Ad User Data Consent State and Ad Personalization Consent State for all of your Upload Call Conversion and Upload Click Conversion actions. You can do this in 1 of 2 ways:
- Option 1:
- Navigate to Connections > Destinations and select your Google Ads Conversion destination.
- Go to the Mappings tab of the destination.
- Select the mapping you want to edit.
- In the Select mappings section, select
GRANTED
from the dropdown menu for Ad User Data Consent State and Ad Personalization Consent State.
- Option 2:
- Navigate to Connections > Destinations and select your Google Ads Conversion destination.
- Go to the Mappings tab of the destination.
- Select the mapping you want to edit.
- In the Select mappings section, for Ad User Data Consent State and Ad Personalization Consent State, select the Event Variables tab and create an event variable to directly grab the value from the payload. Ensure it translates to
GRANTED
,DENIED
, orUNSPECIFIED
. You can use an insert or replace function to translate other values toGRANTED
,DENIED
, orUNSPECIFIED
.
If you send DENIED
for any of the two consent states, it results in an error and the data won’t send to Google. For more information, see FAQ about the EU user consent policy for Customer Match upload partners.
If you have any questions setting up consent mode, reach out to friends@segment.com.
FAQ and troubleshooting
Conversion ID, Customer ID, and Conversion Action ID should always be different values
Conversion ID and Customer ID are global settings because it’s an account-level ID that’s the same for all conversion actions in your Google Ads account.
The Conversion Action ID is unique to each conversion action and is configured per mapping. The Conversion Action ID can only be found in the browser URL of your given conversion action under the ctId
parameter. For example, if the URL is https://ads.google.com/aw/conversions/detail?ocid=00000000&ctId=576882000
, your Conversion Action ID is 576882000
.
Enhanced conversions
Enhanced conversions is a feature that can improve the accuracy of your conversion measurement and unlock more powerful bidding. It supplements your existing conversion tags by sending hashed, first-party conversion data from your website to Google in a privacy safe way. You can use the “Upload Conversion Adjustment” action to send enhancements to the Google Ads API. In order to send enhanced conversions, you must record first conversions using the standard Google Ads Conversion tag (Gtag). Segment offers a Google Ads (Gtag) destination so you can use your existing Segment implementation to activate Gtag. Enhancements can be sent to web conversion actions that have Turn on enhanced conversions by API enabled.
Conversions tracked by other means, such as importing goals from Google Analytics, are not eligible for enhancement.
To send enhancements for conversions that are initially tracked with Gtag, an Order ID (Transaction ID) must be implemented in the Gtag and the same Order IDs must be sent with the corresponding enhancement data. This is required for Google to successfully process your enhancement data.
Enhanced conversions for leads
Enhanced conversions for leads allows you to use hashed, first-party user-provided data from your website lead forms for offline lead measurement. When you upload your leads, the provided hashed information is used to attribute back to the Google Ad campaign. In order to send enhanced conversions for leads, you can use the “Upload Click Conversion” action. According to Google, if you do not have GCLID at your source payload, you have to pass user identifiers, at least email or phone number in your mappings, for Google to make the match. A conversion must be addressed to an existing profile. If there’s not a match, Google responds with a failure.
Refreshing access tokens
When you use OAuth to authenticate into the Google Ads Conversions destination, Segment stores an access token and refresh token. Access tokens for Google Ads Conversions expire after one hour. Once expired, Segment receives an error and then uses the refresh token to fetch a new access token. This results in two API requests to Google Ads Conversions, one failure and one success.
Because of the duplicate API requests, you may see a warning in Google for unprocessed conversions due to incorrect or missing OAuth credentials. This warning is expected and does not indicate data loss. Google has confirmed that conversions are being processed, and OAuth retry behavior will not cause any issues for your web conversions. Whenever possible, Segment caches access tokens to reduce the total number of requests made to Google Ads Conversions.
Resolving an invalid_conversion_action_type error
This error indicates that the conversion action specified in the upload request has not been set up for conversion uploads, as outlined in Google’s Ads documentation.
To resolve this, ensure that the ConversionActionType value in Google Ads is correctly configured.
The required field was not present., at conversions[0].gclid
Error
Events going to Google for this integration require a GCLID
field, an email
, or a phone_number
. If one of those identifiers isn’t being sent properly, then you may see the The required field was not present., at conversions[0].gclid
error. To fix this, double check that at least one of those fields is being passed to Google on each payload.
This page was last modified: 14 Aug 2024
Need support?
Questions? Problems? Need more info? Contact Segment Support for assistance!