Skip to content

Campaign Report

See 100% of your traffic and every event in one place, from paid ads to organic, email, and direct. Compare ad platform attributed results against AnyTrack click-based conversions, calculate ROAS from real numbers, and drill down from campaign to ad level across Meta Ads, Google Ads, and TikTok Ads.

The Campaign Report is where you see 100% of your traffic and every event tied to it — paid ads, organic search, organic shopping, AI assistants, email, social, referral, and direct. On top of that traffic, it merges the campaign metrics AnyTrack fetches from Meta Ads, Google Ads, and TikTok Ads (spend, impressions, clicks, attributed results) with the conversions AnyTrack tracks server-side, so every campaign, ad set, and ad shows its cost, conversions, revenue, and ROAS on a single row.

The report has two layers that work together:

Every visit, every channel

All of your traffic and its events, with each session assigned to a channel — paid, organic search, organic shopping, AI assistants, email, social, referral, or direct.

Connected ad campaigns

For Meta Ads, Google Ads, and TikTok Ads, the campaign, ad set, and ad structure with spend and attributed results fetched from the ad platform API.

The report blends three data sources into one view:

Ad Platform Data

Campaign structure, ad spend, impressions, clicks, and attributed results fetched from Meta Ads, Google Ads, and TikTok Ads.

Client-Side Data

Sessions, pageviews, outbound clicks, and form submissions collected by the AnyTrack Tracking Tag on your website.

Server-Side Data

Purchase, lead, and registration events received from conversion source integrations (Shopify, affiliate networks) via API or webhook.

Every session is assigned to a channel on a best-effort basis. AnyTrack analyzes the referrer, the parameters passed in the URL, and every other available signal, then uses that processed data to decide where the visit came from. This is why organic search, AI assistants, email, social, and direct traffic all appear in the report — not only your paid campaigns.

Assigning a session to a channel is separate from attributing it to a specific campaign, ad set, or ad. Channel assignment happens for all traffic. Campaign-level attribution happens only when AnyTrack can match the visit to a campaign it fetched from the ad platform API, as described next.

For connected ad platforms, AnyTrack fetches campaign metrics from the Ads API, and the underlying keys are the campaign ID, ad set ID, and ad ID. To line those metrics up with real visits, AnyTrack has to recognize the same IDs on the incoming session.

That is the job of the ad platform UTM template. Each platform’s template carries dynamic tokens that inject the campaign, ad set, and ad IDs into the landing-page URL:

Install the platform UTM template

Add the UTM template for every ad platform connected to AnyTrack. The template injects the campaign, ad set, and ad IDs into your ad URLs.

A visitor clicks the ad

The click lands on your site and the session starts carrying those UTM values, including the platform IDs.

AnyTrack matches the IDs

AnyTrack aligns the UTM-carried IDs with the campaign, ad set, and ad data it fetched from the Ads API.

Everything lands on one row

Cost, conversions, revenue, and attributed results all appear on the same line for that campaign, ad set, or ad.

Attribution: First Ad Click and Last Ad Click

Section titled “Attribution: First Ad Click and Last Ad Click”

AnyTrack attributes conversions on an identifiable ad click, never on a view. You choose which click in the journey gets the credit using the Attribution control in the Campaign Report:

ModelCredits the conversion to
First Ad ClickThe first ad click in the visitor’s journey
Last Ad ClickThe most recent ad click before the conversion

Both models depend on the UTM parameters being present on the ad click, because that is what identifies the campaign, ad set, and ad. Switching the model is a view toggle — it changes how the current report reads, not your tracking. For the full explanation, see Attribution Explained, and for what changes in the report when you switch, see First Click vs Last Click.

By default, AnyTrack has no attribution window: it credits the ad click it tracked, without a look-back window that would credit a view. If you need a fixed window, set one in Property Settings — you can choose 1, 7, or 30 days, or the maximum available, and it applies to attribution reporting across your AnyTrack reports.

Attributed Results vs. AnyTrack Conversions

Section titled “Attributed Results vs. AnyTrack Conversions”

The Campaign Report shows two conversion columns side by side, and they come from two different places.

ColumnWhat it showsSource
Attributed Results / Attributed RevenueThe campaign’s results measured against the objective you set for it, credited by the ad platform’s model and windowMeta Ads, Google Ads, TikTok Ads
Purchase / Revenue (AnyTrack)Conversions AnyTrack tracked server-side and matched to a campaign via an identifiable ad clickYour conversion source integrations

What “Attributed Results” means. These are the ad platform’s own attributed conversions, measured against your campaign objective. If a Facebook sales campaign shows 10 attributed results and $200 attributed revenue, Facebook credited that campaign with 10 purchases worth $200 in total — based on its attribution model and window. Facebook’s default is 7-day click and 1-day (24-hour) view. AnyTrack sends the conversion to Facebook via the Conversion API; Facebook then identifies the customer who saw or clicked the ad and attributes the purchase to the campaign, ad set, and ad on its own schedule.

