{
  "alt": "Stacked bars for six routing policies. Routing everything by an engine sends nothing to triage and misroutes the most. Among the policies with a cutoff, the classifier sends the larger share to triage and misroutes the least.",
  "caption": "Read each bar from left to right: complaints routed to the product the consumer chose, routed somewhere else, and sent to a person. Policies with a cutoff send their least certain complaints to a person.",
  "data": [
    {
      "outcome": "Routed to the consumer's product",
      "policy": "Jev, triage below the cutoff",
      "share": 73.4
    },
    {
      "outcome": "Routed to another product",
      "policy": "Jev, triage below the cutoff",
      "share": 10.2
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "Jev, triage below the cutoff",
      "share": 16.4
    },
    {
      "outcome": "Routed to the consumer's product",
      "policy": "Luna, triage below the cutoff",
      "share": 81.6
    },
    {
      "outcome": "Routed to another product",
      "policy": "Luna, triage below the cutoff",
      "share": 12.6
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "Luna, triage below the cutoff",
      "share": 5.9
    },
    {
      "outcome": "Routed to the consumer's product",
      "policy": "TF-IDF classifier, triage below the cutoff",
      "share": 53.7
    },
    {
      "outcome": "Routed to another product",
      "policy": "TF-IDF classifier, triage below the cutoff",
      "share": 3.8
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "TF-IDF classifier, triage below the cutoff",
      "share": 42.5
    },
    {
      "outcome": "Routed to the consumer's product",
      "policy": "Jev recalibrated, triage below the cutoff",
      "share": 60.4
    },
    {
      "outcome": "Routed to another product",
      "policy": "Jev recalibrated, triage below the cutoff",
      "share": 4.6
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "Jev recalibrated, triage below the cutoff",
      "share": 35.1
    },
    {
      "outcome": "Routed to the consumer's product",
      "policy": "TF-IDF recalibrated, triage below the cutoff",
      "share": 55
    },
    {
      "outcome": "Routed to another product",
      "policy": "TF-IDF recalibrated, triage below the cutoff",
      "share": 4
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "TF-IDF recalibrated, triage below the cutoff",
      "share": 41
    },
    {
      "outcome": "Routed to the consumer's product",
      "policy": "Jev, route everything",
      "share": 81.8
    },
    {
      "outcome": "Routed to another product",
      "policy": "Jev, route everything",
      "share": 18.1
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "Jev, route everything",
      "share": 0
    },
    {
      "outcome": "Routed to the consumer's product",
      "policy": "Haiku adapter, route everything (no probabilities)",
      "share": 84.4
    },
    {
      "outcome": "Routed to another product",
      "policy": "Haiku adapter, route everything (no probabilities)",
      "share": 15.6
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "Haiku adapter, route everything (no probabilities)",
      "share": 0
    },
    {
      "outcome": "Routed to the consumer's product",
      "policy": "Send everything to triage",
      "share": 0
    },
    {
      "outcome": "Routed to another product",
      "policy": "Send everything to triage",
      "share": 0
    },
    {
      "outcome": "Sent to a person for triage",
      "policy": "Send everything to triage",
      "share": 100
    }
  ],
  "id": "where-complaints-go",
  "source": "CFPB Consumer Complaint Database, 2025 complaints with narratives of at most 3,000 characters; 10,000 sampled, weighted; engine calls October 2026",
  "spec": {
    "category": "policy",
    "colors": {
      "Routed to another product": "cat3",
      "Routed to the consumer's product": "cat1",
      "Sent to a person for triage": "muted"
    },
    "format": {
      "digits": 0
    },
    "group": "outcome",
    "normalize": true,
    "orientation": "h",
    "sort": "data",
    "stack": true,
    "value": "share",
    "valueLabel": "Share of complaints (%)"
  },
  "subtitle": "Where each routing policy sends complaints, percent of complaints, 2025, weighted",
  "title": "At the same cutoff, Jev sends fewer complaints to people and misroutes more, because its stated probabilities run high",
  "type": "bar"
}
