Anomalies

Know before it costs you.

Additor checks every campaign hourly against its own baseline, and tells you, with the numbers and a fix, only when consecutive checks agree.

C CalmoraMonoline Group
Overview Platforms Campaigns Media library Team Ad Intelligence Anomalies3 Settings
Organization
Dashboard Workspaces Creative performance Members Audit log Integrations
Elif Kaya OWNERelif@monoline.co
Calmora/Anomalies
Search or ask Ad Intelligence⌘K
Anomalies
Every campaign, checked hourly against its own baseline.
Sync · 14 min ago· 1 account behind
CRITICAL
1
Score 70 and up
WARNING
2
Score 40–69
INSIGHT
3
Score below 40
Judgement on hold for Calmora DE · MetaIts latest metrics are 9 hours old. Numbers shown are the last ones Additor trusted. 1 finding on hold
Findings6 History14
Severity Anomaly Status Campaign Last 7 days
CRITICAL Cost per purchase surgeTT_CLM_UK_EN_SALES_06102026 +142% 2 hours ago
WARNING Spend spikeFB_CLM_US_EN_ROAS_ADVANTAGE+ +69.4% 10 hours ago
WARNING Delivery dropFB_CLM_DE_DE_TRAFFIC_22092026 −58% On hold
INSIGHT CTR risingTT_CLM_US_EN_INSTALLS_14102026 +31% 1 day ago
Showing 4 of 6 · 2 more insightsView all

Detection

Signal, not noise.

One noisy hour shouldn’t reach anyone. Additor compares each campaign with its own history, waits for the next hourly check to agree, then scores what’s left by what it could cost.

  1. 01
    SUN SUN SUN SUN
    Expected$813

    Its own baseline

    Each campaign is measured against its own recent pattern for that day of the week, over a 28-day window.

  2. 02
    13:3518:3500:35

    Checked every hour

    Fresh metrics from every connected ad account are compared with that baseline each hour, using a robust z-score.

  3. 03
    23:35Outside the normal range
    00:35Still outside
    Finding opened

    Confirmed, not guessed

    A finding opens only when consecutive hourly checks agree. A single noisy hour never reaches your team.

  4. 04
    Score62WARNING

    Scored by what’s at stake

    How far the metric moved, how much history backs the comparison and how much spend is at stake.

One score, three severities

Some detectors have a floor or a cap on their score.

Spend spike · 62
INSIGHT0–39 WARNING40–69 CRITICAL70–100
  • How far it movedThe gap between the observed number and the expected one.
  • How much history backs itThe depth of the baseline behind the comparison.
  • How much spend is at stakeThe budget the move actually touches.

Anatomy of a finding

Every alert explains itself.

Open a finding and the whole case is on one screen, what moved, against what, what probably caused it, what it has cost so far and what to do next.

WARNINGActiveScore 62/100
Spend spike
FB_CLM_US_EN_ROAS_ADVANTAGE+· Calmora · Meta
Confirmed in 2 consecutive hourly checks
1THE NUMBERS
OBSERVED · 18 OCT
$1,378
EXPECTED
$813
+69.4%
2The platform is still re-reporting this day, so the numbers can still move.
3THE DAYS BEHIND THIS
SpendExpectedNormal rangeDay judged, still being reported
20 Sep27 Sep4 Oct11 Oct18 Oct
4WHY
Spend ran 69.4% above what this campaign usually spends on a Sunday.
Possible contributing factors
Daily budget raised17 Oct · $850 → $1,400
New ad set added17 Oct · US_EN_BROAD_25-44
5WHAT TO DO
Confirm the 17 Oct budget change was intended. If it wasn’t, set the daily budget back to $850 before today closes.
Estimated extra spend
$564.71
Above the expected $813 for 18 Oct.
6HOW IT WAS MEASURED
Baseline window
20 Sep – 17 Oct · 28 days
Robust z-score
3.91
First seen
18 Oct, 23:35
Last seen
19 Oct, 10:35
Ad account
Calmora US · Meta
Platform ID
120218834470510
Dismiss Open campaign
  1. 1

    Observed against expected

    The real number next to what this campaign’s own history predicts, and the gap between them.

  2. 2

    Honest about fresh data

    If the platform is still re-reporting the day, the finding says so before you act on it.

  3. 3

    The days behind this

    The normal range, the expected line and the day being judged, so you see the move instead of reading about it.

  4. 4

    Why it probably happened

    A plain-language explanation, with the possible contributing factors beside it.

  5. 5

    What to do, and what it cost

    A recommended next step and the estimated extra spend so far.

  6. 6

    How it was measured

    Baseline window, robust z-score, first and last seen, ad account and platform ID. Nothing hidden.

