Adobe Advertising Cloud Cross-Domain Tracking | OpsBlu Docs

Adobe Advertising Cloud Cross-Domain Tracking

Requirements and setup when user journeys span multiple domains for Adobe Advertising Cloud conversion tracking.

Setup Steps

  • Adobe Advertising Cloud relies on Adobe Experience Cloud ID Service (ECID) for cross-domain visitor identification.
  • Implement ECID on all domains where users interact before conversion to maintain visitor continuity.
  • For cross-domain scenarios (e.g., main site to checkout subdomain or third-party payment processor), ensure ECID is passed and preserved.
  • Configure ECID service with all domains in the visitor API configuration for automatic ID sharing.
  • Implement server-side conversion tracking via API for domains where client-side tags cannot fire.
  • Verify domain ownership and SSL certificates on all domains to prevent tracking interruptions.

Adobe Experience Cloud ID (ECID) Cross-Domain Setup

Implement ECID service on all domains to enable automatic cross-domain tracking:

// Initialize ECID on Domain A (main site)
var visitor = Visitor.getInstance("YOUR_ORG_ID@AdobeOrg", {
  trackingServer: "YOUR_TRACKING_SERVER",
  trackingServerSecure: "YOUR_SECURE_TRACKING_SERVER",
  marketingCloudServer: "YOUR_TRACKING_SERVER",
  marketingCloudServerSecure: "YOUR_SECURE_TRACKING_SERVER"
});

// Initialize ECID on Domain B (checkout site)
var visitor = Visitor.getInstance("YOUR_ORG_ID@AdobeOrg", {
  trackingServer: "YOUR_TRACKING_SERVER",
  trackingServerSecure: "YOUR_SECURE_TRACKING_SERVER",
  marketingCloudServer: "YOUR_TRACKING_SERVER",
  marketingCloudServerSecure: "YOUR_SECURE_TRACKING_SERVER"
});

When ECID is properly implemented on both domains:

  • Visitor ID is automatically maintained across domains using URL parameters.
  • ECID service appends adobe_mc parameter to cross-domain links.
  • Conversion attribution is preserved even when transaction completes on different domain.

Passing ECID Between Domains

For manual cross-domain linking or when automatic passing is not possible:

  1. URL Parameter Method: Append ECID as query parameter when redirecting to another domain:

    // Get ECID from visitor service
    var ecid = visitor.getMarketingCloudVisitorID();
    
    // Append to cross-domain link
    var crossDomainURL = "https://checkout.example.com?ecid=" + ecid;
    
  2. Server Session Method: Store ECID in server-side session when user initiates checkout, then retrieve on destination domain.

  3. Form Field Method: Include ECID as hidden form field when submitting to external payment processor:

    <input type="hidden" name="ecid" value="MCMID|12345678901234567890" />
    

Third-Party Payment Providers & Embedded Checkouts

  • If using Stripe, PayPal, or other embedded checkout solutions, confirm they allow URL parameter passthrough or postMessage communication.
  • For providers that redirect to external domains, pass ECID, AMO ID, and transaction ID via URL parameters or secure tokens.
  • Use Adobe Advertising Cloud Conversion API to send server-side conversions when payment provider confirms transaction, including original ECID for attribution.
  • Test the full checkout flow using Adobe Experience Cloud Debugger to confirm ECID persists throughout journey.
  • ECID service automatically works across subdomains when properly configured (e.g., www.example.com and checkout.example.com).
  • Verify the ECID cookie domain setting allows sharing across subdomains (should be set to .example.com).
  • For completely different domains (example.com to partner-checkout.com), use URL parameter passing or server-side API approach.

AMO ID and Click Attribution

Adobe Media Optimizer ID (AMO ID, also known as s_kwcid) tracks advertising click attribution:

  • AMO ID is automatically appended to landing page URLs from Adobe Advertising Cloud campaigns.
  • Preserve AMO ID throughout user session using cookies, session storage, or hidden form fields.
  • Pass AMO ID to conversion tags or API calls to enable proper campaign attribution.
  • When crossing domains, include AMO ID in URL parameters or server-side session data.

Example AMO ID preservation:

// Capture AMO ID from landing page URL
var amoID = getURLParameter('s_kwcid');

// Store in session storage
sessionStorage.setItem('amo_id', amoID);

// Retrieve on conversion page
var storedAMOID = sessionStorage.getItem('amo_id');

// Pass to conversion tag
var ev_amo_id = storedAMOID;

Edge Cases

  • When using iframes for embedded content, ECID may not pass if third-party cookies are blocked; use server-side API as fallback.
  • For mobile app-to-web transitions, use app SDK to pass ECID or customer ID to web session for continuity.
  • If user moves between devices, ECID enables cross-device tracking when user authenticates and customer ID is synced.
  • For offline-to-online journeys (store visit followed by online purchase), use customer ID matching via server-side API.

Validation

  • Use Adobe Experience Cloud Debugger to check that ECID is present on all domains in user journey.
  • Review Adobe Advertising Cloud conversion reports to confirm cross-domain conversions attribute correctly.
  • Test cross-domain flows in incognito/private mode to simulate new user sessions and verify ECID passing.
  • Check Adobe Analytics reports to ensure visitor continuity across domains (same visitor ID).
  • Monitor conversion API logs for errors related to missing ECID or attribution data.

For best results, implement a comprehensive cross-domain strategy:

  1. ECID on all domains: Deploy Adobe Experience Cloud ID Service on every domain in user journey.
  2. Automatic URL passing: Let ECID service automatically append adobe_mc parameter to cross-domain links.
  3. Manual passthrough for external sites: Use URL parameters to pass ECID to third-party checkout or payment providers.
  4. Server-side API backup: Implement conversion API for cases where client-side tags cannot fire.
  5. AMO ID preservation: Maintain advertising click attribution data throughout session across all domains.
  6. Testing and validation: Use Adobe Experience Cloud Debugger and test all cross-domain paths before production.