Migration of choices from another application into sys_choice

Jhansi73966
Tera Contributor

what are the Certified possible ways to migrate choices in integrations?

1 REPLY 1

Palash_Sarkar
ServiceNow Employee

What is sys_choice in ServiceNow?

sys_choice is the system table that stores all dropdown reference field choices on the Now Platform. Every choice list option (e.g., the "State" field on an Incident having values like "New", "In Progress", "Resolved") lives as a row in this table. See more details choice table.

Key columns:

  • name — the table name (e.g., incident)
  • element — the field name (e.g., state)
  • value — the stored value (e.g., 1)
  • label — the display text (e.g., New)
  • language — the language code (e.g., en, ja)
  • sequence — sort order in the dropdown

How to Migrate Choices from Another Application

Option 1 — Import Set / Transform Map (recommended for bulk)

Prepare a spreadsheet or CSV with columns matching the sys_choice fields, load it via an Import Set, and use a Transform Map to map your source columns to the target sys_choice fields.

If your instance has multilingual support enabled, activating the language plugin allows you to select u_sys_choice as the Import Set staging table — a localization-aware variant of the standard choices table. Note that installing a ServiceNow language plugin automatically installs the I18N: Internationalization plugin (com.glide.i18n) as a dependency, which provides the underlying framework elements required for platform localization.

 

Screenshot 2026-04-17 at 9.40.48.png

This is the standard approach for large migrations. See more details Import a  spread sheet

 

Option 2 — Update Set If the choices already exist in another ServiceNow instance (e.g., a dev/test instance), capture them in an Update Set, export the XML, and import it into the target instance.

Screenshot 2026-04-17 at 10.21.10.png

Important Localization Note

Since you work with multilingual content, this is particularly relevant: sys_choice stores one row per language per choice. So if you need choices in English and Japanese, each value needs two rows — same name, element, and value, but different language and label. When migrating, make sure your source data includes all language variants, or plan a second pass to add translated labels.

 

If you have any other questions, please don't hesitate to ask.

 

With Regards,

Enterprise Globalization Deployment Architect

Palash Sarkar