On hold

When the data is stale, it says so.

Ad platforms sometimes fall behind. When an account’s latest metrics are too old to trust, Additor puts judgement on hold instead of guessing, and shows you the last numbers it trusted.

  • Judgement waits for good data

    No campaign is judged on metrics that may be wrong.

  • Last trusted, clearly labeled

    The numbers you see on hold are the last ones Additor trusted, and they say so.

  • Sync status for every ad account

    See which accounts are current and which are behind, at a glance.

Metrics syncCalmora · 3 ad accounts Checked hourly
METACalmora USSynced 14 min agoCurrent
METACalmora DELatest metrics are 9 hours oldOn hold
TIKTOKCalmora GlobalSynced 22 min agoCurrent
WARNINGOn hold
Delivery drop
FB_CLM_DE_DE_TRAFFIC_22092026 · Calmora DE
Last trusted · 01:35
18 Oct, 06:00No fresh data · 9 h
Impressions, last trusted
41,280 vs 98,400
Change, last trusted
−58%
Judgement is on hold: the latest metrics are too old to trust. These are the last numbers Additor trusted, from 19 Oct, 01:35.

Alert routing

The right alert, in the right channel.

Connect Slack once for the whole organization. Each workspace then decides which alerts leave it, and which channel they land in.

  • Routes per workspace

    Critical and Warning to the team channel, Insights somewhere quieter, each workspace sets its own.

  • The fix travels with it

    Each message carries the severity, the campaign, the move and the suggested next step.

  • A delivery log you can check

    Every alert is logged as sent, failed, held or queued.

Alert routingMonoline Group Slack connected for the organization
CCalmoraCRITICALWARNINGcalmora-alerts
CCalmoraINSIGHTcalmora-weekly
VVoyyALL SEVERITIESvoyy-growth
Add a route
Delivery log · today All 5Sent 2Failed 1Held 1Queued 1
10:35CTR rising#calmora-weeklyQueued
08:37Cost per purchase surge#calmora-alertsSent
07:12Install drop · Voyy#voyy-growthFailed
01:35Delivery drop#calmora-alertsHeld
00:36Spend spike#calmora-alertsSent
calmora-alerts
AdditorAPP00:36
Warning · Spend spike on FB_CLM_US_EN_ROAS_ADVANTAGE+, $1,378 vs. an expected $813 (+69.4%). Suggested: confirm the 17 Oct budget change was intended.
View in Additor

Follow-through

From alert to action in one click.

Every finding links straight to the place you fix it, and stays on record after you have.

  • WARNINGSpend spikeCampaigns
    FB_CLM_US_EN_ROAS_ADVANTAGE+
    Daily budget
    $1,400
    Spent today
    $412
    ROAS
    2.31×

    Open campaign

    Jump from the finding straight to the campaign it’s about, in Campaign management.

  • Why did spend jump on FB_CLM_US_EN_ROAS?
    Used 3 toolsThe 17 Oct budget raise explains most of it. Want me to draft a change for your approval?

    Ask Ad Intelligence

    It reads your anomalies too. Ask what changed. Anything that affects spend waits for your approval.

  • History14 findings
    Spend spikeDismissed by Marco Ricci · 11:02
    CPC surgeDismissed by Kenji Tanaka · 16 Oct

    Dismiss, keep the record

    Dismiss what you’ve handled. History keeps every finding, and the audit log keeps who did what.

One workspace

Campaign managementOpen the campaign behind a finding and fix it where it runs.Explore Creative reportingSee which creatives earn, and which are draining spend.Explore IntegrationsConnect Slack once and route every workspace’s alerts.Explore

Stop finding out from the invoice.

Connect an ad account and Additor starts watching it every hour.

Get started

Works with the Meta and TikTok accounts you already own. Nothing to migrate.