Products / AI showcase
Support Assistant

Customer support copilot

A grounded assistant that answers customer queries from product docs, ticket history, and account data — with graceful human handoff.

Client
Mid-market SaaS (12k active accounts)
Industry
B2B SaaS
Duration
9 weeks to production
68%
faster first-response
3×
ticket deflection
92%
answer accuracy (audited)
01 · Problem

Where the team was stuck.

  • 01Support team drowning in repetitive Tier-1 tickets — password resets, billing questions, feature availability.
  • 02Median first-response time of 6h 40m during business hours; weekend backlog compounded into Monday spikes.
  • 03Knowledge base was accurate but under-used — customers preferred to open a ticket instead of searching.
02 · Approach

How we built it.

Stack
  • OpenAI GPT-4o
  • pgvector
  • LangGraph
  • Zendesk API
01

Ground the model in real answers

Indexed 1,400 KB articles, 3 years of resolved tickets, and live account state into a pgvector store with per-tenant filters.

02

Route by confidence, not by keyword

A LangGraph agent grades its own answer against retrieved passages. Low-confidence responses skip the customer entirely and open a draft ticket for a human agent.

03

Instrument every reply

Every answer logs the retrieved sources, the confidence score, and the customer's follow-up. Weekly review loop flags hallucinations before they scale.

03 · Outcomes

What changed.

Support NPS moved from 41 to 58 in the first quarter. The team reallocated two agents from Tier-1 to onboarding — the ticket volume that used to require them is now handled by the copilot with a human review queue.

  • 68%
    faster first-response
  • 3×
    ticket deflection
  • 92%
    answer accuracy (audited)
04 · Demo preview

Live conversation

Customer asking about a billing edge case — grounded answer with sources.

Book a live demo
session preview · illustrative
User
Hey, I was charged twice for the Team plan this month. Can you refund one?
· Retrieved: Billing FAQ #14 · Account #4821 invoices · Refund policy v3
AI
I can see two Team-plan charges on Account #4821 (Nov 3 and Nov 12). The Nov 12 charge is a proration from your seat upgrade — that one is expected. Want me to walk you through the math, or open a refund ticket if it still looks wrong?
User
Walk me through the math please.
AI
You added 2 seats on Nov 12. Your plan bills monthly on the 3rd, so we charged a prorated $38.40 for the remaining 21 days on those seats. That's why it looks like a second charge — same subscription, different line item. I can share the invoice PDF if that helps.

Want the same for your team?

Start a conversation