GuidesBusiness Metrics & ROI

Business Metrics & ROI Guide

Connect your AI quality metrics to real business outcomes. Track revenue impact, customer satisfaction, and operational efficiency to prove the ROI of your AI investment.

Why Business Metrics?

Quality scores alone do not tell you whether your AI agents are delivering value. Business metrics bridge the gap:

  • Revenue: Does higher AI quality lead to more conversions?
  • CSAT: Do better responses improve customer satisfaction?
  • Resolution rate: Are tickets resolved faster with AI?
  • Cost savings: How much manual work is the AI replacing?

ThinkHive correlates AI quality metrics (groundedness, faithfulness, etc.) with business outcomes so you can answer: “Is improving our AI actually improving our business?”

Recording Business Metrics

Record metric values

Record external metric values (from CRM, surveys, billing, etc.) against your agents.

Business metrics are industry-driven and pre-configured per agent. Use businessMetrics.current() to see available metrics and their status.

import { businessMetrics } from '@thinkhive/sdk';
 
// Record a CSAT score from your survey system
await businessMetrics.record('agent_123', {
  metricName: 'CSAT/NPS',
  value: 4.5,
  unit: 'score',
  periodStart: '2025-02-01T00:00:00Z',
  periodEnd: '2025-02-07T23:59:59Z',
  source: 'survey_system',
  sourceDetails: { surveyId: 'survey_456', responseCount: 150 },
});

You can also record metrics in bulk from your data warehouse.

await businessMetrics.recordBatch('agent_123', [
  {
    metricName: 'CSAT/NPS',
    value: 4.5,
    periodStart: '2025-02-01',
    periodEnd: '2025-02-07',
    source: 'survey_system',
  },
  {
    metricName: 'Hours Saved',
    value: 120,
    unit: 'hrs',
    periodStart: '2025-02-01',
    periodEnd: '2025-02-07',
    source: 'ticketing_system',
  },
]);

View correlations

const correlation = await businessMetrics.correlate({
  agentId: 'agent_123',
  qualityMetric: 'groundedness',
  businessMetric: 'csat_score',
  period: '30d',
});
 
console.log(correlation);
// {
//   qualityMetric: 'groundedness',
//   businessMetric: 'csat_score',
//   correlation: 0.73,         // Pearson correlation coefficient
//   pValue: 0.001,             // Statistical significance
//   insight: 'Strong positive correlation: higher groundedness scores
//             are associated with higher CSAT scores.',
//   dataPoints: 1247
// }

ROI Analysis

Configure ROI tracking

import { roiAnalytics } from '@thinkhive/sdk';
 
await roiAnalytics.configure({
  agentId: 'agent_123',
  costModel: {
    aiCostPerInteraction: 0.03,      // LLM API cost per interaction
    humanCostPerInteraction: 12.00,  // Cost of human agent handling same task
    escalationCostPerTicket: 25.00,  // Cost when AI fails and escalates
  },
  revenueModel: {
    conversionRate: 'revenue_impact',  // Business metric to use
  },
});

Get ROI breakdown

const roi = await roiAnalytics.getReport({
  agentId: 'agent_123',
  period: '30d',
});
 
console.log(roi);
// {
//   period: '2025-02-01 to 2025-03-03',
//   totalInteractions: 15000,
//   costs: {
//     aiCost: 450.00,            // 15000 interactions * $0.03
//     escalationCost: 26250.00,  // 1050 escalated * $25
//     totalCost: 26700.00,
//   },
//   savings: {
//     humanAgentCostAvoided: 167400.00,  // 13950 resolved * $12
//     netSavings: 140700.00,             // 167400 - 26700
//   },
//   revenue: {
//     attributedRevenue: 48200.00,
//   },
//   roi: {
//     percentage: 527,      // (140700 / 26700) * 100 ≈ 527% ROI
//     paybackPeriod: '< 1 day',
//   },
//   qualityImpact: {
//     avgGroundedness: 0.87,
//     resolutionRate: 0.93,  // 13950 / 15000
//     csatAverage: 4.2,
//   }
// }

Per-agent ROI comparison

const comparison = await roiAnalytics.compareAgents({
  agentIds: ['agent_support', 'agent_sales', 'agent_onboarding'],
  period: '30d',
});
 
console.log(comparison);
// [
//   { agentId: 'agent_support', roi: 3989, netSavings: 167767, quality: 0.87 },
//   { agentId: 'agent_sales', roi: 2150, netSavings: 89400, quality: 0.82 },
//   { agentId: 'agent_onboarding', roi: 1540, netSavings: 42300, quality: 0.91 },
// ]

Trend Analysis

Track how business outcomes change as you improve AI quality.

const trends = await businessMetrics.trends({
  agentId: 'agent_123',
  metrics: ['csat_score', 'ticket_resolution'],
  period: '90d',
  granularity: 'week',
});
 
console.log(trends);
// {
//   weeks: [
//     { week: '2025-01-06', csat_score: 3.8, ticket_resolution: 0.85 },
//     { week: '2025-01-13', csat_score: 3.9, ticket_resolution: 0.87 },
//     { week: '2025-01-20', csat_score: 4.1, ticket_resolution: 0.90 },
//     // ... improvement trend visible after prompt fix deployed
//   ]
// }

Dashboard Integration

Business metrics appear in the ThinkHive dashboard under Analytics > Business Metrics. You can:

  • View correlation charts between quality and business metrics
  • Set up alerts when business metrics drop below thresholds
  • Export data for executive reporting
// Set up an alert when resolution rate drops
await businessMetrics.createAlert({
  metric: 'ticket_resolution',
  condition: 'average_below',
  threshold: 0.85,
  window: '24h',
  webhook: 'https://your-app.com/alerts',
});

Best Practices

Metric Selection by Use Case

Use CaseKey MetricsTarget
Customer SupportResolution rate, CSAT, escalation rateResolution > 90%
SalesConversion rate, deal size, response qualityConversion > 15%
OnboardingCompletion rate, time to first valueCompletion > 80%
Internal ToolsTime saved, accuracy, adoption rateAdoption > 70%
  1. Start with 2—3 metrics that directly tie to business value — do not try to track everything at once
  2. Record metrics consistently — gaps in data weaken correlation analysis
  3. Allow 2—4 weeks of data collection before drawing conclusions on correlations
  4. Use A/B testing with shadow tests to isolate the impact of AI quality improvements
  5. Share ROI reports with stakeholders to justify continued AI investment

Next Steps