# GAP ANALYSIS: CXInsights vs BeyondCX Blueprints > **Generated**: 2026-01-19 > **Blueprints Analyzed**: 4 documents in `docs/blueprints/` --- ## Executive Summary CXInsights currently implements a **subset** of the BeyondCX blueprint requirements. The project has strong foundations for RCA (Root Cause Analysis) but is missing several key frameworks defined in the blueprints. | Framework | Coverage | Status | |-----------|----------|--------| | **Ventas (Sales Analysis)** | ~40% | Partial - conversion tracking, some agent failures | | **Close The Loop (CX)** | ~30% | Partial - CX drivers only | | **FCR (First Call Resolution)** | ~5% | Missing - no FCR detection | --- ## Blueprint 1: Contexto BeyondCX (General Framework) ### What it defines: - Role: Expert auditor for call analysis (energy sector - Endesa B2C) - Three strategic frameworks: Ventas, Close the Loop, FCR - Rules: Evidence-based, no invented info, professional analysis ### CXInsights Alignment: | Requirement | CXInsights Status | Notes | |-------------|-------------------|-------| | Evidence-based analysis | ✅ Implemented | `evidence_spans[]` required for all RCA labels | | No invented info | ✅ Implemented | LLM must quote transcript | | Professional output | ✅ Implemented | Structured JSON with traceability | | Three frameworks | ⚠️ Partial | Only partial coverage of each | --- ## Blueprint 2: Análisis de Llamadas de Venta (Sales Framework) ### What it defines (5 KPIs): #### KPI 1: Tasa de Conversión de Venta | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | Determine Venta/No Venta | ✅ `CallOutcome.SALE_COMPLETED/SALE_LOST` | Covered | | Max 5 key factors for success | ⚠️ `lost_sales_drivers[]` | Different structure | | Max 5 factors for failure | ⚠️ `lost_sales_drivers[]` with RCALabel | Missing detailed actions | | Origin attribution (agent/client/company) | ❌ Missing | No origin field | | Specific corrective actions | ❌ Missing | Only `reasoning` field | **Gap Details:** - CXInsights captures WHAT caused lost sale (driver_code) - Blueprint requires: WHO is responsible + HOW to fix it + EXAMPLE from call #### KPI 2: Efectividad de Campañas | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | Campaign effectiveness analysis | ❌ Not implemented | **MAJOR GAP** | | Product-message fit detection | ❌ Not implemented | | | Customer feedback capture | ❌ Not implemented | | | Segmentation analysis | ❌ Not implemented | | **Gap Details:** - CXInsights has no concept of "campaign" - No way to track which campaign a call belongs to - No analysis of product-customer fit #### KPI 3: Habilidades del Equipo de Ventas | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | "Buen Comercial" / "Necesita Mejora" classification | ❌ Not implemented | **MAJOR GAP** | | Agent strengths identification | ⚠️ Partial via drivers | Implicit only | | Agent weaknesses documentation | ⚠️ `OBJECTION_NOT_HANDLED`, `POOR_PITCH` | Limited | | Coaching recommendations | ❌ Not implemented | | **Gap Details:** - No agent skill scoring or classification - No explicit "good practices to replicate" output - No coaching action recommendations #### KPI 4: Argumentarios y Objeciones | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | Script quality evaluation | ❌ Not implemented | **GAP** | | Objection handling quality | ⚠️ `OBJECTION_NOT_HANDLED` driver | Binary only | | Improvement recommendations | ❌ Not implemented | | **Gap Details:** - CXInsights only detects IF objection was handled poorly - Blueprint requires HOW to improve + specific examples #### KPI 5: Ciclo de Venta | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | Actions that lengthen sales cycle | ❌ Not implemented | **GAP** | | Friction points in call | ⚠️ Events (HOLD, SILENCE) | Partial | | Optimization recommendations | ❌ Not implemented | | --- ## Blueprint 3: Close The Loop (CX Framework) ### What it defines (5 Pillars): #### Pilar 1: Mejorar Experiencia de Cliente (CX) | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | "Buen CX" / "CX Mejorable" classification | ❌ Not implemented | No binary CX outcome | | Positive CX factors | ❌ Not implemented | Only negative drivers | | Friction points | ✅ `poor_cx_drivers[]` | Covered | | Customer feedback (explicit/implicit) | ❌ Not implemented | | **Gap Details:** - CXInsights only captures PROBLEMS (poor CX drivers) - No capture of positive CX factors - No explicit CX quality rating #### Pilar 2: Reducir Fuga de Clientes (Churn) | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | "Sin riesgo de fuga" / "En riesgo de fuga" | ❌ Not implemented | **MAJOR GAP** | | Churn risk factors | ❌ Not implemented | | | Origin attribution (company/agent/client) | ❌ Not implemented | | | Prevention factors | ❌ Not implemented | | **Gap Details:** - CXInsights has no churn risk classification - `CallOutcome.CANCELLATION_*` exists but no risk prediction - No churn drivers taxonomy #### Pilar 3: Eficiencia Operativa | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | Process inefficiencies | ⚠️ `COMPLEX_PROCESS`, `SYSTEM_ERROR` | Very partial | | Agent efficiency analysis | ❌ Not implemented | | | Optimal efficiency factors | ❌ Not implemented | | | Process improvement proposals | ❌ Not implemented | | #### Pilar 4: Valor del Cliente (Customer Value) | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | Explicit customer needs | ❌ Not implemented | **MAJOR GAP** | | Latent/implicit needs | ❌ Not implemented | | | Upsell/cross-sell opportunities | ❌ Not implemented | | | Customer value maximization | ❌ Not implemented | | #### Pilar 5: Talento Interno | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | Positive agent behaviors | ❌ Not implemented | | | Agent skills to replicate | ❌ Not implemented | | | Improvement areas | ⚠️ Agent-related drivers | Limited | | Coaching recommendations | ❌ Not implemented | | --- ## Blueprint 4: FCR (First Call Resolution) ### What it defines: | Blueprint Requirement | CXInsights Implementation | Gap | |-----------------------|---------------------------|-----| | First call vs repeat call detection | ❌ Not implemented | **CRITICAL GAP** | | Factors causing repeat calls | ❌ Not implemented | | | Churn risk combined with FCR | ❌ Not implemented | | | 4 categories: Primera Llamada (sin/con riesgo) + Rellamada (sin/con riesgo) | ❌ Not implemented | | **Gap Details:** - CXInsights has `CALLBACK_REQUIRED` driver but no FCR detection - No mechanism to identify if call is first contact or repeat - No churn-FCR cross-analysis --- ## Output Format Comparison ### Blueprint Required Output Structure: ``` Factor Clave 1: [etiqueta breve] - Descripción objetiva basada en transcripción - Por qué ayuda/impide [objetivo] - Qué tiene que hacer el agente para [corregir/replicar] - Ejemplo/fragmento de la transcripción Separados por: "··· " ``` ### CXInsights Current Output Structure: ```python RCALabel( driver_code="PRICE_TOO_HIGH", confidence=0.85, evidence_spans=[ EvidenceSpan( text="Es muy caro para mí", start_time=45.2, end_time=47.8 ) ], reasoning="Customer objected to price" ) ``` ### Gap: | Blueprint Field | CXInsights Field | Gap | |-----------------|------------------|-----| | Etiqueta breve | `driver_code` | ✅ Equivalent | | Descripción detallada | `reasoning` | ⚠️ Too brief | | Acciones correctivas | ❌ Missing | **GAP** | | Ejemplo con fragmento | `evidence_spans[].text` | ✅ Covered | | Origin (agent/client/company) | ❌ Missing | **GAP** | | Max 5 factors | No limit | ⚠️ Different | --- ## Summary: Required Changes ### HIGH PRIORITY (Core Functionality Gaps) 1. **Add FCR Detection Module** - Detect first call vs repeat call - Track call reason/topic - Link to churn risk 2. **Add Churn Risk Classification** - Binary: "Sin riesgo" / "En riesgo de fuga" - Churn drivers taxonomy - Prevention factors 3. **Add Agent Skill Assessment** - Binary: "Buen Comercial" / "Necesita Mejora" - Skill dimensions scoring - Coaching recommendations 4. **Enhance RCALabel Structure** ```python class RCALabel: driver_code: str confidence: float evidence_spans: list[EvidenceSpan] reasoning: str # NEW FIELDS: origin: Literal["agent", "customer", "company", "process"] corrective_action: str | None # What to do to fix replicable_practice: str | None # What to replicate ``` ### MEDIUM PRIORITY (Enhanced Analysis) 5. **Add Customer Value Analysis** - Explicit needs detection - Implicit/latent needs - Upsell opportunities 6. **Add Campaign Tracking** - Campaign ID field - Campaign effectiveness metrics - Product-customer fit analysis 7. **Add Positive Factors Output** - Not just problems (drivers) but also successes - "Buen CX" factors - "Effective sales" factors ### LOW PRIORITY (Refinements) 8. **Enhance Output Format** - Limit to max 5 factors per category - Add structured corrective actions - Match blueprint output structure 9. **Add Script Quality Analysis** - Argumentario quality scoring - Objection handling quality - Improvement suggestions --- ## Taxonomy Extension Required ### New Driver Categories Needed: ```yaml # CHURN RISK DRIVERS (New) churn_risk: PRICE_DISSATISFACTION: description: "Customer unhappy with pricing" SERVICE_DISSATISFACTION: description: "Customer unhappy with service" COMPETITOR_INTEREST: description: "Customer considering competitors" CONTRACT_ENDING: description: "Contract ending soon" REPEATED_ISSUES: description: "Customer has called multiple times for same issue" # FCR DRIVERS (New) fcr_failure: INCOMPLETE_RESOLUTION: description: "Issue not fully resolved" MISSING_INFORMATION: description: "Agent didn't provide all needed info" PENDING_ACTION: description: "Action pending from company side" UNCLEAR_NEXT_STEPS: description: "Customer unclear on what happens next" # POSITIVE CX FACTORS (New - inverse of poor_cx) good_cx: QUICK_RESOLUTION: description: "Issue resolved quickly" EMPATHETIC_SERVICE: description: "Agent showed empathy" PROACTIVE_HELP: description: "Agent anticipated needs" CLEAR_COMMUNICATION: description: "Agent communicated clearly" # AGENT SKILLS (New) agent_skills: EFFECTIVE_CLOSING: description: "Agent closed sale effectively" GOOD_RAPPORT: description: "Agent built good rapport" OBJECTION_MASTERY: description: "Agent handled objections well" PRODUCT_KNOWLEDGE: description: "Agent demonstrated product knowledge" ``` --- ## Recommended Implementation Phases ### Phase 1: Core Gaps (Essential) 1. Add `churn_risk` field to CallAnalysis 2. Add `fcr_status` field (first_call / repeat_call) 3. Add `origin` field to RCALabel 4. Add `corrective_action` field to RCALabel ### Phase 2: Enhanced Analysis 5. Add positive factors capture (good_cx, effective_sales) 6. Add agent skill classification 7. Add customer value analysis ### Phase 3: Campaign & Optimization 8. Add campaign tracking 9. Add sales cycle analysis 10. Match exact blueprint output format --- ## Files Requiring Modification | File | Changes Required | |------|------------------| | `config/rca_taxonomy.yaml` | Add churn, FCR, positive factors | | `src/models/call_analysis.py` | Add churn_risk, fcr_status, origin fields | | `src/inference/prompts.py` | Update prompt for new fields | | `src/inference/analyzer.py` | Parse new output structure | | `src/aggregation/` | Aggregate new metrics | | `src/exports/` | Include new fields in exports | --- **Última actualización**: 2026-01-19