Skip to content
Contents
Decision AI

    Type to search. Planned chapters match by title only.

    Chapter 2.1 · Report

    Resolving and routing customer complaints

    A classifier trained on earlier complaints matches consumers' product choices about as often as Jev once it is fit to the actual mix, and it finds more of the complaints that end in money back, where it passes Jev with far fewer labels than the review task needs.

    Chapter page: the same findings with every figure drawn as a chart.

    Every estimate of the chapter with its interval and every figure as a table, generated from the chapter's data files. Table n of this report is figure n of the chapter. The same report as Markdown: report.md.

    Identification

    Title
    Resolving and routing customer complaints
    Chapter
    2.1 (Part II, Scarce attention; Case studies)
    Question
    Which product team should receive each complaint, when should a person check it first, and can a model tell which complaints will end in money back?
    Dek
    A classifier trained on earlier complaints matches consumers' product choices about as often as Jev once it is fit to the actual mix, and it finds more of the complaints that end in money back, where it passes Jev with far fewer labels than the review task needs.
    Grain
    records
    Status
    draft
    Published
    Updated
    not revised
    Data sources
    • CFPB Consumer Complaint Database. 10,000 complaints received in 2025 with a narrative of at most 3,000 characters, stratified by product; complaints from August 2023 to 2024 for the classifier; weights: sample_weight restores the product mix of the 2025 complaints within the length limit
    Canonical URL
    https://vishalsingh.org/decisionai/resolving-and-routing-customer-complaints
    Markdown
    https://vishalsingh.org/decisionai/resolving-and-routing-customer-complaints/report.md
    BibTeX
    @misc{singh2026resolvingandroutingcustomercomplaints,
      author = {Singh, Vishal},
      title = {Resolving and routing customer complaints},
      year = {2026},
      url = {https://vishalsingh.org/decisionai/resolving-and-routing-customer-complaints},
      note = {In Decision AI. Published 29 October 2026.}
    }

    Principal estimates

    The facts the dek and the opening prose cite, in order of appearance. Every fact is in the table of all estimates below.

    EstimandPopulationPeriodValueIntervalnWeightsSourceFact id
    sample size10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Databasen_complaints
    2025 complaints within the length limit that the sample stands for10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026519,841weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Databasen_population
    top product equals the consumer-selected product10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202681.9%95% CI 80.5% to 83.2%10,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Databaseagree_jev
    top product equals the consumer-selected product10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202682.4%95% CI 81.2% to 83.7%10,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Databaseagree_tfidf

    Findings

    A bank's complaint desk gets a steady stream of written complaints, and each one needs to reach the right team. Send a mortgage complaint to the credit card team and it sits for days before someone sends it back. This chapter asks a decision engine to read each complaint and pick the product it is about, then asks the question every desk manager asks next: when should a person check the engine's pick before it goes out?

    The complaints are 10,00010,000 complaintsEstimandsample sizeWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database sampled from distinct narratives filed with the Consumer Financial Protection Bureau in 2025, standing for 519,841519,841 complaintsEstimand2025 complaints within the length limit that the sample stands forWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database narratives; repeated narratives were removed, which matters because many credit-reporting complaints use the same text. No one rated them by hand. Instead, each complaint carries two answers that already exist: the product the consumer selected when filing, and what the company eventually did about it.

    Jev and a classifier fit to the actual complaint mix match the consumer's product choice about equally often, 82%81.9% percent of complaintsEstimandtop product equals the consumer-selected productInterval95% CI 80.5% to 83.2%n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database and 82%82.4% percent of complaintsEstimandtop product equals the consumer-selected productInterval95% CI 81.2% to 83.7%n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database, and once both are recalibrated the cost comparison shows no clear winner at the assumed costs. So the choice between them rests on what a desk can run and check, and either one still needs people for uncertain complaints. Consumer choices are sometimes wrong, and the costs and review times are assumptions. The chapter follows the desk from automatic routing to human review, a limit on review time and how to spend it, then takes up one companion question: which complaints end in money back.

    The decision
    Owner and actions
    The complaint desk lead decides where each complaint goes; operations owns the cost of delay.
    Evidence at decision time
    The complaint narrative as the consumer wrote it, and nothing added later.
    Simplest alternative
    A word-counting classifier trained on complaints from earlier years.
    What establishes correctness
    The consumer's own product choice, which is sometimes wrong, and the company's recorded response.
    When the model is wrong or cannot decide
    A misrouted complaint waits days for the right team; a person reviewing every complaint costs staff time.
    Does the policy pay
    Expected cost per thousand complaints under stated costs for misroutes and triage.

    Picking the product

    Each engine saw the narrative and a list of eleven products with a short definition of each, and picked one. Jev and Luna also returned a probability for every product; the Haiku adapter returned only its pick. The chart compares how often the top pick matches what the consumer chose.

    Jev agrees on 82%81.9% percent of complaintsEstimandtop product equals the consumer-selected productInterval95% CI 80.5% to 83.2%n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database of complaints and the classifier on 82%82.4% percent of complaintsEstimandtop product equals the consumer-selected productInterval95% CI 81.2% to 83.7%n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database, a gap of −0.6 (95% CI −1.9 to 0.7)−0.6 percentage pointsEstimandjev minus tfidfInterval95% CI −1.9 to 0.7n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database points. How the classifier is trained decides this comparison. The training sample holds equal numbers of each product, and fitting it without weights drops the classifier to 78%78.2% percent of complaintsEstimandagreement for a classifier fit without weightsn10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database, while the weighted fit does poorly on rare products: counted equally across products, Jev scores 75%75.2% percent of complaints, each product counted equallyEstimandmean agreement across the eleven productsn10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database and the classifier 64%63.6% percent of complaints, each product counted equallyEstimandmean agreement across the eleven productsn10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database. Jev costs about $0.05$0.05 US dollars per 1,000 complaintsEstimandmean billed cost per call, list priceWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database per thousand complaints.

    Agreement is a soft score here. Consumers choose their own product from a form, and some choose badly: a complaint about a debt collector chasing a credit card balance can honestly belong to either team. The flows below show where Jev and the consumers part ways. The largest disagreements run between credit reporting and debt collection, two products that often appear in the same complaint.

    Routing flows

    Most complaints land in the product the consumer chose; the largest other flows run between credit reporting and debt collection

    Weighted flows from consumer-selected product to Jev's predicted product, 2025 complaints

    • Same category (solid)
    • Another category (hatched)
    Checking or savings to Checking or savings: 6.9% of all items, 734 unweightedChecking or savings to Credit card: 0.6% of all items, 59 unweightedChecking or savings to Credit reporting: 0.1% of all items, 9 unweightedChecking or savings to Debt collection: 0.0% of all items, 5 unweightedChecking or savings to Money transfer: 0.7% of all items, 80 unweightedChecking or savings to Mortgage: 0.0% of all items, 1 unweightedChecking or savings to Payday or personal loan: 0.1% of all items, 6 unweightedChecking or savings to Prepaid card: 0.1% of all items, 12 unweightedChecking or savings to Vehicle loan or lease: 0.0% of all items, 3 unweightedCredit card to Checking or savings: 0.2% of all items, 26 unweightedCredit card to Credit card: 5.9% of all items, 766 unweightedCredit card to Credit reporting: 0.5% of all items, 59 unweightedCredit card to Debt collection: 0.2% of all items, 22 unweightedCredit card to Debt or credit management: 0.0% of all items, 2 unweightedCredit card to Money transfer: 0.1% of all items, 13 unweightedCredit card to Mortgage: 0.0% of all items, 1 unweightedCredit card to Payday or personal loan: 0.1% of all items, 10 unweightedCredit card to Prepaid card: 0.1% of all items, 9 unweightedCredit reporting to Checking or savings: 0.4% of all items, 6 unweightedCredit reporting to Credit card: 1.7% of all items, 28 unweightedCredit reporting to Credit reporting: 46.6% of all items, 769 unweightedCredit reporting to Debt collection: 2.7% of all items, 44 unweightedCredit reporting to Debt or credit management: 0.1% of all items, 1 unweightedCredit reporting to Money transfer: 0.1% of all items, 2 unweightedCredit reporting to Mortgage: 0.4% of all items, 6 unweightedCredit reporting to Payday or personal loan: 0.5% of all items, 9 unweightedCredit reporting to Student loan: 1.4% of all items, 23 unweightedCredit reporting to Vehicle loan or lease: 1.3% of all items, 22 unweightedDebt collection to Checking or savings: 0.0% of all items, 2 unweightedDebt collection to Credit card: 0.7% of all items, 46 unweightedDebt collection to Credit reporting: 2.8% of all items, 187 unweightedDebt collection to Debt collection: 9.5% of all items, 639 unweightedDebt collection to Debt or credit management: 0.0% of all items, 3 unweightedDebt collection to Money transfer: 0.0% of all items, 2 unweightedDebt collection to Mortgage: 0.0% of all items, 3 unweightedDebt collection to Payday or personal loan: 0.2% of all items, 11 unweightedDebt collection to Student loan: 0.1% of all items, 4 unweightedDebt collection to Vehicle loan or lease: 0.2% of all items, 12 unweightedDebt or credit management to Checking or savings: 0.0% of all items, 33 unweightedDebt or credit management to Credit card: 0.0% of all items, 78 unweightedDebt or credit management to Credit reporting: 0.1% of all items, 190 unweightedDebt or credit management to Debt collection: 0.1% of all items, 191 unweightedDebt or credit management to Debt or credit management: 0.2% of all items, 300 unweightedDebt or credit management to Money transfer: 0.0% of all items, 20 unweightedDebt or credit management to Mortgage: 0.0% of all items, 26 unweightedDebt or credit management to Payday or personal loan: 0.0% of all items, 35 unweightedDebt or credit management to Prepaid card: 0.0% of all items, 5 unweightedDebt or credit management to Student loan: 0.0% of all items, 13 unweightedDebt or credit management to Vehicle loan or lease: 0.0% of all items, 18 unweightedMoney transfer to Checking or savings: 0.7% of all items, 90 unweightedMoney transfer to Credit card: 0.2% of all items, 25 unweightedMoney transfer to Credit reporting: 0.0% of all items, 2 unweightedMoney transfer to Debt collection: 0.0% of all items, 1 unweightedMoney transfer to Debt or credit management: 0.0% of all items, 1 unweightedMoney transfer to Money transfer: 6.0% of all items, 777 unweightedMoney transfer to Payday or personal loan: 0.0% of all items, 5 unweightedMoney transfer to Prepaid card: 0.0% of all items, 4 unweightedMoney transfer to Vehicle loan or lease: 0.0% of all items, 3 unweightedMortgage to Checking or savings: 0.0% of all items, 8 unweightedMortgage to Credit card: 0.0% of all items, 6 unweightedMortgage to Credit reporting: 0.0% of all items, 9 unweightedMortgage to Debt collection: 0.0% of all items, 13 unweightedMortgage to Debt or credit management: 0.0% of all items, 1 unweightedMortgage to Money transfer: 0.0% of all items, 2 unweightedMortgage to Mortgage: 2.2% of all items, 845 unweightedMortgage to Payday or personal loan: 0.1% of all items, 20 unweightedMortgage to Student loan: 0.0% of all items, 1 unweightedMortgage to Vehicle loan or lease: 0.0% of all items, 4 unweightedPayday or personal loan to Checking or savings: 0.0% of all items, 23 unweightedPayday or personal loan to Credit card: 0.1% of all items, 48 unweightedPayday or personal loan to Credit reporting: 0.1% of all items, 54 unweightedPayday or personal loan to Debt collection: 0.1% of all items, 88 unweightedPayday or personal loan to Debt or credit management: 0.0% of all items, 6 unweightedPayday or personal loan to Money transfer: 0.0% of all items, 6 unweightedPayday or personal loan to Mortgage: 0.0% of all items, 17 unweightedPayday or personal loan to Payday or personal loan: 1.0% of all items, 623 unweightedPayday or personal loan to Prepaid card: 0.0% of all items, 1 unweightedPayday or personal loan to Student loan: 0.0% of all items, 7 unweightedPayday or personal loan to Vehicle loan or lease: 0.1% of all items, 36 unweightedPrepaid card to Checking or savings: 0.1% of all items, 109 unweightedPrepaid card to Credit card: 0.1% of all items, 96 unweightedPrepaid card to Credit reporting: 0.0% of all items, 3 unweightedPrepaid card to Debt collection: 0.0% of all items, 6 unweightedPrepaid card to Money transfer: 0.1% of all items, 153 unweightedPrepaid card to Mortgage: 0.0% of all items, 2 unweightedPrepaid card to Payday or personal loan: 0.0% of all items, 7 unweightedPrepaid card to Prepaid card: 0.4% of all items, 533 unweightedStudent loan to Checking or savings: 0.0% of all items, 1 unweightedStudent loan to Credit card: 0.0% of all items, 8 unweightedStudent loan to Credit reporting: 0.1% of all items, 58 unweightedStudent loan to Debt collection: 0.1% of all items, 25 unweightedStudent loan to Money transfer: 0.0% of all items, 1 unweightedStudent loan to Mortgage: 0.0% of all items, 2 unweightedStudent loan to Payday or personal loan: 0.0% of all items, 22 unweightedStudent loan to Prepaid card: 0.0% of all items, 2 unweightedStudent loan to Student loan: 1.7% of all items, 790 unweightedVehicle loan or lease to Checking or savings: 0.0% of all items, 5 unweightedVehicle loan or lease to Credit card: 0.1% of all items, 24 unweightedVehicle loan or lease to Credit reporting: 0.2% of all items, 69 unweightedVehicle loan or lease to Debt collection: 0.1% of all items, 32 unweightedVehicle loan or lease to Debt or credit management: 0.0% of all items, 1 unweightedVehicle loan or lease to Money transfer: 0.0% of all items, 1 unweightedVehicle loan or lease to Mortgage: 0.0% of all items, 4 unweightedVehicle loan or lease to Payday or personal loan: 0.1% of all items, 31 unweightedVehicle loan or lease to Prepaid card: 0.0% of all items, 1 unweightedVehicle loan or lease to Student loan: 0.0% of all items, 2 unweightedVehicle loan or lease to Vehicle loan or lease: 1.7% of all items, 739 unweightedChecking or savings, 8.5%Credit card, 7.0%Credit reporting, 55.1%Debt collection, 13.5%Debt or credit management,0.5%Money transfer, 7.0%Mortgage, 2.3%Payday or personal loan, 1.4%Prepaid card, 0.7%Student loan, 1.9%Vehicle loan or lease, 2.0%Checking or savings, 8.3%Credit card, 9.3%Credit reporting, 50.4%Debt collection, 12.8%Debt or credit management,0.3%Money transfer, 7.1%Mortgage, 2.6%Payday or personal loan, 2.0%Prepaid card, 0.6%Student loan, 3.1%Vehicle loan or lease, 3.3%

    Select a category (click, or Tab to it and press Enter) to highlight its flows; Escape or a second press clears.

    81.9% of 9,998 items (weighted) are predicted in their recorded category by Jev 1.14.0. The largest flow to another category is Debt collection to Credit reporting, 2.8% of all items.

    Show data
    Data for Most complaints land in the product the consumer chose; the largest other flows run between credit reporting and debt collection
    Consumer-selected productJev's predicted productSame categoryShare of all items, weighted (%)Share of the consumer-selected product row, weighted (%)Items (unweighted)
    Checking or savingsChecking or savingsyes6.980.7734
    Checking or savingsCredit cardno0.66.559
    Checking or savingsCredit reportingno0.11.09
    Checking or savingsDebt collectionno0.00.65
    Checking or savingsMoney transferno0.78.880
    Checking or savingsMortgageno0.00.11
    Checking or savingsPayday or personal loanno0.10.76
    Checking or savingsPrepaid cardno0.11.312
    Checking or savingsVehicle loan or leaseno0.00.33
    Credit cardChecking or savingsno0.22.926
    Credit cardCredit cardyes5.984.4766
    Credit cardCredit reportingno0.56.559
    Credit cardDebt collectionno0.22.422
    Credit cardDebt or credit managementno0.00.22
    Credit cardMoney transferno0.11.413
    Credit cardMortgageno0.00.11
    Credit cardPayday or personal loanno0.11.110
    Credit cardPrepaid cardno0.11.09
    Credit reportingChecking or savingsno0.40.76
    Credit reportingCredit cardno1.73.128
    Credit reportingCredit reportingyes46.684.5769
    Credit reportingDebt collectionno2.74.844
    Credit reportingDebt or credit managementno0.10.11
    Credit reportingMoney transferno0.10.22
    Credit reportingMortgageno0.40.76
    Credit reportingPayday or personal loanno0.51.09
    Credit reportingStudent loanno1.42.523
    Credit reportingVehicle loan or leaseno1.32.422
    Debt collectionChecking or savingsno0.00.22
    Debt collectionCredit cardno0.75.146
    Debt collectionCredit reportingno2.820.6187
    Debt collectionDebt collectionyes9.570.3639
    Debt collectionDebt or credit managementno0.00.33
    Debt collectionMoney transferno0.00.22
    Debt collectionMortgageno0.00.33
    Debt collectionPayday or personal loanno0.21.211
    Debt collectionStudent loanno0.10.44
    Debt collectionVehicle loan or leaseno0.21.312
    Debt or credit managementChecking or savingsno0.03.633
    Debt or credit managementCredit cardno0.08.578
    Debt or credit managementCredit reportingno0.120.9190
    Debt or credit managementDebt collectionno0.121.1191
    Debt or credit managementDebt or credit managementyes0.233.0300
    Debt or credit managementMoney transferno0.02.120
    Debt or credit managementMortgageno0.02.826
    Debt or credit managementPayday or personal loanno0.03.835
    Debt or credit managementPrepaid cardno0.00.65
    Debt or credit managementStudent loanno0.01.513
    Debt or credit managementVehicle loan or leaseno0.01.918
    Money transferChecking or savingsno0.79.990
    Money transferCredit cardno0.22.825
    Money transferCredit reportingno0.00.22
    Money transferDebt collectionno0.00.11
    Money transferDebt or credit managementno0.00.11
    Money transferMoney transferyes6.085.6777
    Money transferPayday or personal loanno0.00.55
    Money transferPrepaid cardno0.00.44
    Money transferVehicle loan or leaseno0.00.33
    MortgageChecking or savingsno0.00.98
    MortgageCredit cardno0.00.66
    MortgageCredit reportingno0.01.09
    MortgageDebt collectionno0.01.413
    MortgageDebt or credit managementno0.00.11
    MortgageMoney transferno0.00.22
    MortgageMortgageyes2.293.0845
    MortgagePayday or personal loanno0.12.220
    MortgageStudent loanno0.00.11
    MortgageVehicle loan or leaseno0.00.44
    Payday or personal loanChecking or savingsno0.02.523
    Payday or personal loanCredit cardno0.15.348
    Payday or personal loanCredit reportingno0.15.954
    Payday or personal loanDebt collectionno0.19.788
    Payday or personal loanDebt or credit managementno0.00.66
    Payday or personal loanMoney transferno0.00.66
    Payday or personal loanMortgageno0.01.817
    Payday or personal loanPayday or personal loanyes1.068.6623
    Payday or personal loanPrepaid cardno0.00.11
    Payday or personal loanStudent loanno0.00.87
    Payday or personal loanVehicle loan or leaseno0.14.036
    Prepaid cardChecking or savingsno0.112.0109
    Prepaid cardCredit cardno0.110.696
    Prepaid cardCredit reportingno0.00.33
    Prepaid cardDebt collectionno0.00.76
    Prepaid cardMoney transferno0.116.8153
    Prepaid cardMortgageno0.00.32
    Prepaid cardPayday or personal loanno0.00.77
    Prepaid cardPrepaid cardyes0.458.6533
    Student loanChecking or savingsno0.00.11
    Student loanCredit cardno0.00.98
    Student loanCredit reportingno0.16.458
    Student loanDebt collectionno0.12.825
    Student loanMoney transferno0.00.11
    Student loanMortgageno0.00.22
    Student loanPayday or personal loanno0.02.422
    Student loanPrepaid cardno0.00.22
    Student loanStudent loanyes1.786.9790
    Vehicle loan or leaseChecking or savingsno0.00.55
    Vehicle loan or leaseCredit cardno0.12.624
    Vehicle loan or leaseCredit reportingno0.27.669
    Vehicle loan or leaseDebt collectionno0.13.532
    Vehicle loan or leaseDebt or credit managementno0.00.11
    Vehicle loan or leaseMoney transferno0.00.11
    Vehicle loan or leaseMortgageno0.00.44
    Vehicle loan or leasePayday or personal loanno0.13.431
    Vehicle loan or leasePrepaid cardno0.00.11
    Vehicle loan or leaseStudent loanno0.00.22
    Vehicle loan or leaseVehicle loan or leaseyes1.781.3739
    Follow the bands that change product. Some are engine errors and some are consumers who picked the wrong product; these data cannot tell which.Source: CFPB Consumer Complaint Database, 2025 complaints with narratives of at most 3,000 characters; 10,000 sampled, weighted

    When to ask a person first

    Suppose a misrouted complaint costs $30$30 US dollars per misrouted complaintEstimandassumed cost: three days of delay at $10Weightsnot applicable; assumed inputsPopulationthe complaint desk's routing decision (assumed inputs)Periodassumed inputs, October 2026SourceCFPB Consumer Complaint Database in delay and sending a complaint to a person for triage costs $6$6 US dollars per complaint sent to triageEstimandassumed cost: four minutes of a triage handlerWeightsnot applicable; assumed inputsPopulationthe complaint desk's routing decision (assumed inputs)Periodassumed inputs, October 2026SourceCFPB Consumer Complaint Database of staff time. Routing pays when the chance the pick is right is high enough that the expected misroute cost falls below the triage cost. At these costs the cutoff is 0.80.8 probability that the top product is rightEstimand1 minus triage cost over misroute costWeightsnot applicable; assumed inputsPopulationthe complaint desk's routing decision (assumed inputs)Periodassumed inputs, October 2026SourceCFPB Consumer Complaint Database: route when the model is more sure than that, and send everything else to a person.

    Triage band

    Automate, review or triage

    Loading data

    The next chart shows what each policy does with the whole stream of complaints.

    With the cutoff taken at face value, Jev sends 16%16.4% percent of complaintsEstimandsent to triageWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database of complaints to a person and misroutes 10%10.2% percent of complaintsEstimandrouted to a product other than the consumer'sWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database, and the classifier sends 43%42.5% percent of complaintsEstimandsent to triageWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database and misroutes 4%3.8% percent of complaintsEstimandrouted to a product other than the consumer'sWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database. Priced at the assumed costs, that is $4,054$4,054 US dollars per 1,000 complaintsEstimandexpected misroute and triage costInterval95% CI $3,740 to $4,384n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs; measured error mix against the consumer's product. per thousand complaints for Jev and $3,685$3,685 US dollars per 1,000 complaintsEstimandexpected misroute and triage costInterval95% CI $3,482 to $3,893n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs; measured error mix against the consumer's product. for the classifier. Routing everything by Jev with no check costs $5,442$5,442 US dollars per 1,000 complaintsEstimandexpected misroute and triage costInterval95% CI $5,041 to $5,861n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs; measured error mix against the consumer's product., and sending everything to a person costs $6,000$6,000 US dollars per 1,000 complaintsEstimandexpected misroute and triage costInterval95% CI $6,000 to $6,000n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs; measured error mix against the consumer's product..

    The gap of +$368 (95% CI $97 to $655)+$368 US dollars per 1,000 complaintsEstimandjev_cut minus the classifier with a cutoffInterval95% CI $97 to $655n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database is about calibration more than about reading. Jev's stated probabilities run high, so it routes complaints it should send to a person. Recalibrate both models on other folds of the sample and Jev costs $3,471$3,471 US dollars per 1,000 complaintsEstimandexpected misroute and triage costInterval95% CI $3,243 to $3,709n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs; measured error mix against the consumer's product., sending 35%35.1% percent of complaintsEstimandsent to triageWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database to a person, against $3,666$3,666 US dollars per 1,000 complaintsEstimandexpected misroute and triage costInterval95% CI $3,466 to $3,885n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs; measured error mix against the consumer's product. for the classifier.

    Policy comparison

    With a cutoff, every model sends a share of complaints to people and misroutes fewer

    Expected cost per 1,000 complaints, misroute and triage shares by routing policy, with 95% intervals; 2025 complaints, weighted

    Policyderivedmeasuredmeasured
    Jev, triage below the cutoff (chapter policy)$4,054 ($3,740–$4,384)10.2% (9.2%–11.3%)16.4% (15.1%–17.8%)
    Luna, triage below the cutoff$4,127 ($3,797–$4,457)12.6% (11.5%–13.7%)5.9% (5.1%–6.7%)
    TF-IDF classifier, triage below the cutoff$3,685 ($3,482–$3,893)3.8% (3.1%–4.4%)42.5% (40.8%–44.2%)
    Jev recalibrated, triage below the cutoff$3,471 ($3,243–$3,709)4.6% (3.8%–5.3%)35.1% (33.4%–36.9%)
    TF-IDF recalibrated, triage below the cutoff$3,666 ($3,466–$3,885)4.0% (3.4%–4.7%)41.0% (39.4%–42.7%)
    Jev, route everything$5,442 ($5,041–$5,861)18.1% (16.8%–19.5%)0.0% (0.0%–0.0%)
    Haiku adapter, route everything (no probabilities)$4,683 ($4,354–$5,011)15.6% (14.5%–16.7%)0.0% (0.0%–0.0%)
    Send everything to triage$6,000 ($6,000–$6,000)0.0% (0.0%–0.0%)100.0% (100.0%–100.0%)

    n = 10,000 items. Intervals are paired bootstrap 95% intervals from the pipeline.

    Jev, triage below the cutoff: expected cost per 1,000 $4,054 (95% interval $3,740 to $4,384). Jev recalibrated, triage below the cutoff has the lowest point estimate on this measure, $3,471 (95% interval $3,243 to $3,709).

    Show data
    Data for With a cutoff, every model sends a share of complaints to people and misroutes fewer
    PolicyExpected cost per 1,000Lower 95%Upper 95%MisroutedLower 95%Upper 95%Sent to triageLower 95%Upper 95%
    Jev, triage below the cutoff40543740438410.29.211.316.415.117.8
    Luna, triage below the cutoff41273797445712.611.513.75.95.16.7
    TF-IDF classifier, triage below the cutoff3685348238933.83.14.442.540.844.2
    Jev recalibrated, triage below the cutoff3471324337094.63.85.335.133.436.9
    TF-IDF recalibrated, triage below the cutoff3666346638854.03.44.741.039.442.7
    Jev, route everything54425041586118.116.819.50.00.00.0
    Haiku adapter, route everything (no probabilities)46834354501115.614.516.70.00.00.0
    Send everything to triage6000600060000.00.00.0100.0100.0100.0
    Read across a row: what a policy costs and where its cost comes from. Costs are assumed; misroutes are counted against the consumer's own product choice.Source: CFPB Consumer Complaint Database, 2025 complaints; 10,000 sampled, weighted; engine calls October 2026

    That comparison gives both models plenty of labels. A desk starting out would have few, so the next chart gives both the same labeled complaints from earlier years.

    With five hundred labels, recalibrated Jev costs $3,600$3,613 US dollars per thousand complaintsEstimandexpected misroute and triage cost at the cutoff, mean across label drawsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintsPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs. Both arms use the same labeled draws. per thousand complaints, against $4,100$4,054 US dollars per thousand complaintsEstimandraw Jev, no local fittingWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintsPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database for raw Jev and $4,800$4,792 US dollars per thousand complaintsEstimandexpected misroute and triage cost at the cutoff, mean across label drawsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintsPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs. Both arms use the same labeled draws. for a classifier fit on those labels. With the full sample the classifier comes closer, at $3,700$3,742 US dollars per thousand complaintsEstimandexpected misroute and triage cost at the cutoff, mean across label drawsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintsPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs. Both arms use the same labeled draws. against $3,500$3,542 US dollars per thousand complaintsEstimandexpected misroute and triage cost at the cutoff, mean across label drawsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintsPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed costs. Both arms use the same labeled draws.. Labels from earlier years are what a desk would really have, and these figures leave out what each model costs to run.

    When reviewer time is fixed

    So far a person has been free to read as many complaints as the cutoff sends. Suppose the desk instead has 400400 reviewer minutes per 1,000 complaintsEstimandassumed review budgetWeightsnot applicable; assumed inputsPopulationthe complaint desk's routing decision (assumed inputs)Periodassumed inputs, October 2026SourceCFPB Consumer Complaint Database reviewer minutes for every thousand complaints, and everything outside the queue goes where Jev's pick sends it. Which complaints should a person read? The complaints and the costs stay as they were; what changes is that the desk can no longer send a person everything below the cutoff.

    Uncertainty is one reason to look at a complaint. Consequence is another, so the queue below also uses a second model. Its estimate of money back, from the companion section that follows, stands in for a misroute that matters more, under an assumed extra cost. It is a proxy and not a measured loss from a misroute. Read the columns separately, because review workload, misroutes, misrouted money-back complaints and assumed dollars can move in different directions.

    Policy comparison

    With reviewer time fixed, ranking by consequence and length changes which misroutes get caught

    Outcomes per 1,000 complaints with 400 reviewer minutes per 1,000 complaints spent on Jev's routing picks, with 95% intervals; 2025 complaints, weighted

    Policyderivedmeasuredmeasuredderived
    Review by expected loss per minute (chapter policy)20.2% (18.8%–21.6%)98.2 (87.0–109.5)1.06 (0.50–1.73)$3,074 ($2,732–$3,429)
    No review0.0% (0.0%–0.0%)181.5 (168.2–195.6)3.18 (2.26–4.20)$5,827 ($5,402–$6,277)
    Review the least certain picks14.3% (13.1%–15.6%)110.4 (99.4–121.6)1.57 (0.89–2.31)$3,499 ($3,144–$3,852)
    Review by expected loss14.1% (13.0%–15.3%)114.7 (103.6–126.1)1.14 (0.54–1.88)$3,579 ($3,229–$3,944)

    n = 10,000 items. Intervals are paired bootstrap 95% intervals from the pipeline.

    Review by expected loss per minute: complaints reviewed 20.2% (95% interval 18.8% to 21.6%). It has the highest point estimate on this measure.

    Show data
    Data for With reviewer time fixed, ranking by consequence and length changes which misroutes get caught
    PolicyComplaints reviewedLower 95%Upper 95%Misroutes leftLower 95%Upper 95%Misrouted money-back complaints leftLower 95%Upper 95%Expected costLower 95%Upper 95%
    Review by expected loss per minute20.218.821.698.287.0109.51.060.501.73307427323429
    No review0.00.00.0181.5168.2195.63.182.264.20582754026277
    Review the least certain picks14.313.115.6110.499.4121.61.570.892.31349931443852
    Review by expected loss14.113.015.3114.7103.6126.11.140.541.88357932293944
    Read down each column. Every queue spends the same reviewer minutes, and complaints outside it go where Jev's pick sends them. Review time, reviewer accuracy and costs are assumed; misroutes are counted against the consumer's product.Source: CFPB Consumer Complaint Database, 2025 distinct narratives; 10,000 sampled, weighted; engine calls October 2026; assumed review time and costs

    Reviewing the least certain picks is the natural rule, and it leaves 110.4110.4 misroutes left per 1,000 complaintsEstimandreview queue of 400 reviewer minutes per 1,000 complaintsInterval95% CI 99.4 to 121.6n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product. misroutes per thousand complaints, down from 181.5181.5 misroutes left per 1,000 complaintsEstimandreview queue of 400 reviewer minutes per 1,000 complaintsInterval95% CI 168.2 to 195.6n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product. with no review. Adding the consequence moves attention toward complaints that may involve money, leaving 1.141.14 misrouted money-back complaints left per 1,000 complaintsEstimandreview queue of 400 reviewer minutes per 1,000 complaintsInterval95% CI 0.54 to 1.88n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product. misrouted money-back complaints against 1.571.57 misrouted money-back complaints left per 1,000 complaintsEstimandreview queue of 400 reviewer minutes per 1,000 complaintsInterval95% CI 0.89 to 2.31n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product., a difference of −0.43 (95% CI −0.91 to 0.09)−0.43 per 1,000 complaintsEstimandvalue minus reviewing the least certain, left_moneyInterval95% CI −0.91 to 0.09n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database, whose range includes zero. Adding review time changes more: because short complaints take less time, the same minutes cover 20%20.2% percent of complaints reviewedEstimandreview queue of 400 reviewer minutes per 1,000 complaintsInterval95% CI 18.8% to 21.6%n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product. of complaints instead of 14%14.3% percent of complaints reviewedEstimandreview queue of 400 reviewer minutes per 1,000 complaintsInterval95% CI 13.1% to 15.6%n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint DatabaseNoteAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product., and the expected cost changes by −425 (95% CI −639 to −198)−425 per 1,000 complaintsEstimandvalue_per_minute minus reviewing the least certain, costInterval95% CI −639 to −198n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database dollars per thousand. That gain rests on the assumed link between length and review time, and on a short complaint being reviewed as accurately as a long one. A desk would need to measure both before running this queue.

    A companion question: which complaints end in money back

    This is a different job from routing: it predicts what a company will do later, not what a complaint is about. A desk might fast-track complaints that are likely to end with the company paying the consumer back. Only 3%2.6% percent of complaintsEstimandcompany response is closed with monetary reliefWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database of these complaints closed with monetary relief, so finding them early matters. Each engine was asked whether the consumer describes money the company could return, and the classifier was trained directly on which earlier complaints ended in relief.

    Fast-tracking the tenth of complaints the classifier ranks highest would catch 73%73.1% percent of complaints closed with monetary reliefEstimandshare caught by fast-tracking the tenth of complaints with the highest P(money back)Interval95% CI 68.4% to 77.9%Weightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database of the money-back cases, against 58%58.2% percent of complaints closed with monetary reliefEstimandshare caught by fast-tracking the tenth of complaints with the highest P(money back)Interval95% CI 53.0% to 63.4%Weightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database for Jev, a gap of +14.9 (95% CI 8.9 to 20.4)+14.9 percentage pointsEstimandclassifier minus JevInterval95% CI 8.9 to 20.4n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database points. Much of any model's score here comes from knowing the product, because money back is far more common for some products than others: ranking complaints by their product's past rate alone gives an AUC of 0.9060.906 area under the ROC curveEstimandranking complaints by their product's relief rate in the training yearsn10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database, above Jev's 0.8950.895 area under the ROC curveEstimandP(money back) against closed with monetary reliefInterval95% CI 0.881 to 0.908n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database. Within a product, the classifier's lead narrows to 0.7690.769 area under the ROC curveEstimandmean across products of the AUC within each product that has both outcomesInterval95% CI 0.736 to 0.802n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database against 0.7420.742 area under the ROC curveEstimandmean across products of the AUC within each product that has both outcomesInterval95% CI 0.709 to 0.770n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database, a difference of +0.027 (95% CI −0.009 to 0.065)+0.027 difference in AUCEstimandclassifier minus Jev, within productInterval95% CI −0.009 to 0.065n10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database. The engine answers the question it was asked, whether the consumer describes a refundable loss. The classifier learned from history which complaints companies actually paid. One reading is that history carries information a single complaint does not, though this comparison cannot separate that from the difference in the question asked, the number of labels or calibration.

    Could a better prompt close the gap? On a random subset of complaints, the engines were asked a sharper question, whether the company will likely give money back, in three ways: on its own, with ten earlier complaints labeled paid or not paid, and with a short description of what tended to get paid in earlier years.

    The sharper question and the description together help a little, and rewording alone accounts for much of that. The labeled examples add little. None of the versions brings the engines level with the classifier. How much history does the classifier need? Refit on smaller samples of past complaints, it matches Jev at about a thousand.

    The classifier catches 49%49.3% percent of complaints closed with monetary reliefEstimandmean top-tenth capture over refits on 300 labeled complaintsn10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database with three hundred past complaints, 59%58.8% percent of complaints closed with monetary reliefEstimandmean top-tenth capture over refits on 1,000 labeled complaintsn10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database with a thousand and 66%66.4% percent of complaints closed with monetary reliefEstimandmean top-tenth capture over refits on 3,000 labeled complaintsn10,000 complaintsWeightsweighted to the product mix of those complaints (sample_weight)Population10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 charactersPeriodcomplaints received in 2025; engines called October 2026SourceCFPB Consumer Complaint Database with three thousand. That is far fewer labels than the review task needed, and a desk already has these records, because its own case system stores how each complaint closed.

    These counts include calibration labels held out from each sample, and the complaints being scored are not used. They describe this classifier on these records, so treat them as a guide for a pilot. Whether a desk should build this model also depends on whether outcomes arrive in time, whether old records resemble today's complaints, and whether money back is what the desk wants to prioritize.

    What these data cannot show

    The routing score compares the engine with the consumer's own product choice, so some of what looks like engine error is consumer error, and these data cannot say how much. The money-back label is what the company did, which depends on the company as much as the complaint. The costs are assumptions, so the comparisons show how policies trade off under them and are not measured savings. The sample describes distinct narratives, not every filing, and money back is more common among them than among all filed complaints. The complaints are limited to narratives of at most 3,0003,000 charactersEstimandlength cap of the stored narrativesWeightsnot applicablePopulationCFPB narratives in the July 2026 copyPeriod2025SourceCFPB Consumer Complaint Database characters, which leaves out 8%7.7% percent of deduplicated 2025 complaints with a narrativeEstimandnarratives over 3,000 characters, excludedWeightsfull countPopulationdeduplicated 2025 CFPB complaints with a narrativePeriod2025SourceCFPB Consumer Complaint Database of 2025 complaints with a narrative, because the public narratives were withdrawn in August 2026 and only a cut copy remains.

    Tables

    Table 1. A classifier trained on earlier complaints agrees with consumers' product choices about as often as Jev

    Complaints whose predicted product matches the one the consumer selected, percent, by model, with 95% intervals

    agreeconf_highconf_lowkindmodeln
    81.9083.2080.50Decision engineJev 1.14.010,000
    84.2085.3082.90Decision engineOpenAI Luna10,000
    84.4085.5083.30General language modelClaude Haiku adapter10,000
    82.4083.7081.20Trained classifierTF-IDF + logistic10,000

    Note: Jev minus the classifier: −0.6 percentage points, from a bootstrap that resamples complaints within products.

    Source: CFPB Consumer Complaint Database, 2025 complaints with narratives of at most 3,000 characters; 10,000 sampled, weighted; engine calls October 2026

    Data: vishalsingh.org/decisionai/report/resolving-and-routing-customer-complaints/figures/agree-by-model.json

    Table 2. At the same cutoff, Jev sends fewer complaints to people and misroutes more, because its stated probabilities run high

    Where each routing policy sends complaints, percent of complaints, 2025, weighted

    outcomepolicyshare
    Routed to the consumer's productJev, triage below the cutoff73.40
    Routed to another productJev, triage below the cutoff10.20
    Sent to a person for triageJev, triage below the cutoff16.40
    Routed to the consumer's productLuna, triage below the cutoff81.60
    Routed to another productLuna, triage below the cutoff12.60
    Sent to a person for triageLuna, triage below the cutoff5.90
    Routed to the consumer's productTF-IDF classifier, triage below the cutoff53.70
    Routed to another productTF-IDF classifier, triage below the cutoff3.80
    Sent to a person for triageTF-IDF classifier, triage below the cutoff42.50
    Routed to the consumer's productJev recalibrated, triage below the cutoff60.40
    Routed to another productJev recalibrated, triage below the cutoff4.60
    Sent to a person for triageJev recalibrated, triage below the cutoff35.10
    Routed to the consumer's productTF-IDF recalibrated, triage below the cutoff55
    Routed to another productTF-IDF recalibrated, triage below the cutoff4
    Sent to a person for triageTF-IDF recalibrated, triage below the cutoff41
    Routed to the consumer's productJev, route everything81.80
    Routed to another productJev, route everything18.10
    Sent to a person for triageJev, route everything0
    Routed to the consumer's productHaiku adapter, route everything (no probabilities)84.40
    Routed to another productHaiku adapter, route everything (no probabilities)15.60
    Sent to a person for triageHaiku adapter, route everything (no probabilities)0
    Routed to the consumer's productSend everything to triage0
    Routed to another productSend everything to triage0
    Sent to a person for triageSend everything to triage100

    Source: CFPB Consumer Complaint Database, 2025 complaints with narratives of at most 3,000 characters; 10,000 sampled, weighted; engine calls October 2026

    Data: vishalsingh.org/decisionai/report/resolving-and-routing-customer-complaints/figures/where-complaints-go.json

    Table 3. For the same labels, recalibrating Jev costs less than fitting a classifier at every size tried

    Expected routing cost per thousand complaints against local labels used, weighted; whiskers run from the lowest to the highest draw

    conf_highconf_lowcostlabelsmodeln_labels
    117204815628950 labelsClassifier, fit and calibrated on these labels50
    43953471389950 labelsJev, recalibrated on these labels50
    664344175303100 labelsClassifier, fit and calibrated on these labels100
    530835944128100 labelsJev, recalibrated on these labels100
    600047335125200 labelsClassifier, fit and calibrated on these labels200
    455634713868200 labelsJev, recalibrated on these labels200
    585144684792500 labelsClassifier, fit and calibrated on these labels500
    376935323613500 labelsJev, recalibrated on these labels500
    5187427245001,000 labelsClassifier, fit and calibrated on these labels1,000
    4054347135961,000 labelsJev, recalibrated on these labels1,000
    4497421543262,000 labelsClassifier, fit and calibrated on these labels2,000
    3839347135872,000 labelsJev, recalibrated on these labels2,000
    4208402641195,000 labelsClassifier, fit and calibrated on these labels5,000
    3594347135285,000 labelsJev, recalibrated on these labels5,000
    41453889399310,000 labelsClassifier, fit and calibrated on these labels10,000
    35943471354610,000 labelsJev, recalibrated on these labels10,000
    38373683374230,000 labelsClassifier, fit and calibrated on these labels30,000
    n/an/a354230,000 labelsJev, recalibrated on these labels30,000

    Note: Platt scaling in place of isotonic calibration gives the same reading.

    Source: CFPB Consumer Complaint Database; labels from August 2023 to 2024; policy scored on 2025 complaints, weighted; engine calls October 2026; assumed costs

    Data: vishalsingh.org/decisionai/report/resolving-and-routing-customer-complaints/figures/cost-by-labels.json

    Table 4. A classifier trained on past outcomes finds money-back complaints better than the models that only read the complaint

    Share of complaints closed with monetary relief that fall in each model's top tenth by P(money back), percent

    caughtkindmodel
    58.20Decision engineJev 1.14.0
    63.10Decision engineOpenAI Luna
    51.80General language modelClaude Haiku adapter
    73.10Trained classifierTF-IDF + logistic

    Note: Ranked over all complaints, the classifier's AUC is 0.936 and Jev's is 0.895; Jev minus the classifier is −0.041.

    Source: CFPB Consumer Complaint Database, 2025 complaints with narratives of at most 3,000 characters; 10,000 sampled, weighted; engine calls October 2026

    Data: vishalsingh.org/decisionai/report/resolving-and-routing-customer-complaints/figures/money-back-caught.json

    Table 5. Describing past outcomes in the question helps the engines a little, and examples do not close the gap to the classifier

    AUC for complaints closed with monetary relief, by model and how the question was posed, with 95% intervals; 2,000 sampled 2025 complaints

    aucconf_highconf_lowgrouplabeln
    0.9470.9590.932Classifier trained on past outcomesClassifier2,000
    0.8810.9120.847JevJev: original question2,000
    0.8990.9220.873JevJev: reworded to predict payment2,000
    0.9030.9260.878JevJev: reworded + ten labeled examples2,000
    0.9130.9310.891JevJev: reworded + outcome criteria2,000
    0.8870.9200.845LunaLuna: original question2,000
    0.9030.9290.875LunaLuna: reworded to predict payment2,000
    0.8890.9110.866LunaLuna: reworded + ten labeled examples2,000
    0.9150.9340.891LunaLuna: reworded + outcome criteria2,000

    Note: Only about one complaint in forty ended in money back, so the intervals are wide.

    Source: CFPB Consumer Complaint Database, 2025 complaints; 2,000 drawn at random from the sample, weighted; engine calls October 2026

    Data: vishalsingh.org/decisionai/report/resolving-and-routing-customer-complaints/figures/money-back-prompts.json

    Table 6. For money back, the classifier matches Jev with about a thousand past complaints

    Money-back complaints caught in the top tenth, percent, against past complaints used to train the classifier, weighted

    caughtconf_highconf_lowlabels
    3451.9011.20100 complaints
    49.3059.5030.50300 complaints
    58.8065.3053.101,000 complaints
    66.4069.1063.603,000 complaints
    69.9072.9066.6010,000 complaints
    74.9075.9074.2030,000 complaints

    Source: CFPB Consumer Complaint Database, 2025 distinct narratives with narratives of at most 3,000 characters; 10,000 sampled, weighted; engine calls October 2026; ten refits per size, three at the largest

    Data: vishalsingh.org/decisionai/report/resolving-and-routing-customer-complaints/figures/outcomes-to-catch-up.json

    All estimates

    Every fact in facts.json (73), sorted by id. The same values as JSON: facts.json.

    Fact idValueUnitEstimandPopulationPeriodIntervalnWeightsSourceNote
    agree_diff_jev_tfidf−0.6percentage pointsjev minus tfidf10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −1.9 to 0.710,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    agree_jev81.9%percent of complaintstop product equals the consumer-selected product10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 80.5% to 83.2%10,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    agree_jev_equal_products75.2%percent of complaints, each product counted equallymean agreement across the eleven products10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    agree_tfidf82.4%percent of complaintstop product equals the consumer-selected product10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 81.2% to 83.7%10,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    agree_tfidf_equal_products63.6%percent of complaints, each product counted equallymean agreement across the eleven products10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    agree_tfidf_unweighted_fit78.2%percent of complaintsagreement for a classifier fit without weights10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_money_diff_jev_tfidf−0.041difference in AUCJev minus TF-IDF10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −0.054 to −0.02910,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_money_jev0.895area under the ROC curveP(money back) against closed with monetary relief10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.881 to 0.90810,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_money_product_only0.906area under the ROC curveranking complaints by their product's relief rate in the training years10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_money_tfidf0.936area under the ROC curveP(money back) against closed with monetary relief10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.928 to 0.94510,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_within_adapter0.730area under the ROC curvemean across products of the AUC within each product that has both outcomes10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.704 to 0.75610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_within_diff_tfidf_jev+0.027difference in AUCclassifier minus Jev, within product10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −0.009 to 0.06510,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_within_jev0.742area under the ROC curvemean across products of the AUC within each product that has both outcomes10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.709 to 0.77010,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_within_luna0.743area under the ROC curvemean across products of the AUC within each product that has both outcomes10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.706 to 0.77210,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    auc_within_tfidf0.769area under the ROC curvemean across products of the AUC within each product that has both outcomes10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.736 to 0.80210,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    capture10_diff_tfidf_jev+14.9percentage pointsclassifier minus Jev10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 8.9 to 20.410,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    capture10_jev58.2%percent of complaints closed with monetary reliefshare caught by fast-tracking the tenth of complaints with the highest P(money back)10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 53.0% to 63.4%weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    capture10_tfidf73.1%percent of complaints closed with monetary reliefshare caught by fast-tracking the tenth of complaints with the highest P(money back)10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 68.4% to 77.9%weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    cost1k_jev$0.05US dollars per 1,000 complaintsmean billed cost per call, list price10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    lc_capture_100058.8%percent of complaints closed with monetary reliefmean top-tenth capture over refits on 1,000 labeled complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    lc_capture_30049.3%percent of complaints closed with monetary reliefmean top-tenth capture over refits on 300 labeled complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    lc_capture_300066.4%percent of complaints closed with monetary reliefmean top-tenth capture over refits on 3,000 labeled complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    loss_diff_jev_cal−$195US dollars per 1,000 complaintsjev_cal minus the classifier with a cutoff10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −$419 to $2710,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    loss_diff_jev_cut+$368US dollars per 1,000 complaintsjev_cut minus the classifier with a cutoff10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $97 to $65510,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    loss_jev_all$5,442US dollars per 1,000 complaintsexpected misroute and triage cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $5,041 to $5,86110,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs; measured error mix against the consumer's product.
    loss_jev_cal$3,471US dollars per 1,000 complaintsexpected misroute and triage cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $3,243 to $3,70910,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs; measured error mix against the consumer's product.
    loss_jev_cut$4,054US dollars per 1,000 complaintsexpected misroute and triage cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $3,740 to $4,38410,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs; measured error mix against the consumer's product.
    loss_tfidf_cal$3,666US dollars per 1,000 complaintsexpected misroute and triage cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $3,466 to $3,88510,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs; measured error mix against the consumer's product.
    loss_tfidf_cut$3,685US dollars per 1,000 complaintsexpected misroute and triage cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $3,482 to $3,89310,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs; measured error mix against the consumer's product.
    loss_triage_all$6,000US dollars per 1,000 complaintsexpected misroute and triage cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $6,000 to $6,00010,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs; measured error mix against the consumer's product.
    lv_clf_500$4,792US dollars per thousand complaintsexpected misroute and triage cost at the cutoff, mean across label draws10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs. Both arms use the same labeled draws.
    lv_clf_full$3,742US dollars per thousand complaintsexpected misroute and triage cost at the cutoff, mean across label draws10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs. Both arms use the same labeled draws.
    lv_jev_500$3,613US dollars per thousand complaintsexpected misroute and triage cost at the cutoff, mean across label draws10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs. Both arms use the same labeled draws.
    lv_jev_full$3,542US dollars per thousand complaintsexpected misroute and triage cost at the cutoff, mean across label draws10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed costs. Both arms use the same labeled draws.
    lv_raw_jev$4,054US dollars per thousand complaintsraw Jev, no local fitting10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characters; labels from August 2023 to 2024 complaintscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    mis_jev_cal4.6%percent of complaintsrouted to a product other than the consumer's10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    mis_jev_cut10.2%percent of complaintsrouted to a product other than the consumer's10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    mis_tfidf_cal4.0%percent of complaintsrouted to a product other than the consumer's10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    mis_tfidf_cut3.8%percent of complaintsrouted to a product other than the consumer's10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    misroute_cost$30US dollars per misrouted complaintassumed cost: three days of delay at $10the complaint desk's routing decision (assumed inputs)assumed inputs, October 2026not applicable; assumed inputsCFPB Consumer Complaint Database
    money_extra$120US dollars per misrouted complaint that ends in money backassumed extra costthe complaint desk's routing decision (assumed inputs)assumed inputs, October 2026not applicable; assumed inputsCFPB Consumer Complaint Database
    n_complaints10,000complaintssample size10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    n_population519,841complaints2025 complaints within the length limit that the sample stands for10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    narrative_cap3,000characterslength cap of the stored narrativesCFPB narratives in the July 2026 copy2025not applicableCFPB Consumer Complaint Database
    queue_diff_value_cost+79per 1,000 complaintsvalue minus reviewing the least certain, cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −56 to 23310,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    queue_diff_value_left_money−0.43per 1,000 complaintsvalue minus reviewing the least certain, left_money10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −0.91 to 0.0910,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    queue_diff_value_per_minute_cost−425per 1,000 complaintsvalue_per_minute minus reviewing the least certain, cost10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −639 to −19810,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    queue_diff_value_per_minute_left−12.15per 1,000 complaintsvalue_per_minute minus reviewing the least certain, left10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI −18.81 to −4.9510,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    queue_minutes400reviewer minutes per 1,000 complaintsassumed review budgetthe complaint desk's routing decision (assumed inputs)assumed inputs, October 2026not applicable; assumed inputsCFPB Consumer Complaint Database
    queue_none_cost$5,827US dollars per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $5,402 to $6,27710,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_none_left181.5misroutes left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 168.2 to 195.610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_none_left_money3.18misrouted money-back complaints left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 2.26 to 4.2010,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_none_reviewed0.0%percent of complaints reviewedreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_uncertain_cost$3,499US dollars per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $3,144 to $3,85210,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_uncertain_left110.4misroutes left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 99.4 to 121.610,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_uncertain_left_money1.57misrouted money-back complaints left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.89 to 2.3110,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_uncertain_reviewed14.3%percent of complaints reviewedreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 13.1% to 15.6%10,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_cost$3,579US dollars per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $3,229 to $3,94410,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_left114.7misroutes left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 103.6 to 126.110,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_left_money1.14misrouted money-back complaints left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.54 to 1.8810,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_per_minute_cost$3,074US dollars per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI $2,732 to $3,42910,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_per_minute_left98.2misroutes left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 87.0 to 109.510,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_per_minute_left_money1.06misrouted money-back complaints left per 1,000 complaintsreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 0.50 to 1.7310,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_per_minute_reviewed20.2%percent of complaints reviewedreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 18.8% to 21.6%10,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    queue_value_reviewed14.1%percent of complaints reviewedreview queue of 400 reviewer minutes per 1,000 complaints10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 202695% CI 13.0% to 15.3%10,000 complaintsweighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint DatabaseAssumed review time, reviewer accuracy and costs; measured misroutes against the consumer's product.
    route_cutoff0.8probability that the top product is right1 minus triage cost over misroute costthe complaint desk's routing decision (assumed inputs)assumed inputs, October 2026not applicable; assumed inputsCFPB Consumer Complaint Database
    share_relief2.6%percent of complaintscompany response is closed with monetary relief10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    share_too_long7.7%percent of deduplicated 2025 complaints with a narrativenarratives over 3,000 characters, excludeddeduplicated 2025 CFPB complaints with a narrative2025full countCFPB Consumer Complaint Database
    tri_jev_cal35.1%percent of complaintssent to triage10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    tri_jev_cut16.4%percent of complaintssent to triage10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    tri_tfidf_cal41.0%percent of complaintssent to triage10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    tri_tfidf_cut42.5%percent of complaintssent to triage10,000 sampled 2025 CFPB complaints with a narrative of at most 3,000 characterscomplaints received in 2025; engines called October 2026weighted to the product mix of those complaints (sample_weight)CFPB Consumer Complaint Database
    triage_cost$6US dollars per complaint sent to triageassumed cost: four minutes of a triage handlerthe complaint desk's routing decision (assumed inputs)assumed inputs, October 2026not applicable; assumed inputsCFPB Consumer Complaint Database

    Definitions

    The chapter marks no glossary term.

    Methods

    Two decision engines and a general language model read each sampled complaint narrative and answered two typed questions: which product it is about, and whether the consumer describes money the company could return. A classifier trained on earlier complaints answered the same two. Nothing was rated by hand.

    Which complaints

    CFPB withdrew complaint narratives from public access in August 2026, so the only copy available keeps the first 3,000 characters of each narrative. The sample keeps only complaints whose whole narrative fits, which excludes 7.7% of 2025 complaints with a narrative. Every result describes complaints within that length.

    The sample holds the same number of complaints for each of the eleven products, and weights restore each product's share of 2025 complaints.

    Labels

    Routing is scored against the product the consumer selected when filing. Consumers sometimes pick the wrong product, so a disagreement can be the consumer's mistake rather than the engine's.

    The money-back question is scored against the company's recorded response, closed with monetary relief. That outcome depends on the company as well as the complaint.

    Intervals

    Intervals are 95% bootstrap intervals that resample complaints within product strata, keep each product's share fixed and use the same resamples for every policy. They describe sampling error for 2025 complaints and say nothing about other years or other companies.

    What these data cannot show

    The routing score compares the engine with the consumer's own product choice, so some of what looks like engine error is consumer error, and these data cannot say how much. The money-back label is what the company did, which depends on the company as much as the complaint. The costs are assumptions, so the comparisons show how policies trade off under them and are not measured savings. The sample describes distinct narratives, not every filing, and money back is more common among them than among all filed complaints. The complaints are limited to narratives of at most 3,000 characters, which leaves out 8% of 2025 complaints with a narrative, because the public narratives were withdrawn in August 2026 and only a cut copy remains.

    References

    The chapter cites no reference.

    Provenance

    Build script
    decision_ai/chapters/resolving-and-routing-customer-complaints/build.py (sha256 ad8930e6ff310f8e48d53f32dc53dc37c1156cc14259c5adbe4b587e8d5a291f)
    Built on
    2026-10-29
    Site commit
    252942a900a49d01fe9f278e18459eb87b20b4a0

    Outputs

    FileSHA-256
    facts.json20c650ec38ef9810222843d6e40613ef2d6545f645f749ed57035e7fe6d7ea92
    figures/agree-by-model.json1b7f77c56eee87f3469be5ac6cf9affb228c657e53801d78d2e3366e9a7fc1f8
    figures/cost-by-labels.json34360a16ffe4d9b7133cacf6e24209e9e0410bcb594a1d42581a2fab26e5a5ce
    figures/money-back-caught.json03c660401c1437e49780d3a291312f0aa46f0a7debdc69855fd6a151018ea1e8
    figures/money-back-prompts.json0d8296a19c6854ea1f9c9ef1851b6e05b607916c3ef3ad6e632a3a2c0e89d754
    figures/outcomes-to-catch-up.json3a66877ee2c772f4622dda2511a750923589ebfad0c9b74ee85deca531a3aa95
    figures/where-complaints-go.json43adef141cfb6ed2a770238c094ba0436f6ea8ca0c0f591d0e1d38a6b6d305b8
    meta.jsone7892b08742ced88d370d9d8660f15d3481e33f08529e79bc4f5923f2673ef90
    public/data/resolving-and-routing-customer-complaints/flow.json85255672e8768ac873e89cd12604fb38c55cd4c0f5042805034be293c2a785ef
    public/data/resolving-and-routing-customer-complaints/items.json27123950e0178d495717b23b6f360caf78b7babd3f5f88f989218637fe0dd855
    public/data/resolving-and-routing-customer-complaints/policy.jsonc2c0475becd99606c6f49869aeeaece194b993c52165a170c0114b6bec2ca6b5
    public/data/resolving-and-routing-customer-complaints/queue.json98f9a4750c6905d6d2c87450977d629f97d0a14659f845a043eca707a0b9bc4c
    refs.jsonca3d163bab055381827226140568f3bef7eaac187cebd76878e0b63e9e442356

    Machine formats