[01] Capture
Collected on your own domain.
The tracking endpoint runs on a subdomain you own, t.yourstore.com, pointed at us by CNAME. Not a shared vendor domain that browsers and blockers already know. Your first-party context stays first-party.
Server-side conversion tracking for Meta
wesaw recovers the conversions your pixel loses, sends them to Meta's Conversions API, and shows you the full path of each one: captured, enriched, pushed, deduplicated. Black box out, glass box in.
Shopify and WooCommerce. No credit card, nothing to install yet.
| Time | Event | Value | Params | Status |
|---|---|---|---|---|
| 14:22:07 | Purchase evt_9f2c…a41 | 142.52 € | 14/14 | Pushed |
| 14:21:58 | AddToCart evt_71bd…0c9 | 142.52 € | 14/14 | Pushed |
| 14:21:44 | PageView evt_2ea8…5f3 | — | 14/14 | Pushed |
| 14:21:31 | Purchase evt_c40a…7b2 | 89.00 € | 14/14 | Pushed |
| 14:21:12 | AddToCart evt_5d19…e88 | 89.00 € | 14/14 | Pushed |
| 14:20:57 | PageView evt_ab33…124 | — | 14/14 | Queued |
| 14:20:41 | PageView evt_6c02…9de | — | 14/14 | Queued |
| 14:20:22 | Purchase evt_18fe…4a7 | 247.90 € | 14/14 | Pushed |
| 14:20:03 | AddToCart evt_93c7…d15 | 247.90 € | 14/14 | Pushed |
| 14:19:48 | PageView evt_0b6d…3f9 | — | 14/14 | Pushed |
t.yourstore.com · consent: granted
4 → 14 match parameters · hashed server-side
Conversions API · HTTP 200 · fbtr_8QK…
matched browser event on event_id
[ The leak ]
iOS 14.5 made tracking opt-in. Safari's ITP caps first-party cookies at seven days, and at 24 hours when the link carries a click ID. Third-party cookies are done. None of that broke your store, it broke the report you make decisions on. Meta optimises on the signal it receives, so the campaign that looks flat may be the one that pays.
How it works
[01] Capture
The tracking endpoint runs on a subdomain you own, t.yourstore.com, pointed at us by CNAME. Not a shared vendor domain that browsers and blockers already know. Your first-party context stays first-party.
[02] Enrich
The browser knows the advertising identity: fbc, fbp, external_id. The order webhook knows the person: name, city, postcode, country. Meta deduplicates on event_id, it does not merge the two. So we carry the browser identity through to the server event, hash it server-side, and send one complete event instead of two half ones.
04 → 14
[03] Verify
Captured at 14:22:07. Enriched with eleven parameters. Pushed to the Conversions API, HTTP 200, response id fbtr_…. Deduplicated against the browser event on the same event_id. When something fails, you see which step and why, not a silent gap in a chart.
[ On the record ]
No canvas or WebGL fingerprinting.
Identity is a first-party identifier issued by your own domain, plus what your store already knows about the order. If a visitor clears it, it is gone. That is the point.
No third-party cookies.
Nothing we set is readable by anyone but your domain.
No broad Shopify scopes.
We ask to read orders, and to place a web pixel. We publish the list and the reason for each one, and we do not ask to edit orders or read your customer history.
No personal data leaving your perimeter unhashed.
Email and phone are normalised and SHA-256 hashed on our servers before anything is sent to Meta. Never in the browser.
We are not making privacy compliance claims on this page. Those need a lawyer's signature, and we will publish them when they have one.
Honestly
| Where this sits. | The pixel alone | Enterprise attribution suites | wesaw |
|---|---|---|---|
| Recovers signal lost to ITP and opt-out | No | Yes | Yes |
| Per-event proof of what was sent | No | Partial, buried in exports | Yes, one click per event |
| Collection domain | Shared or vendor-owned | Varies | Your own subdomain, by CNAME |
| Setup | Built in | Implementation project, often paid | Self-serve, no manual review to wait for |
| Multi-touch attribution modelling | No | Yes | Not doing it |
| Built for | Everyone | Teams with an analyst | Merchants spending 3k to 50k a month |
If you need multi-touch modelling across five channels, buy one of those suites. We are building the Meta channel done properly, and the proof that it is.
A trial that converts three weeks after the click is the hardest thing to attribute, and it is the same pipeline. Stripe and Paddle are on the map, behind Shopify. Tell us in the form and we will keep you posted.
Questions
No. The Meta pipeline is running end to end on our own test store, the merchant dashboard is being built. The waiting list is how you get in first, in order.
We have not set a price. We will not surprise the waiting list with one either: you will get the number before you get access.
No. Browser and server events carry the same event_id, which is what Meta deduplicates on. Keeping your pixel is the intended setup, not a conflict.
No. We read the consent state your storefront has already collected and record it on every event. An explicit refusal stops the event.
So collection happens on a subdomain of your own store rather than a domain shared with hundreds of other merchants. You add one DNS record; we handle the certificate.
Meta first, and only Meta until it is excellent. Google and TikTok after. Shopify first on the store side, WooCommerce next.
Join the waiting list. You will get the build notes as they happen, and access in the order you signed up.