Documentation
Performance Alerts watches your Google Ads accounts every day and emails your team when a metric you care about moves beyond the percentage threshold you set. You choose the metric, the direction (increase or decrease), the comparison window, and which campaigns or ad groups to include. When a threshold is crossed, Adnine creates a dashboard record and sends an alert so you can investigate while there is still time to act.
- Best for
- Early detection of conversion drops, spend spikes, CPA increases, and ROAS declines
- Scan rhythm
- Daily (today excluded by default to avoid partial-day analysis)
- Comparison options
- Previous period or same period last year
- Alert scope
- Account, campaign, or ad group level
- Delivery
- Email to configured recipients plus a persistent dashboard record
#What Performance Alerts does
Performance Alerts is a daily monitoring layer that compares your current Google Ads performance with a baseline period and fires when a metric moves enough to matter. It is not a replacement for regular account reviews, but it closes the gap between those reviews by surfacing significant changes as soon as the data is available.
Each alert rule defines a single metric or set of metrics, the direction to watch (increase, decrease, or both), a percentage deviation threshold, a comparison window, and an entity scope. When all conditions are met during the daily scan, Adnine sends an email and stores the alert in your dashboard history.
Common alert jobs
Catch performance drops
Alert when conversions, conversion value, ROAS, impressions, or search impression share falls below your threshold.
Catch spend spikes
Alert when cost, CPC, or CPA increases sharply. Useful for spotting budget overruns or bidding anomalies early.
Focus on what you own
Scope alerts to the campaigns or ad groups your team manages so every notification points to an area you can act on.
#Supported metrics and alert conditions
You can monitor one metric or several metrics within the same alert rule. For each metric, set the direction and the percentage deviation required to trigger the alert.
Metric families you can monitor
Pick the metrics your team would actually act on rather than alerting on everything.
| Metric family | Examples | Typical alert direction |
|---|---|---|
| Spend and delivery | Cost, impressions, clicks, search impression share | Increase for spend spikes, decrease for delivery or visibility drops |
| Conversion volume | Conversions and other conversion counts | Decrease: when lead, sale, or action volume falls |
| Efficiency | CTR, CPC, CPA | Decrease for CTR; increase for CPC or CPA |
| Value and return | ROAS, conversion value | Decrease: when revenue or return weakens |
| Video and display | Video views, display metrics | Increase or decrease depending on campaign goal |
Alert condition settings
| Setting | What it controls | Example |
|---|---|---|
| Direction | Whether the alert fires on an increase, a decrease, or either. | Alert when conversions decrease. |
| Threshold | The minimum percentage deviation before Adnine fires an alert. | Alert when conversions drop by at least 20%. |
| Comparison window | The baseline period used to measure deviation. | Compare the last 7 days with the previous 7 days. |
| Delay window | Recent days to skip so late conversion data has time to settle. | Analyze data only through 2 days ago. |
| Entity scope | The account, campaign, or ad group level to evaluate. | Monitor only branded campaigns. |
#Comparison windows and daily scan timing
Adnine runs the alert scan once per day. The scan takes the current analysis window, compares it with your selected baseline, and evaluates the percentage deviation for each monitored metric. Today is excluded from analysis by default to avoid alerts triggered by incomplete partial-day data.
Comparison window options
| Option | How it works | Use when |
|---|---|---|
| Previous period | Compares the current window with the immediately preceding window of the same length. | You want to detect short-term changes after budget edits, creative updates, tracking changes, or market shifts. |
| Same period last year | Compares the current window with the matching date range from the previous year. | The account has strong seasonality and year-over-year context is more meaningful than the prior few days. |
For example, if conversions typically arrive up to two days late, set the delay window to two days. Adnine will then analyse performance only through two days ago, giving the conversion pipeline time to fill before the comparison runs.
#How to set up an alert rule
- Choose the metric Start with metrics your team would act on: conversions, cost, CPA, ROAS, conversion value, search impression share, or clicks.
- Set the direction and threshold Choose whether increases or decreases matter for this metric, then set a percentage large enough to filter out normal daily volatility.
- Pick the comparison window Use previous period for operational monitoring or same period last year for seasonal accounts.
- Add a delay window if needed If conversions or revenue data arrive late, skip the most recent one or two days so the comparison uses more complete data.
- Scope the alert to an entity level Select account, campaign, or ad group level. Then add name-based filters (contains, does not contain, equals, not equals, or regex) to target the campaigns and ad groups you own.
- Configure recipients Add the email addresses of the people who should receive and act on alerts for these accounts. Each team can configure its own recipient list.
- Review and refine after the first runs Compare triggered alerts with real account outcomes. Adjust thresholds, scope, or filters if alerts are too frequent or too quiet.
#Scope and campaign filters
Alerts can run at account, campaign, or ad group level. The right level depends on what you want to learn: account-level alerts signal macro changes, while campaign and ad group alerts help pinpoint where a problem started.
Entity levels
| Level | Best for | Watch out for |
|---|---|---|
| Account | Overall health KPIs: total conversions, total cost, blended CPA/ROAS, and search impression share. | Large accounts can hide campaign-specific problems behind a stable account average. |
| Campaign | Budget pacing, delivery shifts, campaign-level CPA or ROAS movement, and seasonal changes. | Low-volume campaigns may need wider date ranges or softer thresholds to avoid noise. |
| Ad group | Narrow diagnosis of a specific theme, keyword cluster, or creative set. | Too many granular alert rules with tight thresholds will generate alerts that are hard to prioritise. |
Filters let you include or exclude specific campaigns and ad groups by name. Supported filter logic: contains, does not contain, equals, not equals, and regex. Use these to build alert coverage around naming conventions, campaign types, markets, brands, or product lines without creating a separate rule for each one.
#Email alerts and dashboard history
When a monitored metric crosses its threshold, Adnine emails the configured recipients and creates a dashboard record. Email is the immediate routing channel; the dashboard is the durable log your team uses for follow-up, recurring issue detection, and client updates.
What each alert includes
| Detail | Why it matters |
|---|---|
| Impacted entity | Shows the account, campaign, or ad group where the change was detected. |
| Metric and direction | Names the KPI that moved and whether it increased or decreased. |
| Current and baseline values | Shows both values and the percentage deviation used to trigger the alert. |
| Analysis time frame | Makes clear which date ranges were compared and whether a delay window was applied. |
| Customer ID and account name | Helps teams with many managed accounts route the alert quickly. |
#Alert logic and data quality
Before any alert is sent, Adnine simulates the alert condition to confirm the rule is correctly configured and is not firing on incomplete partial-day data. Each alert is calculated using a consistent percentage deviation formula. Generated alerts are stored in a logs table so your team can audit past alerts and track recurring issues over time.
Built-in data safeguards
| Safeguard | What it protects against |
|---|---|
| Simulation before sending | Prevents alerts from firing on invalid or misconfigured rule conditions. |
| Today excluded by default | Avoids false alerts from partial-day data that will change before the day closes. |
| Optional delay window | Reduces false positives from late conversions, offline imports, or delayed tracking. |
| Consistent deviation formula | Keeps alert decisions comparable across different metrics and entity levels. |
| Persistent alert log | Creates a historical record for review, trend spotting, and team accountability. |
#Team access and permissions
Performance Alerts respects team and user-level account permissions. Only customer IDs a user has access to are included in the daily scan, and only authorised users can create or modify alert rules for those accounts.
Permission behaviour
| Access rule | Result |
|---|---|
| User has access to a customer ID | That account can be included in alerts the user is allowed to manage. |
| User does not have access | The customer ID is excluded from that user's scans and should not appear in their alerts. |
| Team configures recipients | Alerts can be routed to any email addresses the team designates for that workflow. |
| Rule creation requires authorisation | Only users with the right permission level for an account should create or modify its alert rules. |
#Troubleshooting common issues
Frequently asked questions
An alert fired but the account looks fine. What happened?
I am getting too many alerts. How do I reduce noise?
Why does the comparison look wrong when seasonality is high?
My account uses offline conversions that arrive a few days late. Will that cause false alerts?
Can I alert on a metric for some campaigns but not others?
I set up an alert but have not received any emails. Is it working?
#Best practices
- Start with high-impact metrics: conversions, cost, CPA, ROAS, conversion value, and search impression share.
- Set thresholds large enough to filter out normal daily volatility. A 5% daily swing is rarely actionable.
- Use campaign and ad group filters to route alerts to the team member responsible for that area.
- Add delay windows for any account where conversion data takes more than one day to fully arrive.
- Use previous-period comparisons for operational changes; switch to year-over-year for seasonal accounts.
- Keep the number of alert rules manageable. One well-designed rule per KPI beats a dozen overlapping ones.
- Review dashboard history weekly to spot recurring patterns instead of treating each alert as a one-off event.
- Revisit thresholds after major budget changes, campaign restructures, tracking updates, or seasonal shifts.
