Documentation Index
Fetch the complete documentation index at: https://docs.upstackdata.com/llms.txt
Use this file to discover all available pages before exploring further.
What it does
Microsoft Advertising’s Conversions API (CAPI) is the server-side counterpart to the Universal Event Tracking (UET) Tag. Upstack Signal forwards storefront events — page views, product views, add-to-carts, and purchases — directly to Microsoft’s servers, bypassing browser restrictions like ad blockers, ITP, and cookie limits. Server-side delivery gives Microsoft’s algorithm a fuller picture of the conversions your ads actually drove, which improves campaign optimization, audience modeling, and attribution accuracy. Match rates from server-side events are consistently higher than browser-only tracking because each event carries hashed customer data and themsclkid click identifier when available.
How it works
Upstack runs as a dual-tracking layer alongside the Microsoft UET Tag. The Upstack Pixel captures events in the browser and forwards each event to Upstack’s edge infrastructure, where it is hashed, enriched with identity and click-ID data, and sent to the Microsoft Conversions API as a server-side event with a sharedeventId.
Microsoft deduplicates server events against matching browser UET Tag events using that eventId, so you do not double-count conversions as long as both sources use the same UET Tag ID. PII (email, phone) is hashed with SHA-256 before delivery, as required by the Conversions API.
Setup guides
Onboarding guide
Configure destination
Find UET Tag ID
Create Event Goals
Enable CAPI
Enable click ID tracking
Event mapping
Upstack maps storefront events to Microsoft Advertising events automatically:| Upstack event | Microsoft event | Key match data |
|---|---|---|
PageView | pageLoad | URL, referrer, user agent |
ViewContent | view_item | itemIds, value, currency |
AddToCart | add_to_cart | itemIds, value, currency |
InitiateCheckout | begin_checkout | value, currency |
Purchase | purchase | value, currency, transactionId, itemIds |
Lead | lead | email, phone |
Search | search | searchTerm |
SignUp | sign_up | email |
email, hashed phone, msclkid (Microsoft click ID), ip_address, and user_agent — to maximize match quality.
FAQ
What is the difference between UET Tag ID and CAPI Auth Token?
What is the difference between UET Tag ID and CAPI Auth Token?
How do I enroll in the CAPI pilot program?
How do I enroll in the CAPI pilot program?
How do I know events are reaching Microsoft?
How do I know events are reaching Microsoft?
Will I see duplicate conversions if I run both the UET Tag and Conversions API?
Will I see duplicate conversions if I run both the UET Tag and Conversions API?
eventId on every server-side event, and Microsoft’s deduplication logic matches events by eventId and keeps only one.Why do events need to be within 7 days?
Why do events need to be within 7 days?
What if my event match rate is low?
What if my event match rate is low?
- Missing
msclkid— Microsoft ads should link directly to your storefront so the click ID lands in the URL and is captured by the Upstack Pixel. - Anonymous visitors — events from visitors without email have fewer keys to match against. Match rates improve as more identified customers convert.
- Missing checkout fields — make sure your Shopify checkout collects email and phone; they’re the strongest server-side match keys.
Troubleshooting
Events not appearing in Microsoft Advertising
Events not appearing in Microsoft Advertising
- Verify UET Tag ID is correct in Upstack destination settings
- Verify CAPI auth token is valid (test in Event Debugger)
- Check event timestamp is within 7 days
- Ensure Event Goals are configured in Microsoft Advertising UI
401 Unauthorized errors
401 Unauthorized errors
400 Validation errors
400 Validation errors
eventTypemust be “pageLoad” or “custom”eventTimemust be UNIX seconds (not milliseconds) within 7 daysemandphmust be valid SHA-256 hex strings (64 characters)eventSourceUrlis required for pageLoad events