Attributed results and AnyTrack conversions usually differ, for two reasons:

Click vs. view

AnyTrack credits a campaign only on an identifiable ad click. Facebook can also credit a view. A shopper who saw the ad, then bought after arriving from organic search, counts for Facebook (post-view) but not against a campaign in AnyTrack — because there was no ad click.

Real-time vs. delayed

AnyTrack is real-time: the purchases and revenue you see now are the actual numbers at this moment. Facebook can take up to about 72 hours to process a conversion and attribute it to an ad.

Attributed Revenue and Attributed Results are the ad platform’s own figures, fetched straight from Meta Ads, Google Ads, and TikTok Ads — AnyTrack does not recalculate them. They are the same numbers your Ads Manager reports, so they reconcile once you compare them on the same basis:

  • Sync timing. AnyTrack refreshes these figures periodically, and the platforms keep re-attributing conversions for up to about 72 hours. A snapshot can briefly lag your live Ads Manager.
  • Timezone and date range. Match your Ads Manager to your AnyTrack property timezone and the exact same date range before comparing.
  • Google Ads conversion timing. AnyTrack aligns Google’s figures to conversion time, while the Google Ads default columns credit each conversion to the time of the ad click. To compare like for like, open Modify columns in Google Ads and add Conv. value (by conv. time) (and Conversions (by conv. time) for counts) — those columns match AnyTrack’s basis, whereas the default columns will not line up.

Match those and the numbers reconcile. This is a different comparison from the AnyTrack Revenue column above, which is your real server-side orders matched to a campaign by an identifiable ad click.

Columns marked with the AnyTrack icon show data measured directly from your integrations (actual conversions). Columns like Amount Spent and Attributed Results come from the ad platform.

Columns with the AnyTrack icon show actual conversion data from integrations.
Columns with the AnyTrack icon show actual conversion data from integrations.

The ROAS column combines both: actual revenue from your conversion sources divided by actual ad spend from the ad platform.

AnyTrack documentation screenshot

Use ROAS to identify campaigns not covering their own cost (ROAS below 1.0) and pause them directly from the report.

Missing or mismatched UTM parameters are the most common reason a visit does not line up with a campaign. AnyTrack handles it as gracefully as it can:

  • UTMs from another system. If your ads already carry UTMs from a different platform, AnyTrack does its best to align the session with a campaign, ad set, and ad from the Ads API. AnyTrack supports the UTM and custom parameters passed by many tracking and analytics platforms for exactly this reason.
  • No UTMs at all. AnyTrack still tracks the session and its conversions and can tell the traffic came from Facebook using the referrer or the Facebook click ID — but the visit is not attached to a campaign, ad set, or ad.

Add metrics from four groups: Conversion Rates, Tracking Events, Costs, and Performance. View all available metrics in Advanced Options.

Customize columns by selecting metrics to add to the Campaign Report.

Select a campaign, click the pencil icon, and choose View Conversions to see all conversion events for that campaign, ad set, or ad. Filter further by event type or integration.

View all conversion events for a specific campaign, ad set, or ad.

Click on any campaign to drill down into its ad sets and individual ads, with a full metric breakdown at each level.

Select a campaign and click Pause or Resume to control it directly from the report.

Choose from pre-built column templates for eCommerce, lead generation, or affiliate marketing, or fully customize the columns for your specific needs.

Export your campaign data directly from the Campaign Report view. Select the campaigns or ad sets you want and export them to a single file for sharing or deeper analysis in a spreadsheet.

Alongside the platform IDs, AnyTrack reads the standard UTM parameters on the first landing-page URL of each visit. Each one populates a specific part of the report:

UTM parameterWhere it appears in the report
utm_sourceTraffic source (for example, instagram, google, youtube)
utm_mediumChannel type (for example, social, cpc, email)
utm_campaignCampaign name, under the Campaigns tab
utm_contentAd set / ad group, under the Ad Sets tab
utm_termKeyword, under the Keywords tab

For connected ad platforms, the campaign, ad set, and ad structure resolves automatically from the platform IDs in the UTM template. For organic or manually tagged links — like an Instagram bio link — set the UTMs yourself to control how each visit is labeled. For example, utm_campaign=instagram&utm_term=bio shows instagram under Campaigns and bio under Keywords. The same UTM values are reusable across AnyTrack, GA4, and your ad platforms to build custom audiences.

Campaign metrics (Amount Spent, Attributed Results, Attributed Revenue) are available for Meta Ads, Google Ads, and TikTok Ads only. For Microsoft Ads, Taboola, and Outbrain, check these metrics in their respective dashboards. This does not affect the conversion data AnyTrack sends to them server-side.


