Customer support · Production

Forethought AI helps Upwork achieve a 75% chat self-serve rate and 50% faster ticket resolution

The problem

Upwork's distributed global support organization could not deliver consistent, accurate responses at scale. Agents searched across 20+ open tabs to find answers, slowing resolution. The previous chatbot required manual keyword-based training for every workflow, making management of thousands of workflows unsustainable.

First attempt

The previous chatbot provider gave users inaccurate responses, required manual keyword entry for every workflow, and produced thousands of duplicated, incorrect workflows that became too complex to manage.

Workflow diagram · grounded in source
1
User submits support inquiry
Trigger
A user submits a support inquiry via the Solve chat widget or email channel.
source quote
“Upwork uses Forethought's Solve product for both email and their chat widget”
2
AI deciphers inquiry intent
Ai action
Solve uses real AI to understand the meaning of the inquiry rather than relying on keywords and decision-trees.
source quote
“Rather than relying on keywords and decision-trees to get to the root of the support inquiry, Solve uses real AI to understand the meaning of the inquiry. The widget is able to quickly decipher the meaning of complex chat inquiries …”
3
Self-serve response delivered
Output
Solve responds to users with quick answers and helpful articles via chat or email.
source quote
“Solve responds with quick answers and helpful articles”
4
Triage auto-classifies and routes tickets
Routing
Triage uses historical data to proactively predict and classify new support tickets so agents can prioritize without manual triaging.
source quote
“With Triage, Upwork uses historical data to proactively predict and classify new support tickets. Using existing routing capabilities, agents prioritize and handle inquiries without manually triaging.”
5
Sentiment classified per ticket
Ai action
Triage detects patterns in text to automatically classify the overall emotion of each inquiry as positive, negative, or neutral.
source quote
“Triage detects patterns in text to automatically classify the overall emotion of the inquiry as positive, negative, or neutral.”
6
Assist surfaces agent knowledge
Ai action
Assist reads and understands the support ticket and makes relevant knowledge articles, past cases, and macros immediately available to agents.
source quote
“Once they open Assist, which has already read and understood the contents of the support ticket, relevant knowledge articles and information is readily available to them.”
7
Sentiment data improves content
Feedback loop
Understanding which ticket types most often carry negative sentiment allows the team to redirect resources to create better content and workflows.
source quote
“By understanding which types of tickets have a negative sentiment most often, the team redirects resources to create better content and workflows to address those topics.”
Reported outcome

With Forethought, Upwork achieved a 75% average self-serve rate via chat widget (up from 45%), 99% accuracy on email responses, a 50% reduction in ticket close time for Assist users, and 90% accuracy across 500K auto-classified incoming tickets.

Reported metrics
Solve Email response accuracy99%
Self-serve rate via chat widget (current)75%
Self-serve rate via chat (previous provider)45%
Inquiries resolved via chat widget575K
Show all 17 reported metrics
Solve Email response accuracy99%
Self-serve rate via chat widget (current)75%
Self-serve rate via chat (previous provider)45%
Inquiries resolved via chat widget575K
Self-serve rate for emails50%
Emails deflected per week800
Agent efficiency gain with Assist100% more efficient
Average case resolution time without Assist8 minutes
Average case resolution time with Assist4 minutes
Reduction in time to close tickets50%
Ticket queue completion rate with Assist100%
Ticket queue completion rate without Assist90-92%
Auto-classified incoming tickets500K
Triage accuracy in classifying tickets90%
Previous chatbot containment rate25-30%
Overall self-serve rate with Solve52-65%
Manual training time per workflow (previous tool)at least 1 hour per workflow
Reported stack
ForethoughtSolveAssistTriageDiscoverWorkflow Builder
◆ Does this fit your context?

Compare to your context

Tell us your scale, team, and constraints. We'll show what changes at your size, what fails at your scale, and whether this case is a fit, needs adaptation, or won't scale to you. Free demo, no signup.

Compare to your context →
~30 seconds · free
Source
https://forethought.ai/case-studies/upwork
Read source ↗

Frequently asked questions

What did this team achieve with this AI workflow?

With Forethought, Upwork achieved a 75% average self-serve rate via chat widget (up from 45%), 99% accuracy on email responses, a 50% reduction in ticket close time for Assist users, and 90% accuracy across 500K auto-…

What tools did this team use?

Forethought, Solve, Assist, Triage, Discover, Workflow Builder.

What results were reported?

Solve Email response accuracy: 99%; Self-serve rate via chat widget (current): 75%; Self-serve rate via chat (previous provider): 45%; Inquiries resolved via chat widget: 575K (source-reported, not independently verified).

What failed first in this deployment?

The previous chatbot provider gave users inaccurate responses, required manual keyword entry for every workflow, and produced thousands of duplicated, incorrect workflows that became too complex to manage.

How is this customer support AI workflow structured?

User submits support inquiry → AI deciphers inquiry intent → Self-serve response delivered → Triage auto-classifies and routes tickets → Sentiment classified per ticket → Assist surfaces agent knowledge → Sentiment data improves content.

WHAT TO DO WITH THIS

Now compare it to your context

This case is one data point. Whether its pattern fits you depends on your volumes, your stack, and your exception load — that comparison is the step no case study can do for you.