Google Ads Device Mode Integration

Send events to Google Ads using RudderStack web device mode.

This guide will help you send conversion events to Google Ads in the web device mode.



Before sending the identify events to Google Ads, make sure to:

You can use the identify calls to send user_data to Google Ads for enhanced conversions.

A sample identify call is shown:

rudderanalytics.identify("1hKOmRA4GRlm", {
  firstName: "Alex",
  lastName: "Keener",
  email: "",
  phone: "(800) 555‑0175",


You can send a track call with the conversion name and specify it in the Click Event Conversion dashboard setting. RudderStack, in turn, sends this data to Google Ads.

RudderStack maps properties.currency, properties.order_id, and properties.revenue in the event to Google Ads’ currency, transaction_id, and value fields respectively. Note that this is applicable only when the Track Dynamic Remarketing setting is turned off in the dashboard.

A sample track call is as shown:

rudderanalytics.track('track conversion', {
  revenue: 125,
  currency: 'INR',
  order_id: 'order_1'

A sample track call after turning on the Track Dynamic Remarketing setting in the dashboard is shown below:

rudderanalytics.track('view_item', {
  'value': 998.55,
  'items': [{
      'id': 1234,
      'google_business_vertical': 'retail'
      'id': 45678,
      'google_business_vertical': 'retail'
The format for passing the parameters is quite flexible. You can use the standard Google format for tracking specific categories or use your own format for tracking custom categories.

A sample track call for a custom event is shown below:

rudderanalytics.track("custom_event", {
  custom_parameter1: "1",
  custom_parameter2: 2,

Set up new customer acquisition reporting

RudderStack supports sending a newCustomer property in your track events to determine whether a converting user is a new customer in your Google Ads campaign. This is helpful in setting up new customer acquisition reporting in Google Ads.

Do not pass the newCustomer property if you are unsure about the converting the user status (applicable for new and existing customers).

A sample track call highlighting this feature is shown:

rudderanalytics.track('Order Completed', {
  'newCustomer': false,
  'currency': 'USD',
  'price': 43.99,
  'transaction_id': 'A122311',
  "checkout_id": "CHK1044",
  "revenue": 47.99,
  "products": [{
    "product_id": "A1223",
    "name": "car"


You can make a page call with the conversion name to RudderStack for a page load conversion. RudderStack, in turn, sends this data to Google Ads.

A sample page call is as shown below:'page view');

You can turn on Track Dynamic Remarketing dashboard setting to send custom parameters in the page call:"custom_event", {
  custom_parameter1: "Sample",
  custom_parameter2: 2,

Questions? Contact us by email or on Slack