Server-Side Tracking
Learn how server-side tracking can help digital marketers improve their ROAS by increasing the accuracy and reliability of their conversion data. Get the most out of AnyTrack with our comprehensive guide to server-side tracking.
What Is Server-Side Tracking?
Server-side tracking sends conversion data directly from your server to ad platforms—bypassing the browser entirely. Unlike client-side tracking (pixels that run in the user's browser), server-side tracking uses server-to-server communication that ad blockers can't see or stop.
How it works: When a conversion happens on your site, your server sends the event data directly to platforms like Facebook Ads or Google Ads via their Conversion APIs. The user's browser never loads a tracking pixel.
Why Server-Side Tracking Matters
Ad blockers, iOS privacy restrictions, and cookie limitations have broken traditional pixel tracking. Server-side tracking solves three critical problems:
- Accuracy — Servers communicate reliably. Failed requests retry automatically with error logging.
- Ad blocker immunity — Browser extensions can't block server-to-server communication.
- Data quality — Process data server-side before sending: hash personal information, normalize formats, enrich with customer data.
Without server-side tracking, you lose 20-30% of conversions to ad blockers and browser restrictions. Ad platforms receive incomplete data, which degrades campaign optimization and ROAS calculation.
How Client-Side Tracking Works (The Old Way)
Traditional pixel tracking loads in the browser when users reach your thank you page.
Example: Facebook Pixel on checkout page
When a customer completes a purchase, the thank you page loads with this code:
fbq('track', 'Purchase', {
value: 40.00,
currency: 'USD'
});What happens:
- Customer completes purchase
- Thank you page loads in browser
- Facebook Pixel snippet executes
- Pixel sends
Purchaseevent to Facebook servers - Facebook Event Manager records the conversion
- Facebook Ads updates campaign ROAS
The problem: Ad blockers, iOS 14+ privacy restrictions, and cookie limitations now block 20-30% of these pixel requests. Facebook never receives the conversion data, so your campaigns optimize on incomplete information.
How Server-Side Tracking Works (The New Way)
Server-side tracking sends conversion data from your server directly to ad platforms via Conversion APIs—no browser pixel required.
What happens:
- Customer completes purchase
- Your server records the transaction
- Server transforms data to match platform requirements (Facebook Conversion API format)
- Server hashes personal data (
email,phone,name) - Server maps your internal field names to platform standard names
- Server sends POST request to Facebook Conversion API
Example: Facebook Conversion API payload
{
"data": [
{
"event_name": "Purchase",
"event_time": 1661941807,
"action_source": "website",
"event_id": "123123123123123123",
"event_source_url": "https://amazon.com",
"user_data": {
"em": [
"7b17fb0bd173f625b58636fb796407c22b3d16fc78302d79f0fd30c2fc2fc068"
],
"ph": [
"72fe84274df481a1ad439dbd462c76f6304a99a8e009e583924ff04f9c17cc01"
],
"external_id": [
"932f3c1b56257ce8539ac269d7aab42550dacf8818d075f0bdf1990562aae3ef"
]
},
"custom_data": {
"currency": "USD",
"value": "142.52"
}
}
]
}Notice the user_data fields are hashed (SHA-256). Facebook uses these identifiers to match conversions to user profiles, which improves Event Match Quality and campaign optimization.
Matching Conversions Across Systems
For server-side tracking to work, ad platforms need identifiers that connect server-side conversions to the users who clicked your ads.
Matching identifiers:
| Identifier | Works? | Requirements |
|---|---|---|
| Transaction ID | Partial | Can deduplicate browser + server conversions when sent with other identifiers, but doesn't match users across systems |
| Email address | Yes | Must be hashed (SHA-256) and normalized (lowercase, trim whitespace) |
| Phone number | Yes | Must be normalized (E.164 format) and hashed |
| First + Last name | Yes | Must be sent together, hashed, and combined with other identifiers |
fbp cookie | Yes | Facebook browser cookie ID—bridges browser activity to server conversions |
fbc cookie | Yes | Facebook click ID from ad clicks |
Send multiple identifiers to maximize match rates. Facebook uses these values to calculate Event Match Quality—higher match quality means better ad targeting and optimization.
Server-Side Tracking: Advantages & Challenges
Advantages
Reliability — Server-to-server communication doesn't fail silently. Failed requests trigger retries and error notifications.
Ad blocker immunity — Browser extensions can't see or block server-to-server API calls.
Privacy compliance — Process and anonymize data server-side before sending to ad platforms. Full control over what data you share.
Data enrichment — Combine conversion data with CRM records, customer lifetime value, product catalogs, and other backend data sources before sending to ad platforms.
Cross-device tracking — Less reliant on cookies. Use customer IDs and hashed email addresses to track users across devices.
Challenges
Implementation complexity — Requires backend development to transform your data format into Conversion API format, hash personal information, and handle API authentication.
Dependency on identifiers — Without email addresses, phone numbers, or Facebook cookies, match rates drop significantly.
Ongoing maintenance — APIs change. Monitor for deprecation notices and update your integration when platforms release new versions.
Infrastructure requirements — Server-side tracking requires server capacity to handle API requests, retry logic, and error logging.
Risk of incorrect data — Sending malformed data or wrong event parameters can degrade campaign performance. Test thoroughly before deploying.
Why Use AnyTrack for Server-Side Tracking
AnyTrack handles the technical complexity of server-side tracking—no backend development required.
What AnyTrack does:
- Automatic data transformation — Converts your conversion data to match each platform's Conversion API format (Facebook CAPI, Google Ads API, TikTok Events API, etc.)
- Identifier collection — Captures browser cookies (
fbp,fbc,gclid) and first-party data (email, phone) throughout the customer journey - Hashing & normalization — Automatically hashes personal data and normalizes formats to maximize Event Match Quality
- API management — Handles authentication, retries, error logging, and API version updates
- No-code setup — Install the AnyTrack Tracking Tag once. Enable server-side tracking for each platform with a toggle.
Integration examples:
- Shopify stores: Automatic purchase tracking via Conversion API
- Affiliate networks: Server-side conversion tracking via postback URLs
- Custom checkouts: Webhook integration sends conversions directly to AnyTrack
AnyTrack acts as the connector between your website, your backend systems, and ad platform Conversion APIs—handling all the technical orchestration so you can focus on campaign optimization.
Server-Side Tracking Best Practices
Start with Hybrid Tracking
Send conversions from both browser pixel (client-side) and server (server-side). Use the event_id parameter to deduplicate conversions across both sources. This maximizes data coverage while platforms transition to server-side.
Maximize Event Match Quality
Send as many matching parameters as possible: hashed email, hashed phone, fbp cookie, fbc cookie, IP address, user agent. Higher match quality improves ad targeting and attribution accuracy.
Monitor for Data Quality Issues
Set up alerts for failed API requests, low Event Match Quality scores, and conversion discrepancies between your server logs and platform reporting.
Keep APIs Updated
Subscribe to platform changelog notifications (Facebook Business API, Google Ads API, etc.). Update your integration when platforms deprecate old endpoints or introduce new features.
Test Before Scaling
Validate server-side tracking with test conversions before enabling for live campaigns. Compare server-side conversion counts to your internal transaction logs to verify accuracy.
Getting Started with Server-Side Tracking
Step 1: Assess Your Tracking Needs
Identify which platforms you advertise on and which conversion events you need to track. Common events: Purchase, Lead, AddToCart, CompleteRegistration.
Step 2: Choose Your Implementation Method
Option 1: Manual implementation — Build custom backend integration with each platform's Conversion API. Full control, maximum complexity.
Option 2: AnyTrack — No-code setup with automatic data transformation and API management. Fastest path to server-side tracking.
Option 3: Server-side Google Tag Manager — Intermediate complexity. Requires server container deployment and tag configuration.
Step 3: Implement Identifier Collection
Capture browser cookies (fbp, fbc, gclid) and first-party data (email, phone) throughout the customer journey. Store these identifiers so your server can include them in Conversion API requests.
Step 4: Test Your Implementation
Send test conversions and verify they appear in platform Event Manager tools (Facebook Events Manager, Google Ads Conversions). Check Event Match Quality scores and fix any identifier issues.
Step 5: Enable Deduplication
Use the event_id parameter to deduplicate conversions sent from both browser and server. Same event_id = same conversion, regardless of source.
Step 6: Monitor & Optimize
Track Event Match Quality scores, API error rates, and conversion data completeness. Optimize by adding more matching identifiers and fixing data quality issues.
Updated 10 days ago
