When to Use Client-Side Collection (Conversion Tags)
Client-side tracking via Adobe Advertising Cloud conversion tags is the standard approach for web-based conversions. Use client-side collection when:
- Tracking user conversions that occur in the browser (purchases, form submissions, registrations).
- Using automatic visitor identification via Adobe Experience Cloud ID Service (ECID).
- Implementing with minimal backend infrastructure (tags can be deployed via GTM or direct embed).
- Capturing real-time conversion events with immediate visibility in reporting.
- Benefiting from automatic integration with Adobe Analytics for Advertising.
Client-Side Advantages
- Easy to implement via tag managers without backend development.
- Automatic visitor identification using ECID for cross-device tracking.
- Real-time conversion tracking with immediate reporting availability.
- Feeds conversion data directly into Adobe Analytics for multi-touch attribution.
- Captures user context automatically (referrer, page URL, user agent).
- Native support for viewthrough conversion attribution.
Client-Side Limitations
- Vulnerable to ad blockers and browser privacy features (Intelligent Tracking Prevention, Enhanced Tracking Protection).
- Cookie deletion or blocking can reduce attribution accuracy.
- Cannot track backend events that occur outside the browser (subscription renewals, offline conversions).
- Subject to consent requirements (GDPR, CCPA) that may limit data collection.
- Page abandonment before tag loads results in lost conversion data.
- Requires user to complete action on page where tag is implemented.
When to Use Server-Side Collection (Conversion API)
Server-side tracking via Adobe Advertising Cloud Conversion API sends events directly from your server, bypassing browser limitations. Use server-side collection when:
- Sending high-value conversions that must be tracked reliably (purchases, subscriptions, high-value leads).
- Tracking backend events that occur outside the browser (order confirmations, payment processing, fulfillment).
- Mitigating data loss from ad blockers, consent denials, or browser privacy features.
- Implementing privacy-compliant tracking with full control over data sent.
- Supplementing client-side tags to improve attribution accuracy and completeness.
Server-Side Advantages
- Not affected by ad blockers or browser privacy features.
- Full control over conversion timing, parameters, and data sent to Adobe.
- Can track backend events invisible to the browser (subscription renewals, offline conversions, backend validations).
- Reduces data loss from page abandonment or client-side errors.
- Enables tracking of events after user leaves site (delayed order processing, multi-step fulfillment).
- Better privacy compliance by controlling exactly what data is transmitted and when.
Server-Side Limitations
- Requires backend development and infrastructure to send API requests.
- Must manually collect and pass visitor identification data (ECID, customer ID, device data).
- No automatic visitor identification; relies on ECID or customer ID matching.
- Attribution may be less precise if visitor data is incomplete or missing.
- Requires coordination with client-side implementation to capture ECID and pass to server.
- Additional complexity in debugging and validation compared to client-side tags.
Coordination & Deduplication
The recommended approach is a dual implementation: client-side tags for real-time tracking + server-side API for reliable backend conversions, with deduplication to avoid double-counting.
Deduplication Strategy
- Send the same high-value conversions from both client-side tags and server-side API.
- Include unique transaction ID (order ID) in both client and server conversion events.
- Adobe Advertising Cloud automatically deduplicates conversions with identical transaction IDs within 30-day window.
- Server-side conversion takes precedence if both fire (provides authoritative backend-validated data).
Example:
- Client-side tag: Fires on order confirmation page with order ID "ORDER12345", revenue $99.99.
- Server-side API: Sends POST request after payment confirmation with same order ID "ORDER12345", revenue $99.99.
- Result: Adobe Advertising Cloud counts one conversion, using server-side data as authoritative source.
Data Richness Strategy
- Client-side: Captures automatic visitor context (ECID, referrer, landing page, user agent, click IDs).
- Server-side: Sends validated transaction data (final order total, payment status, backend-verified details).
- Combined: Client-side provides attribution context, server-side ensures conversion accuracy and completeness.
Visitor Matching Strategy
- Client-side: Automatically uses ECID from Adobe Experience Cloud ID Service.
- Server-side: Must explicitly pass ECID, customer ID, or hashed email for visitor matching.
- Best practice: Capture ECID in browser session and pass to backend for API calls.
Architectural Patterns
Pattern 1: Client-Side Only (Basic)
- Deploy Adobe Advertising Cloud conversion tags via GTM for all conversion events.
- Use for simple websites with no backend infrastructure or low conversion volumes.
- Accept data loss from ad blockers and browser privacy features as acceptable risk.
- Suited to: Testing, small campaigns, or organizations without backend development resources.
Pattern 2: Dual Client + Server (Recommended)
- Deploy client-side tags for immediate conversion tracking and automatic attribution.
- Deploy server-side API for high-value conversions after backend validation.
- Use transaction ID deduplication so Adobe counts each conversion once.
- Suited to: E-commerce, lead generation, subscription businesses with backend order processing.
Pattern 3: Server-Side Only (Privacy-First)
- Skip client-side tags; send all conversions server-side via API.
- Collect consent, then pass ECID or customer ID for visitor matching.
- Requires backend tracking infrastructure (event queue, retry logic, ECID storage) and manual attribution data collection.
- Suited to: Privacy-sensitive industries, regulated sectors, or sites where ad blockers block 20%+ of client-side tags.
Pattern 4: Hybrid with Adobe Analytics
- Use Adobe Analytics for Advertising integration for unified tracking.
- Client-side tags feed Adobe Analytics; Analytics shares conversion data with Advertising Cloud.
- Enables multi-touch attribution and cross-channel journey analysis.
- Suited to: Organizations already using Adobe Analytics with mature analytics implementation.
ECID Collection and Passing
For server-side conversion tracking to work effectively, you must collect ECID from the browser and pass to your backend:
// Client-side: Capture ECID and send to backend
var visitor = Visitor.getInstance("YOUR_ORG_ID@AdobeOrg");
visitor.getMarketingCloudVisitorID(function(ecid) {
// Store in hidden form field
document.getElementById('ecid_field').value = ecid;
// Or send via AJAX to backend
fetch('/api/store-ecid', {
method: 'POST',
body: JSON.stringify({ ecid: ecid })
});
});
# Server-side: Retrieve ECID and include in conversion API call
ecid = request.session.get('ecid')
conversion_payload = {
"advertiser_id": "ADVERTISER_ID",
"conversion_id": "CONVERSION_ID",
"transaction_id": order_id,
"transaction_value": order_total,
"currency": "USD",
"visitor_data": {
"ecid": ecid,
"customer_id": customer_id,
"email_hash": hash_email(customer_email)
}
}
# Send to Adobe Advertising Cloud Conversion API
response = requests.post(
"https://api.advertising.adobe.io/conversions",
json=conversion_payload,
headers={"Authorization": f"Bearer {access_token}"}
)
Implementation Checklist
- Client-side: Confirm conversion tags fire on completion pages, parameters are correct, and ECID is present.
- Server-side: Verify API endpoint is live, conversions appear in reports, and visitor matching is successful.
- Deduplication: Test that sending same conversion from both client and server results in single counted conversion.
- Visitor matching: Ensure ECID or customer ID is passed from browser to server and included in API calls.
- Consent: Confirm both client and server implementations respect user consent choices.
When to Choose One Over the Other
- Choose client-side only if you have no backend resources, low conversion volumes, or are testing Adobe Advertising Cloud initially.
- Choose server-side only if browser tracking is unreliable, you need full data control, or privacy regulations restrict client-side tracking.
- Choose dual client + server for most production use cases to maximize attribution accuracy, reduce data loss, and ensure conversion completeness.
Adobe Analytics Integration Considerations
If using Adobe Analytics for Advertising:
- Client-side conversion tags automatically integrate with Adobe Analytics when AMO ID is captured.
- Server-side conversions can be mirrored to Adobe Analytics via Data Insertion API or Processing Rules.
- Enable bidirectional data sharing: Analytics provides multi-touch attribution, Advertising Cloud provides media performance.
- Use Analysis Workspace to build unified reports combining Analytics behavior data with Advertising Cloud campaign data.
Implementation Guidance
Event routing: Send high-value conversions (purchases, subscriptions, leads) through both client-side tags and server-side API for maximum reliability. Send lower-value behavioral events (page views, product views) through client-side only to minimize server-side infrastructure costs.
ECID forwarding: Capture the Experience Cloud ID (ECID) from the AMCV_ cookie on each server request. Pass it in your server-side API calls as the marketingCloudVisitorId parameter. Without ECID, server-side conversions cannot be matched to client-side user journeys, breaking cross-channel attribution.
Unified tracking: For new implementations, use Adobe Experience Platform Web SDK (alloy.js) which handles both client-side and server-side event collection through a single integration. It replaces the need for separate AppMeasurement.js and conversion tag implementations.
Monitoring: Check Adobe Advertising Cloud Reports daily for conversion tag health. Set up alerts for drops in conversion volume exceeding 20%, which typically indicate tag deployment issues or consent changes affecting event collection.