Fatigue gets noticed on the invoice
CPA drifts up, then somebody opens the report and finds an ad in its fortieth day of delivery. By then the budget has gone to an audience that has seen it all.
Every ad gets a score from 0 to 100: frequency, CTR trend, conversion trend and days running collapse into one number and one of four statuses. What happens to a tired creative is still your call — Valkiria pauses nothing on its own.
CPA drifts up, then somebody opens the report and finds an ad in its fortieth day of delivery. By then the budget has gone to an audience that has seen it all.
Account reports average frequency across the campaign. The single ad that one person has now seen eight times simply disappears inside that average.
With hundreds of ads the question is not whether fatigue exists, but which creative to swap first. Scrolling through cards by hand never produces that list.
Ad accounts connect over OAuth, and Valkiria collects daily performance per ad: impressions, clicks, conversions, frequency and reach.
Frequency, CTR decline, conversion decline and days running add up to one score. Past 25 an ad is flagged warning, past 50 fatigued, past 75 critical.
Flagged ads land in the alert feed with a recommendation. Pausing, swapping the creative or moving budget happens only after you confirm it.
Not a campaign average but a 0–100 number on one creative, with the list sorted so the worst offenders sit at the top.
Healthy, warning, fatigued, critical — one screen shows how many creatives sit in each group and whether anything needs you today.
Frequency, CTR trend, conversion trend and days running are counted separately, so you can see what actually broke on this ad.
New warnings carry a counter, read ones drop down the list, and no ad falls through the gap between two weekly reports.
Each creative comes with a short instruction: rotate now, prepare a replacement for next week, or simply keep watching.
All connected ad accounts sit on one screen, and the filter at the top narrows the list to a single platform in one click.
Four factors add up: ad frequency, the CTR drop between the start and the end of the period, the conversion-rate drop, and the number of days the ad has been running. The sum is capped at 100, where 25 means warning, 50 means fatigued and 75 means critical.
No. The module shows the score, the status and a recommendation, but pausing or replacing a creative happens only after your explicit confirmation. That is a platform-wide rule, not a setting somebody can switch off by accident.
From the ad accounts you connected. Meta reports frequency and reach; where a platform does not expose them, the score is built from the CTR trend, the conversion trend and days running, and the filter at the top narrows the list to one platform.
An ad account shows metrics but never answers which creative to swap first. Here ads are ranked by score, split into four statuses and paired with a recommendation, so you get a replacement queue instead of another table.
The score is built on daily performance, so an ad with a couple of days of history has no CTR or conversion trend to measure yet. Once the connected account has accumulated data, the creatives appear in the list with their status.
Connecting an account takes a couple of minutes and the first pass is read-only. No ad is ever paused without your approval.