janiceg
ServiceNow Employee
ServiceNow Employee

Every company is different, so you might sometimes want to tweak an instance to meet your company's specific requirements.   (Because many companies are similar, too, if you've come up with something cool that you think other people would benefit from, suggest it as an enhancement to the ServiceNow development team.)

There are two types of ways you can tailor an instance for your needs: customizations and configurations. The ramifications for your change are very different depending on which you type of change you choose.

  • Configurations — A configuration is tailoring an instance using ServiceNow best practices and API to meet your requirements without making changes to code that is part of the baseline installation of an instance.

    For example:

    • You want to make resolution code a mandatory field before anyone can submit an incident. You could use a UI Policy to tailor this functionality without having to change the baseline code.

  • Customizations — A customization is any change to code that is part of the baseline install of a ServiceNow instance.

    For example:

    • You are in the process of implementing the Service Catalog and have a requirement to add additional fields to gather data on the catalog checkout page. The catalog checkout page is a UI Macro that is part of the baseline installation of an instance so a change to this code would be considered a customization.

    • Someone builds a new custom feature into the product, for example, a custom application or a third-party widget.

Customizations configurations.jpg

What happens if you decide you need to customize code that is part of a baseline installation?

Be aware that customizations are on your head. Because the code is part of the baseline installation and has been customized, you would be responsible for:

  • Keeping track of the customizations you make

  • Maintaining the code going forward

  • Making sure that functionality still works after an upgrade

If you make a call to Support and they determine that your customization is the cause of your issue, they will tell you to revert back to the code that was part of the baseline installation before they can help you further. Support can not help you with problems caused by customizations.

ServiceNow customization guidelines

If the change you want/need to make really truly requires you to change the code, follow this process:

  1. Make a duplicate record of the code that is to be customized.

  2. Make the original record inactive. - This should be the only update that is made to the original record. (Refer to the product documentation topic Track the Active Field for more information.)
    Note that not every record in the system has an active flag, for example, UI Pages. If a customization needs to be made for that type of record, you would own it and need to maintain it going forward.

  3. Make all changes to the code only in the newly created record.

The ServiceNow platform is extremely flexible and can fulfill a wide range of requirements. That being said, ServiceNow relies on the framework that supports these different applications in how they process tasks, how forms are rendered in multiple browsers, and the overall user experience in order to develop and provide support consistently.

If you need to customize your ServiceNow instance, use ServiceNow best practices and the API, and if you have to make a change to the code, follow the customization guidelines.

Related information on customizations and configurations

Thank you to imartez for the helpful information in the PowerPoint presentation Instance Customization FAQ and Guidelines by kristen.obana on which this post is based.

18 Comments