Skip to content
← All articles

Data & Reporting

How to Set Up Automated Anomaly Alerts in GA4 and Looker Studio

July 14, 2026 · 7 min read

Your conversion rate dropped forty percent on Tuesday. You found out the following Monday, when the weekly report landed.

Six days of spend went out the door against a broken form, a failed tag, or a landing page that stopped rendering on mobile. The report did its job. It just did it too late to matter.

Alerts fix the timing problem. Here is how to set them up in GA4 and Looker Studio, and what to do about the parts neither tool handles well.

Why waiting for your weekly report is too late

Reporting cadence is a compromise. Weekly is frequent enough to feel responsive and infrequent enough to be manageable, so most teams settle there and treat it as adequate.

It is adequate for trends. It is useless for incidents.

The failures that cost the most money are abrupt: a tag breaks after a site deploy, a payment gateway starts rejecting a card type, a campaign exhausts its budget by noon, a competitor doubles their bids. Each of these has a clear before and after, and each continues costing money for exactly as long as it takes someone to notice.

A weekly cycle means the average incident runs three and a half days before discovery. Alerts reduce that to hours.

What anomaly detection is and why it matters

Anomaly detection means comparing what happened against what was expected, and flagging the gap when it exceeds a threshold.

The hard part is defining expected. A naive rule such as "alert if conversions drop twenty percent" fires every Saturday for a B2B business, and it stays silent through a genuine collapse in a month when volume was rising anyway.

Better approaches account for seasonality, day of week patterns, and trend. GA4's built in detection does some of this automatically. Threshold rules you write yourself do not, unless you build the comparison in.

Both have a place. Statistical detection catches things you did not think to watch for. Threshold rules catch the specific failures you already know are possible.

How GA4 built in anomaly detection works and its limitations

GA4 runs anomaly detection automatically on your Insights, using a Bayesian model that learns your historical patterns and flags observations outside the expected range. You will see these surfaced in the Insights card on the Reports home.

It is genuinely useful, and it has three limitations worth knowing.

It is not proactive by default. Automated insights appear in the interface. You have to open GA4 to see them, which is precisely the behavior alerts are meant to replace.

The training period matters. New properties, or properties with volatile traffic, produce noisy detection until enough history accumulates.

You cannot tune sensitivity much. For automated insights, the model decides what counts as anomalous. If it is too sensitive for your traffic pattern, you cannot dial it back.

The fix for the first limitation is custom insights, which do support email delivery.

How to set up custom alerts in GA4

Custom insights are GA4's alerting mechanism, and they are underused.

Open Reports, then the Insights card, then Create. Choose Create custom insight rather than one of the suggested templates.

Set the evaluation frequency: hourly, daily, weekly, or monthly. Daily is right for most marketing metrics. Hourly is worth it for high volume ecommerce where a broken checkout is expensive within hours.

Choose your segment and metric. Then set the condition. GA4 offers "has anomaly", which uses the statistical model, or fixed conditions such as less than or greater than a value you specify.

Use both kinds. An anomaly condition on conversions catches unexpected changes. A fixed condition such as "conversions less than 5 per day" catches total failures that a percentage based rule might miss during a low volume period.

Add email recipients. This is the step that converts an insight into an alert.

Build a small set rather than a large one. Conversions, revenue, sessions, and one or two mid funnel events. Alert fatigue is real, and a team that has learned to ignore these notifications is worse off than a team with none.

How to build threshold based alerts in Looker Studio

Looker Studio has no native alerting, which is its main gap as a reporting layer. There are two practical workarounds.

Conditional formatting as a visual alert. In any table or scorecard, apply conditional formatting so values outside an acceptable range render in a warning colour. This does not notify anyone, but it makes a scheduled report self diagnosing. Someone opening the emailed PDF sees red immediately rather than reading numbers and computing deltas mentally.

Combine this with scheduled delivery and you have a passable daily alert for teams who will reliably open an email.

Google Sheets as an alerting engine. This is the more capable route. Push the metrics you care about into a Sheet on a schedule, using the GA4 connector or a scheduled BigQuery query. Then write a short Apps Script that runs on a time trigger, compares current values against your thresholds or against a trailing average, and sends mail when a rule breaks.

It sounds like more work than it is, and it gives you what neither GA4 nor Looker Studio provides: alerting logic you fully control, comparing across any sources you can get into a Sheet.

How to set up Slack or email notifications when key metrics change

Email is the default and it is fine for daily digests. It is poor for urgent incidents, because it lands in the same place as everything else.

For anything that needs a response within hours, route to Slack.

The straightforward path is an incoming webhook. Create one in your Slack workspace, then have your Apps Script or Cloud Function post to it when a threshold breaks. The message should carry three things: what changed, by how much compared to what baseline, and a link to the relevant dashboard. A notification that says "conversions are down" without a number or a link generates a conversation rather than an action.

Route different severities to different channels. A dedicated alerts channel for informational movement, and direct messages or an urgent channel for total failures such as zero conversions in a period that normally has many.

Set quiet hours for anything non critical. An alert at three in the morning about a nine percent dip trains people to mute the channel, which defeats the entire exercise.

Where to start

Three alerts, not thirty.

One on conversions with an anomaly condition, in GA4, delivered by email. One fixed threshold alert for total failure, such as conversions below a floor value. One on spend, so a runaway campaign surfaces the same day.

Live with those for a month. Note every time an alert fires and whether you acted on it. Alerts that never produce action should be deleted, and gaps you discover the hard way should become new rules.

The goal is not comprehensive monitoring. It is that nothing expensive runs unnoticed for six days again.

FAQ

Does GA4 have built in alerts?

Yes, through custom insights. Open Reports, then the Insights card, then Create, and build a custom insight with an evaluation frequency, a segment, a metric, and a condition. Conditions can use GA4's statistical anomaly model or fixed thresholds you set. Adding email recipients is what turns an insight into a genuine alert rather than something you have to log in to see.

Can Looker Studio send alerts?

Not natively. The two practical workarounds are conditional formatting combined with scheduled email delivery, which makes a report self diagnosing at a glance, or pushing metrics into Google Sheets and using an Apps Script trigger to evaluate thresholds and send notifications. The Sheets approach gives you full control over the alerting logic and can compare across multiple sources.

How do I get GA4 alerts in Slack?

GA4 does not post to Slack directly. Create an incoming webhook in Slack, then have a scheduled script, typically Apps Script or a Cloud Function, evaluate your metrics and post to that webhook when a rule breaks. Include the metric, the size of the change, the baseline it is compared against, and a link to the relevant dashboard.

What metrics should trigger a marketing alert?

Start with conversions, revenue, sessions, and ad spend. Add one or two mid funnel events specific to your funnel, such as add to cart or demo page views. Keep the set small. Every alert that fires without prompting action trains your team to ignore the channel, which makes the genuinely important alerts less effective.

How do I avoid too many false alarms from anomaly alerts?

Compare against a like for like baseline rather than a flat number, because day of week and seasonality cause most false positives. Set a minimum volume floor so low traffic periods do not trigger percentage based rules. Review firing history monthly and delete any alert that has never led to action. Fewer, better tuned alerts outperform comprehensive coverage.

Want help with Automated Reporting?

Scheduled, self-updating reporting that ends the monthly export-and-paste ritual.

More reading

Analytics & Tracking

August 20, 2026 · 7 min read

How to Know If Your GA4 Is Tracking Correctly

Most GA4 properties have at least one tracking problem quietly skewing every report. Here is how to confirm whether yours is one of them.

Read article