automations.help

Support & returns

Auto-escalate angry support tickets to Slack

A customer threatening a chargeback at 9am shouldn't be discovered at 2pm. This watches every inbound Gorgias ticket, decides which ones are actually angry — not just mildly annoyed — and drops a Slack alert with the message, the customer's history, and a one-click link into the ticket, so the right person sees it in seconds instead of when the queue gets around to it. Build it yourself with the steps below — or we build it, tune the noise out, and hand it over so you own it outright with no monthly fee. Free teardown of your current setup first.

Difficulty
Intermediate
Time to build
2-4 hrs
Updated
  • Gorgias
  • Slack

The manual way today

Tickets land in Gorgias in the order they arrive, and an agent works the queue top to bottom. A genuinely furious customer — caps lock, 'I'm disputing this with my bank', 'this is the third time I've written' — sits in the same line as a routine sizing question until someone happens to open it. There's no signal that one ticket is on fire and the other can wait an hour.

The damage is in the delay. A customer angry enough to mention a chargeback, their lawyer, or a public review is usually one slow reply away from doing it — and a chargeback costs you the refund plus a dispute fee, while a one-star review or a 'never ordering again' post costs you long after the ticket closes. The longer the most volatile tickets sit unseen, the more of them tip from recoverable to lost. None of it shows up in your response-time average, because the average doesn't know which tickets were the dangerous ones.

What running looks like

The moment an inbound message reads as genuinely angry — by sentiment, by high-stakes wording, or by signals like a repeat contact — a formatted alert posts to the right Slack channel: who it is, what they said, their order count and spend, and a button straight into the Gorgias ticket. One ticket pings once, off-hours and VIP cases route differently, and a person still owns the reply. The queue keeps moving; the fires get jumped.

01The build

