Sprites LogoSprites.ai
CustomersPricing
Sign in
Get a demo
Start 7-day trialโ†’โ†’
Start 7-day trialโ†’โ†’
Sprites LogoSprites.ai
  • Run adsMeta AdsFacebook and Instagram, scaledGoogle AdsSearch, PMax and ShoppingLinkedIn AdsB2B targeting and ABMTikTok AdsShort-form video that convertsReddit AdsReach communities by intentGoal OptimizationHit your ROAS or CPL target
    Create & researchAd GeneratorOn-brand ads for any channelCreative AnalyticsThe hooks and angles that winCompetitor IntelligenceRivals' ads, SEO and AI reachMarket ResearchAudience insight, with sources
    SEO & AI visibilityAI SEO ContentArticles written and publishedAI VisibilityGet cited in AI answersSEO Site AuditPrioritized fixes, site-wideKeyword & Traffic ResearchWhere the searches and gaps are
    Meet SpritesYour AI ads team, on every channelResearches, builds and launches campaigns, then optimizes them daily. You approve every change.Scale the winner +$600/dayApprovePaused 14 wasted keywords+ SEO & AI searchStart 7-day trial
  • By teamStartups & SMBsSenior marketing, no headcountMarketing teamsMore campaigns, same teamAgenciesEvery client, one workspaceEnterpriseApprovals, governance, scale
    By businessB2B & ABMPipeline from target accountsEcommerce & D2CProfitable ROAS at scalePLG SaaSSignups and trials, not clicksMobile appsInstalls that become usersFintechCompliant growth for financeHealthtechCareful, compliant growth
    Helghardt Avenant68% lower CPL in 6 weeksCustomer storyHow Rehive took its ABM playbook back from two agenciesHelghardt Avenant ยท Founder & CEO, RehiveRead the story
  • Ads LibraryReal ads from Meta, Google, LinkedIn, TikTok, Reddit and moreBlogIdeas and playbooks for modern marketingPrompt GalleryReady-to-run prompts for your next campaign
    Free toolsGlossaryReviewsCompare Sprites
  • Customers
  • Pricing
Sign in
Get a demo
Start 7-day trialโ†’โ†’
  1. Home/
  2. Attribution/
  3. posthog meta ads attribution

Attribution ยท Sprites diagnoses this

PostHog vs Meta Ads: why Meta claims more conversions

Meta counts a conversion after a click within 7 days or a view or engagement within 1 day, ties devices together and models the rest. PostHog counts only the events it captured and credits them to the UTMs it saw on the landing URL. In-app browsers, view-through credit and missing URL parameters account for most of the gap.

Start 7-day trial โ†’Do it by hand

$1 today. Cancel anytime before day 7.

What Sprites checks

4 checks
  • ?Meta attribution setting7d click, 1d engage, 1d view
  • ?PostHog signups by utm_sourcefacebook and fb split in two
  • !Signups with no UTM38% of new users
  • ?Event Meta optimizes forLead, not signup
Illustration of a typical broken account. Your own readout comes from your account.

Why it happens

View-through and engage-through credit

  1. View-through and engage-through credit

    Meta credits people who saw or engaged with an ad within a day and converted without clicking. PostHog has no record of an ad view, so those conversions show as direct or organic.

  2. In-app browsers

    A tap in Instagram opens your site inside the app. If the person signs up later in Safari or on desktop, PostHog sees a new anonymous user with no UTMs, while Meta still matches them.

  3. Inconsistent or missing UTMs

    Ads with no URL parameters, or values like facebook, fb and meta used side by side, scatter Meta signups across rows. See PostHog UTM tracking and fbclid.

  4. Different events

    Meta often optimizes for a Lead or a pixel event that fires before the account exists. PostHog counts the signup your app records.

