Picklists and picklist extensions in rules

  • Release version: Australia
  • Updated March 12, 2026
  • 4 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Picklists and picklist extensions in rules

    Picklist extensions (PLEs) enable administrators to present detailed product information while simplifying user selections. They are designed to filter options and send data effectively without the need for extensive rule creation. Understanding how to properly configure PLEs within rules is essential for accurate and efficient behavior, especially when dealing with single-select and multi-select picklists.

    Show full answer Show less

    Key Features

    • Filtering and Rule Interaction: PLE filtering behaves like inclusion rules by default. To further restrict options beyond PLE filtering, exclusion rules should be used instead of additional inclusion rules.
    • Operators for Conditions:
      • Equals: Best suited for single-select picklists as it checks for an exact match. In multi-select picklists, equals will not match if multiple options are selected.
      • Contains: Recommended for multi-select picklists. It checks if the selected options include a specific value, firing the rule even when multiple selections exist.
    • Advanced Rule Usage:
      • Single-select picklist values appear as text and can be compared with '==' in scripts.
      • Multi-select picklist values are arrays and require the use of Array.includes() to check for specific selections.
      • Adding options to multi-select picklists in advanced functions must use .push(), and adding undefined options causes errors.
    • Rule Precedence: When inclusion and exclusion rules conflict, exclusion rules take precedence.
    • Best Practices: Avoid using rules with PLEs unless necessary, as PLEs inherently provide filtering. Use exclusion rules for additional filtering instead of inclusion rules to maintain correct data display and behavior.

    Practical Implications for ServiceNow Customers

    When configuring picklist extensions in your ServiceNow instance, leverage built-in PLE filtering before creating custom rules to reduce complexity. Use the Equals operator for single-select picklists and the Contains operator for multi-select picklists to ensure conditions trigger correctly. For advanced scripting, handle single-select values as strings and multi-select values as arrays with appropriate JavaScript array methods. Apply exclusion rules to restrict options further without interfering with PLE data mapping, and be mindful that exclusion rules override inclusion rules if both are present.

    Following these guidelines helps maintain accuracy in product configurations, enhances user experience by presenting appropriate options, and prevents errors in advanced functions.

    Learn how to use picklist extensions (PLEs) effectively in rules. Understand how filtering, inclusion, and exclusion interact, and apply correct operators like equals and contains for single- and multi-select picklists to ensure accurate rule behavior in advanced configurations.

    Picklist extensions (PLEs) are a powerful way for administrators to display as much information as possible about a product while making it easy for end users to select exactly what they want. However, simplicity at the front end can mask complexity at the back end. This article shows administrators how to correctly use PLEs in rules and advanced functions and explains some important caveats.

    Note:
    • Try using Filter Options & Product Info first.
    • Do not use inclusion rules for PLEs. PLE filtering works like inclusion rules, so in order to remove further options, the user should use exclusion rules.
    • Contains and Equals act differently on multi-select picklists. Array.includes() and == also act differently.

    For information about rules, including inclusion and exclusion rules, see Rules.

    Simple rules

    It's best not to use rules with picklist extensions. PLEs are designed so that you can filter options and send data to the bill of materials without writing rules. Therefore, most reasons to use inclusion, exclusion, and product rules are not present in PLEs. Make sure your use case can’t be completed with typical PLE features before you continue to build your rules.

    If you are using selections in a PLE to drive actions, make sure to note the difference between the Equals and Contains operators.

    • Equals checks whether the selection in the PLE exactly matches the condition’s value.
      • It can be used with both single-select and multi-select picklists, but it is recommended to be used with single-select PLEs since it is the closest to what users usually imagine the functionality would be.
      • If you are using a multi-select in the condition, if the user makes multiple selections, the condition will not be met if using equals.
    • Contains checks whether the selection in the PLE includes the value described. This is the recommended operator for multi-select PLE fields.

    For example: A user creates a multi-select picklist field with four options.

    Picklists and picklist extensions in rules

    Suppose the condition of a rule (in this case, a determination action) is set to fire if the multi-select field equals multi option 4.

    Picklists and picklist extensions in rules

    If the end user selects only multi option 4, the rule fires:

    Picklists and picklist extensions in rules

    If the end user selects multi option 3 and multi option 4, the rule does not fire:

    Picklists and picklist extensions in rules

    On the other hand, if the condition is set to fire if the multi-select field contains option 4, it fires in both instances.

    Picklists and picklist extensions in rules

    Picklists and picklist extensions in rules

    Picklists and picklist extensions in rules

    How PLE filters interact with exclusion rules

    Picklist extension filters act in the same way that simple inclusion rules work, except that when the defined filter fields are empty, no options are included instead of all options when a simple inclusion rule is not firing.

    If you want to have a field that is not defined as a filter in the PLE and that limits options in your PLE field, you need to use a simple exclusion rule in order to further limit those field options, since using an inclusion rule would combine with the inherent inclusion contained in the PLE filter and leave all field options available.

    Note:
    Due to the nature of mapping the extended information via filter fields, using an inclusion rule to show more options for a PLE will show only the option value and no further data. Do not use inclusion rules that act on the options of a PLE.

    Advanced rules

    When using picklists in advanced rules, it’s important to know how these fields appear when referenced using the cfg object. For single-select picklists, the field has the text of the option, but for multi-select picklists, they will be in an array. This difference can often lead to discrepancies when building advanced functions.

    Similar to the differences in simple conditions between Equals and Contains, while single-select picklists can be referenced in an “if” statement as:

    1 if (cfg.field == "option") {
    2 //code
    3 }

    Multi-select picklists should use the function “Array.includes()” to see if one of the options has been selected:

    1 if (cfg.field.includes("option")) {
    2 //code
    3 }

    This function acts on an array and will return true or false depending on whether the array includes the inputted value.

    To determine the selections of a multi-select picklist in an advanced function, use the .push() function to add the option. Adding an option that is not defined in the picklist’s fields results in an error.

    For other manipulations with the multi-select picklist array in advanced functions, refer to the Help menu’s Array functions. If there are conflicting inclusion and exclusion actions, exclusion actions have precedence.

    Additional reading

    For an overview of the picklist extension feature, see Picklist extensions.

    For a deeper understanding of the back end and how to display PLEs, see Displaying a picklist extension on a layout.

    For an overview of the Picklist Extension Pricing enrichment feature, see The Picklist Extension Pricing enrichment.