Feature

How to Track Google Ads Conversions on a Different Domain

Choose cross-domain linking or offline imports, then configure and test Google Ads conversion tracking without losing click attribution.

Impetuous · · 5 Min Read

When an ad lands on one domain but the conversion happens on another, choose the setup based on whether the same browser moves between the two domains.

Conversion path Use
Landing page on domain A, checkout or confirmation on domain B Google Ads conversion tag plus cross-domain linking
Lead captured online, sale completed later in a CRM, by phone or elsewhere Enhanced conversions for leads or offline conversion import
Third-party domain cannot run your tags A native Google Ads integration, a verified return page on your domain, or an offline import
Conversion page is embedded in an iframe Change the implementation; Google advises against firing conversion tags from an iframe

Cross-domain linking is not a substitute for a conversion tag. It carries measurement information between domains; the conversion tag still has to fire when the valuable action is confirmed.

How cross-domain conversion tracking works

With auto-tagging enabled, an ad landing-page URL can contain an ad-click identifier such as a Google Click ID (GCLID). The Google tag or Conversion Linker stores click information in first-party storage on that domain.

One domain cannot read another domain’s first-party cookies. The domain linker therefore decorates the link to the second domain with a _gl query parameter. A compatible tag on the destination reads that parameter and stores the measurement information on its own domain. Google documents this as a two-step process: decorate the outbound URL, then accept the incoming linker parameter (Google Tag Platform).

Google Ads recommends enabling auto-tagging, preserving GCLID through redirects and using a domain linker when the landing and conversion pages are on different domains. It also says not to fire tags from within an iframe (Google Ads Help).

This mechanism requires a browser transition from the source domain to the destination. It does not join two unrelated visits merely because both sites use the same Google Ads account.

Setup with the Google tag

Use this pattern when you control the code on both domains:

  1. Turn on auto-tagging in every Google Ads account sending traffic.
  2. Install the Google tag on both domains. Configure the intended Google Ads destination in each implementation.
  3. Configure the linker before the relevant config command. List every domain involved in the journey:
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}

gtag('set', 'linker', {
  'domains': ['www.example.com', 'checkout.example-payments.com'],
  'decorate_forms': true
});

gtag('js', new Date());
gtag('config', 'AW-CONVERSION_ID');

decorate_forms is needed only when the transition occurs through a form submission. When the domains array has a value, linked domains accept incoming linker parameters by default. Google also documents accept_incoming for a destination-only configuration (Google Tag Platform).

  1. Fire the conversion event only after confirmed success. Use the completed purchase, subscription or lead-confirmation state—not the button that starts checkout.
  2. Send a dynamic transaction ID for purchases. A reload or return visit can otherwise fire the confirmation tag again. Google treats a second event for the same conversion action and transaction ID as a duplicate (Google Ads Help). Do not put customer-identifying information in the ID.

A typical purchase event is:

gtag('event', 'conversion', {
  'send_to': 'AW-CONVERSION_ID/CONVERSION_LABEL',
  'value': 49.00,
  'currency': 'USD',
  'transaction_id': orderId
});

Populate the ID, value and currency from the completed order record rather than visitor-controlled URL parameters.

Setup with Google Tag Manager

Each participating web container needs a Google tag for the intended Ads destination and a Conversion Linker. The linker supports attribution; it does not replace the Google tag or the Google Ads Conversion Tracking tag (Tag Assistant Help).

Configure the Conversion Linker as follows:

  1. Fire it on All Pages in most implementations.
  2. Select Enable linking across domains.
  3. Add the participating domains under Auto Link Domains.
  4. Enable Decorate Forms if a form submits to the other domain.
  5. Leave URL Position set to Query Parameter unless the application specifically requires fragment-based linking.
  6. Add the Google Ads Conversion Tracking tag to the actual success event on the destination domain.

The destination needs a compatible linker tag to read the incoming parameter. Google recommends an All Pages trigger in most cases so click information can be captured on any landing page (Tag Manager Help).

The domains may use separate GTM containers. The required behavior is the same: the source decorates the transition, the destination accepts the parameter, and the conversion tag sends the intended Ads conversion ID and label.

When the other domain cannot be tagged

Do not count a conversion merely because someone leaves for an external payment or booking provider. That event is a checkout start, not proof of completion.

First check whether the provider offers a native Google Ads integration that reports a confirmed outcome. If it returns successful transactions to a page on the original domain, fire the conversion there only after your application has verified the order—for example, against a server-side payment or order record. Use the commerce system’s unique order ID as the transaction ID.

If there is no trustworthy browser return, or the real conversion happens later, store attribution with the lead and import the completed outcome. As of September 2026, Google recommends enhanced conversions for leads for advertisers starting offline conversion imports. This method can use hashed first-party data, such as email, alongside identifiers such as GCLID; Google recommends including GCLIDs whenever possible (Google Ads Help).

A standard GCLID import requires auto-tagging, capture of the case-sensitive GCLID and storage of that ID with the corresponding lead (Google Ads Help). This is also the appropriate model when domain A collects a lead but a contract is signed later in a sales system: cross-domain linking cannot report an event that never occurs in the linked browser journey.

Across both domains, disclose the data collection and obtain consent where applicable law or Google policy requires it (Google Ads Help).

Test the complete path

Test the production-like journey, not only whether individual tags exist:

  1. Start on domain A and follow the real link or form to domain B.
  2. Confirm that the destination URL contains _gl. If a redirect strips it, preserve query parameters through every redirect. JavaScript-driven navigation and scripts that stop click propagation can also prevent link decoration (Google Analytics Help).
  3. Use Tag Assistant to inspect both domains. Verify the Google tag and linker, then confirm that the conversion tag fires once on the success event. Tag Assistant exposes tags, events, sent hits, data-layer updates and errors (Tag Assistant Help).
  4. Check the conversion ID, label, value, currency and transaction ID.
  5. Reload the confirmation page, then place a second test order. The first order ID should remain stable on reload; the second should be different.
  6. In Google Ads, open Goals → Summary and inspect the conversion action’s status. Google currently reports statuses including Active, Needs attention, Misconfigured and Awaiting conversions (Google Ads Help).

Record the expected path and evidence as part of a repeatable post-remediation verification. A tag firing in preview mode is necessary, but the acceptance test is preserved attribution across the domain boundary and one recorded conversion for one completed outcome.