How to line them up, step by step

  1. Pull Meta on click only

    In Ads Manager open Columns, Compare attribution settings and add 7-day click. That is the closest Meta number to what PostHog can trace.

  2. Break PostHog signups down by UTM

    In PostHog create a Trends insight on your signup event, break it down by Initial UTM source, then by Initial UTM campaign. Group the Meta spellings together.

  3. Standardize URL parameters

    In each Meta ad, under Destination, set URL parameters to one consistent utm_source and utm_medium, with the campaign name in utm_campaign.

  4. Compare the same dates

    Use a full 30 days and compare PostHog signups with the 7-day click column, not the default Meta total.

Steps checked against Meta Business Help Center: About attribution settings; Meta Business Help Center: Compare attribution settings; PostHog docs: Capturing UTM and campaign data.

Sprites diagnoses this

Sprites diagnoses it

Sprites lines up your PostHog and Meta numbers and shows where they split.

What Sprites does

  • Pulls Meta conversions per campaign and day on the basis you see in Ads Manager.
  • Breaks PostHog signups down by utm_source and utm_campaign, and shows the share that arrived with no UTM.
  • Runs a PostHog funnel from landing to signup to activation per source, so you see whether Meta signups activate.

What it doesn't do

  • It does not send PostHog events to Meta or set up the Conversions API.
  • It does not change your Meta attribution settings.
Start 7-day trial โ†’

Questions

Why does Meta report more conversions than PostHog?

Meta counts view and engagement credit, conversions on other devices and modeled conversions. PostHog only counts events it captured with the UTMs it saw.

Does PostHog capture fbclid?

Yes, when fbclid is on the landing URL PostHog stores it as a campaign property. It is often stripped by redirects or privacy features before it arrives.

Should I install the Meta pixel through PostHog?

You can forward events with PostHog destinations, but the gap above stays, because it comes from how each tool attributes, not from the transport.

Which number should decide my Meta budget?

Activated users by source in PostHog over a few weeks, checked against Meta 7-day click. If both trend the same way, the budget move is safe.

More: Tool vs ad platform

  • PostHog vs Google Ads: why your signups don't match
  • PostHog UTM tracking
  • Meta ads attribution settings
  • What is fbclid?
  • GA4 vs Google Ads conversions: why the numbers don't match
  • GA4 vs Meta Ads conversions: why Meta reports more
  • GA4 vs LinkedIn Ads conversions: why they never match
  • PostHog shows fewer LinkedIn signups than Campaign Manager
  • HubSpot vs Google Ads: why your lead counts differ
  • HubSpot vs Meta Ads: why the leads don't add up
  • HubSpot vs LinkedIn Ads: why the leads don't match
  • Google Ads and Meta both claim the same sale

Hubs

  • Why your tools disagree on conversions
  • Fix your ad account
  • Fix Google Ads problems
  • Fix your Meta ads
  • Fix your LinkedIn ads
  • Fix your Reddit ads
  • Fix Microsoft Ads problems

Reference

  • Attribution, defined
  • PostHog MCP server
  • Google Analytics MCP server
  • Google Ads MCP server
  • Incrementality
  • Marketing mix modeling
  • Ad specs

See where it breaks

Connect your accounts. Sprites reads them side by side and shows you exactly where the numbers split.

Start 7-day trial โ†’Get a demo

Get the free AI-First Marketing Playbook

Packed with proven tactics, creative inspo, and automation tips to help you grow faster with less guesswork.

By clicking send you agree to the Terms and Conditions

Pillars

AI Marketing AgentVibe MarketingAI VisibilityAI Marketing AutomationAI for Meta AdsAI for Google AdsAI for LinkedIn AdsAI SEOAds LibraryChatGPT AdsAI AdsMCP Server

For Teams

For AgenciesFor EcommerceFor FintechFor HealthtechFor EnterpriseFor FreelancersFor Marketing Teams

Prompts Gallery

Marketing Campaign BuilderGoogle Ads Search Campaign BuilderCompetitor Meta Ads AnalyzerSEO Audit + Plan GeneratorGoogle Ads Campaign OptimizerGoogle Ads: PMax Campaign Builder

About

CustomersReviewsBlogTerms of ServicePrivacy PolicyDPACareersSitemap
Sprites TextWizard