Skip to content

tracking-doctor: can I trust my data?

Diagnostics Cowork-ready

Answers the question everything else depends on: can you trust your conversion data? It audits six layers in one pass:

  1. Meta signal (via the tracking gate the other Meta skills all read)
  2. On-site collection: pixels, tags, dataLayer
  3. GA4 configuration
  4. Consent mode
  5. UTM and click-id taxonomy
  6. Cross-platform reconciliation, which is where “my numbers don’t match” actually lives

A human audits a sample. This audits everything, every time, which is the only way the tenth thing gets caught.

Read-only. It produces a fix plan; it does not change your tags.

  • Before you launch anything. Launching on unverified tracking is one of the three hard blocks in new-client-launch, and this is what clears it.
  • Onboarding a new client, before you inherit their measurement problems as your results.
  • “Why don’t my numbers match?” Meta says 40 purchases, Shopify says 31, GA4 says 27.
  • After any site migration, theme change, or consent-banner change.
Cowork ✓ Desktop ✓

Both.

  • The site URL and the ad accounts in play.
  • The pixel/dataset id, GA4 property id, and GTM container, where they exist. It reads these from your Brain if onboarding recorded them, and asks once if not, then writes them back so nothing has to ask again.
  • Backend order or lead counts for the window, which is what reconciliation grades against.
  • A trust grade: GREEN / YELLOW / RED, with the reason.
  • The stack gate verdict that downstream skills consume, so a launch skill can read “tracking verified” as a fact rather than an assumption.
  • A paste-ready fix plan with an owner and a dated retest per item.
  • The three-way reconciliation table: platform-claimed vs analytics vs backend, with the gaps quantified.

You: “Full tracking audit for examplebrand.”

Grade: RED. Purchase events fire twice on the thank-you page (once via pixel, once via CAPI) with no event_id on the browser leg, so deduplication cannot happen and Meta is counting roughly 1.7x. Reconciliation: Meta 214 purchases, Shopify 129. Fix plan: add event_id to the browser purchase event, match it on the CAPI payload, retest in 72 hours. Owner: dev. Every other layer graded, consent mode flagged YELLOW separately.

  • Fix tracking before you optimize anything. Every scaling and creative verdict downstream is graded against numbers this audit either trusts or does not.
  • A RED grade blocks a launch, and it is supposed to. That gate has no override, because a launch on broken measurement spends real money learning nothing.
  • Missing access is NO-DATA, not a pass. If it could not reach GA4, it says so and names what it needs, rather than grading the layer clean.
  • Re-run after every fix. The dated retest is in the plan for a reason.

signal-surgeon goes deeper on the Meta layer specifically. Its verdict is a hard gate inside new-client-launch, and is read by weekly-readout, meta-account-doctor and drop-triage.