---
sourceDocument: Zurich Build or modify applications
sourceDocumentLink: https://www.servicenow.com/docs/r/zurich/application-development

 Release :

    - zurich

ft:locale :

    - en-US

ft:publication_title :

    - Zurich Build or modify applications

ft:clusterId :

    - cadev

bundleId :

    - cadev

workflow :

    - Development, Data, and Analytics


---

# Explore

# Exploring System Update Sets {#ariaid-title1}

Release version: Zurich  
Updated October 3, 2025  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 4 minutes to read
Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) 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 Exploring System Update Sets

System update sets in ServiceNow are collections of configuration changes packaged as XML files that can be transferred between instances.
They enable developers to build and modify functionality on non-production instances and then promote these changes for testing or deployment on other instances.
Update sets track application and platform customizations, facilitating controlled migration of updates across development, test, and production environments.
Show full answer Show less  
Update sets contain unique identifiers, lists of configuration changes, and states that govern their retrieval and application on target instances. However, caution is advised when moving update sets between instances running different ServiceNow release versions or Store app versions, as compatibility issues can arise, potentially causing outages or data loss if newer updates are imported into older instances.

## Key Features

* **Tracking and Storage:** Changes are recorded in the Customer Update \[sysupdatexml\] table, associated with the active update set, and linked to the Versions \[sysupdateversion\] table for version control.
* **System Properties Management:** Administrators can mark system properties as private to exclude them from update sets, preventing unwanted overwrites across instances.
* **Application Developer Controls:** Developers can create update sets tied to specific application versions and specify which application tables to track.
* **User Roles and Responsibilities:** Admins manage update sets lifecycle including creation, comparison, merging, committing, and backing out changes; developers focus on creating update sets and specifying tracked tables.
* **Version Control:** Admins can compare versions of customized objects, revert changes, suppress versions for specific tables, and exclude certain fields from updates.

## Working with Update Sets

The typical workflow involves:

* Creating an update set on the development instance.
* Making and saving customizations within the update set.
* Marking the update set as complete.
* Retrieving and committing the update set on the test instance for validation.
* If necessary, iterating the process to fix issues before moving the update set to production.
* Maintaining a consistent migration path from development to test to production and avoiding migrating the same update set from multiple sources.

## Benefits

* **Efficient Change Management:** Enables systematic storage, retrieval, and application of configuration changes.
* **Version Tracking and Comparison:** Allows administrators to identify differences between update sets and manage versions effectively.
* **Safe Deployment:** Supports testing update sets in non-production instances before committing to production to reduce risk.
* **System Property Control:** Helps maintain environment-specific settings by controlling property migration.
* **Batch Processing:** Facilitates bulk preview and commit of multiple update sets.  
An update set is a group of configuration changes that can be moved from one instance to another. Update sets enable developers to create functionality on a non-production instance, and promote the changes to another instance
for testing or deployment.

## System update sets overview {#exploring-system-update-sets__cf-exploring-parent-overview}

