Instagram + Slack: hide toxic comments, alert team
Your Instagram comments can look “fine” until one ugly thread sits there for hours. Then the damage is done. Manually checking every post, every day, is a grind, and it’s easy to miss the one comment that crosses the line.
This Instagram Slack moderation automation hits Social Media Managers hardest. But brand owners and agency teams feel it too, because one overlooked comment can turn into screenshots, DMs, and awkward internal escalations.
This workflow screens new comments, auto-hides the toxic ones, pings your team in Slack (or email), and logs evidence in Google Sheets for review. You’ll see how the whole system works, what you need, and where teams usually trip up.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Instagram + Slack: hide toxic comments, alert team
flowchart LR
subgraph sg0["Flow 1"]
direction LR
n0@{ icon: "mdi:cog", form: "rounded", label: "Schedule Trigger", pos: "b", h: 48 }
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Get Comments"]
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Detect Toxicity"]
n3@{ icon: "mdi:swap-horizontal", form: "rounded", label: "IF Toxic", pos: "b", h: 48 }
n4["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Hide Comment"]
n5["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/slack.svg' width='40' height='40' /></div><br/>Alert Team (Slack)"]
n6@{ icon: "mdi:database", form: "rounded", label: "Store Evidence (Google Sheet)", pos: "b", h: 48 }
n7@{ icon: "mdi:swap-vertical", form: "rounded", label: "End (Non-Toxic Path)", pos: "b", h: 48 }
n8["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Get Instagram Posts"]
n9@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop Over Comments", pos: "b", h: 48 }
n10["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/webhook.dark.svg' width='40' height='40' /></div><br/>Webhook"]
n10 --> n8
n3 --> n4
n3 --> n5
n3 --> n6
n3 --> n7
n1 --> n9
n2 --> n3
n0 --> n8
n9 --> n2
n8 --> n1
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n3 decision
class n6 database
class n1,n2,n4,n8,n10 api
classDef customIcon fill:none,stroke:none
class n1,n2,n4,n5,n8,n10 customIcon
The Problem: Comment Moderation Is Reactive (Until It’s Too Late)
Instagram comment moderation rarely fails because nobody cares. It fails because it’s constant. You post, you get comments, you check when you can, and you hope nothing nasty lands when you’re in meetings, asleep, or simply off-duty. The real cost isn’t just time spent scrolling threads. It’s the mental load of “Did I miss something?” plus the brand risk when a toxic comment sits under a high-performing post that’s still getting fresh traffic.
Small frictions become big problems fast. Here’s where it breaks down.
- Checking comments across multiple posts takes about 30 minutes a day, and it still leaves gaps.
- Bad comments can sit visible for hours, which means more replies, more escalation, and more screenshots.
- When a teammate spots something, it gets shared in DMs with no context and no consistent record.
- “We handled it” isn’t enough if a client, legal team, or partner asks what happened later.
The Solution: Auto-Hide Toxic Instagram Comments and Alert Your Team
This workflow runs on a schedule (every 15 minutes) and checks your Instagram account for new comments using the Instagram Graph API. Each comment is then scored for toxicity using Google’s Perspective API, which is designed to detect hate speech and abusive language patterns at scale. When a comment crosses your chosen threshold (the workflow uses 0.7 by default), n8n automatically hides it on Instagram, then sends an alert to Slack (email is also an option). Finally, it appends a clean audit row into Google Sheets with the comment text, username, score, and timestamp, so you have a durable record and a review queue.
The workflow starts with scheduled polling because Instagram doesn’t make push notifications simple for comments without extra setup. From there, it fetches recent comments, evaluates them, and takes action only when needed. The end result is quiet when everything is fine, and loud when it matters.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you run 5 posts a week and each one gets a steady stream of comments. Manually, a “quick scan” is maybe 10 minutes per post per day, so you’re easily spending about 1 hour daily just checking threads. With this workflow, you set it once and it checks every 15 minutes automatically. Your time becomes near-zero unless Slack flags something, and even then you’re reviewing one incident, not hunting for it.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Instagram Graph API to fetch and hide comments
- Slack to alert the right channel instantly
- Google Sheets for an audit log and review queue
- Perspective API key (get it from the Perspective API signup page)
Skill level: Intermediate. You’ll be pasting API keys, setting permissions, and testing with real Instagram data.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
Scheduled check every 15 minutes. n8n runs a schedule trigger so you’re not relying on someone remembering to “go look.” If you later set up Instagram webhooks through the Graph API, you can swap the trigger.
Comments are pulled from Instagram. The workflow uses HTTP requests to fetch recent media and their comments (it’s simplified to a recent post by default). A batching loop processes comments one-by-one to avoid rate limit spikes.
Toxicity is scored before anything happens. Each comment is sent to Perspective API, which returns a toxicity score. An “If” check compares that score to your threshold, so neutral comments pass through quietly.
Actions fire only on flagged content. Toxic comments are hidden via the Instagram API, an alert is sent to Slack (or email), and a row is appended to Google Sheets with the evidence you’ll want later.
You can easily modify the toxicity threshold to match your community standards, or switch the alert destination from Slack to email based on how your team works. See the full implementation guide below for customization options.
Common Gotchas
- Instagram Graph API credentials can expire or require the right app permissions. If things break, check your Facebook Developer Portal token status and the connected n8n credential first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Frequently Asked Questions
About 45 minutes if you already have the API access set up.
No. You’ll mostly be connecting accounts and pasting API keys into n8n credentials.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Perspective API usage (free tier for low volume) and any Google Sheets/Slack costs tied to your accounts.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, but test it. You can change the Perspective API toxicity threshold (the workflow uses 0.7 by default) and adjust what happens in the “If” branch when a comment is flagged. Common tweaks include adding a second category check (like insult), alerting a different Slack channel for severe cases, and logging extra fields like the post ID for faster investigation.
Usually it’s an expired or invalid access token. Regenerate your Instagram Graph API token in the Facebook Developer Portal, then update the matching credential in n8n. Also confirm your Instagram account is a Business account connected to a Facebook Page, because personal accounts often won’t work with the endpoints used here. Finally, watch for app review and permission scope issues when you move from testing to production; that transition is where a lot of setups quietly break.
A lot, as long as you respect API limits. On n8n Cloud, capacity depends on your monthly executions, while self-hosting is mostly limited by your server and the Instagram/Perspective rate limits. The included batching approach is designed to scale more safely because it processes comments in smaller chunks instead of blasting the APIs all at once.
Often, yes, because this flow relies on API polling, branching logic, and conditional actions that can get pricey or awkward elsewhere. n8n also lets you self-host, which is helpful if you’re checking comments frequently and don’t want to worry about execution costs. Zapier or Make can still be fine if you only need a simple “send me a message” alert and you don’t plan to auto-hide anything. The moment you add logging, evidence trails, and smarter filtering, n8n tends to feel less restrictive. Talk to an automation expert if you want help choosing.
Once this is running, the ugly stuff gets handled quietly and your team only sees what needs a human decision. That’s a much better way to manage a brand presence.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.