- US device IDs in the graph
- 750M+
- Match rate on events
- 90%+
- Meta event match quality
- 7.5+
- Most brands are live
- <20 min
How it flows
How a BigCommerce event reaches the Meta Conversions API. Captured on the server, resolved to a person, then sent.
01 Capture
Captured from BigCommerce
Server-side capture of BigCommerce storefront and checkout events, resolved and forwarded downstream.
See the BigCommerce integration →
BigCommerceWhat it sends order_idBigCommerce orderemail / phonecheckout contactcustomer_idBigCommerce customer recordproductscatalog items on the ordertotal_inc_taxorder value
02 Understand
Resolved to one person before it leaves
Every BigCommerce event is matched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer rather than two strangers.
How resolution works →
Resolved before it is sent - IdentityMatched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer.
customer_typeNew or returning, resolved before send.- DeduplicationBrowser and server copies of the same purchase collapse on event ID, so nothing is counted twice.
- Bot and fraud filteringAutomated traffic never reaches the model, because what you keep out of the training set matters as much as what goes in.
03 Activate
Delivered to the Meta Conversions API
Forward deduplicated, identity-resolved conversions to Meta through the Conversions API, and give the model a customer instead of a session.
See the Meta Conversions API integration →
Meta Conversions APIWhat it receives em, ph (SHA-256)raise Event Match Qualityfbclid / _fbpcredit the click that drove itexternal_idstable person across sessionsevent_iddedupe against the browser pixelvalue / currencyvalue-based bidding
Which events reach the Meta Conversions API
Each Upstack event is mapped to the Meta Conversions API event below before it is sent.
| Upstack event | Sent to Meta Conversions API as | Key data on the event |
| Page view | PageView | URL, referrer, user agent |
| Product view | ViewContent | content_ids, content_type, value, currency |
| Add to cart | AddToCart | content_ids, value, currency |
| Checkout | InitiateCheckout | value, currency, num_items |
| Purchase | Purchase | value, currency, order_id, content_ids |
Every event carries every available match key: em, ph, fn, ln, ct, st, zp and country, plus fbc, fbp and external_id. Personal data is hashed with SHA-256 before it leaves Upstack.
BigCommerce to Meta Conversions API, in detail
How BigCommerce events reach the Meta Conversions API.
BigCommerce’s hosted checkout keeps PCI scope down but limits what a browser script can see at the moment of purchase. Upstack reads the BigCommerce order server-side, resolves the customer, and sends the event to Meta’s Conversions API with every available match key, alongside the browser pixel copy with a shared event_id, so Meta keeps one.
| BigCommerce data | Sent to Meta as |
| order_id On Purchase. | order_id |
| products The catalog items on the order. | content_ids |
| total_inc_tax The order value, in the order’s currency. | value, currency |
| Checkout email and phone Hashed with SHA-256 before they leave Upstack. | em, ph |
| Meta ad click (fbclid) fbc is built from the fbclid in the ad URL. | fbc, plus fbp |
| Upstack customer ID One person across visits and storefronts. | external_id |
The hosted checkout
BigCommerce’s checkout is hosted, which hides the purchase from browser-side scripts. Upstack reads the order server-side instead, so that limit stops mattering.
Deduplication with event_id
With the default Browser + Server tracking method, Upstack loads the Meta Pixel and sends the same events from its servers, and both copies carry the same event ID, so Meta keeps one. Another sender on the same pixel, such as a platform’s own Meta integration, Meta’s Conversions API Gateway or a third-party CAPI app, has no matching ID, so turn it off.
Event Match Quality
Every event carries every available match key: em, ph, fn, ln, ct, st, zp and country, plus fbc, fbp and external_id, with personal data hashed with SHA-256. Meta scores each event type separately once it has enough real events, usually within 24 to 48 hours.
Several storefronts
Multi-storefront accounts resolve against one graph rather than per store, so a shopper who buys from two of your regions is one customer to Meta.
The catch
BigCommerce's hosted checkout limits what a browser tag can see at the moment of purchase, which is exactly the moment that matters for conversion tracking.
Where to check in the Meta Conversions APIDelivery you can audit
Events Manager › your dataset › Event Match Quality
Server events appear with a Server badge, and Event Match Quality is scored per event type.
What changes
What changes when BigCommerce feeds the Meta Conversions API. Two gains on the Meta Conversions API side, two on the BigCommerce side.
Meta Conversions API
Higher Event Match Quality
More hashed identifiers on every event (email, phone, external ID, click ID), so EMQ rises and Meta matches more of what you send.
Meta Conversions API
Pixel and CAPI, one install
One source of truth for both, with browser and server events deduplicated on event_id so purchases are never double-counted.
BigCommerce
Every event, server-side
Storefront and checkout events are captured from BigCommerce on the server, independent of the browser.
BigCommerce
One setup, every destination
Connect BigCommerce once and forward to every ad platform, email tool and warehouse you run.
-
01
Connect BigCommerce
Server-side capture of BigCommerce storefront and checkout events, resolved and forwarded downstream.
-
02
Remove other Meta senders
Turn off any other tool that sends server events to the same pixel, such as a platform’s own Meta integration or a third-party CAPI app, and keep a single Meta pixel.
-
03
Add the Meta destination
Under Destinations, add Facebook Advertising with your Pixel ID (a 15 or 16 digit number) and a Conversions API token generated in Events Manager, which starts with EAA. Keep the default Browser + Server tracking method.
-
04
Don’t add a second Conversions API sender
Meta may suggest its Conversions API Gateway under a “Low rate of pixel events covered by Conversions API” warning. Ignore it: a second sender duplicates events without matching event IDs.
-
05
Check Events Manager
Server events show a Server badge on the Overview and Test Events tabs. Event Match Quality is scored per event type, and Meta takes 24 to 48 hours to score new events.
After setup
What to check in Meta Events Manager.
Upstack shows the Facebook Advertising destination as Healthy.
Events Manager lists your events with a Server badge as well as Browser.
Event Match Quality has a score for each event type after 24 to 48 hours of real orders. Test orders don’t score the same way.
The Pixel ID in Upstack matches the dataset your ads optimize on, under Data Sources in Events Manager.
Troubleshooting
Common problems and fixes.
-
Purchases counted twice
Another sender is still active on the same pixel. Its events don’t share Upstack’s event_id, so Meta can’t pair them: remove it.
-
Event Match Quality shows 0.0 out of 10
Normal for the first 24 to 48 hours and until real orders arrive. If it persists, check the Pixel ID matches and that the access token has ads_read plus ads_management or business_management.
-
A “Low rate of pixel events covered by Conversions API” warning
A false positive for Upstack stores, whose events already go through the Conversions API. Don’t click Review solution or set up the Conversions API Gateway.
-
No Server events in Events Manager
Check the destination is saved and Healthy and the access token is valid. If another integration also sends to the pixel, turn it off.
FAQ
Questions about BigCommerce and the Meta Conversions API.
How do I connect BigCommerce to the Meta Conversions API?
Connect BigCommerce to Upstack, turn off any other tool sending events to the same Meta pixel, then add the Facebook Advertising destination with your Pixel ID and a Conversions API token. Upstack sends events from the browser and its servers with a shared event_id. Most brands are live in under 20 minutes.
What is Event Match Quality (EMQ) and why does it matter?
EMQ is Meta’s score, from 0 to 10, for how reliably it can match a conversion event back to a Meta user. Higher EMQ gives Meta’s algorithm more signal to optimize against, and server-side delivery through CAPI typically raises it because events carry more match keys and are not blocked by browser restrictions.
Will purchases be counted twice with the Pixel and the Conversions API both running?
No. Upstack sends a shared event_id on every server-side event, and Meta deduplicates against the matching browser Pixel event. As long as the Pixel ID in Upstack matches the Pixel ID firing in your storefront, deduplication is automatic.
Which events does the Meta Conversions API receive?
PageView, ViewContent, AddToCart, InitiateCheckout and Purchase, each mapped to the Meta Conversions API event of the same name.
Which customer parameters are sent to the Meta Conversions API?
Every event carries every available match key: em, ph, fn, ln, ct, st, zp and country, plus fbc, fbp and external_id. Personal data is hashed with SHA-256 before it leaves Upstack.
How do I check that BigCommerce events are reaching the Meta Conversions API?
Upstack marks the destination Healthy, and Events Manager lists the server events with a Server badge. Open your dataset’s Event Match Quality: it is scored per event type, and Meta takes 24 to 48 hours to score new events.
How long does it take to connect BigCommerce to the Meta Conversions API?
Most brands are live in under 20 minutes. Once BigCommerce is connected, every destination receives the same resolved events, the Meta Conversions API included.
Does BigCommerce’s hosted checkout stop Meta tracking purchases?
It limits what a browser script can see at the moment of purchase. Upstack reads the order server-side, so the purchase doesn’t depend on a script running in checkout.
Do I need to remove other Meta pixels or Conversions API apps?
Yes. A second sender on the same pixel sends the same events without matching event IDs, so Meta counts them separately. That includes Meta’s Conversions API Gateway and third-party CAPI apps.
What happens with several BigCommerce storefronts?
They resolve against one graph rather than per store, so a shopper who buys from two of your storefronts is one customer downstream.
Keep reading
More on BigCommerce and the Meta Conversions API.