An update set is an XML file that contains:  
* A set of record details that uniquely identify the update set.
* A list of configuration changes.
* A state that determines whether another instance can retrieve and apply configuration changes.
{#exploring-system-update-sets__ul_jdc_gbk_wr}  
Update sets track changes to applications and system platform features. This enables developers to create functionality on a non-production instance and promote the changes to another instance.  
Warning:  
Update sets allow moving changes between instances that may be running different family release versions and different features. You can always load an update set created on an older family release on an instance running a newer family release. Loading an update set created on a newer family release on an instance running an older family release requires additional testing to determine compatibility. Updates from newer family releases may not produce the same functionality when moved to older family releases. In extreme cases, newer family release updates may cause outages or data loss on an older family release instance. Where possible, avoid moving updates from newer family releases to older family releases. Similar constraints apply to moving updates between instances running different versions of ServiceNow Store apps.

## System properties {#exploring-system-update-sets__section_uzm_4tn_rlb}

Administrators can exclude system properties from update sets by making them private. Keeping system properties private helps prevent settings in one instance from overwriting values in another instance. For example, you may not want
a system property in a production instance to use a particular value from a development instance. See [Add a system property](https://www.servicenow.com/docs/access?context=t_AddAPropertyUsingSysPropsList&version=zurich&pubname=zurich-platform-administration&ft:locale=en-US).

## Applications {#exploring-system-update-sets__section_yl4_ptn_rlb}

Application developers have additional options with update sets such as:  
* Create an update set for a specific version of an application.
* Specify which application tables to track in update sets.
{#exploring-system-update-sets__ul_ssq_b3k_wr}

## Update set tables {#exploring-system-update-sets__section_e2j_lt1_ggc}

Each update set is stored in the Update Set `[sys_update_set]` table, and the customizations that are associated with the update set, which is entries in the Customer Update `[sys_update_xml]` table,
appear as a related list on the update set record.

When a tracked object is customized, a corresponding record is added or updated in the Customer Update `[sys_update_xml]` table and is associated with the user current update set. The [associated application file properties](https://www.servicenow.com/docs/1USRNuYcUpRezMl6F8gxPQ "Application files are configuration records that allow developers to extend application functionality.") are tracked and transferred along with the customized object in a single update record. A corresponding record is also added to the Versions
`[sys_update_version]` table.  
The Customer Update table contains one record per customized object, per update set. The Versions table contains one record per change to a customized object.

* Administrators can compare two versions and revert to a specific version of an object.
* Administrators can suppress versions for specific tables.
* Administrators can specify fields on tracked tables that you can change without skipping updates to the rest of the record (exclude the field from the update).
{#exploring-system-update-sets__ul_wxm_jmx_4y}  
Note:  
Don't directly modify Customer Updates `[sys_update_xml]` records.

## Users {#exploring-system-update-sets__cf-exploring-parent-users}

{#exploring-system-update-sets__table_lqr_lpq_jfc__entry__2}

| User | Description |
|-|-|
| Admin | Creates, compares, and merges update sets while also managing how update sets store, retrieve, preview, and apply configuration changes between instances. |
| Developer | Creates update sets for specific versions of an application and specifies which application tables to track. |
[Table 1. Users]

{#exploring-system-update-sets__table_lqr_lpq_jfc}

## System update sets workflow {#exploring-system-update-sets__cf-exploring-parent-workflow}

A common process for developing customizations with update sets involves moving changes from development
to test and production instances.  
1. Create an update set on the development instance.
2. Make customizations and changes on the development instance.
3. Mark the update set as complete.
4. Log in to the test instance and retrieve the completed update set from the development instance.
5. Commit the update set on the test instance, and test customizations thoroughly.
6. If the update set has problems in the test instance, repeat steps 1--5 to develop the fix on the development instance with another update set.
7. Identify a common path for update sets to move from instance to instance and maintain that model. Never migrate the same update set from multiple sources. Move update sets from dev to test and then from test to production.
8. Commit the update set on production. If the update set required a fix, commit both update sets in the order they were made.
{#exploring-system-update-sets__cf-exploring-parent-workflow-ol}

## Benefits {#exploring-system-update-sets__cf-exploring-parent-benefits}

{#exploring-system-update-sets__table_oqr_lpq_jfc__entry__3}

| Benefit | Feature | Users |
|-|-|-|
| Create an update set to store local changes. | [Create and select an update set as the current set](https://www.servicenow.com/docs/8RuhnDayBg4zNVPw_aDnxQ "Create an update set to store customization changes and select it as the current set.") | Developer |
| Select the current update set to store local changes. | [Select the current update set in Unified Navigation](https://www.servicenow.com/docs/Qj1u7~AapMY0C9EiH1zrRQ "You can change the current update set at any time, using the update set picker in Unified Navigation.") | Admin |
| Commit an update set to prepare it for distribution. | [Commit an update set](https://www.servicenow.com/docs/w7ySrKQUZKZLzh_B~LUYmw "When you have previewed an update set and have resolved any issues, commit the update set. Committing an update set applies all changes to the instance and creates a local copy of the update set that contains an update record for every change.") | Admin |
| Compare update sets to determine what differences they contain. | [Compare local update sets](https://www.servicenow.com/docs/5L~iNiPhE8gLOtUabBkonw#t_CompareLocalUpdateSets "Administrators can preview local and remote (retrieved) update sets and compare the sets with one another to resolve conflicting changes.") | Admin |
| Create an external file from an update set. | [Save an update set as a local XML file](https://www.servicenow.com/docs/6zaJgqD5hYd4Hh2pOfZLzg#t_SaveAnUpdateSetAsAnXMLFile "Administrators can export an update set as an XML file to save a specific version of an application or set of changes.") | Admin |
| Retrieve update sets from remote instances. | [Retrieve an update set](https://www.servicenow.com/docs/F_ALQwMDrmS8Wj~vKS2Mow "Retrieve completed update sets from another instance.") | Admin |
| Back out changes applied from an update set. | [Back out an update set](https://www.servicenow.com/docs/J5LvGCWoALUzGLkd6SnAKA "You can back out changes to existing records for any committed update set.") | Admin |
| Set system properties related to update sets. | [Update sets properties](https://www.servicenow.com/docs/35iIIvksN1U9XSLBc3nesA "A reference topic that contains information on the system properties used with update sets.") | Admin |
| Track customizations to application tables, fields, and records. | [Customizations tracked by update sets](https://www.servicenow.com/docs/H5MI0ZaX9dF_2LmDS7i8aQ "Update sets can track customizations to application tables, fields, and records.") | Admin |
| Batch update sets together so you can preview and commit them in bulk. | [Working with batched update sets](https://www.servicenow.com/docs/R2bchAjL86Fk5rtCqzhSFg "Batch update sets enable you to group update sets together so you can preview and commit them in bulk.") | Admin |
[ ]

{#exploring-system-update-sets__table_oqr_lpq_jfc}

## What to explore next {#exploring-system-update-sets__cf-exploring-parent-links}

To learn more about configuring, using, and managing system update sets see:

* [Configuring System Update Sets](https://www.servicenow.com/docs/UTgJOQvn8PY06YUa86fgcw "Configure your instance with tracked app installations or merge update sets into a single update set.")
* [Administer system update sets](https://www.servicenow.com/docs/Vcc5H3Ltxl0u1WifUdmbhA "Perform administration duties for system update sets in your instance.")
* [Working with update sets](https://www.servicenow.com/docs/2NxVmVyA9~V3FrdYdndZRg "These procedures help you manage your customizations and resolve potential collisions before you move them to another instance.")
* [Working with batched update sets](https://www.servicenow.com/docs/R2bchAjL86Fk5rtCqzhSFg "Batch update sets enable you to group update sets together so you can preview and commit them in bulk.")
* [Update set transfers](https://www.servicenow.com/docs/a91O2kPr4NvGPAi~Mh5oCA "When an update set is completed, you can transfer it between instances to move customizations from development, through testing, and into production.")
{#exploring-system-update-sets__ul_pqr_lpq_jfc}

