Caso real: cómo un SaaS LATAM automatizó soporte y ahorró 380 horas/mes

Caso real: cómo un SaaS LATAM automatizó soporte y ahorró 380 horas/mes

16 de Mayo del 20269 minIA, Caso de éxito, Consultoría, SaaS, Automatización

Respuesta corta (60 segundos): SaaS B2B LATAM (~30 personas, USD 50K MRR) automatizó la clasificación y primera respuesta de soporte. Resultados año-1: 380h/mes liberadas del equipo de soporte (USD 4,560/mes en horas), 60% de tickets auto-respondidos sin caída de CSAT, ROI confirmado a las 16 semanas. Stack: LangGraph + Claude Haiku (clasificación) + Claude Sonnet (respuesta) + Postgres. Costos: USD 16K en implementación + USD 380/mes en operación. Lecciones: medir baseline antes, caps por tenant desde día 1, eval suite con tickets reales, comunicar al equipo antes del rollout. Caso anonimizado por NDA — patrones replicables.

Este caso es real pero anonimizado por NDA. La estructura que comparto, los números, el stack y las decisiones técnicas son fieles a la engagement; faltan los datos que permitirían identificar al cliente. Lo escribo porque entiendo que un founder evaluando consultoría de IA necesita ver un caso aterrizado, no solo prácticas teóricas.

Si después de leerlo querés discutir cómo aplicarlo a tu situación específica, hay un CTA al final con una llamada gratis.

La situación de partida

Perfil del cliente: SaaS B2B en LATAM, ~30 personas, USD 50K MRR, ~400 clientes activos.

Equipo de soporte: 5 personas dedicadas full-time + 2 ingenieros que tomaban escalaciones técnicas.

Volumen: ~6,500 tickets/mes, con picos de 9,000 en lunes y fines de mes.

Tipos de ticket (estimado inicial del cliente, después confirmado en data):

Tipo% del volumenResolución típica
FAQ ya documentado~35%2-5 min, respuesta copy-paste con ajustes mínimos
Configuración / onboarding~25%8-15 min, requiere contexto del cliente
Billing / facturación~15%10-20 min, requiere validar en sistema interno
Bug reports / issues técnicos~15%20-90 min, escalado a ingeniería
Casos complejos / éxito de cliente~10%30+ min, conversación humana

Costo del equipo en horas: ~380 horas/mes en el bucket de "FAQ + onboarding + billing" — los 3 que se podían automatizar al menos parcialmente.

El dolor que disparó el proyecto: crecimiento del 40% en MRR año anterior con plan de seguir creciendo otro 50%. Sin automatización, el equipo de soporte tenía que duplicarse — adición de 4-5 personas en LATAM ≈ USD 60K-90K anuales adicionales.

Cómo llegamos a trabajar juntos

El cliente había recibido tres propuestas previas:

  • Agencia A (México): USD 45K, 6 meses, 18 slides de propuesta, sin detalle técnico claro.
  • Agencia B (Argentina): USD 32K, 4 meses, equipo de 4 personas (PM, ML, dev, UX), retainer mensual posterior.
  • Freelance C (España): USD 18K, 8 semanas, pero el tono de la propuesta era 90% lenguaje técnico que el cliente no entendía.

La conversación inicial conmigo fue 30 minutos. Salí con tres preguntas concretas para ellos: ¿tenían baseline medido?, ¿estaban dispuestos a empezar con un diagnóstico de 2 semanas antes de implementar?, ¿qué pasaba si el resultado del diagnóstico era "no automaticen todavía"?

Volvieron a la semana, contrataron el diagnóstico.

El diagnóstico (2 semanas)

Esta fue la fase más importante del proyecto — más que la implementación.

Lo que hicimos:

  • 6 entrevistas: founder, head of customer success, los 5 agentes de soporte (en 2 sesiones grupales).
  • Análisis de 500 tickets reales del último trimestre, etiquetados manualmente.
  • Modelado de costos operativos a 3 escenarios de volumen (mantener, +50%, +100%).
  • Revisión de la knowledge base interna: 230 artículos, calidad heterogénea.

Lo que descubrimos (algunos no obvios):

  1. El bucket "FAQ ya documentado" en realidad era 42%, no 35% — el equipo subestimaba cuántos tickets eran repeticiones porque "ya los conocían".
  2. La knowledge base era el cuello de botella, no el LLM. 40% de los artículos estaban desactualizados o tenían información ambigua.
  3. Los tickets de billing tenían un componente legal (cargos disputados) que NO se podía automatizar — necesitaban human-in-the-loop.
  4. El equipo tenía resistencia interna a "el bot que nos reemplaza". Esto era organizacional, no técnico, pero podía hacer fracasar el rollout si se ignoraba.

