Ads Report: track your ad performance in real time
Ads Report puts your Meta ad figures and Omega's own tracking data side by side in one view — no more switching between Ads Manager and your store reports. Omega's numbers update in near real-time, so you often spot a winning (or dying) campaign before Meta's reporting catches up.
Get started

1. Connect your Facebook account. Link the Facebook account that runs your ads, so Omega can read your ad accounts, campaigns, and Meta-reported metrics.
2. Set up your UTM. UTMs are how Omega matches your store's orders to the exact ads that drove them. Without complete UTMs, the Omega columns can't show up correctly or fully.

- Option 1 (recommended): Copy Omega's default UTM string from the app and paste it into the URL parameters field when creating your ad in Meta Ads Manager.
- Option 2: Keep your existing UTM — paste it into Omega, then copy the combined string from the app onto your ads.
Tip: The UTM on your live ads must match what's set in the app. If they differ, orders can't be matched and numbers will be missing.
What's on the page

Order reconciliation (top of the page) walks you from your total Shopify orders down to the purchases Meta credits to your ads — four numbers that explain where every gap comes from. It deserves its own guide: see [Order reconciliation: why your Meta purchases don't match your Shopify orders].
Ads Performance (below) is the day-to-day workspace: KPI cards (UTM Ad Purchases, Ad Sales, Ad Spend, ROAS) and a breakdown table by campaign, ad set, and ad.
Reading the numbers
Two sources, one table. Every column in the campaign table is tagged with its source:
- Meta columns (blue dot — Spend, Budget, CTR, Impressions…): reported by Meta, the same figures as Ads Manager.
- Omega columns (purple dot — Revenue, Purchase, CPP, AOV…): matched by Omega directly from your store's orders via UTM.
- ROAS divides across the two sources: Omega-tracked revenue ÷ Meta-reported spend. That's the point of the page — ad spend measured against real store revenue, not Meta's modeled conversions.
All values are shown in your store currency. Meta figures are converted so they're directly comparable with Omega's. The "Showing in [currency]" label next to the account selector reminds you of this — hover it to see the exchange rate applied. Converted Meta numbers may differ slightly from Ads Manager; that's expected.
Omega data is near real-time; Meta data can lag. Omega metrics are matched straight from store orders and update within minutes. Meta metrics depend on Meta's processing and attribution, and can keep rising for 1–3 days — see the reporting-delay note in the [Order reconciliation guide].
How orders are attributed. Omega uses last-click attribution: the order is credited to the last ad the customer clicked before purchasing.
Choosing an ad account
Ads Performance shows one ad account at a time — pick it from the account selector in the section header. If you select an account on the AM purchases card up in Order reconciliation, Ads Performance automatically switches to the same account so the whole page tells one story. You can still change the Ads Performance account separately afterwards.
Dates & timezones
One date filter at the top of the page controls everything below. Presets like Today and Last 7 days are resolved using the timezone set in your app Settings — which should match your store's timezone, so "Today" means your today.
Each section then applies that date range in its own timezone, shown by the GMT labels on screen:
- Order reconciliation's store-side numbers follow your store timezone; EM/AM purchases follow the selected ad account's timezone.
- Ads Performance follows the selected ad account's timezone — the same clock as Meta Ads Manager, so these numbers stay comparable with Meta.
Because different clocks open and close each day at different times, today's numbers can temporarily differ between sections near day boundaries. This is expected — fully closed days always match. Hover any GMT label for details, or see the [Timezones section of the Order reconciliation guide].
UTM coverage: how much of your spend is measurable
The UTM coverage indicator in the Ads Performance header shows the share of your active ads that carry a valid UTM — for example, 80% means 24 of 30 active ads are measurable.
- Rows without UTM show a "No UTM" badge, and their Omega columns (Revenue, Purchase, CPP, AOV, ROAS) display "—": the ad is spending, but its results can't be matched to orders.
- Click the coverage indicator to open the setup panel: copy the UTM string (step 1) and paste it into those ads in Meta Ads Manager (step 2). Coverage updates as Meta syncs the change.
Aim for 100% coverage — every percent below it is ad spend whose revenue you can't see.
Something looks off?
Symptom | First thing to check |
|---|---|
Omega columns all show "—" | UTM not set up, or live ads' UTM doesn't match the app — see Set up your UTM |
Numbers differ from Ads Manager slightly | Currency conversion and timezones — both expected; see above |
Meta purchases ≠ Shopify orders | That's the normal funnel — see the [Order reconciliation guide] |
Today's numbers look low or empty | Timezone day boundaries + Meta's 1–3 day attribution delay |
Still stuck? Message us via in-app chat with the date range and ad account — we'll dig in with you.
Updated on: 15/10/2026
Thank you!