Skip to main content
All posts
Aug 26, 20263 min read

Why the Support Triage Bot Never Free-Writes an Answer

It would've been easier to let Gemini answer any support question that came in. Here's why that's the wrong call, and what "grounded" actually means inside a working n8n workflow.

The tempting shortcut

Wire a webhook straight into an AI node, hand it the customer's message, let it answer. It works immediately, it feels impressive in a demo, and it's the fastest possible thing to build.

Why that's a liability, not a feature

An AI model that's allowed to answer anything will eventually invent a policy, a price, or a promise that was never actually true. For a bot speaking on behalf of a real business, that's not a minor inconvenience — it's the business's name attached to something it never said.

The actual design

The FAQ this workflow answers from lives as a plain array of question/answer pairs directly in the workflow. The prompt tells Gemini explicitly to answer only from that list, nothing else, and to return strict JSON with an `answerable` boolean rather than free-form prose.

If the question isn't covered — a billing dispute, a complaint, anything ambiguous — the workflow doesn't attempt an answer at all. It escalates to a human with an AI-written summary of what the customer actually needs instead.

The result

Tested against a real pricing question, it answered correctly, grounded word-for-word in the actual FAQ text. Tested against a real billing complaint, it correctly refused to guess and escalated with an accurate summary instead of a made-up answer.

The measure of a good support automation isn't how much it can answer. It's how reliably it knows what it can't.

Want the automation this post is about?

See All Automations

Get the occasional useful email

New automations and honest write-ups of what broke and how it was fixed. A couple a month at most, unsubscribe any time.