When you send a conversion to Meta or Google, the platform has to figure out which user it belongs to. It does that by matching the identifiers you include against its own records. The more identifiers you send, and the stronger they are, the more conversions get matched, attributed and used for optimization. Meta puts a number on this: Event Match Quality (EMQ).
What match quality actually measures
Match quality is not about how many events you send. It is about how much usable customer information travels with each one. A purchase with just a browser cookie is weak. The same purchase with a hashed email, a phone number, an external id and a click id is strong, because the platform can match it with confidence.
Higher match quality means:
- More conversions attributed to the right campaign.
- Better optimization, because the algorithm learns from more of your real buyers.
- Less waste, because fewer conversions are discarded as unmatchable.
The signals that raise it
Each identifier adds matching power. Roughly, from strongest to supporting:
| Signal | Why it helps |
|---|---|
| Email (hashed) | The single strongest match key on most platforms |
| Phone (hashed) | Strong, especially on mobile-heavy audiences |
| External ID | Your own stable customer id, ties events together |
| Name and location | Supporting signals that improve confidence |
| Click IDs (fbc/fbp, gclid) | Directly link the event to the ad click |
The identifiers are always hashed before they leave, so the platform matches without receiving raw personal data.
Why server-side raises the score
Two things make match quality hard client-side: the browser often does not have all the identifiers, and ad blockers or ITP drop what it does have. Server-side collection fixes both.
- Collect from the source. A purchase captured from the order carries the customer's real details, not whatever the browser happened to hold.
- Enrich from the profile. If an event arrives without an email but the known customer profile has one (captured earlier, with consent), it can be reattached before the event is sent. An anonymous add-to-cart can go from a weak match to a strong one automatically.
- Survive the browser. A first-party cookie keeps click ids and identity intact where a third-party cookie would be cut.
How to raise yours
- Capture email and phone wherever the customer gives them, and pass them hashed with every event.
- Set a stable external id per customer so events tie together.
- Keep the click ids by using a first-party cookie that ITP does not shorten.
- Let the system enrich events from the known profile, so incomplete events are filled in before dispatch.
Match quality turns from a diagnosis into a fix when the data is collected and enriched server-side. That is the model SetRoasFlow runs on: strong identifiers, hashed, sent with every conversion.