Meta Event Match Quality: Raising It With Shopify Customer Data
How to improve Meta's Event Match Quality score using Shopify customer and checkout data via Conversions API for better attribution.
Written by Mantas Jurgutis — Founder, Adsify — builds the Google & Meta automation merchants use daily
Editorially reviewed by Adsify Editorial on June 17, 2026 — Reviewed against Shopify, Google Ads and Meta official documentation.
What Event Match Quality measures
Event Match Quality (EMQ), shown in Events Manager under a specific event's diagnostics, scores how reliably Meta can match the customer information sent with an event (like Purchase) to a real Meta user profile, on a scale Meta displays qualitatively (e.g., Good, Great) alongside a numeric score. Higher match quality means Meta can more confidently attribute that conversion to the ad that drove it and use it as reliable optimization signal — low match quality means events exist but Meta can't confidently tie them to a specific user, weakening both attribution and algorithmic learning.
Why this matters more since iOS 14.5
Since Apple's App Tracking Transparency changes and broader browser-level tracking restrictions, browser-based Pixel events alone often carry incomplete or degraded signal — cookies get blocked, IDs get stripped. Server-side events sent via Conversions API, populated with real customer data collected at checkout, are largely unaffected by browser-level restrictions, which is why Meta explicitly recommends Conversions API alongside the Pixel as the standard setup for reliable measurement, and why EMQ has become one of the most consequential technical levers a Shopify merchant can pull.
The parameters that drive match quality
Meta matches on hashed customer parameters sent with each event: email, phone number, first and last name, city, state, zip/postal code, country, date of birth, and gender, plus technical identifiers like the click ID (fbc) and browser ID (fbp) cookies, and the external_id (typically your Shopify customer or order ID). More parameters sent, and more of them matching cleanly (correct hashing, correct formatting), directly raises the match score — sending just an email is far weaker than sending email, phone, name and zip together.
Checking your current EMQ score
In Meta Events Manager, select your Shopify data source (Pixel and/or Conversions API), click into the Purchase event, and look at the 'Event Match Quality' panel, which breaks down which parameters are being received and their individual match rates. A Shopify store often shows strong email match rates by default (since checkout requires email) but weaker phone number or address match rates if those fields aren't being reliably captured and passed through.
How Shopify's setup feeds this
When Shopify's checkout is configured with the Meta & Instagram sales channel app installed and the Web Pixel enabled, checkout completion data (email, phone if collected, shipping address, order value) flows automatically into both the browser Pixel and server-side Conversions API events without custom development. Verify this is active under Shopify admin > Settings > Customer events, confirming the Meta Pixel appears as an active pixel with 'Health' status showing no errors, and under the Meta & Instagram channel app settings confirming Conversions API is toggled on.
Encouraging more checkout fields
If your Shopify checkout doesn't collect a phone number by default, consider enabling phone number collection under Settings > Checkout, since phone number is one of the stronger individual match parameters Meta uses, particularly for markets where phone-based identity resolution is common. Balance this against checkout friction — an unnecessary required field can lower conversion rate, so consider making it optional rather than mandatory if cart abandonment is a concern.
Deduplication between Pixel and Conversions API
When both the browser Pixel and server-side Conversions API send the same Purchase event, Meta needs to deduplicate them into a single event using a shared event_id, otherwise you inflate reported conversions and confuse both your own reporting and the algorithm's learning signal. Shopify's native Meta integration handles this automatically via the Web Pixel, but if you've layered in any custom tracking scripts or third-party tracking apps, check Events Manager's 'Test Events' tool to confirm you're not seeing duplicate, non-deduplicated Purchase events for the same order.
A worked example of EMQ impact
Consider two Shopify stores each with 300 monthly purchases. Store A sends only email (hashed) via a basic Pixel-only setup, achieving roughly 60% match quality per Meta's scoring. Store B sends email, phone, first/last name, city, zip and external_id via full Conversions API integration, achieving roughly 85%+ match quality. Store B's ad account can generally attribute a materially higher share of actual purchases back to the correct ad, giving Meta's optimization system cleaner signal to act on — this often shows up as more stable, lower-volatility cost per purchase over time rather than a single dramatic metric change.
Testing with the Test Events tool
Events Manager's Test Events feature lets you place a real test order (or use Meta's test event code) and watch, in near real time, exactly which parameters arrive with the Purchase event and whether they're correctly hashed and formatted. This is the fastest way to debug a low EMQ score — rather than guessing, you can see directly that, for example, the phone number field is arriving unhashed or in an inconsistent format that Meta can't match.
Common EMQ mistakes on Shopify
Frequent issues include: checkout customization apps that override or interfere with the native Meta pixel firing, ad blockers suppressing browser-side events for a portion of traffic (which server-side Conversions API mitigates but doesn't fully replace), and stores using an outdated legacy Facebook Pixel app alongside the newer Shopify Meta & Instagram channel, causing conflicting or duplicate event streams that confuse both deduplication and match quality analysis.
Privacy and consent considerations
Sending customer data via Conversions API must comply with your store's privacy policy and applicable regulations (GDPR, CCPA depending on your customer base); Shopify's cookie consent and Meta's own data processing terms govern how this works technically, but merchants are responsible for ensuring their privacy policy accurately discloses this data sharing. Check Shopify admin > Settings > Customer privacy to confirm your consent banner configuration aligns with what data you're passing to Meta.
Server-side setup for merchants using Adsify
Adsify's Meta integration sends Conversions API events server-side by default alongside the Shopify Web Pixel, aiming to keep EMQ high without merchants needing to manually configure hashing or parameter mapping — the goal being that improving match quality is a background reliability improvement rather than an ongoing manual task. Merchants managing this manually should treat EMQ as a metric to check monthly in Events Manager, the same way you'd check ROAS, since match quality can degrade silently if a checkout customization or app update interferes with event data.
Connecting EMQ to actual campaign performance
Improving EMQ doesn't directly change your creative or targeting, but it changes how confidently Meta's algorithm can learn from the conversions you're already getting, which compounds into better delivery efficiency over time — particularly for smaller Shopify stores where every additional confidently-matched purchase meaningfully increases the total signal available to a learning-phase-constrained ad set. Treating EMQ as foundational infrastructure, checked and maintained before troubleshooting other campaign issues, prevents chasing symptoms of a signal problem with unrelated fixes to bidding or creative.
