Intent classification
Intent classification is the natural-language-processing task of determining what a user is trying to accomplish from their input, by assigning a query or message to one of a set of predefined intent categories. It answers the question “what does this person want?” (for example, whether a search query is informational, navigational, or transactional, or whether a chatbot message is a greeting, a complaint, or a request to make a reservation).
In short: intent classification reads a user’s words and labels the goal behind them, so a system knows how to respond or where to route the request.
How intent classification works
The task is to map free-form input onto a known set of goals:
- Define the intents: A set of target categories is established, from a fixed taxonomy such as check_balance or book_flight to broad query types like informational, navigational, and transactional.
- Gather examples: Example phrasings are labeled with their intent.
- Note that it’s becoming increasingly common for a model to be given the intent definitions and asked to classify without training examples.
- Represent the input: The message is converted into embeddings or feature vectors, numerical representations that capture its meaning in a form the classifier can work with.
- Classify: A model assigns the most likely intent with a confidence score. When confidence is high the system acts; when it falls below a threshold it can trigger a fallback response, escalate to a human, or ask the user a clarifying question such as “Did you mean X or Y?”
- Route or act: The predicted intent drives what happens next, such as choosing a response, calling a tool, or selecting a retrieval strategy.
Approaches range from keyword rules and classical machine-learning classifiers to transformer models and, today, LLMs that classify from intent descriptions alone. The defining characteristic is that intent classification is about the goal behind the words, not the words themselves: two very differently phrased messages can share the same intent.
Intent classification vs. entity extraction and sentiment analysis
- Entity extraction pulls out the specific things mentioned, such as dates, places, and product names; intent classification identifies the overall goal. In “book a flight to Paris tomorrow,” intent classification sees “book a flight” while entity extraction captures “Paris” and “tomorrow,” and the two usually run together in an NLU pipeline.
- Sentiment analysis labels emotional tone such as positive or negative; intent classification labels purpose. “This is terrible, cancel my order” is negative in sentiment and would correspond to an intent of cancel_order.
- Keyword matching routes on the presence of specific words; intent classification generalizes to new phrasings that share a goal even when they share no keywords.
Where intent classification is used
- Chatbots and virtual assistants: Deciding which skill or conversation flow should handle a message.
- Search and answer engines: Classifying a query’s type to choose how to answer, such as a direct answer, a list of links, or a retrieval-augmented response.
- Customer support routing: Sending a ticket or message to the right team or automated workflow.
- Agents and tool selection: Helping a system decide which tool or function a request calls for.
Intent classification is the step that turns raw input into a decision about what to do: the bridge between understanding a request and acting on it.
Related terms
Entity extraction, natural language understanding (NLU), query understanding, conversational search, chatbot, sentiment analysis, slot filling, large language model (LLM), routing.

