The moment it happens
Get told when emails bounce or are marked as spam
Bounces, dropped emails and spam complaints are posted with the address and reason, grouped so one bad batch doesn't flood the channel.
- Runs
- The moment it happens
- Apps
- SendGrid
- AI
- Not needed
- Access
- Mail Settings / Event Webhook setup (full access to configure)
Send this to your assistant
Create a ClickRuntime automation: when SendGrid reports a bounce, drop or spam complaint, post it to #email-health in Slack with the address and reason.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A marketing manager sends a campaign to 20,000 contacts through SendGrid. Within an hour, 300 addresses bounce and a handful of recipients mark the message as spam. Nobody notices, because SendGrid's activity feed is a place you visit, not one that taps you on the shoulder. The following week the same campaign goes out again, the complaints continue, and mailbox providers start sending your mail to spam folders. By the time open rates fall, your sender reputation is already damaged.
SendGrid's Event Webhook delivers an array of events as they happen. The automation reads that array, keeps only bounce, dropped and spam report events, groups them, and posts a single Slack alert. It runs the moment the batch arrives, so you hear about a bad send while the campaign is still going. Email marketers and developers who send transactional mail use it to protect deliverability.
What you get out of it
Stop a bad send in progress
Seeing a spike of bounces during a campaign gives you the chance to pause it. Halting after 2,000 sends is much cheaper than discovering the problem after all 20,000 have gone out.
Spam complaints are treated seriously
Each spam report is a recipient telling mailbox providers you are unwanted. Learning about them immediately lets you remove those contacts and review how they got on your list. Even five complaints on a 10,000-recipient send deserve attention, because providers weigh complaint rates heavily.
List quality problems surface early
A cluster of bounces from one import or signup form points to bad data at its source. Fixing the form or the list is more effective than cleaning addresses after every campaign.
Grouped alerts avoid noise
Events are bundled into one message with counts rather than one post per bounce. A channel with a single clear alert is read, while one with five hundred separate pings gets muted.
Evidence for deliverability reviews
A history of alerts shows when and which campaigns caused trouble. If a provider or SendGrid support asks about a reputation dip, you can point to specific dates. If SendGrid support asks which send caused the dip, you can answer with a date and a count.
How it works
What happens, step by step
Whenever SendGrid reports delivery events, it sends them to ClickRuntime straight away.
The automation keeps only bounces, dropped emails and spam complaints and ignores everything else.
It groups the problems by type and reason, so one bad batch becomes a single line instead of dozens of messages.
A summary goes to the #email-alerts Slack channel with each reason, the count and the first few addresses affected.
Before it runs live
- Connect SendGrid
- Paste your automation's link into the other app's webhook settings
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other SendGrid steps into one automation
Under the hood
The code that runs this automation
from collections import defaultdict
from clickruntime import on_event, notify
TYPES = {"bounce", "dropped", "spamreport"}
@on_event
def handle(event):
groups = defaultdict(list)
for e in event.json: # SendGrid posts an array of events
if e["event"] in TYPES:
groups[(e["event"], e.get("reason") or e.get("type") or "")].append(e["email"])
if not groups:
return {"alerts": 0}
lines = []
for (kind, reason), emails in groups.items():
shown = ", ".join(emails[:5]) + (f" and {len(emails) - 5} more" if len(emails) > 5 else "")
lines.append(f"{kind} ({len(emails)}): {reason[:120]}\n {shown}")
notify.slack("SendGrid delivery problems\n" + "\n".join(lines), channel="#email-alerts")
return {"alerts": sum(len(v) for v in groups.values())}FAQ
Common questions
What is the difference between a bounce and a dropped email?
How do I connect SendGrid's Event Webhook to this?
Can it alert only when counts pass a number?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Add new sign-ups to a SendGrid list
Everyone who fills in your sign-up form ends up in your SendGrid contacts and newsletter list.
See how it worksReply to inbound emails with AI through SendGrid
Emails sent to your domain get a polite, relevant reply from your own address.
See how it worksGet yesterday's SendGrid delivery numbers each morning
You see delivered, bounced and spam counts every day, with a warning when the bounce rate climbs.
See how it worksKeep exploring
Set up “Get told when emails bounce or are marked as spam” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.