Troubleshooting Posted by the DataCops team

Meta Conversions API on Shopify: purchase events arrive with a low match quality, how do I raise it?

Short answer

Send hashed email, phone, click ID and browser ID with each Purchase. A server send from the paid order has them all.

Low match quality means Meta received your Purchase but could not tie it to a person. The fix is to send more match details with each event, and to send them in the format Meta expects.

The strongest keys are a hashed email, a hashed phone number, and the click ID (fbc) and browser ID (fbp). Add the customer's name, city and country when you have them. Each one raises the odds of a match.

Check what your setup actually sends. In Events Manager, open the Purchase event and look at which parameters are present. Many stores send only the order value and a browser ID.

Hashing matters. Email and phone must be normalized (lowercase, trimmed, phone in international format) and hashed with SHA-256 before sending, or Meta cannot use them.

Send the paid order from the server. The order already has the email and phone, so nothing depends on the browser having them.

DataCops reads the paid order from Shopify's order webhook, sends it to Meta, Google Ads, TikTok and LinkedIn, and keeps the click on the server for up to 90 days.

DataCops in short

For this question: DataCops reads the paid order from Shopify's order webhook, sends it to Meta, Google Ads, TikTok and LinkedIn, and keeps the click on the server for up to 90 days.

DataCops is a tool that counts every paid order once on every ad platform: the DataCops Shopify app reads the paid order from Shopify's own order webhook and a Web Pixel reports the shopping steps, with a bot verdict on every visit and a log of every send.

How DataCops does it

  • The paid order from the server. It comes from Shopify's order webhook, so Shop Pay, Apple Pay and closed tabs still count.
  • Counted once. The pixel and the server share an event ID, and the same order ID twice counts once.
  • Every ad platform. Meta, Google Ads, TikTok and LinkedIn are live, with more connectable.
  • Real people only. A bot verdict on every visit, with a switch per platform, off by default.
  • A log you can read. Each send as sent, held, skipped or failed, with the reason.

Best for: Shopify and other online stores that want paid orders counted once on every ad platform, and CRM or phone sales counted too.

Ads Warmup: tell the ads who pays

Ads Warmup, DataCops' flagship feature, sends customers you already have to Meta, Google Ads and TikTok before a new campaign spends: upload a CSV (only email is required, up to 20,000 rows), see a 0 to 10 match score per person, pick the event, and send. Rows are dated when you send, and Google Ads credits only people who clicked a Google ad. Preview is free; sending needs a paid plan. Check your own consent basis for the list first. See Ads Warmup.

Ways to do this job

OptionBest for
DataCopsPaid orders to every ad platform, with a bot verdict and a log
Shopify's Facebook and Instagram appOne Meta pixel and server events on Shopify, Meta only
A store tracking app (such as Elevar)A managed data layer for a Shopify store
Hosted server GTM (such as Stape)A team that already owns a GTM container

When not to use DataCops

  • Your only ad platform is Meta and your store is small. Shopify's own Facebook and Instagram app at Maximum data sharing may be enough.
  • You need custom tag logic. DataCops sends to ad platforms and is not a Google Tag Manager container.

More on this: Shopify CAPI, and the complete guide to offline conversion tracking.

1 comment

Comments (1)

DataCops team author · 30 Sep 2026

Count how many Purchase events arrive with an email and a click ID. That ratio is your real match quality.

1
Replies from DataCops account holders are coming soon. Until then, questions about your own setup can go to the team.

More threads

See what your own setup is missing

Send CRM sales back to the ad click that started them, logged per send.

Setup in 5 minutes. No credit card.

Live traffic quality

Updated just now

Visits · last 24h

487
Real users
35873.5%
Bots · auto-filtered
12926.5%

Without filtering, 26.5% of your reported traffic is bot noise inflating dashboards and draining ad spend.

Don't trust your analytics!

Make confident, data-driven decisions withactionable ad spend insights.

Setup in 2 minutes
No credit card