Frequently Asked Questions

FAQ was last reviewed on 2026-07-29

Does the Campaign Report only show paid ad traffic?
No. The Campaign Report shows 100% of your traffic and every event tied to it, including organic search, organic shopping, AI assistants, email, social, referral, and direct. AnyTrack assigns each session to a channel on a best-effort basis using the referrer and URL parameters. Campaign, ad set, and ad metrics are added on top for connected platforms (Meta Ads, Google Ads, TikTok Ads).
Why don't Link Clicks and Sessions line up in the Campaign Report?
Two separate things are happening. First, Link Clicks and Sessions are different numbers and are not meant to be equal: Link Clicks are the clicks your ad platform reports, while Sessions are the visits AnyTrack tracks on your site, and some clicks never arrive (ad blockers, slow loads, non-website destinations). Second, for a session to line up on the same campaign row as its Link Clicks, install the ad platform UTM template. The template AnyTrack provides carries all three reporting levels — campaign, ad set, and ad — with both the name and the identifier for each, so AnyTrack can match the session to the campaign it fetched from the Ads API and your data aligns at every level, with attribution down to the individual ad. Without the template, the session cannot be matched and shows under (not set).
Why do my Attributed Results differ from my AnyTrack purchases?
Two reasons. First, model: AnyTrack credits a campaign only on an identifiable ad click, while Facebook can also credit a view, so a post-view sale counts for Facebook but not against a campaign in AnyTrack. Second, timing: AnyTrack is real-time, while Facebook can take up to about 72 hours to process and attribute a conversion. Small, temporary differences are normal.
Why does Attributed Revenue differ from my Meta or Google Ads Manager?
They reconcile once you compare the same basis. Attributed Revenue and Attributed Results are the ad platform's own figures, fetched directly from Meta, Google, and TikTok — AnyTrack does not recalculate them. A difference from your Ads Manager is almost always a comparison artifact: (1) sync timing — AnyTrack refreshes these figures periodically and the platforms keep re-attributing for up to about 72 hours, so a snapshot can briefly lag your live Ads Manager; (2) timezone or date range — match your Ads Manager to your AnyTrack property timezone and the same date range before comparing; (3) Google Ads — AnyTrack aligns Google's figures to conversion time, while Google's default columns credit each conversion to the time of the click. Compare against Google's by-conversion-time columns: open Modify columns and add Conv. value (by conv. time) and Conversions (by conv. time). Those match AnyTrack's basis; the default columns will not line up. This is separate from the AnyTrack Revenue column, which is your real server-side orders matched to a campaign by an ad click.
Why do I see (not set) for campaign names?
This means AnyTrack could not match the visit to a campaign, ad set, and ad from the Ads API — usually because the ad URL is missing the platform UTM template, or carries UTMs from another system. Install the UTM template for every connected platform following the Facebook UTM or Google Ads UTM guides.
I see the conversion in Facebook Events Manager but not in Ads Manager. Why?
Events Manager shows the raw event AnyTrack sent, usually within 10 to 20 minutes. Ads Manager only shows the conversion once Facebook attributes it to an ad, which is governed by Facebook's attribution window, model, and settings and can take much longer. This difference is expected, not a tracking error.
A visit has a Facebook click ID but no campaign. Is that a bug?
No. The Facebook click ID (fbclid) is also added to organic links, such as a post on your Facebook Page or profile. That traffic is real Facebook traffic but belongs to no ad campaign, so it correctly appears under (not set). Only clicks that carry the platform UTM template align to a specific campaign, ad set, and ad.
How do I label organic traffic like an Instagram bio link?
Add standard UTM parameters to the link so AnyTrack labels the visit the way you want. For example, utm_source=instagram sets the traffic source, utm_campaign=instagram shows under Campaigns, and utm_term=bio shows under Keywords. If you send traffic with no UTMs, AnyTrack falls back to the referrer for the source, so the visit still appears as Instagram, but the campaign, ad set, and keyword show as (not set). Standard UTMs are reusable across AnyTrack, GA4, and ad platforms for building custom audiences.
Why is ROAS empty or not calculating?
ROAS combines two real numbers: actual ad spend fetched from your ad platform and actual revenue from a connected conversion source. If either is missing, ROAS cannot calculate. Ad spend is only available from Meta Ads, Google Ads, and TikTok Ads, and connecting the platform authorizes AnyTrack to fetch it automatically. Also confirm the UTM template is installed, or revenue lands under (not set) instead of the campaign.
Can I rely on the Campaign Report for day-to-day decisions?
Yes. AnyTrack conversion data appears in near real time, so use it for real-time campaign decisions and use the ad platform reports for final, fully attributed numbers once their processing and attribution windows have passed. The two views answer different questions: what is happening now versus what the platform will ultimately credit.