diff --git a/gso/translations/en-GB.json b/gso/translations/en-GB.json
index 1efdbe0e4aac5d620fea211839a843d1b9c5b5ae..4fe3a15c1782c16e2ba1a889e724bb72b6d7a85b 100644
--- a/gso/translations/en-GB.json
+++ b/gso/translations/en-GB.json
@@ -31,7 +31,8 @@
             "iptrunk_sideB_ae_members_descriptions": "Aggregated Ethernet member interface descriptions",
             "migrate_to_different_site": "Migrating to a different Site",
             "remove_configuration": "Remove configuration from the router",
-            "clean_up_ipam": "Clean up related entries in IPAM"
+            "clean_up_ipam": "Clean up related entries in IPAM",
+            "restore_isis_metric": "Restore ISIS metric to original value"
         }
     },
     "workflow": {
diff --git a/gso/workflows/iptrunk/migrate_iptrunk.py b/gso/workflows/iptrunk/migrate_iptrunk.py
index 383a8189a150097aa6c0a361997c2b31a50761a8..55bde271934ccb339429af052f1a3bb6e1ea7773 100644
--- a/gso/workflows/iptrunk/migrate_iptrunk.py
+++ b/gso/workflows/iptrunk/migrate_iptrunk.py
@@ -16,7 +16,7 @@ from orchestrator.forms import FormPage
 from orchestrator.forms.validators import Choice, Label, UniqueConstrainedList
 from orchestrator.targets import Target
 from orchestrator.types import FormGenerator, State, UUIDstr
-from orchestrator.workflow import StepList, done, init, inputstep
+from orchestrator.workflow import StepList, conditional, done, init, inputstep
 from orchestrator.workflows.steps import resync, store_process_subscription, unsync
 from orchestrator.workflows.utils import wrap_modify_initial_input_form
 from pydantic import validator
@@ -68,6 +68,7 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator:
         replace_side: replaced_side_enum  # type: ignore[valid-type]
         warning_label: Label = "Are we moving to a different Site?"  # type: ignore[assignment]
         migrate_to_different_site: bool = False
+        restore_isis_metric: bool = True
 
     migrate_form_input = yield IPTrunkMigrateForm
 
@@ -575,6 +576,8 @@ def migrate_iptrunk() -> StepList:
 
     TODO: add interface checks
     """
+    should_restore_isis_metric = conditional(lambda state: state["restore_isis_metric"])
+
     return (
         init
         >> store_process_subscription(Target.MODIFY)
@@ -587,8 +590,8 @@ def migrate_iptrunk() -> StepList:
         >> pp_interaction(deploy_new_config_real)
         >> confirm_continue_move_fiber
         >> pp_interaction(deploy_new_isis)
-        >> confirm_continue_restore_isis
-        >> pp_interaction(restore_isis_metric)
+        >> should_restore_isis_metric(confirm_continue_restore_isis)
+        >> should_restore_isis_metric(pp_interaction(restore_isis_metric))
         >> pp_interaction(delete_old_config_dry)
         >> pp_interaction(delete_old_config_real)
         >> update_ipam