AI
Virtual Agent from Zero: The Beginner-Friendly Guide to ServiceNow's Conversational AI
What is Virtual Agent?
Virtual Agent is ServiceNow's conversational chatbot — it lets employees interact with ServiceNow by typing (or speaking) in natural language instead of filling out forms. Think of it as the text-based equivalent of calling a help desk, but available 24/7 and capable of resolving many common requests instantly.
The Simplest Way to Understand It
Imagine an employee at your company needs to reset their password at 11 PM on a Saturday. Without Virtual Agent, they either wait until Monday or call an expensive after-hours support line. With Virtual Agent:
- Employee opens the ServiceNow portal or Teams/Slack
- Types: "I need to reset my password"
- Virtual Agent recognizes the intent ("password reset")
- Bot asks: "Which system? (Active Directory, SAP, Salesforce)"
- Employee selects "Active Directory"
- Bot verifies identity (security questions or MFA)
- Bot triggers an automated password reset workflow
- Employee gets a new temporary password in under 2 minutes
- No human agent was involved. No ticket was created.
Where Virtual Agent Appears
| Channel | How Users Access It |
|---|---|
| Service Portal | Chat widget in the bottom-right corner of the ServiceNow portal |
| Employee Center | Integrated into the modern employee experience portal |
| Microsoft Teams | Users chat with the ServiceNow bot directly in Teams — no need to open a browser |
| Slack | Same as Teams — chat with the bot in Slack channels or DMs |
| Now Mobile | Chat within the ServiceNow mobile app |
| Web API | Custom integrations can send messages to Virtual Agent programmatically |
Key Components of Virtual Agent
Virtual Agent is built from several components that work together:
1. Topics
A topic is a single conversation flow for one specific task. "Reset password," "Check ticket status," "Request a laptop" — each is a separate topic. Think of each topic as a mini-program: it has a trigger (what the user says), a conversation flow (what the bot asks and does), and an outcome (resolution or escalation).
2. NLU (Natural Language Understanding)
NLU is what makes Virtual Agent understand what the user means, not just what they typed. When a user says "my password doesn't work," "can't log in," or "locked out of my account" — NLU maps all of these to the same intent: password reset.
| Concept | What It Is | Example |
|---|---|---|
| Intent | What the user wants to do | "Reset password," "Check order status," "Report an issue" |
| Utterances | The different ways users express the same intent | "I forgot my password," "can't log in," "password expired," "locked out" |
| Entities | Specific data within the user's message | System name ("Active Directory"), location ("Building A"), device type ("laptop") |
| Confidence Score | How sure the AI is about its interpretation (0-100%) | Above 80% → proceed with the matched topic. Below 50% → ask user to clarify. |
3. Topic Blocks
Within a topic, the conversation is built from blocks — each block is one step in the conversation:
| Block Type | What It Does | Example |
|---|---|---|
| Text | Bot sends a message to the user | "I can help you reset your password." |
| User Input | Bot asks the user for information | "Which system do you need the password reset for?" |
| Choice | Bot presents options for the user to select | Buttons: [Active Directory] [SAP] [Salesforce] |
| Decision | Bot branches based on a condition | If system = "Active Directory" → go to AD reset flow; else → go to generic flow |
| Script | Execute server-side JavaScript | Look up the user's account status, check if they have MFA enabled |
| Flow / Subflow | Trigger a Flow Designer flow | Trigger the "Reset Active Directory Password" subflow |
| Create Record | Create a ServiceNow record | Create an incident or request if the bot cannot resolve the issue |
| Agent Transfer | Escalate to a live agent | "I am connecting you with a live agent who can help further." |
4. Live Agent Handoff
Not every conversation can be resolved by the bot. When the bot cannot handle a request — either the confidence is too low, the topic is too complex, or the user explicitly asks for a human — Virtual Agent transfers the chat to a live agent in Agent Workspace. The agent sees the full conversation transcript so the user does not have to repeat themselves.
Virtual Agent + Now Assist + AI Agents: How They Connect
These three AI capabilities are related but serve different purposes:
| Virtual Agent | Now Assist | AI Agents | |
|---|---|---|---|
| What it is | Conversational chatbot for users | AI assistant for agents and creators | Autonomous AI workers that execute tasks |
| Who it helps | End users / employees | Support agents, developers, admins | The system itself (reduces human involvement) |
| How it works | User chats → bot understands intent → follows topic flow → resolves or escalates | Agent opens ticket → AI summarizes, suggests, drafts → agent reviews and acts | Trigger fires → AI Agent reasons about steps → executes actions → updates record |
| Level of autonomy | Guided (follows pre-built topic flows) | Assistive (suggests, human decides) | Autonomous (AI decides and acts within guardrails) |
| Example | User asks "reset my password" → bot resets it | Agent clicks "Summarize" → AI generates summary → agent uses it | P1 incident created → AI Agent identifies root cause, routes to team, sends notification — no human triggered these steps |
How they work together: A user chats with Virtual Agent (front door). If the bot cannot resolve, it creates a ticket and escalates to a live agent. The live agent uses Now Assist (AI suggestions, summaries) to resolve faster. For routine patterns that happen thousands of times, AI Agents can handle the entire process autonomously — from the initial chat to the final resolution — with no human involvement.
Building Your First Topic — Step by Step
// Navigate to: All > Virtual Agent > Topic Conversation Design // Click "New" to create a topic // // 1. SETUP // Name: "Reset Password" // Category: IT Support // NLU Intent: password_reset (link to your NLU model) // Sample utterances: "I forgot my password", "can't log in", // "locked out", "password expired", "reset pwd" // // 2. BUILD THE CONVERSATION FLOW // Block 1: Text — "I can help you reset your password." // Block 2: Choice — "Which system?" // Options: Active Directory, SAP, Salesforce, Other // Block 3: Decision — If "Active Directory" → go to Block 4 // If "Other" → go to Agent Transfer // Block 4: Script — Verify user identity (check user record, MFA status) // Block 5: Subflow — Trigger "Reset AD Password" Flow Designer subflow // Block 6: Text — "Your password has been reset. Your temporary // password has been sent to your email." // Block 7: End conversation // // 3. TEST // Use the "Try it" panel on the right side of the designer // Type "I can't log in" and verify the bot follows the correct path // // 4. PUBLISH // Set topic to "Published" to make it live // Monitor in Virtual Agent Analytics
Common Virtual Agent Use Cases
| Use Case | Estimated Deflection | Complexity |
|---|---|---|
| Password reset | 70-90% | Medium (requires integration with AD/LDAP) |
| Check ticket status | 80-95% | Low (simple GlideRecord lookup) |
| Request software access | 60-80% | Medium (catalog item + approval workflow) |
| VPN troubleshooting | 40-60% | Medium (decision tree based on symptoms) |
| Report an incident | 50-70% | Low-Medium (create incident with pre-filled fields) |
| HR policy questions | 60-80% | Low (KB article search and presentation) |
| Order equipment | 70-85% | Medium (catalog item submission) |
Measuring Virtual Agent Success
| Metric | What It Measures | Healthy Target |
|---|---|---|
| Containment Rate | Percentage of conversations resolved without live agent | Above 60% for mature implementations |
| Deflection Rate | Tickets avoided because Virtual Agent resolved the issue | 20-40% of eligible categories |
| User Satisfaction | End-of-conversation survey rating | Above 4.0/5.0 |
| NLU Accuracy | Percentage of intents correctly identified | Above 80% confidence on matched intents |
| Escalation Rate | How often conversations escalate to live agents | Below 40% — high escalation means topics need improvement |