Entregable del diagnóstico:

  • Mapa de oportunidades con impacto USD/mes para 8 procesos candidatos.
  • Recomendación: empezar con clasificación + auto-respond de FAQ + escalado de billing con HITL.
  • Decisión de NO automatizar: bug reports (escalado siempre a ingeniería) y casos complejos (foco humano del equipo).
  • Plan de comunicación al equipo de soporte: capacitación, nuevo rol post-automatización, garantías escritas de no reducción.

Costo: USD 2,200, dos semanas.

La implementación (8 semanas)

Arquitectura final:

  • Trigger: webhook desde su Helpscout cuando entra un ticket nuevo.
  • Clasificación: Claude Haiku con prompt fine-tuneado contra 100 tickets etiquetados. Output JSON estructurado.
  • Routing condicional:
    • FAQ + onboarding con alta confidence → auto-respond.
    • Billing → escalado a humano (HITL via interrupt en LangGraph).
    • Bugs / complejos → escalado a equipo correspondiente.
    • Baja confidence → escalado humano con sugerencia de respuesta.
  • Generación de respuesta: Claude Sonnet con system prompt específico por categoría + RAG sobre knowledge base.
  • Persistencia: Postgres con checkpointing de LangGraph para sobrevivir crashes.
  • Observability: Helicone para tracking de tokens + dashboard interno con métricas de calidad.

Stack técnico decidido:

  • Backend del agente: FastAPI Python + LangGraph en Modal (USD 30/mes hosting).
  • LLM provider: Anthropic Claude (Haiku para clasificación, Sonnet para generación).
  • Vector store: pgvector en Supabase (el cliente ya lo usaba).
  • CRM integración: API de Helpscout.

Detalle no obvio: elegimos LangGraph en vez de n8n específicamente por el interrupt_before para tickets de billing. Necesitábamos que el agente pausara, esperara aprobación humana, y reanudara — n8n hubiera requerido workarounds.

Hitos:

  • Semana 1-2: refactor de la knowledge base (los artículos críticos, no todo). Crítico — sin esto los outputs eran malos.
  • Semana 3-4: pipeline de clasificación con eval suite de 200 tickets reales.
  • Semana 5-6: nodo de generación + RAG + HITL.
  • Semana 7: rollout gradual: 10% del tráfico → 30% → 60% → 100% a lo largo de la semana.
  • Semana 8: ajustes finales, training del equipo en la nueva UI de aprobación.

Costos de implementación: USD 14,000 (a USD 1,750/semana × 8). Total con diagnóstico: USD 16,200.

Los resultados (año 1)

Mediciones post-rollout (semanas 9-16):

MétricaAntesDespuésDelta
Tickets auto-respondidos0%60%+60pp
Tiempo promedio primera respuesta2h 40min12 min-94%
Horas-persona/mes del equipo en triage380h0h-100%
Horas-persona/mes liberadas0h380h+380h
CSAT (NPS-style)7.47.5+0.1 (no significativo)
Costo operativo IA0USD 380/mes+USD 380/mes

Cálculo de ROI año 1:

  • Ahorro en horas: 380h × USD 12/h (costo cargado LATAM) = USD 4,560/mes.
  • Ahorro anualizado: USD 54,720.
  • Costo año-1: USD 16,200 (implementación) + USD 4,560 (12 × 380 operación) = USD 20,760.
  • ROI año-1: 163%. Payback: semana 16.

Adicional no cuantificado: el equipo liberado se dedicó a customer success proactivo. Tres meses después, el cliente reportó que la tasa de upsell entre cuentas atendidas por su equipo subió del 8% al 13%. Imposible atribuirlo 100% al proyecto, pero la correlación temporal es clara.

Lo que no funcionó (y se corrigió en el camino)

Para que el caso sea útil, los fracasos importan más que los aciertos.

Mes 2 de operación: un cliente edge consumió USD 220 en tokens en un solo día probando el chatbot interno como "asistente de productividad" — caso de uso no diseñado. No teníamos caps por tenant. Corrección: implementamos caps de tokens/mes por cuenta esa misma semana.

Mes 1 de operación: la knowledge base seguía desactualizada en 3 áreas. El bot daba respuestas técnicamente correctas pero con info obsoleta. Tickets escalaban a humanos por "el bot dijo X pero está mal". Corrección: proceso semanal de review de outputs negativos, alimentando un backlog de updates a la knowledge base.

