Decoding ServiceNow Reference Variables: Why You See Sys IDs and How to Fix It
- kelly.ryu
- Apr 30
- 3 min read

Are you a ServiceNow user struggling to understand why your reference variables are displaying cryptic sys IDs instead of meaningful values? This is a common issue, especially when setting up new forms or customizing existing ones. Seeing a sys ID where you expect a name or description can be confusing and hinder usability. In this article, we'll explore the common causes behind this behavior and, more importantly, provide you with step-by-step solutions to ensure your reference variables display the information you need, improving the user experience within your ServiceNow instance.
Understanding the Sys ID Issue in ServiceNow Reference Variables
A reference variable in ServiceNow links a field on a form to a record in another table. Ideally, when you click the magnifying glass icon to select a record, you should see a user-friendly list of records with relevant details. However, if you are seeing the sys IDs instead, it means the platform is not configured to display the desired field for that reference. Several reasons can cause this, but it generally boils down to display configurations and list layouts. Understanding these can greatly improve your ServiceNow administration skills.
Common Causes
Incorrect Display Value Configuration: The most frequent culprit is that the "Display value" field on the referenced table isn't properly set to the field you want to see. ServiceNow uses this designated display value when showing referenced records. If this isn't set correctly, or set at all, you'll likely see the sys ID.
List Layout Customization: The list layout dictates which columns appear in the popup window when you click the reference lookup icon. If the list layout is missing the relevant fields, including the one you expect to be displayed, the sys ID will likely take its place.
Table Descendant List Class Definition: Issues can arise in list views with inheritance where modifications to List class definition affects referenced variables. This occurs if table settings are altered at a higher level causing Sys IDs to show.
Troubleshooting Steps: Displaying the Right Values
Here's a breakdown of the troubleshooting steps you can take to resolve this issue and get your reference variables showing the correct information:
1. Verify the "Display Value" Field
Navigate to the table that the reference variable points to (the referenced table, not the table where the reference variable is located). For example, if your reference field is pointing to 'Operating Systems,' go to the 'Operating Systems' table definition.
In the table definition, locate the field you want to be displayed in the reference lookup. Typically, this is a name, title, or description field.
Check the "Display value" checkbox for that field. Only one field can have the 'Display value' attribute set to true. Save your changes.
Example: On the cmdb_ci_server table, the name field is often set as the display value.
2. Customize the List Layout
While on a form containing the reference variable, click the reference lookup icon (magnifying glass).
In the resulting popup window, right-click on the header bar of the list (e.g., on the 'Name' or 'Sys ID' column heading).
Select "Configure" then "List Layout."
In the List Layout editor, move the fields you want to see in the lookup from the "Available" slushbucket to the "Selected" slushbucket. Ensure that the field you designated as the display value is included.
Use the up and down arrows to arrange the columns in your desired order.
Save your changes.
Practical Example:
Let's say you have a "Department" reference field on the "Incident" form, and it's currently showing sys IDs. You want it to display the Department Name instead.
Navigate to the "Departments" (cmn_department) table definition.
Find the "Department Name" field and check the "Display value" box.
Go to the "Incident" form and click the lookup icon next to the "Department" field.
Right-click on the header bar and choose "Personalize" > "List Layout".
Add the "Department Name" field to the "Selected" list.
Save. Now, when you click the lookup icon, you'll see a list of department names instead of sys IDs.
Alternative Solutions:
Display Business Rule: In rare scenarios, a custom business rule might be interfering with the display value. Review any custom business rules that run on the referenced table and check for potential conflicts.
Dictionary Overrides: If you've created dictionary overrides for the reference field, ensure they are not inadvertently setting a different display field.
Take Control of Your ServiceNow References
Seeing sys IDs instead of expected values in ServiceNow reference variables can be a common annoyance. By understanding the underlying causes and following the troubleshooting steps outlined in this article, you can effectively resolve the issue and improve the overall usability of your ServiceNow platform. Start by checking the display value on the referenced table, then customize the list layout to show the desired fields. Remember that small tweaks to configurations improve clarity within your system for seamless ServiceNow workflows.
about these troubleshooting techniques to empower them to solve similar problems independently.