Pinterest Ads Cross-Domain Tracking | OpsBlu Docs

Pinterest Ads Cross-Domain Tracking

How to track users across multiple domains and subdomains with Pinterest Ads. Covers cross-domain configuration, cookie handling, session stitching, and.

Cross-Domain Tracking Overview

Cross-domain tracking ensures Pinterest can attribute conversions correctly when users navigate across multiple domains or subdomains during their journey. Without proper configuration, sessions break and attribution is lost when users move between sites.

When Cross-Domain Tracking is Needed

  • Main site on one domain (example.com) and checkout on another (checkout.example.com or shop.example.net)
  • Marketing site separate from product site (marketing.example.com → app.example.com)
  • Third-party payment processors (Stripe, PayPal) requiring external redirects
  • Multi-brand sites with separate domains but shared conversion tracking
  • Subdomain architecture with separate tracking requirements

Pinterest Tag Cross-Domain Setup

Pinterest Tag does not have built-in cross-domain linking like Google Analytics. Instead, you must ensure consistent tag implementation and session continuity through alternative methods.

Method 1: Consistent Tag ID Across Domains

Deploy the same Pinterest Tag ID on all domains involved in the user journey:

  1. Install the same tag ID on all domains (main site, checkout, thank you page).
  2. Ensure the Pinterest Tag fires on all pages across all domains.
  3. Use the same Enhanced Match parameters (email, phone) across domains for user matching.
  4. Verify domain ownership for all domains in Pinterest Business Hub.

Limitation: This maintains user identity through Enhanced Match but does not preserve session continuity across domains.

Method 2: Session Continuity via URL Parameters

Manually pass session identifiers across domains using URL parameters:

  1. When linking from Domain A to Domain B, append a unique session identifier to the URL:
    https://checkout.example.com?session_id=abc123&order_id=order_456
    
  2. On Domain B, read the session identifier from the URL and use it as the event_id for Pinterest events.
  3. Send the same event_id from both the tag and Conversions API to enable deduplication.
  4. Include the _epik cookie value in the URL parameter when transitioning domains (if accessible).

Example URL passing _epik:

https://checkout.example.com?_epik=epik.dj0yJnU9cEFxOTdBMGNlRnBSMHRBQWF5

On the destination domain, set the _epik cookie from the URL parameter before the Pinterest Tag fires:

// Read _epik from URL parameter
const urlParams = new URLSearchParams(window.location.search);
const epikParam = urlParams.get('_epik');

if (epikParam) {
  // Set _epik cookie
  document.cookie = `_epik=${epikParam}; path=/; max-age=2592000; domain=.example.com; secure; samesite=lax`;
}

// Then load Pinterest Tag
pintrk('load', 'YOUR_TAG_ID');
pintrk('page');

Method 3: Conversions API for Server-Side Continuity

Use Conversions API to send server-side events with consistent user matching data:

  1. Capture user information (hashed email, external_id) on the first domain.
  2. Store user session data in your backend database or server-side session.
  3. When the user transitions to another domain, retrieve their session data server-side.
  4. Send Conversions API events with the same user_data (em, ph, external_id) and event_id.
  5. Include the _epik value captured from the first domain in the click_id field.

Advantage: Server-side tracking is not affected by cross-domain limitations and provides more reliable attribution.

Subdomain Tracking

For subdomains under the same root domain (e.g., www.example.com, shop.example.com, app.example.com):

  1. Set the Pinterest Tag cookie domain to the root domain using custom configuration (if available).
  2. Verify that the _epik cookie is accessible across all subdomains by setting the cookie domain to .example.com.
  3. Deploy the same Pinterest Tag ID across all subdomains.
  4. Test navigation between subdomains to confirm session continuity.

Note: Pinterest Tag's _epik cookie behavior may vary. Test thoroughly in your environment.

Domain Verification

Claim ownership of all domains in Pinterest Business Hub to enable full tag functionality:

  1. Go to Pinterest Business Hub → Settings → Claimed Accounts.
  2. Click "Claim a new domain" and enter each domain involved in your tracking.
  3. Verify ownership via HTML file upload, meta tag, or DNS TXT record.
  4. Repeat for all domains and subdomains used in your conversion funnel.

Why this matters: Domain verification improves data accuracy, enables Shopping ads, and ensures proper attribution across your properties.

QA & Validation

  • Test user journeys across domains in incognito mode to simulate new user sessions.
  • Use Pinterest Tag Helper on each domain to verify tag firing and parameter consistency.
  • Check Ads Manager Event History to confirm events from all domains appear correctly.
  • Validate that _epik cookie values persist (or are passed) across domain transitions.
  • Monitor conversion attribution in Pinterest Ads Manager after cross-domain implementation.
  • Test checkout flows that redirect to third-party payment processors (Stripe, PayPal) and confirm events fire on return.

Common Scenarios

Scenario 1: Main Site + Separate Checkout Domain

Setup:

  • example.com (marketing and product pages) → checkout.example.net (cart and payment)
  • Deploy same Pinterest Tag ID on both domains
  • Pass _epik and session_id as URL parameters when transitioning to checkout
  • Use Conversions API to send checkout and purchase events from your server

Scenario 2: Multi-Brand Sites

Setup:

  • brand-a.com and brand-b.com with shared conversion tracking for a parent company
  • Deploy the same Pinterest Tag ID on both domains
  • Use Enhanced Match (email) to link users across brands
  • Tag events with custom parameters (e.g., brand: "brand_a") for segmentation

Scenario 3: Subdomain Architecture

Setup:

  • www.example.com, shop.example.com, blog.example.com
  • Set _epik cookie domain to .example.com for cross-subdomain access
  • Deploy same tag ID across all subdomains
  • Verify domain ownership for the root domain in Pinterest Business Hub

Limitations & Workarounds

  • No native cross-domain linking: Pinterest Tag does not append tracking parameters to links like GA4 does. You must manually pass _epik or session identifiers.
  • Third-party payment processors: When users leave your site for PayPal or Stripe, session continuity breaks. Use Conversions API to send purchase events from your server after payment confirmation.
  • Cookie restrictions: Safari's Intelligent Tracking Prevention (ITP) may block third-party cookies. Use first-party cookies and Conversions API for more reliable tracking.
  • Attribution loss: If _epik is not preserved across domains, Pinterest may attribute conversions to direct traffic instead of the original ad click.

Best Practices

  • Always deploy the same Pinterest Tag ID across all domains in your conversion funnel.
  • Use Conversions API as the primary conversion tracking method for cross-domain scenarios.
  • Include Enhanced Match data (hashed email) in all events to improve user matching across domains.
  • Pass _epik cookie values via URL parameters when transitioning between domains.
  • Claim all domains in Pinterest Business Hub to improve attribution and unlock Shopping features.
  • Document your cross-domain setup with flowcharts showing user journeys and tracking handoffs.
  • Test cross-domain flows regularly, especially after DNS, hosting, or checkout platform changes.