How to build it

  1. Decide what 'angry' actually means — on paper first

    Needs a human

    Write the rule before you build it, because 'angry' is a policy choice, not a feature. Three buckets work well: sentiment (the message reads as negative or hostile), high-stakes wording (specific phrases that mean money or reputation is on the line), and signals (a repeat contact within 24h, a VIP/high-LTV customer, an all-caps shout). A ticket escalates when it trips a high-stakes phrase outright, or when negative sentiment stacks with at least one signal. Mildly annoyed is not angry — escalating everything is the same as escalating nothing.

  2. Trigger on every inbound customer message in Gorgias

    Runs itself

    Build a Gorgias Rule that fires on ticket created and on new customer message (not on agent replies — you don't want your own team's words scored). Gorgias Rules can run actions directly, or hand off to glue (n8n / Zapier) for the heavier logic in the next steps via an HTTP request action. Trigger on each customer message, not just ticket creation, so a calm thread that turns hostile on the third reply still escalates.

  3. Score the sentiment of the message body

    Runs itself

    Use Gorgias's built-in sentiment/intent detection where your plan includes it — it tags incoming messages as negative or offensive — or pass the message text through a sentiment classifier in your glue step. Treat the score as one input, not the verdict: sentiment alone is noisy (sarcasm, blunt-but-fine customers, non-native phrasing), which is exactly why it gets combined with the wording and signal passes rather than firing on its own.

  4. Run the high-stakes keyword and signal pass

    Runs itself

    Match the message against a curated list of phrases that mean real risk regardless of tone: 'chargeback', 'dispute', 'lawyer' / 'attorney', 'fraud', 'BBB', 'reporting you', 'never again', 'cancel everything'. These escalate on their own — a flat, polite 'I will be filing a chargeback' is more dangerous than an exclamation-heavy rant. Layer in structural signals: a high ALL-CAPS ratio, this customer's second or third ticket in 24 hours, or a high order count / lifetime spend that Gorgias already surfaces from your Shopify data. Keep the phrase list in one place so it's editable without touching the build.

  5. De-dupe so one ticket pings exactly once

    Runs itself

    Before posting, check for an 'escalated-slack' tag on the ticket; if it's there, stop. If it isn't, post the alert and add the tag in the same run. Without this, a customer who fires off three angry follow-ups in a row triggers three identical Slack pings, and the team learns to tune the channel out. One ticket, one alert — re-escalate only on a deliberate condition, like a brand-new high-stakes phrase appearing later in the thread.

  6. Post a Slack alert with the context to act on

    Runs itself

    Send to a dedicated channel (e.g. #support-escalations) via a Slack Incoming Webhook for the simple version, or chat.postMessage with Block Kit for a richer card. Include what a person needs to triage without opening anything: customer name, the reason it escalated (the matched phrase or sentiment), the order count and total spend, and the actual message snippet. Add an 'Open in Gorgias' button linking straight to the ticket (https://YOURDOMAIN.gorgias.com/app/ticket/{ticket_id}). The goal is a glance-and-go, not a notification that makes someone go digging.

  7. Route the real emergencies harder than the rest

    Runs itself

    Not every escalation is equal. A high-stakes phrase or a VIP gets an @here and lands in the on-call channel; ordinary negative-plus-signal tickets post quietly to #support-escalations. Branch on business hours too: during the day, the support channel is enough; after hours, a chargeback-language ticket can route to a separate channel or an on-call DM so it isn't waiting until morning. Routing is automated — who picks it up is still a person.

  8. Review the misses weekly and tune the list

    Needs a human

    Log every escalation to a sheet or a thread with its trigger reason, then spend ten minutes a week on two columns: what got escalated that shouldn't have (tighten the phrase list or raise the sentiment threshold) and what blew up that never pinged (add the phrase you missed). An escalation rule that nobody tunes drifts into noise within a month — the weekly pass is what keeps the channel something the team actually trusts.

02The stack

What it’s built on

Gorgias
The helpdesk where tickets land. Its Rules engine fires on inbound messages, its sentiment detection supplies one of the escalation inputs, and it already pulls each customer's Shopify order history so the alert can show real spend. Rules can post to Slack directly for the simple build, or hand off to n8n / Zapier for the scoring, de-dupe, and routing logic.Built-in AI sentiment detection sits on Gorgias's higher / add-on tiers. You don't need it to ship this — the high-stakes keyword and signal pass runs on the Rules engine available on any plan, and you can add sentiment later.
Slack
Where the alert lands and the team acts on it. A dedicated escalations channel keeps the fires out of general chatter; Block Kit gives you the context card and the deep-link button.Incoming Webhooks and chat.postMessage are free on every Slack plan, including the free tier — there's no upcharge to receive these alerts.

03Questions

Before you build

Won't this flood Slack with every slightly annoyed customer?

Only if you tune it badly — and the recipe is built to stop that. Escalation needs a high-stakes phrase, or negative sentiment plus a real signal, not just a frowny tone. One ticket pings exactly once thanks to the de-dupe tag, and the weekly review exists specifically to pull back anything that's escalating too eagerly. The aim is a channel the team trusts, which means it has to stay quiet most of the day.

Doesn't Gorgias's built-in sentiment detection already do this?

It detects sentiment and tags the ticket — useful, but it stops there. It doesn't decide which negative tickets are actually dangerous, it doesn't post a triage-ready card to the right Slack channel with the customer's spend and a deep link, and it doesn't route emergencies differently after hours. This recipe uses that sentiment signal as one input and adds the judgment and the routing around it.

Can I build this without n8n or Zapier?

For a basic version, yes — a single Gorgias Rule can match a keyword list and post to a Slack Incoming Webhook on its own. You add glue (n8n or Zapier) when you want the parts that need real logic: combining sentiment with signals, the de-dupe tag check, pulling spend into the message, and branching by severity and business hours.

Will the team get pinged at 2am over a sizing complaint?

Not if you set the routing. Ordinary escalations post quietly to the support channel any time; only true emergencies — chargeback language, a VIP — get a loud @here or an on-call route, and you can gate that to business hours so off-hours pings are reserved for the things genuinely worth waking up for.

Does this reply to the angry customer for me?

No, on purpose. This surfaces the ticket fast and hands it to a person — escalation is about who sees it and when, not about auto-answering someone who's already furious. If you also want help drafting the actual reply, that's a separate Gorgias automation; this one just makes sure the fire gets jumped.

Support & returns

Auto-tag and route support tickets by topic

Most DTC inboxes are one big undifferentiated queue: a wholesale inquiry, a damaged-item photo, and a 'where's my order?' all sit in the same line, and whoever's free grabs the top one regardless of whether it's theirs to answer. This reads every inbound Gorgias ticket, decides what it's actually about from a taxonomy you define, tags it, and routes it to the right team or view — keyword rules for the obvious cases, an LLM fallback for the fuzzy ones, and a 'needs-triage' safety net for anything it isn't sure about. Build it yourself with the steps below — or we build it, tune the taxonomy against your real inbox, and hand it over so you own it outright with no monthly fee. Free teardown of your current setup first.

  • Gorgias
  • n8n

Intermediate3-6 hrs

Support & returns

Auto-draft Gorgias replies to 'where is my order' tickets

'Where is my order?' is the most common ticket in DTC support, and almost every answer is the same lookup: find the order, find the tracking, paste it back. This watches Gorgias for WISMO tickets, pulls the live fulfillment status from Shopify (and ShipBob when Shopify's tracking is stale), and writes a ready-to-send draft into the ticket — your agent reviews, tweaks if needed, and hits send. It never auto-sends, and the messy cases (no order, delivered-but-missing) get flagged to a human instead of a canned reply. Build it yourself with the steps below — or we build it, wire in the guardrails, and hand it over so you own it outright with no monthly fee. Free teardown of your current setup first.

  • Gorgias
  • Shopify
  • ShipBob

Intermediate4-7 hrs

Reviews & UGC

Flag negative reviews for follow-up

A one-star review is a customer telling you something's wrong in the most public place they have. This watches every review as it's submitted, catches the low ones, and drops them in a Slack channel with the rating, the product, what they wrote, and who they are — so someone reaches out while it still matters instead of finding it a week later in the app's dashboard. Build it yourself with the steps below, or we build it, wire the routing, and hand you the keys so you own it with no monthly fee. Free teardown of your current review setup first.

  • Slack
  • Klaviyo

Intermediate1-3 hrs

Support & returns

Send a CSAT survey after a ticket is resolved

Right now you close a ticket and move on, with no idea whether the customer left happy or just gave up. This watches for resolved tickets in Gorgias, waits a beat, and sends one short Klaviyo email with a single-click rating — then records the score against the agent who handled it and pings someone when a customer is unhappy enough to act on. Build it yourself with the steps below — or we build it, wire the score back into your reporting, and hand it over so you own it outright with no monthly fee. Free teardown of your current setup first.

  • Gorgias
  • Klaviyo

Intermediate2-4 hrs