Analytics & Reporting

Campaign Alerts

Detects ad-spend pacing problems — underspend, overspend, stopped, paused-with-budget, stale-sync and zero-conversion — then adds an AI pacing review for Meta and Google, with an on-demand per-campaign analysis that proposes a daily budget you compare against the rule-based number before deciding.

01

The Gap This Closes

The feature was built around a real failure mode: a SEM campaign running well below its monthly budget for weeks without anyone noticing until the client asked why results were down. Scheduled syncs were working, but nobody was looking at pacing against budget — just at results. The ad-spend health analyser runs daily across every active campaign and compares projected month-end spend against allocated budget, catching underspend and overspend early enough to act on them.

02

Six Pacing and Delivery Signals

The analyser detects six distinct conditions across Meta and Google campaigns. Underspend: campaign is tracking well below its budget pace and will likely leave significant spend on the table by month-end. Overspend: projected to exceed the monthly budget before the month ends. Stopped: a campaign that had consistent recent spend has gone to zero — could be an accidental pause, a payment issue, or a platform policy flag. Paused-with-budget: a campaign is paused or removed at the platform level but budget is still allocated in the system, meaning the client is potentially expecting delivery that is not happening. Stale-sync: the spend data has not refreshed recently enough to trust pacing calculations — this alert prompts a manual sync before acting on the numbers. Zero-conversion: a campaign is spending real budget but recording no conversions, which could mean a tracking breakage, a landing-page issue, or a targeting problem.

03

AI Pacing Review

The Ad Spend page turns those same deterministic pacing checks into a review queue for Meta and Google. Media buyers see critical and warning counts, projected over- or under-spend, stale-sync flags, and suggested daily budget targets. AI summarizes which campaigns to inspect first so the team knows where to start each day.

04

Analyze With AI, Side By Side

Open any flagged campaign and click "Analyze with AI" for an on-demand, real-time read. The AI proposes a specific daily budget with a short rationale, a confidence level, and risk flags — shown directly alongside the rule-based pacing number so you can compare the two and pick whichever you trust for that campaign. Optionally tick "Refresh from platform first" to re-pull the campaign's latest spend from Meta or Google before the analysis runs, so the recommendation is based on up-to-the-minute numbers rather than the last scheduled sync. If the AI is unavailable the panel quietly falls back to the deterministic recommendation — it never blocks the workflow. For ABO campaigns that budget at the ad-set level, an applied recommendation is divided proportionally across the active ad sets — preserving the buyer's existing weighting while only the campaign total moves. For Google accounts, the same screen also surfaces Google's own optimization recommendations and optimization score — applying a budget recommendation routes it through the identical guard-railed, audited write, while keyword, target-CPA/ROAS, Performance Max ad-strength and tracking-health suggestions link straight into Google Ads. An optional per-severity automation policy can go a step further — on each pacing signal it can notify your team and/or auto-propose a budget adjustment straight into the review queue for a human to approve and apply; nothing is executed on the platform automatically.

05

Human In The Loop, Always

The analysis is read-only: nothing changes on the ad platform from this screen. When you choose a budget and approve the adjustment, it is recorded as an audited, planned-then-approved action — a clear paper trail of what was recommended, what was chosen, and by whom. Applying a change to a live platform budget is a separate, permission-gated step that an admin performs deliberately, so an AI suggestion can never move client money on its own.

06

Daily Slack Budget Review

Each morning at 9am tenant-local time (configurable in Settings → Budget Alerts), a Budget Review message is posted to your configured Slack channel. The digest covers every client and campaign with a detected pacing issue — grouped by severity — so your media buying team starts the day with a clear list of what needs attention. The webhook URL is set once in Settings and the timing can be adjusted to match your team's morning standup. Critical issues also trigger an immediate real-time Slack alert outside the daily window — a stopped campaign at 2pm does not wait until the next morning digest.

07

Accountability Tasks

For each critical pacing issue, the system can optionally create an accountability task assigned to the responsible media buyer, due in 24 hours. This bridges the gap between detection and resolution — the alert is not just a notification that gets buried, it becomes a tracked work item with an owner and a deadline. Tasks are created through the existing work management system so they appear in the assignee's board and notifications alongside their other work.

08

Connecting Slack in Two Minutes

Setup is a one-time, no-code step. In Slack, create an Incoming Webhook for the channel your media buyers watch, copy the generated https://hooks.slack.com/services/… URL, and paste it into Settings → Budget Alerts — an in-app guide walks you through it. Pick the hour your daily review should land, then send a test message to confirm it posts. From there the daily digest and real-time critical alerts flow automatically with no per-campaign configuration, and you can toggle the digest, real-time alerts, and accountability tasks independently whenever you like.

Ready to see it in action?

Get Started