The Core Problem: Repetitive Support Tickets Are a Time Sink
Last quarter, my support inbox for a small B2B app was getting swamped. We were hitting about 50 tickets a day, which isn’t huge, but I was the only one handling them. The killer was that 80% of them were the same three or four questions about billing, user permissions, or a specific integration. I was losing hours every week just copy-pasting answers. This is a classic operator problem: a low-value, repetitive task eating up high-value time. So I built a system to fix it. This article shows you how to build that exact system of AI automation for customer support. You won’t just get theory; you’ll get the stack, the prompts, and the failure points I discovered along the way.
The Basic Stack: What You Actually Need
Forget the complex diagrams you’ve seen on Twitter. The initial setup is surprisingly simple and doesn’t require a line of code. You need three things:
AI Side Hustles
Practical setups for building real income streams with AI tools. No coding needed. 12 tested models with real numbers.
Get the Guide → $14
- A Help Desk: This is your trigger point. It could be Help Scout, Zendesk, Front, or even just a shared Gmail inbox with specific labels. You need a place where tickets arrive predictably. I use Help Scout because its API is clean and it plays nice with automation tools.
- An Automation Platform: This is the nervous system connecting everything. Make (formerly Integromat) is my go-to for this. Zapier automations works too, but I find Make’s visual interface and error handling more intuitive for multi-step workflows. Honestly, its Core plan at $29/month is a fair price for the power you get. The free plan is a joke for any real work.
- An LLM API: This is the brain. You’ll need an API key from OpenAI for models like GPT-4o or from Anthropic for Claude 3. For most support tasks, Claude 3 Sonnet is the winner. It’s incredibly fast, the API is significantly cheaper than GPT-4 class models, and it’s more than smart enough for triage and drafting.
That’s it. A help desk, an automation tool, and an API key. Anyone telling you that you need a vector database and a custom-trained model to start is trying to sell you something you don’t need.
What Most Guides Get Wrong
Here’s the biggest mistake I see people make. They try to build a fully autonomous AI agent that replies directly to customers without human review. This is a terrible idea.
It sounds great in theory. A bot that just handles everything. But in practice, you’re one weirdly phrased question away from the AI hallucinating a policy, promising a refund you can’t give, or giving dangerously wrong technical advice. The brand damage from a single bad AI interaction can wipe out any time savings you gained. The goal is not full automation; it’s *augmented support*. The AI’s job is to act as a hyper-efficient assistant for a human. It triages, categorizes, finds the right information, and drafts a perfect reply. Then, a human reads it, makes a tiny tweak if needed, and hits ‘send’. This approach eliminates 90% of the manual work while keeping a human in the loop for quality control. It’s the only sane way to implement this.
Building the Triage Engine: A Step-by-Step Example
The first and most valuable piece of AI automation for customer support is triage. The goal is to have the AI read an incoming ticket and tag it correctly so you know what to focus on. Here’s how you build it in Make.
- The Trigger: Create a new scenario in Make. The trigger module will be ‘Watch Conversations’ in Help Scout (or the equivalent for your help desk). Set it to run every 5 minutes.
- The LLM Call: Add an OpenAI or Anthropic module. You’ll pass the subject and the plain-text body of the new email into the prompt.
- The Prompt: This is the critical part. You need to instruct the model to act as a triage agent and return structured data. JSON is the only reliable way to do this. Here’s a solid starting prompt:
You are an expert customer support triage agent. Your sole function is to analyze an incoming support ticket and return a single, valid JSON object with no other text or explanation. The JSON object must contain the following keys: "category", "sentiment", "urgency", and "summary".
Here are the possible values for each key:
- "category": Must be one of the following strings: "Billing Inquiry", "Technical Issue", "Sales Question", "Feature Request", "Spam/Other".
- "sentiment": Must be one of the following strings: "Positive", "Neutral", "Negative".
- "urgency": Must be one of the following strings: "Low", "Medium", "High". Determine urgency based on keywords like 'urgent', 'down', 'cannot access', or negative sentiment.
- "summary": A concise, one-sentence summary of the user's core request.
Analyze the following ticket content and return the JSON object.
- Parse the Response: The LLM will return a text string that looks like JSON. Add a ‘Parse JSON’ module in Make to convert this text into actual data objects you can use in subsequent steps.
- Take Action: Now you can use the parsed data. Add a Help Scout ‘Update Conversation’ module. Use the ‘category’ output from the AI to add a tag to the ticket. Use the ‘urgency’ output to maybe assign it to a specific person or move it to a priority folder.
This simple workflow alone is a massive improvement. Instantly, your inbox is organized by what matters.
