Starter plan & up

Channels — Facebook / Meta ads

How to read your Meta Ads spend, performance, and attribution in Ordinary once the Meta integration is connected.

Ordinary Written by The Ordinary Team · Updated

Channels — Facebook / Meta ads

Meta campaign reporting requires Starter or higher and a connected Meta Ads account. See Connecting Meta Ads.

Once Meta is connected, Ordinary pulls your campaign, ad-set, and ad-level data and cross-references it with pixel-observed attribution. Left nav → Channels → Meta.

The list view

One row per campaign. Columns:

  • Campaign name
  • Status (Active / Paused / etc. — read directly from Meta)
  • Spend — cumulative in the date range, in your display currency
  • Impressions, Clicks, CTR
  • Orders attributed — sessions that had this campaign in the UTM chain and led to an order, using the currently-selected attribution model
  • Revenue attributed — sum of those orders’ revenue
  • ROAS — Revenue attributed / Spend

Click any row to drill down.

The detail view

The campaign-detail page has tabs for:

Attribution model

The model selector at the top of the page affects the “Orders attributed” and “Revenue attributed” columns. Same four models as the main attribution report — last-click (default), first-click, linear, time-decay.

See Attribution models explained.

Click-through vs view-through (why Meta’s numbers don’t match)

Across your whole Meta account, Meta’s reporting will usually show more conversions than Ordinary’s Click-through view — that’s expected, the two are counting different things:

  • Click-through — someone clicked your ad and bought. Ordinary confirms these against your own store, so they’re conversions you can verify.
  • View-through — someone saw your ad, didn’t click, and bought later. Only Meta can see these, so Ordinary reports Meta’s figure.

The Click-through / View-through toggle — in the page header on Channels → Meta and on the Meta scorecard on your home dashboard — switches between the two. View-through is the default (it’s the number Meta’s dashboard and most agencies quote); Click-through is the store-verified floor underneath it.

A couple of other things move the numbers:

  • Attribution window — Meta’s default is 7-day click + 1-day view (configurable per ad account). Ordinary doesn’t truncate at a few days the way the platform does — it credits the actual last ad click in the customer’s journey under your chosen model, looking back up to 180 days. Different window and different method, so the counts won’t line up one-to-one.
  • Cross-device — Meta deduplicates users across devices via their identity graph. Ordinary treats each browser as its own session stream until the shopper authenticates at checkout and we can link them.
  • A single campaign can occasionally flip — show more click-verified orders in Ordinary than Meta reports for it. That’s last-click crediting the campaign that got the final click in the journey, while Meta spreads credit across everything the shopper saw. It evens out across your whole account, so compare totals there for the cleanest read; per-campaign, treat Ordinary’s click-verified number as the one you can stand behind and the gap vs. Meta as directional.

They almost never match exactly, and the gap is where the real decision lives: view-through might be genuinely driving demand, or it might be sales you’d have made anyway. Ordinary’s experiments measure the true incremental lift of your spend, so “is view-through worth it?” stops being a guess. For reconciliation, use Meta for delivery metrics (impressions, CTR, CPC) and Ordinary for outcome metrics (orders, revenue, ROAS).

Spend in a different currency than your ad account

Some Meta ad accounts are billed in a currency that isn’t the one your store reports in — for example an account first created in Canada bills in CAD even though the shop reports in GBP. Meta’s own Ads Manager always shows that account’s billing currency.

Ordinary converts your Meta spend and Meta-reported revenue into your display currency using each day’s exchange rate, so a whole year of history converts month-by-month at the rates that actually applied — not one flat rate. When this happens you’ll see a small badge (for example CAD→GBP) next to the channel; hover it for the details.

Because of the conversion, these figures won’t match Meta’s Ads Manager, which keeps showing the account’s billing currency. That’s expected — the numbers are the same spend, expressed in your reporting currency. If you want the two to line up, set your display currency to the ad account’s currency, or compare inside Meta.

What if ad spend looks zero

  • Connection expired — check Settings → Integrations → Meta. If it says “Needs reauth,” click Reconnect.
  • Date range past your plan’s lookback — partial data badge will show.
  • Meta sync hasn’t run yet — initial sync can take 10-20 minutes. See Meta data is stale or empty.

Did this answer your question?

Thanks for your feedback! 🙌

Related articles