{"id":2987590,"date":"2026-11-10T11:30:19","date_gmt":"2026-11-10T19:30:19","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=2987590"},"modified":"2026-11-10T14:12:47","modified_gmt":"2026-11-10T22:12:47","slug":"dynamic-choice-input-building-smarter-and-more-resilient-forms","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms","title":{"rendered":"Dynamic choice input: Building smarter and more resilient forms"},"author":320832,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[23851,22941],"tags":[781289,27971,317882,781238],"industry":[],"product":[679821,36551,774772],"class_list":["post-2987590","blog","type-blog","status-publish","format-standard","hentry","category-data-management","category-mapping","tag-dynamic-choice","tag-editing","tag-forms","tag-whats-new-november-2026","product-field-maps","product-arcgis-online","product-web-editor"],"acf":{"authors":[{"ID":320832,"user_firstname":"Rebekah","user_lastname":"Bollin","nickname":"Bekah Bollin","user_nicename":"rbollin","display_name":"Bekah Bollin","user_email":"rbollin@esri.com","user_url":"","user_registered":"2022-10-24 14:26:30","user_description":"Bekah joined the ArcGIS Online team in 2022 as a Product Engineer. She contributes to a variety of projects in the ArcGIS Online space including GIS data editing, management, and visualization. When she is not making maps, she can be found hiking outside with her dog or finding a cozy coffee shop.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/07\/0157-devsum25-ddr66379-e1784933122344-213x200.jpg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"short_description":"This blog explores the new dynamic choice input type in Forms in the November 2026 update of ArcGIS Online","flexible_content":[{"acf_fc_layout":"content","content":"<p><a href=\"https:\/\/doc.arcgis.com\/en\/arcgis-online\/create-maps\/create-form-mv.htm\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Forms<\/span><\/a><span data-contrast=\"auto\"> are an excellent way to optimize attribute editing workflows across the ArcGIS Online platform. Now there\u2019s a new tool (or rather, a new input type) in your toolkit to dynamically generate choices in a drop-down. No need to create coded value domains or maintain a static list of options, just write an ArcGIS Arcade expression to handle it for you! Read on to learn about<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559737&quot;:0,&quot;335559738&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:278}\">:<\/span><\/p>\n<ul>\n<li><a href=\"#dynamicChoice\">What a dynamic choice input is and how it works<\/a><\/li>\n<li><a href=\"#configureChoice\">How to configure your own dynamic choice input<\/a><\/li>\n<li><a href=\"#choiceExpression\">Building a choice expression &amp; common examples to get started<\/a><\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":2987632,"id":2987632,"title":"DynamicChoiceInput","filename":"DynamicChoiceInput.gif","filesize":233601,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/dynamicchoiceinput","alt":"Gif shows the choices in a dynamic choice input change as a point feature is moved around","author":"320832","description":"Values in the Dynamic choice input can variably change. For example, returning the nearest addresses as a feature is moved.","caption":"Values in the Dynamic choice input can variably change. For example, returning the nearest addresses as a feature is moved.","name":"dynamicchoiceinput","status":"inherit","uploaded_to":2987590,"date":"2026-11-05 22:14:17","modified":"2026-11-05 22:29:33","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1279,"height":747,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput.gif","medium-width":447,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput.gif","medium_large-width":768,"medium_large-height":449,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput.gif","large-width":1279,"large-height":747,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput.gif","1536x1536-width":1279,"1536x1536-height":747,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput.gif","2048x2048-width":1279,"2048x2048-height":747,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput-796x465.gif","card_image-width":796,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInput.gif","wide_image-width":1279,"wide_image-height":747}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<h2 id=\"dynamicChoice\"><\/h2>\n<h2>What is dynamic choice and how does it work?<\/h2>\n<p><span data-contrast=\"auto\">Forms have multiple ways to show a list of options, whether it is a combo box, radio buttons, or a multiple-choice input. Dynamic choice is a new input type that allows form authors to generate a focused list of choices for users that is powered by an Arcade expression. The expression defines the logic for the list and can draw values from a variety of sources, including another layer or table. This means that users find the correct value quickly and edit data more accurately. <\/span><\/p>\n<p><span data-contrast=\"auto\">Dynamic choice works similarly to a combo box or a generic drop-down, where a list of options is presented to the user. The choice expression determines the available options and runs each time the drop-down opens, provided the field is editable. As form values or source data change the expression can return a different list, meaning that the editor has the most up to date values to pick from.<\/span> C<span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559731&quot;:720,&quot;335559740&quot;:240}\">hoice expressions can also reduce the need for schema changes by filtering out irrelevant or retired domains from the drop-down, <em>without<\/em> removing them on the layer itself.<\/span><\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2987692,"id":2987692,"title":"SimplaeDynamicChoiceVSComboBox","filename":"SimplaeDynamicChoiceVSComboBox.gif","filesize":417190,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/simplaedynamicchoicevscombobox","alt":"Gif shows simple choices changing based on other values in the form.","author":"320832","description":"","caption":"Dynamic choice values can change dependent the configured choice expression.","name":"simplaedynamicchoicevscombobox","status":"inherit","uploaded_to":2987590,"date":"2026-11-05 23:51:00","modified":"2026-11-06 22:33:50","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":769,"height":744,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox.gif","medium-width":270,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox.gif","medium_large-width":768,"medium_large-height":743,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox.gif","large-width":769,"large-height":744,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox.gif","1536x1536-width":769,"1536x1536-height":744,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox.gif","2048x2048-width":769,"2048x2048-height":744,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox-481x465.gif","card_image-width":481,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SimplaeDynamicChoiceVSComboBox.gif","wide_image-width":769,"wide_image-height":744}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>You might be curious what happens if an existing choice is no longer in the drop-down list due to a change in the choice expressions evaluation. Rather than removing a previously applied value, it will remain unchanged until the user selects a different choice or chooses <strong>No Value<\/strong>. When editing multiple features, the dynamic choice input displays only choices available for all selected features. Selecting a value applies it to every selected feature.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2989159,"id":2989159,"title":"mobileGIF1","filename":"mobileGIF1.gif","filesize":3471157,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/mobilegif1","alt":"GIF shows a dynamic choice expression input opened on mobile","author":"320832","description":"","caption":"Dynamic choice inputs are saved in the form, meaning that they can be used on the web and mobile.","name":"mobilegif1","status":"inherit","uploaded_to":2987590,"date":"2026-11-10 19:30:39","modified":"2026-11-10 19:31:51","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":370,"height":800,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1.gif","medium-width":121,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1.gif","medium_large-width":370,"medium_large-height":800,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1.gif","large-width":370,"large-height":800,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1.gif","1536x1536-width":370,"1536x1536-height":800,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1.gif","2048x2048-width":370,"2048x2048-height":800,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1-215x465.gif","card_image-width":215,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/mobileGIF1.gif","wide_image-width":370,"wide_image-height":800}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<h2 id=\"configureChoice\"><\/h2>\n<h2>How to configure your own dynamic choice input type<\/h2>\n<p><span data-contrast=\"auto\">Setting up a dynamic choice input is a breeze! Open the <strong>Forms<\/strong> builder in either Map Viewer or Field Maps Web Designer, then drag the <strong>Dynamic choice<\/strong> option from the choice list under <\/span><b><span data-contrast=\"auto\">Form elements<\/span><\/b><span data-contrast=\"auto\"> onto the form. You can also convert an existing field (see the list of supported field types under <\/span><b><span data-contrast=\"auto\">Notes to consider<\/span><\/b><span data-contrast=\"auto\">) by choosing the input type of the field\u2019s <strong>Properties<\/strong> panel.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559731&quot;:720,&quot;335559740&quot;:240}\">\u00a0<\/span><\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2987634,"id":2987634,"title":"DynamicChoiceInputFormBuilder","filename":"DynamicChoiceInputFormBuilder.gif","filesize":500853,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/dynamicchoiceinputformbuilder","alt":"A dynamic choice input is dragged onto the form builder and configured","author":"320832","description":"Drag a new \"Dynamic choice\" input onto the canvas or convert an existing field. ","caption":"Drag a new \"Dynamic choice\" input onto the canvas or convert an existing field. ","name":"dynamicchoiceinputformbuilder","status":"inherit","uploaded_to":2987590,"date":"2026-11-05 22:16:04","modified":"2026-11-05 22:29:51","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1808,"height":875,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder.gif","medium-width":464,"medium-height":225,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder.gif","medium_large-width":768,"medium_large-height":372,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder.gif","large-width":1808,"large-height":875,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder-1536x743.gif","1536x1536-width":1536,"1536x1536-height":743,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder.gif","2048x2048-width":1808,"2048x2048-height":875,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder-826x400.gif","card_image-width":826,"card_image-height":400,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceInputFormBuilder.gif","wide_image-width":1808,"wide_image-height":875}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><span data-contrast=\"auto\">To finish configuring the dynamic choice input, you will need to author an Arcade expression. Find the <\/span><b><span data-contrast=\"auto\">Logic <\/span><\/b><span data-contrast=\"auto\">section on the <strong>Properties<\/strong> panel and click the gear icon to launch the Arcade editor.<\/span><\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2987642,"id":2987642,"title":"DynamicChoiceFormProps","filename":"DynamicChoiceFormProps.png","filesize":51404,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/dynamicchoiceformprops","alt":"The image shows a dynamic choice input with the expression required in the logic field","author":"320832","description":"","caption":"You must create a choice expression before you can save the form.","name":"dynamicchoiceformprops","status":"inherit","uploaded_to":2987590,"date":"2026-11-05 22:42:57","modified":"2026-11-06 17:10:06","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":675,"height":673,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps.png","medium-width":262,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps.png","medium_large-width":675,"medium_large-height":673,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps.png","large-width":675,"large-height":673,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps.png","1536x1536-width":675,"1536x1536-height":673,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps.png","2048x2048-width":675,"2048x2048-height":673,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps-466x465.png","card_image-width":466,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceFormProps.png","wide_image-width":675,"wide_image-height":673}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"sidebar","content":"<h2><span data-contrast=\"auto\">Notes to consider<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559731&quot;:720,&quot;335559740&quot;:240}\">\u00a0<\/span><\/h2>\n<ul>\n<li><span data-contrast=\"auto\">Dynamic choice supports hosted feature layers, subtype group layers, tables, and subtype group tables.\u00a0<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Dynamic choice is available as an input type for the following field types:<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span>\n<ul>\n<li><span data-contrast=\"auto\">String, GUID, Date, Date Only, Time Only, Double, Integer (short or long), or Big Integer field.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span data-contrast=\"auto\">Dynamic choice expressions are <\/span><i><span data-contrast=\"auto\">not <\/span><\/i><span data-contrast=\"auto\">supported if there is\u00a0\u00a0<\/span>\n<ul>\n<li><span data-contrast=\"auto\">A field that participates in a contingent value field group<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">A floor aware field<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">A subtype field<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span data-contrast=\"auto\">Fields with coded value domains and\/or ranges are honored when using the dynamic choice input<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Dynamic choice input authoring will be supported in ArcGIS Enterprise 12.3.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Taking dynamic choice offline<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span>\n<ul>\n<li><span data-contrast=\"auto\">Users can take forms with dynamic choice input types offline when the data required by the expression is available in the offline map area.<\/span><br \/>\n<span data-contrast=\"auto\">If you plan to use dynamic choice offline, include any referenced layers or tables in the map and confirm that they support offline use before downloading the map area. If the expression uses standalone tables, enable <\/span><b><span data-contrast=\"auto\">Include standalone tables<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559740&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","image_reference":false,"layout":"standard","image_reference_figure":"","snippet":"","spotlight_name":"","section_title":"","position":"Center","spotlight_image":false},{"acf_fc_layout":"content","content":"<h2 id=\"choiceExpression\"><\/h2>\n<h2>Building a dynamic choice expression<\/h2>\n<p><span data-contrast=\"auto\">To author a dynamic choice expression in the Arcade editor, form authors must use the new <\/span><a href=\"https:\/\/developers.arcgis.com\/arcade\/guide\/profiles\/#form-dynamic-choice\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Form Dynamic Choice profile<\/span><\/a><span data-contrast=\"auto\">. This profile supports the dictionary return type (a collection of key-value pairs) that is required to provide choices in a dynamic choice expression. <\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:0,&quot;335559731&quot;:720,&quot;335559740&quot;:240}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">A dynamic choice expression must return a dictionary with a <\/span><span data-contrast=\"auto\">choices<\/span><span data-contrast=\"auto\"> property containing a list of choices. Each choice includes a <\/span><span data-contrast=\"auto\">name<\/span><span data-contrast=\"auto\">, which is what will appear in the picker, and a <\/span><span data-contrast=\"auto\">code<\/span><span data-contrast=\"auto\">, which is stored in the field when the choice is selected.\u00a0Let\u2019s take a look at how this is structured in a simple example below:<\/span><\/p>\n<h3>Creating a choice list<\/h3>\n"},{"acf_fc_layout":"sidebar","content":"<pre><code style=\"color: #24292e;background: #ffffff;display: block;padding: 1em\"><span style=\"color: #6a737d\">\/\/ Example of the correct return structure for the choices list.<\/span>\r\n<span style=\"color: #d73a49\">return<\/span> {\r\n    <span style=\"color: #005cc5\">choices<\/span>: [\r\n        {\r\n            <span style=\"color: #005cc5\">name<\/span>: <span style=\"color: #032f62\">\"Choice A\"<\/span>,\r\n            <span style=\"color: #005cc5\">code<\/span>: <span style=\"color: #032f62\">\"choice a\"<\/span>\r\n        },\r\n        {\r\n            <span style=\"color: #005cc5\">name<\/span>: <span style=\"color: #032f62\">\"Choice B\"<\/span>,\r\n            <span style=\"color: #005cc5\">code<\/span>: <span style=\"color: #032f62\">\"choice b\"<\/span>\r\n        }\r\n    ]\r\n};\r\n<\/code><\/pre>\n","image_reference":false,"layout":"standard","image_reference_figure":"","snippet":"","spotlight_name":"","section_title":"","position":"Center","spotlight_image":false},{"acf_fc_layout":"content","content":"<p><span class=\"TextRun SCXW82900028 BCX2\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW82900028 BCX2\">As the form author, there are a few things you will want to <\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">keep in mind to ensure<\/span> <span class=\"NormalTextRun SCXW82900028 BCX2\">your expressions run <\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">smoothly and <\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">return the correct choices<\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">.<\/span> <\/span><\/p>\n<ol>\n<li><span class=\"TextRun SCXW82900028 BCX2\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW82900028 BCX2\">Make sure each code is unique, matches the field\u2019s data type, and meets the field\u2019s requirements<\/span><span class=\"NormalTextRun SCXW82900028 BCX2\"> (such <\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">as the maximum length of a String field<\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">)<\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">. <\/span><\/span><\/li>\n<li><span class=\"TextRun SCXW82900028 BCX2\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW82900028 BCX2\">If the field has a coded value domain, the form will only return choices that have matching code values (including case sensitivity).<\/span><\/span><\/li>\n<li><span class=\"TextRun SCXW82900028 BCX2\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW82900028 BCX2\">As the expression author, you <\/span><span class=\"NormalTextRun SCXW82900028 BCX2\">are<\/span><span class=\"NormalTextRun SCXW82900028 BCX2\"> also<\/span><span class=\"NormalTextRun SCXW82900028 BCX2\"> responsible for<\/span><span class=\"NormalTextRun SCXW82900028 BCX2\"> sorting choices when needed and handling queries that may exceed the service\u2019s record limit.<\/span><\/span><\/li>\n<\/ol>\n"},{"acf_fc_layout":"content","content":"<h2>Common choice expression examples<\/h2>\n<p><span data-contrast=\"auto\">As you have seen, dynamic choice expressions are extremely customizable. L<\/span><span data-contrast=\"auto\">et\u2019s walk through a few examples that might inspire you to use choice expressions in your own forms!<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335557856&quot;:16711679,&quot;335559731&quot;:720,&quot;335559738&quot;:0,&quot;335559739&quot;:0,&quot;335559740&quot;:285}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Using data from\u00a0<a href=\"https:\/\/data.cityofsydney.nsw.gov.au\/\">City of Sydney,<\/a> we have a map containing bike parking locations across urban areas in Australia. Editors currently enter values such as the bike rack type, nearest associated address, and suburb manually. This has led to inconsistent values, confusion, and additional time reviewing data after it has been entered. We will create multiple dynamic choice expressions to intelligently return options for editors, starting with the bike rack type. The form&#8217;s \u201cType\u201d field already has a domain, and the expression below shows how to return its domain values as choices.<\/span><\/p>\n<h3>Returning coded-value domains as choices<\/h3>\n"},{"acf_fc_layout":"sidebar","content":"<pre><code style=\"color: #24292e;background: #ffffff;display: block;padding: 1em\"><span style=\"color: #6a737d\">\/\/ Create choices using list of values from a field with a coded value domain.  <\/span>\r\n<span style=\"color: #d73a49\">var<\/span> domainField = <span style=\"color: #032f62\">\"Type\"<\/span>;  \r\n\r\n<span style=\"color: #6a737d\">\/\/ Create an empty array to hold the choices.  <\/span>\r\n<span style=\"color: #d73a49\">var<\/span> choices = [];  \r\n  \r\n<span style=\"color: #6a737d\">\/\/ Get the different bike rack types from the domain and put them into the new choices array.  <\/span>\r\n<span style=\"color: #d73a49\">var<\/span> domainInfo = <span style=\"color: #e36209\">Domain<\/span>(<span style=\"color: #e36209\">$feature<\/span>, <span style=\"color: #032f62\">\"type\"<\/span>);  \r\n \r\n<span style=\"color: #d73a49\">for<\/span> (<span style=\"color: #d73a49\">var<\/span> item <span style=\"color: #d73a49\">in<\/span> domainInfo.codedValues) {  \r\n    <span style=\"color: #e36209\">Push<\/span>(choices, domainInfo.codedValues[item]);  \r\n\r\n}  \r\n\r\n<span style=\"color: #6a737d\">\/\/ Return the new choices. <\/span>\r\n<span style=\"color: #d73a49\">return<\/span> {  \r\n    <span style=\"color: #005cc5\">choices<\/span>: choices  \r\n}; \r\n\r\n<\/code><\/pre>\n","image_reference":false,"layout":"standard","image_reference_figure":"","snippet":"","spotlight_name":"","section_title":"","position":"Center","spotlight_image":false},{"acf_fc_layout":"image","image":{"ID":2987672,"id":2987672,"title":"TypeDomainExample","filename":"TypeDomainExample.png","filesize":43733,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/typedomainexample","alt":"Image shows values returned from a dynamic choice expression for the type field","author":"320832","description":"","caption":"The Dynamic choice input now returns all the valid domains for the \"Type.\"","name":"typedomainexample","status":"inherit","uploaded_to":2987590,"date":"2026-11-05 23:21:43","modified":"2026-11-09 19:44:15","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":614,"height":550,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample.png","medium-width":291,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample.png","medium_large-width":614,"medium_large-height":550,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample.png","large-width":614,"large-height":550,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample.png","1536x1536-width":614,"1536x1536-height":550,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample.png","2048x2048-width":614,"2048x2048-height":550,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample-519x465.png","card_image-width":519,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/TypeDomainExample.png","wide_image-width":614,"wide_image-height":550}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><span data-contrast=\"auto\">This simple expression is returning all of the coded-value domains on the &#8220;Type&#8221; field, but you could add or remove values by adjusting the expression <em>without<\/em> making changes to the domain schema.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span data-contrast=\"auto\">Next, we want to write an expression for the \u201cNearest address\u201d field in the form so that it pulls in all the addresses within 50 ft of a placed point. The addresses are tracked via a &#8220;Name&#8221; field on a different layer of property boundaries in the web map. The example below lays out how we can leverage dynamic choice to create a list of spatially relevant attributes.<\/span><\/p>\n<h3>Return choices from a different layer in your web map<\/h3>\n"},{"acf_fc_layout":"sidebar","content":"<pre><code style=\"color: #24292e;background: #ffffff;display: block;padding: 1em\"><span style=\"color: #6a737d\">\/\/ Create a FeatureSet for the property boundary layer in the web map.  <\/span>\r\n<span style=\"color: #d73a49\">var<\/span> propBoundaries = <span style=\"color: #e36209\">FeatureSetByName<\/span>( \r\n  <span style=\"color: #e36209\">$map<\/span>, \r\n  <span style=\"color: #032f62\">\"Property boundaries\"<\/span>, \r\n  [<span style=\"color: #032f62\">\"Address\"<\/span>], \r\n  <span style=\"color: #005cc5\">true<\/span> \r\n); \r\n\r\n<span style=\"color: #6a737d\">\/\/ Create a buffer (in this example, 50ft) and a variable for property boundaries that intersect with the buffer. <\/span>\r\n<span style=\"color: #d73a49\">var<\/span> featureBuffer = <span style=\"color: #e36209\">Buffer<\/span>(<span style=\"color: #e36209\">Geometry<\/span>(<span style=\"color: #e36209\">$feature<\/span>), <span style=\"color: #005cc5\">50<\/span>, <span style=\"color: #032f62\">\"feet\"<\/span>); \r\n<span style=\"color: #d73a49\">var<\/span> intersectingFeatures = <span style=\"color: #e36209\">Intersects<\/span>(propBoundaries, featureBuffer); \r\n<span style=\"color: #d73a49\">var<\/span> addresses = []; \r\n \r\n<span style=\"color: #6a737d\">\/\/ Loop through the returned intersecting features and put them into the new choices array. <\/span>\r\n<span style=\"color: #d73a49\">for<\/span> (<span style=\"color: #d73a49\">var<\/span> feat <span style=\"color: #d73a49\">in<\/span> intersectingFeatures) { \r\n  <span style=\"color: #d73a49\">if<\/span> (!<span style=\"color: #e36209\">IsEmpty<\/span>(feat.Address)) { \r\n    <span style=\"color: #d73a49\">var<\/span> domainEntry = { \r\n    <span style=\"color: #005cc5\">code<\/span>: feat.address, \r\n    <span style=\"color: #005cc5\">name<\/span>: feat.address \r\n    }; \r\n\r\n    <span style=\"color: #e36209\">Push<\/span>(addresses, domainEntry); \r\n\r\n  } \r\n} \r\n\r\n<span style=\"color: #6a737d\">\/\/ Return the new choices.  <\/span>\r\n<span style=\"color: #d73a49\">return<\/span> {<span style=\"color: #005cc5\">choices<\/span>: addresses} \r\n<\/code><\/pre>\n","image_reference":false,"layout":"standard","image_reference_figure":"","snippet":"","spotlight_name":"","section_title":"","position":"Center","spotlight_image":false},{"acf_fc_layout":"image","image":{"ID":2987671,"id":2987671,"title":"DynamicChoiceExpression","filename":"DynamicChoiceExpression.gif","filesize":174801,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/dynamicchoiceexpression","alt":"GIF shows values changing as a feature is moved","author":"320832","description":"","caption":"Using the expression above, different addresses are returned as the bike rack location is moved.","name":"dynamicchoiceexpression","status":"inherit","uploaded_to":2987590,"date":"2026-11-05 23:20:04","modified":"2026-11-05 23:21:15","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1201,"height":746,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression.gif","medium-width":420,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression.gif","medium_large-width":768,"medium_large-height":477,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression.gif","large-width":1201,"large-height":746,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression.gif","1536x1536-width":1201,"1536x1536-height":746,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression.gif","2048x2048-width":1201,"2048x2048-height":746,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression-749x465.gif","card_image-width":749,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceExpression.gif","wide_image-width":1201,"wide_image-height":746}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><span data-contrast=\"none\">Before dynamic choice input was introduced, you could only return one intersecting feature at a time via a calculated expression. Now, following the example above you can return a list of features that change dynamically based on your feature&#8217;s geometry!<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>Finally, let\u2019s explore one more example of how to build a dynamic choice expression that references a table (or feature layer) outside of the web map. There is a separately maintained table that contains all the relevant suburbs around Sydney, and we would like to use those values to drive the choices returned in the dynamic choice input.<span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335557856&quot;:16711679,&quot;335559731&quot;:720,&quot;335559738&quot;:0,&quot;335559739&quot;:0,&quot;335559740&quot;:285}\"> Follow along to see how we can achieve this.<\/span><\/p>\n<h3>Return choices from an external layer<\/h3>\n"},{"acf_fc_layout":"sidebar","content":"<pre><code style=\"color: #24292e;background: #ffffff;display: block;padding: 1em\"><span style=\"color: #6a737d\">\/\/ Create a FeatureSet that references a portal item.<\/span>\r\n<span style=\"color: #d73a49\">var<\/span> Features = <span style=\"color: #e36209\">FeatureSetByPortalItem<\/span>(\r\n  <span style=\"color: #e36209\">Portal<\/span>(<span style=\"color: #032f62\">\"https:\/\/www.arcgis.com\"<\/span>),\r\n  <span style=\"color: #032f62\">\"enterTheItemID\"<\/span>,\r\n  <span style=\"color: #005cc5\">0<\/span>,\r\n  [<span style=\"color: #032f62\">\"Name\"<\/span>],\r\n  <span style=\"color: #005cc5\">false<\/span>\r\n);\r\n\r\n<span style=\"color: #6a737d\">\/\/Create a new variable that filters out Suburbs with empty \"Name\" values. Then, create a loop that returns all valid the features found in the referenced item. <\/span>\r\n<span style=\"color: #d73a49\">var<\/span> namedSuburbs = <span style=\"color: #e36209\">Filter<\/span>(Features, <span style=\"color: #032f62\">\"Name IS NOT NULL AND Name &lt;&gt; ''\"<\/span>);\r\n<span style=\"color: #d73a49\">var<\/span> choices = [];\r\n\r\n<span style=\"color: #6a737d\">\/\/ Assign the key and value pair (using \"code\" as key and \"name\" as value)\u00a0<\/span>\r\n<span style=\"color: #d73a49\">for<\/span> (<span style=\"color: #d73a49\">var<\/span> suburb <span style=\"color: #d73a49\">in<\/span> namedSuburbs) { <span style=\"color: #e36209\">Push<\/span>(choices, <span style=\"color: #e36209\">Dictionary<\/span>(<span style=\"color: #032f62\">\"name\"<\/span>, suburb.Name, <span style=\"color: #032f62\">\"code\"<\/span>, suburb.Name)); } \r\n<span style=\"color: #6a737d\">\/\/ Return the new choices.\u00a0 <\/span>\r\n<span style=\"color: #d73a49\">return<\/span> { <span style=\"color: #005cc5\">choices<\/span>: choices }; \r\n<\/code><\/pre>\n","image_reference":false,"layout":"standard","image_reference_figure":"","snippet":"","spotlight_name":"","section_title":"","position":"Center","spotlight_image":false},{"acf_fc_layout":"image","image":{"ID":2987686,"id":2987686,"title":"SuburbExample","filename":"SuburbExample.png","filesize":49042,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\/suburbexample","alt":"Image shows choices populated from an external table","author":"320832","description":"","caption":"In this example, the choices are populated from a table outside of the webmap.","name":"suburbexample","status":"inherit","uploaded_to":2987590,"date":"2026-11-05 23:36:40","modified":"2026-11-05 23:37:37","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":613,"height":599,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample.png","medium-width":267,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample.png","medium_large-width":613,"medium_large-height":599,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample.png","large-width":613,"large-height":599,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample.png","1536x1536-width":613,"1536x1536-height":599,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample.png","2048x2048-width":613,"2048x2048-height":599,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample-476x465.png","card_image-width":476,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/SuburbExample.png","wide_image-width":613,"wide_image-height":599}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><span data-contrast=\"none\">By referencing values in an item to determine what appears in the choice list, you no longer need to maintain schema changes to coded values domains. If a value is added or removed from the referenced item, it will reflect accordingly in the dynamic choice input.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559731&quot;:720,&quot;335559737&quot;:0,&quot;335559738&quot;:0,&quot;335559739&quot;:0,&quot;335559740&quot;:240,&quot;469777462&quot;:[916,1832,2748,3664,4580,5496,6412,7328,8244,9160,10076,10992,11908,12824,13740,14656],&quot;469777927&quot;:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],&quot;469777928&quot;:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]}\">\u00a0<\/span><\/p>\n"},{"acf_fc_layout":"content","content":"<h2><\/h2>\n<h2>Conclusion<\/h2>\n<p><span data-contrast=\"none\">The dynamic choice input is a powerful new addition to Forms. Whether you want to pull in values from a layer or table outside of the web map, reduce the need for schema changes, or simplify the editing experience for your users, dynamic choice expressions allow you to customize the form to your needs.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559731&quot;:720,&quot;335559737&quot;:0,&quot;335559738&quot;:0,&quot;335559739&quot;:0,&quot;335559740&quot;:240,&quot;469777462&quot;:[916,1832,2748,3664,4580,5496,6412,7328,8244,9160,10076,10992,11908,12824,13740,14656],&quot;469777927&quot;:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],&quot;469777928&quot;:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559731&quot;:0,&quot;335559737&quot;:0,&quot;335559738&quot;:0,&quot;335559739&quot;:0,&quot;335559740&quot;:240,&quot;469777462&quot;:[916,1832,2748,3664,4580,5496,6412,7328,8244,9160,10076,10992,11908,12824,13740,14656],&quot;469777927&quot;:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],&quot;469777928&quot;:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]}\">\u00a0<\/span><\/p>\n"}],"related_articles":"","show_article_image":false,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/11\/DynamicChoiceCard.png","wide_image":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Dynamic choice input: Building smarter and more resilient forms<\/title>\n<meta name=\"description\" content=\"Learn about what dynamic choice inputs are and how you can configure them in your own forms.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dynamic choice input: Building smarter and more resilient forms\" \/>\n<meta property=\"og:description\" content=\"Learn about what dynamic choice inputs are and how you can configure them in your own forms.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-11-10T22:12:47+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\"},\"author\":{\"name\":\"Bekah Bollin\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/d3c88e5b8ac516b0b054b8e224ac7c57\"},\"headline\":\"Dynamic choice input: Building smarter and more resilient forms\",\"datePublished\":\"2026-11-10T19:30:19+00:00\",\"dateModified\":\"2026-11-10T22:12:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\"},\"wordCount\":9,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"dynamic choice\",\"editing\",\"Forms\",\"what\u2019s new november 2026\"],\"articleSection\":[\"Data Management\",\"Mapping\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\",\"name\":\"Dynamic choice input: Building smarter and more resilient forms\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2026-11-10T19:30:19+00:00\",\"dateModified\":\"2026-11-10T22:12:47+00:00\",\"description\":\"Learn about what dynamic choice inputs are and how you can configure them in your own forms.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dynamic choice input: Building smarter and more resilient forms\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/d3c88e5b8ac516b0b054b8e224ac7c57\",\"name\":\"Bekah Bollin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/07\/0157-devsum25-ddr66379-e1784933122344-213x200.jpg\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/07\/0157-devsum25-ddr66379-e1784933122344-213x200.jpg\",\"caption\":\"Bekah Bollin\"},\"description\":\"Bekah joined the ArcGIS Online team in 2022 as a Product Engineer. She contributes to a variety of projects in the ArcGIS Online space including GIS data editing, management, and visualization. When she is not making maps, she can be found hiking outside with her dog or finding a cozy coffee shop.\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/rbollin\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Dynamic choice input: Building smarter and more resilient forms","description":"Learn about what dynamic choice inputs are and how you can configure them in your own forms.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms","og_locale":"en_US","og_type":"article","og_title":"Dynamic choice input: Building smarter and more resilient forms","og_description":"Learn about what dynamic choice inputs are and how you can configure them in your own forms.","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2026-11-10T22:12:47+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","twitter_misc":{"Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms"},"author":{"name":"Bekah Bollin","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/d3c88e5b8ac516b0b054b8e224ac7c57"},"headline":"Dynamic choice input: Building smarter and more resilient forms","datePublished":"2026-11-10T19:30:19+00:00","dateModified":"2026-11-10T22:12:47+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms"},"wordCount":9,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["dynamic choice","editing","Forms","what\u2019s new november 2026"],"articleSection":["Data Management","Mapping"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms","name":"Dynamic choice input: Building smarter and more resilient forms","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2026-11-10T19:30:19+00:00","dateModified":"2026-11-10T22:12:47+00:00","description":"Learn about what dynamic choice inputs are and how you can configure them in your own forms.","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/dynamic-choice-input-building-smarter-and-more-resilient-forms#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Dynamic choice input: Building smarter and more resilient forms"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/d3c88e5b8ac516b0b054b8e224ac7c57","name":"Bekah Bollin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/07\/0157-devsum25-ddr66379-e1784933122344-213x200.jpg","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/07\/0157-devsum25-ddr66379-e1784933122344-213x200.jpg","caption":"Bekah Bollin"},"description":"Bekah joined the ArcGIS Online team in 2022 as a Product Engineer. She contributes to a variety of projects in the ArcGIS Online space including GIS data editing, management, and visualization. When she is not making maps, she can be found hiking outside with her dog or finding a cozy coffee shop.","url":"https:\/\/www.esri.com\/arcgis-blog\/author\/rbollin"}]}},"text_date":"November 10, 2026","author_name":"Bekah Bollin","author_page":"https:\/\/www.esri.com\/arcgis-blog\/author\/rbollin","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/08\/Newsroom-Keyart-Wide-1920-x-1080.jpg","primary_product":"ArcGIS Online","tag_data":[{"term_id":781289,"name":"dynamic choice","slug":"dynamic-choice","term_group":0,"term_taxonomy_id":781289,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":27971,"name":"editing","slug":"editing","term_group":0,"term_taxonomy_id":27971,"taxonomy":"post_tag","description":"","parent":0,"count":182,"filter":"raw"},{"term_id":317882,"name":"Forms","slug":"forms","term_group":0,"term_taxonomy_id":317882,"taxonomy":"post_tag","description":"","parent":0,"count":27,"filter":"raw"},{"term_id":781238,"name":"what\u2019s new november 2026","slug":"whats-new-november-2026","term_group":0,"term_taxonomy_id":781238,"taxonomy":"post_tag","description":"","parent":0,"count":19,"filter":"raw"}],"category_data":[{"term_id":23851,"name":"Data Management","slug":"data-management","term_group":0,"term_taxonomy_id":23851,"taxonomy":"category","description":"","parent":0,"count":989,"filter":"raw"},{"term_id":22941,"name":"Mapping","slug":"mapping","term_group":0,"term_taxonomy_id":22941,"taxonomy":"category","description":"","parent":0,"count":2783,"filter":"raw"}],"product_data":[{"term_id":679821,"name":"ArcGIS Field Maps","slug":"field-maps","term_group":0,"term_taxonomy_id":679821,"taxonomy":"product","description":"","parent":36591,"count":172,"filter":"raw"},{"term_id":36551,"name":"ArcGIS Online","slug":"arcgis-online","term_group":0,"term_taxonomy_id":36551,"taxonomy":"product","description":"","parent":0,"count":2530,"filter":"raw"},{"term_id":774772,"name":"ArcGIS Web Editor","slug":"web-editor","term_group":0,"term_taxonomy_id":774772,"taxonomy":"product","description":"","parent":36591,"count":34,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=arcgis-online","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2987590","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/320832"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=2987590"}],"version-history":[{"count":31,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2987590\/revisions"}],"predecessor-version":[{"id":2989272,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2987590\/revisions\/2989272"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=2987590"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=2987590"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=2987590"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=2987590"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=2987590"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}