Resources
How to set up alerts across client accounts, and keep them worth reading.
An alert that fires every day becomes a filter rule. Four things are worth interrupting somebody for.
- 6 minute read
- 5 sections
Part 1
Why most alerting gets muted
It is set to fire on movement, and marketing numbers move. Spend, cost per result and conversions all vary day to day for ordinary reasons, so an alert on change fires constantly, and within a fortnight somebody routes it to a folder they do not open.
Across a roster the arithmetic gets worse. A rule that fires once a fortnight for one client fires most days once it runs for thirty, so the bar has to be set with the whole roster in mind.
The bar that keeps a channel alive is narrow. An alert should mean that a named person has to do something today. Everything else is a chart, and a chart is something you look at when you choose to.
Part 2
The four worth having
In this order, because the first one is the most valuable and the least often configured.
Data that did not arrive
A sync that failed makes every number downstream wrong while the dashboard still renders normally. Nothing looks broken, so nobody checks, and the report goes out with a partial month in it.
A value outside a band you set
Spend above a client's cap, cost per result above what the account can carry. You are alerting on a limit somebody already agreed with the client, which is why this one rarely gets muted.
A change against the same period
This week against the same week, not against yesterday. Day on day comparison alerts on the weekend, on paydays and on every campaign that runs to a schedule.
A number that did not move at all
A metric sitting at exactly the same value for several days is usually a stuck feed rather than stable performance. It is the earliest signal you can get, and almost nobody configures it.
Part 3
Setting a threshold you will keep
Start from the action, not from the number. Ask what you would do in the next hour if this fired. If the honest answer is that you would look at it later, it is not an alert and putting it in the channel costs you the alerts that are.
Then set the level from the metric's own history rather than from a round number. Look at how the figure has moved over the last few months and put the line outside the range it lives in normally. A threshold picked because it is a tidy figure fires on ordinary variation, and every time it does it teaches somebody to ignore the next one.
Part 4
Who gets it, and what it has to say
One owner per alert, named. A channel that everybody is in is a channel nobody is responsible for, and the failure mode is not that it is missed but that each person assumes another has picked it up. For an agency, the owner is usually the person who runs that client's account.
The message needs enough to act on without opening anything: which client, which metric, the value, what it is being compared with, and a link to the place the decision gets made. An alert that only says a threshold was crossed starts an investigation rather than ending one.
In practice
Where SightShark fits
Checks run against the modelled tables, per client, as four rule types: a threshold, a percentage change, a comparison against the same period, and data simply not arriving.
Because they read the same tables the dashboards read, an alert and a report cannot tell you different things about the same day. The freshness case is the one worth setting up first, since it is the failure that a dashboard is least able to show you.
See how the platform worksQuestions
Questions people ask
What should marketing data alerts be set on?
Four things: data that did not arrive, a value outside a band you have set, a change measured against the same period rather than against yesterday, and a number that has not moved at all. The first is the most valuable because a failed sync leaves the dashboard rendering normally while every figure in it is wrong.
How do you stop alerts from being ignored?
Only alert on things that require an action today, set thresholds from the metric's own history rather than from round numbers, and give every alert one named owner. Alerting on movement is what kills a channel, because marketing figures move daily and an alert that fires every day gets filtered within a fortnight.
Why does a dashboard look fine when data is missing?
Because a dashboard renders whatever rows exist. A sync that failed leaves yesterday's rows in place and simply adds none, so the charts draw, the totals calculate and nothing appears broken. The only reliable way to catch it is a check on whether the data arrived, run separately from anything that reads it.
Also worth reading
- 6 min read
Why reporting breaks as the roster grows.
The setup that was fine for five clients fails at thirty, and it fails in three specific ways.
Read it - 6 min read
How to automate client reporting.
Not the sales version. The five pieces of work it actually takes, and what each one costs.
Read it - 7 min read
What it takes to onboard a new client's data.
The job that happens once per client, and the part no tool can do for you.
Read it
Pricing
Priced by the clients you report on.
Starter
$499 /month
Up to 20 clients
Growth
$999 /month
Up to 50 clients
Enterprise
Custom
No cap on clients
Get started
Want this running on your own data?
Book a call with someone who can answer the technical questions.