Multi-Language AI Sales Agent.

A global education brand with 100K+ students across Latin America had 5,400 inbound messages a month that nobody was reading. Three languages. One sales team. A revenue leak hiding in plain sight. Here's how we closed it.

$96K/moRevenue leak closed
309KContacts migrated
93%Classification accuracy

The problem

Growth across three language markets outran operations. Inbound arrived in Spanish, Portuguese, English. The sales team read two of three. The third routed to a queue not processed in months.

The audit traced 5,400 unanswered messages a month. Quantified revenue leak: roughly $96,000 monthly to prospects who got no reply and went elsewhere. Every month on the existing stack added to it.

The approach

An AI sales agent on Claude reading, classifying, and responding in all three languages. Tiered model routing for cost control. 93% classification accuracy threshold validated against historical conversion data before launch. One mis-classified intent at scale corrupts a CRM. The threshold was the engineering, not the model.

Architecture Inbound message (ES / PT / EN) │ ▼ ┌──────────────────────────────┐ │ Language detection │ ← Haiku (cheap, fast) └──────────────────────────────┘ │ ▼ ┌──────────────────────────────┐ │ Intent classification │ ← Sonnet (accuracy) │ (lead / support / spam / │ │ recovery / question) │ └──────────────────────────────┘ │ confidence >= 90%? ┌─────┴─────┐ YES NO │ │ ▼ ▼ Auto-reply Human review queue (in language) │ ▼ CRM update (GHL) + Langfuse log

The build

Phased across two engagements. Phase 1: audit and migration. 309,000 contacts cleaned and migrated into GoHighLevel from a fragmented data layer. Phase 2: classifier, drafter, response loop, observability stack.

Highlights:

The outcome

5,400 messages monthly handled by a production AI classifier at 93% accuracy under continuous load. The $96K/month leak sealed during the first post-launch sprint. Full observability so the team sees the moment classification confidence drops.

Phase 2 surfaced an additional $2.7M annual opportunity from segments the previous architecture had buried. A properly architected system makes those segments visible. A fragmented one keeps them invisible, quarter after quarter.

💬

The structural shift: Inbound went from backlog to a routed, classified, logged stream. Every interaction generates structured data. The AI did not replace the sales team. It handed them only the conversations worth having.

Tech stack

Claude API (Haiku and Sonnet, tiered routing), Trigger.dev (orchestration and webhooks), GoHighLevel (CRM), Supabase (agent state and queue), Langfuse (observability), Python (migration and ETL). 309,000 contacts migrated from spreadsheets, legacy CRMs, and a custom internal tool.

Have a backlog of messages nobody is reading?

Same shape of problem across education, professional services, franchises. The discovery call maps yours.

Book a Discovery Call