Semana 7, rollout al 30%: el equipo de soporte vio el bot por primera vez en producción y la reacción fue defensiva. No se había comunicado el plan completo a tiempo. Corrección: sesión de Q&A con founder explicando el rol futuro de cada persona del equipo (foco en customer success y onboarding nuevo cliente), reducción anunciada como NULA, expansión del scope del rol como diferencial.

Las decisiones que importaron

Tres decisiones que marcaron el resultado:

  1. Diagnóstico antes de implementación. El cliente quería empezar a programar directo. Las 2 semanas de diagnóstico cambiaron el alcance: descubrimos que billing necesitaba HITL, lo cual cambió el stack (LangGraph vs n8n). Sin diagnóstico, el proyecto hubiera empezado con la herramienta equivocada.

  2. Caps por tenant desde el rediseño post-mes 2. Sin esto, escalar a 2x usuarios proyectaba USD 700+/mes en gastos de tokens. Con caps, el costo se mantiene linear con el volumen útil.

  3. Comunicación al equipo de soporte antes del rollout. Sin esto, la adopción interna hubiera tardado meses adicionales y la resistencia política hubiera puesto en riesgo el proyecto entero.

Cómo se replica en otro SaaS

Patrón general aplicable:

  • Empresa de partida: SaaS B2B, 20-50 personas, 5-15 personas en soporte/CS, 2,000-15,000 tickets/mes.
  • Inversión: USD 15-25K implementación + USD 300-800/mes operación.
  • Resultado esperado: 40-70% de tickets auto-respondibles según calidad de la knowledge base previa.
  • Timeline: 8-12 semanas desde kickoff hasta operando al 100%.

No se replica cuando:

  • Volumen menor a 2,000 tickets/mes (ROI no compensa la inversión).
  • Soporte requiere alta variabilidad de criterio humano (legal, médico, financiero crítico).
  • Knowledge base interna está muy desactualizada o no existe (primero hay que invertir ahí).

Hablemos de tu caso

Si tu SaaS tiene un equipo de soporte/CS de 3+ personas dedicadas y querés evaluar si un proyecto similar tiene sentido, reservá una llamada de 30 minutos sin costo. En 20 minutos puedo darte un orden de magnitud honesto: si vale la pena, qué inversión esperar, y qué tipo de partner buscar (yo u otra opción). Si no vale, también te lo digo.


Leer también:

Preguntas frecuentes

¿Por qué el caso está anonimizado?

Por NDA con el cliente. Los detalles relevantes para la decisión están todos — métricas antes/después, stack, costos, errores cometidos en el camino — sin la información que permitiría identificarlos. Es la regla de oro en consultoría: los números sirven al lector, el nombre solo sirve al consultor.

¿El ahorro de 380h/mes es horas-persona o horas-calendario?

Horas-persona, calculado sobre el equipo de soporte. Antes: 5 personas dedicaban en promedio 76h/mes cada una a triage y primera respuesta. Después: 1.5 personas equivalente full-time + 3.5 personas liberadas para casos complejos y onboarding de clientes nuevos. La métrica de calidad (CSAT) se mantuvo dentro del rango histórico.

¿Por qué eligieron LangGraph en vez de n8n o Make?

Porque el flujo necesitaba estado persistente y human-in-the-loop para tickets de billing (compliance). n8n y Make sirven para flujos lineales sin pausa-aprobación humana. LangGraph permite interrumpir antes del envío y esperar input humano por horas/días sin perder el estado. Si el caso fuera solo clasificación sin escalado, n8n hubiera sido más barato.

¿Cuánto tardó desde diagnóstico hasta primer ahorro medible?

10 semanas total. Diagnóstico: semanas 1-2. Implementación MVP: semanas 3-6. Rollout gradual + ajuste prompts: semanas 7-8. Medición del impacto real: semanas 9-10. El ROI año-1 se confirmó a la semana 16 con datos de 4 semanas operando a 100%.

¿Qué hubieran hecho diferente?

Cuatro cosas: (1) medir baseline 4 semanas antes del diagnóstico en vez de retroactivamente; (2) empezar con caps por tenant desde día 1 (apareció un cliente edge que casi disparó la factura mes 2); (3) eval suite con 100 tickets reales antes del rollout, no solo prompts sintéticos; (4) comunicación interna al equipo de soporte ANTES de que viera el bot — la resistencia inicial fue evitable.

¿El caso se puede replicar en otro SaaS?

El patrón sí; los números no exactamente. La regla del 60% de tickets auto-respondibles se mantiene en SaaS B2B con base de conocimiento bien documentada. Volúmenes <2,000 tickets/mes no justifican la inversión inicial; >8,000 sí. Para casos diferentes (soporte B2C, alta variabilidad de queries, idioma técnico), los números cambian — empezá con un diagnóstico.