Creative analytics

Creative analytics for Meta and TikTok ads

See which creatives, hooks, creators and formats sell. Ad-level spend and video stats from Meta and TikTok are joined with the orders ROASaurus tracked on your store.

Creative cards

Thumbnail, spend, revenue, ROAS, CTR, hook rate and hold rate for every creative.

Hook and hold rate

How many viewers the first seconds keep, and how many watch to the end.

Fatigue flags

Creatives whose click-through rate fell by a quarter or more week over week.

Compare three

A trend chart puts up to three creatives side by side over time.

Hooks, creators, formats

Group results by what you put in the ad name.

Pulse

19 headline metrics against the previous period, by channel.

What you can group by

Results can be grouped by creative, ad, hook, creator, format or campaign. Each row shows spend, impressions, clicks, CTR, hook rate, hold rate, tracked orders, revenue, ROAS, CPA and the week-over-week change in CTR. The trend chart compares up to three of them on spend, ROAS, CTR, hook rate or impressions.

Metrics and formulas

MetricMetaTikTok
Hook rate3-second video views ÷ video impressions2-second views ÷ video impressions
Hold rateThruPlays ÷ video impressions6-second views ÷ video impressions
CTRLink clicks ÷ impressionsClicks ÷ impressions
ROASTracked revenue ÷ spend
CPASpend ÷ tracked orders
FatigueCTR in the last 7 days is 25% or more below the 7 days before, with at least 1,000 impressions in each week

Hook rate and hold rate only count video impressions, so static images show no value for them.

Where revenue comes from

Revenue is not copied from Ads Manager. It comes from orders ROASaurus tracked on your store, credited by last click within your lookback window to the ad named in utm_content, or to the ad id. For Meta, set the URL parameters to utm_source=facebook&utm_medium=paid&utm_campaign={{campaign.name}}&utm_id={{campaign.id}}&utm_term={{adset.name}}&utm_content={{ad.name}}. The Meta guide walks through it.

A naming convention for hooks, creators and formats

To compare hooks, creators and formats, put them in the ad name:

hook: Problem | creator: Anna | format: UGC

The form hook=Problem_creator=Anna_format=UGC works too. ROASaurus reads the values from the ad name on Meta and TikTok, and adds up every ad with the same hook, creator or format. Ads without a value are grouped as "(not in ad name)". More in the creative analytics guide.

Pulse

Pulse shows 19 headline metrics compared with the previous period: ROAS, ad efficiency ratio, spend, revenue, AOV, CPA, purchases, clicks, impressions, page views, CTR, CPM, frequency, conversion rate, add to cart, cost per add to cart, checkouts, and the view-through purchases and value the ad platforms report. Filter by channel and drill into campaign, ad set and ad tables.

Who it is for and setup

Brands and creative teams that run video on Meta and TikTok and test many hooks and creators. Connect the Meta ad account with Facebook login or a token with ads_read, and add the TikTok advertiser id and a token. See Meta and TikTok. Revenue needs tracking installed, so orders can be tied to ads.

Limits

  • Only Meta and TikTok ad stats are synced. Google, Snapchat, Pinterest, Reddit, X and Microsoft creatives are not covered.
  • Creative revenue is last click. For other models, use attribution at campaign level.
  • Fatigue needs at least 1,000 impressions in both weeks, so small ads are never flagged.
  • Spend in another currency is converted to the store currency at ECB rates.
More features

Built on the same first-party data

Server-side trackingFirst-party click capture, order matching and Conversions APIs for 15 ad platforms, deduplicated with the browser pixel.Profit analyticsNet profit after every cost, POAS and break-even ROAS, a full P&L and profit per product, order and channel.AttributionTwelve models, from last click to data-driven Markov and Shapley and Total Impact, on your own click data, with order journeys and campaign profit.Lifetime valueCohorts, CAC payback, predicted LTV up to 24 months, repurchase timing and RFM segments synced to Klaviyo.Ask AI & MCPAn assistant on Claude that answers from your own reports, and an MCP server with read-only tools for Claude Code and other clients.Marketing mix & budgetsA marketing mix model with a budget optimiser, geo-lift and on/off tests, spend curves and daily scale, hold or cut advice per campaign.AudiencesAudiences from orders, predicted LTV, RFM, visitors and leads, kept in sync with ten ad platforms and Klaviyo.Actions & AutopilotAn ads manager for nine platforms with an approval inbox, rules with guardrails, an AI Autopilot and one-click rollback.AI briefingsAnomaly alerts, AI digests grounded in your own numbers, a weekly action plan with a decision log and scheduled questions in Slack.Competitors & AI visibilityCompetitors' Meta ads and emails, how often AI assistants name your store, AI content drafts and AI focus groups.InfluencersAn influencer CRM with deals, code and link attribution, and ROI and profit per deal and influencer.AgenciesClient workspaces, a multi-client overview, white label on your own domain, PDF reports and a revenue share.
FAQ

Questions, answered

What is hook rate?

The share of video impressions that watched at least 3 seconds on Meta, or 2 seconds on TikTok. It shows how well the opening of a video stops the scroll.

How is hold rate calculated?

ThruPlays divided by video impressions on Meta. On TikTok, 6-second views divided by video impressions.

How does ROASaurus detect creative fatigue?

It flags a creative when its click-through rate in the last 7 days is 25% or more below the 7 days before, as long as both weeks have at least 1,000 impressions.

Why is creative revenue different from Ads Manager?

ROASaurus counts orders it tracked on your store, credited by last click to the ad in utm_content. Ads Manager also counts view-through conversions and uses its own attribution windows.

Every sale, traced to the ad that earned it

Server-side tracking, profit and lifetime value in one app. 14-day free trial, no credit card.

Start your free trial →