Full Answer
The discrepancy has three main causes. Attribution model mismatch: GA4 uses data-driven or last-click attribution; Meta defaults to 7-day click + 1-day view, claiming conversions that happened days after the ad click. Counting method differences: Meta counts all conversions within its attribution window, including view-through; GA4 counts unique sessions. Identity resolution: Meta tracks users server-to-server across devices; GA4 relies on browser cookies and client_id, losing Safari and ad-blocked sessions.
There's a fourth, often overlooked cause: GA4 is missing conversions that Meta tracked via CAPI server-side. If Meta CAPI is sending purchase events that GA4 never saw (because the confirmation page loaded with an ad blocker active), Meta will show more conversions than GA4 — and in this case, Meta is more accurate.
The practical rule: use both platforms together. GA4 for understanding traffic and user journeys; Meta Ads Manager for evaluating ad-driven conversion contribution. They'll never match perfectly — and that's expected.
