ServiceNow · Free Practice Questions · Last reviewed May 2026
36real exam-style questions organised by domain, each with the correct answer highlighted and a plain-English explanation of why it's right — and why the others are wrong.
A company needs to import user records from a CSV file into the User [sys_user] table. The file contains a 'department' column that should map to the 'department' field in ServiceNow. However, the department values in the CSV are full names (e.g., 'Human Resources'), but the department field in ServiceNow uses a reference to the Department [cmn_department] table. What is the best practice for handling this import?
Use a before business rule on the User table to convert the department name after the record is inserted.
Create a transform map that maps the source field to the target field, and use a field mapping script to convert the department name to the correct sys_id.
This is the standard method to handle reference field mapping during import.
Use the Import Set Row API to programmatically map the values during import.
Manually edit the CSV file to replace department names with the corresponding sys_id values.
An administrator has configured a report on the Incident table showing the count of incidents by assignment group. The report shows data for the current week, but the numbers seem too low. The administrator suspects that incidents resolved before the current week are not being included. What should the administrator check first?
Check the 'Time scale' setting and ensure it is set to 'All' instead of 'Current week'.
Check the type of the report (e.g., bar chart vs pie chart) as some types only show aggregated data.
Check the condition (prompt) filter of the report to see if there is a time-based filter that limits to the current week.
The filter may be set to 'Created on this week' which excludes older incidents.
Check the 'Group by' field to ensure it is set to 'Assigned to' instead of 'Assignment group'.
An organization has a Service Level Agreement (SLA) defined on the Incident table with a condition of 'Category is Network' and a duration of 4 hours. The SLA is triggered when the incident state changes from 'New' to 'In Progress'. A network incident is created and assigned to the Network Support group. The incident state is changed to 'In Progress' immediately. After 3 hours, the incident is resolved. However, the SLA shows a breach despite the resolution being within 4 hours. What is the most likely cause?
The SLA stop condition is set to 'State is Resolved', but the SLA was paused due to a schedule (e.g., after-hours pause) and the pause time was not counted, causing the actual working time to exceed 4 hours.
If the SLA has a schedule that pauses during non-business hours, the elapsed business time may exceed 4 hours even if real time is less.
The SLA is assigned to the Network Support group, but the assignment group was changed during the incident.
The SLA duration is defined in business hours, and the incident was created after business hours, so the elapsed time counted only business hours, making the 4-hour window longer in real time.
The SLA condition 'Category is Network' was not evaluated correctly because the category field was updated after the SLA was triggered.
A company frequently imports data from an external HR system into the Employee [hr_employee] table using an import set. The import set runs nightly and maps fields correctly. Recently, the import started failing with the error 'Field 'manager' not found in table 'hr_employee''. The manager field exists in the import set rows but not in the target table. What is the most likely cause?
The transform map has a field mapping that references 'manager' as a target field, but the hr_employee table does not have a 'manager' column.
The transform map attempts to map to a non-existent field.
The import set row table (sys_import_set_row) does not have a 'manager' column.
The source CSV file contains a column named 'manager' that is misspelled.
The manager field in the target table is of a different data type (e.g., string vs reference).
An administrator is creating a new report to show the average time to resolve incidents for the last quarter. They want the report to automatically update as new incidents are resolved. Which report type should they use?
Bar chart report with a condition for resolved incidents.
Pivot table report with a 'Average' aggregation.
Scorecard report with a metric for average resolution time.
List report with a 'Average' aggregation on the 'Resolved' field.
List reports can compute averages and update dynamically.
An admin has set up an SLA on the Incident table with a condition 'Priority = 1' and a duration of 1 hour. The SLA is triggered when the incident state becomes 'In Progress'. The SLA definition includes a business schedule that only counts business hours (9 AM to 5 PM, Monday-Friday). An incident with Priority 1 is created at 4:30 PM on Friday and state is changed to 'In Progress' at 4:45 PM. At what time will the SLA breach if it is not resolved?
9:45 AM Monday.
Correct calculation based on business hours.
5:45 PM Friday.
4:45 PM Saturday.
4:45 PM Monday.
Want more Reporting, SLA and Imports practice?
Practice this domainA company wants to allow users to submit requests for new software without any manual intervention. Which self-service feature should be used to automate the request process?
Record Producer
Record Producers allow users to submit requests that automatically create records.
Approval Engine
SLA Definition
Flow Designer
A user reports that a catalog item is not visible to them, but other users in the same department can see it. What is the most likely cause?
User criteria restricts visibility
User criteria can limit which users see the item.
The item is in a different category
The item is out of stock
The item is not active
During peak usage, the Employee Center portal becomes slow. The administrator wants to improve performance without changing the user interface. What is the best practice approach?
Increase the instance size
Remove all widgets from the homepage
Disable the search feature
Enable caching for widgets
Caching reduces server calls and improves load times.
An administrator wants to automate the fulfillment of a catalog item that requires approval from the user's manager. Which combination of features should be used?
Virtual Agent and Flow Designer
Record Producer and Virtual Agent
Flow Designer with Approval step
Flow Designer can include approval and trigger fulfillment.
Approval Engine and Email Notification
A company uses the Employee Center portal. Users report that they cannot find a specific service when using the search bar. The service exists and is active. What is the most likely cause?
The service is inactive
The search index is not built for that service
Items must be indexed to appear in search results.
The service is not in a valid category
The service owner has restricted visibility
An administrator is designing a catalog item for software requests. The item must capture the user's department automatically and pre-populate the cost center. Which feature should be used to achieve this?
Catalog Client Script
UI Policy
Variable default value using system properties
Defaults can be set to user's department and cost center from user record.
Client Script
Want more Self-Service and Automation practice?
Practice this domainA system administrator needs to allow end users to add a 'Mobile Phone' field to the incident form without modifying the form layout for all users. Which feature should be used?
Create a new form section
Configure a UI policy
Set an ACL to allow field addition
Enable personalization on the form
Personalization allows users to customize their own form view by adding or removing fields.
A user reports that after clicking 'New' on the incident module, the form loads but the 'Category' field is missing. Other users see the field. What is the most likely cause?
The field is hidden by a UI policy
The field is not in the default form view
The user has a personal form layout that removed the field
Personalization can cause a field to be missing for an individual user.
The user's role does not have read access to the field
An administrator wants to create a new module under the 'User Administration' application menu. Which module type should be used to display a list of users?
List
A list module shows a list of records from a table.
Form
URL
Report
A company has a custom table 'u_asset' and wants the 'Asset' module in the application navigator to show only records where 'active=true'. How can this be achieved?
Use an ACL to restrict access
Set a condition on the 'Filter' property of the module
The filter property allows defining a condition for the module's list.
Create a UI policy on the table
Add a client script to the list
An administrator needs to ensure that when a user changes the 'State' field to 'Resolved' on an incident form, the 'Resolution Notes' field becomes mandatory. What should be configured?
Business rule
Client script with onChange event
UI policy
UI policies can make fields mandatory based on conditions without scripting.
Data policy
A user wants to quickly find an incident by its number without navigating through menus. Which feature should they use?
Navigator filter
Typing the incident number in the navigator filter directly opens the record.
Favorites
History
Global search
Want more UI, Navigation and Forms practice?
Practice this domainA ServiceNow administrator notices that a CI record in the CMDB is not being updated by a scheduled discovery job. The CI is a Linux server that is reachable on the network. Which is the most likely cause?
The discovery source is not configured for this IP range.
The Identification and Reconciliation Engine (IRE) is disabled.
The cmdb_ci table ACL is set to private.
The CI is classified under a different CI class in the CMDB.
If the CI is misclassified, discovery may update a different record or create a duplicate.
A consultant is designing the CMDB for a large enterprise. The company wants to track relationships between business services, applications, and infrastructure components. Which relationship model should be used to represent that a business service depends on an application, which in turn depends on a server?
Dependency relationship (structural)
Structural dependency is the correct type for service-dependency modeling.
Membership relationship
Ownership relationship
Connectivity relationship
During a CMDB health review, an administrator finds that many CI records have the same serial number but different names and IP addresses. What is the most likely root cause?
The CMDB has a scheduled job that deletes old CIs.
The CI class has a unique constraint on the name field.
The identification rule for the CI class does not include the serial number.
Without serial number as an identifier, the system creates new records instead of updating existing ones.
The reconciliation rule is set to 'Create' instead of 'Update'.
Which TWO of the following are valid CI relationship types in ServiceNow?
Uses
Connects to
Member of
'Member of' is a standard membership relationship.
Owns
Depends on
'Depends on' is a standard dependency relationship.
Which THREE of the following are required for ServiceNow Discovery to successfully populate the CMDB?
The CMDB CI tables with open ACLs
Valid credentials for the target devices
Credentials are necessary for authentication.
A discovery schedule configured for the IP range
A schedule defines when and what to discover.
A MID Server that can reach the target devices
The MID server performs the actual discovery probes.
The Identification and Reconciliation Engine (IRE) enabled
A company wants to ensure that only authorized changes to the CMDB are allowed. Which THREE of the following mechanisms can help enforce this?
The Identification and Reconciliation Engine (IRE)
CMDB Health Definitions with remediation tasks
Health rules can detect and correct unauthorized changes.
Scheduled Discovery jobs
Access Control Lists (ACLs) on CMDB tables
ACLs restrict who can read/write CMDB data.
Business rules on the cmdb_ci table
Business rules can enforce data integrity and authorization logic.
Want more Database Administration and CMDB practice?
Practice this domainA company wants to ensure that when a user submits a catalog item for a new laptop, the request is automatically approved if the cost is under $1,000 and the user's department has sufficient budget. What is the best way to implement this requirement?
Configure a notification to inform the user of the approval status.
Set up a Business Rule to approve all requests under $1,000.
Use a Flow to send an approval request to the manager every time.
Create an Approval rule with conditions on cost and department budget.
Approval rules can auto-approve based on conditions.
A Service Catalog item has a variable that asks for the user's manager's email. The variable type is 'Email'. When the user submits the item, the manager should receive a notification. How should the variable be configured to ensure the email is valid?
Set the variable as 'Read only' and rely on data from sys_user table.
Add a regular expression in the variable's 'Regex' field.
Use a 'String' variable and add a client script to check format.
Use the 'Email' variable type; it includes validation.
The Email type validates the format upon submission.
A catalog item uses a 'Catalog Client Script' to hide a variable when another variable is set to 'No'. However, the script is not working. The script is of type 'onChange' and the variable to hide is a 'Single Line Text'. What is the most likely cause?
The variable type 'Single Line Text' does not support hiding.
The script is missing a 'g_form.setDisplay()' call.
The script should be of type 'onSubmit' instead of 'onChange'.
The variable's 'Display' property is set to 'Static' or 'Read only'.
If Display is static, client scripts cannot hide it.
An administrator needs to create a workflow that sends an email to the approver when a request is approved, and sends a different email when the request is rejected. What is the appropriate workflow component to use for this branching logic?
Use a 'Timer' activity to delay and then check state.
Use a 'Begin Approval' activity and then a 'Decision' activity.
Use an 'Approval' activity with two 'Outcome' branches.
Approval activity provides outcomes for approved and rejected.
Use a 'Condition' activity to check the approval state.
A user complains that when they submit a catalog item, they receive an error: 'The variable is mandatory but has no value.' However, the variable is not marked as mandatory in the item's variable definition. What could be the cause?
A Catalog Client Script of type 'onSubmit' sets the variable mandatory.
Client scripts can enforce mandatory before submission.
A Business Rule on the request table sets the variable mandatory.
A UI Policy on the record producer makes the variable mandatory.
The variable is mandatory in the parent catalog category.
Which THREE of the following are true about Service Catalog variables? (Choose three.)
All catalog variables are stored in the 'sys_variable' table.
Once created, the order of variables cannot be changed.
Variables can have default values that reference other variables.
Default values can be scripted to reference other variables.
The variable type determines how the variable is displayed on the form.
Each variable type has a specific UI representation.
Variables can be reordered using the 'Order' field in the variable list.
The Order field controls display order.
Want more Service Catalog and Workflows practice?
Practice this domainA company has a custom table 'u_employee_data' with a before query business rule that sets 'u_department' to 'Engineering' when the current user is in the 'ITIL' role. After the business rule is activated, users in the 'ITIL' role report that when they query the table, they see only records with department 'Engineering'. However, the business rule is intended to set the default department for new records only. What is the most likely cause?
The business rule should be set to 'async' to avoid affecting queries.
The business rule is set to run on the client side instead of server side.
The business rule is running on 'before query' instead of 'before insert'.
Before query modifies the query for all retrievals, not just new records.
The condition script uses 'gs.getUser().hasRole("ITIL")' incorrectly.
An administrator creates a new ACL for the 'incident' table with type 'record', operation 'read', condition script 'current.assignment_group == gs.getUser().getMyGroups()', and requires role 'snc_internal'. A user with role 'snc_internal' who is a member of group 'Service Desk' can view incidents assigned to 'Service Desk' but cannot view incidents assigned to 'Network Support'. What is the most likely reason?
The condition script uses 'current.assignment_group' which returns a sys_id, but 'gs.getUser().getMyGroups()' returns a list of group names.
The condition script should use 'current.assignment_group.isOneOf(gs.getUser().getMyGroups())' instead.
The user does not have the 'snc_internal' role.
Another ACL with higher order denies read access to all incidents not matching the condition.
ACL order matters; a deny rule could be overriding.
An administrator wants to send an email notification when a change request state changes to 'scheduled'. The notification should be sent to the change manager. Which two fields must be configured in the notification record?
"Advanced" tab: register an event to trigger the notification
"Email template" tab: select an existing template
"Who will receive" tab: add 'Change manager' role to 'Recipients'
This ensures the notification is sent to the change manager.
"When to send" tab: set condition to 'State changes to scheduled'
This defines the trigger.
A junior administrator configures the above business rule and ACL. When a user without any role opens an incident with category 'database' and state 1, the priority is set to 1 correctly. However, the user cannot view the incident record. What is the most likely reason?
The ACL condition uses sys_id of assignment group, but the field stores display value.
The business rule runs before insert, but the ACL check occurs after insert.
The ACL requires a role (empty role list means no role requirement? Actually requires role checked, but no roles listed means any authenticated user, but unauthenticated? The user has no role, and condition fails because assignment group mismatch.
The ACL requires a role and condition fails, so access is denied.
The business rule order (100) is too low and another rule overrides the priority.
Which TWO conditions must be met for a business rule to execute on a table? (Choose TWO.)
The business rule must be associated with a table.
Business rules are table-specific.
The condition script must evaluate to true (or be empty).
Unless condition is empty, the rule runs only if condition is true.
The business rule must have at least one role specified in the 'Condition' tab.
The business rule must have an 'Advanced' script defined.
The business rule must have an order less than 100.
Which THREE statements about Access Control Lists (ACLs) are true? (Choose THREE.)
ACLs can be defined for tables, records, fields, and scripts.
ACL types include table, record, field, and script.
ACLs can use condition scripts to grant or deny access.
Condition scripts are evaluated to determine access.
If 'requires role' is checked and no roles are listed, only users with the 'admin' role can access.
Empty role list with requires role checked means admin only.
An ACL can only have one role specified.
An ACL must have a script to evaluate conditions.
Want more Application Rules, ACL and Notifications practice?
Practice this domainThe SNOW-CSA exam has 60 questions and must be completed in 90 minutes. The passing score is 700/1000.
Scenario-based questions covering exam objectives with detailed answer explanations.
The exam covers 6 domains: Reporting, SLA and Imports, Self-Service and Automation, UI, Navigation and Forms, Database Administration and CMDB, Service Catalog and Workflows, Application Rules, ACL and Notifications. Questions are weighted by domain — higher-weight domains appear more on your actual exam.
No. These are original exam-style practice questions written against the official ServiceNow SNOW-CSA exam objectives. They are not copied from the real exam. Courseiva focuses on genuine understanding, not memorisation of braindumps.
Courseiva tracks your accuracy per domain and routes you toward weak areas automatically. Free, no account required.