diff --git a/ansible/inventory/group_vars/switches b/ansible/inventory/group_vars/switches
new file mode 100644
index 0000000000000000000000000000000000000000..85ff4e7c971fd1667171090681f27bd2af360159
--- /dev/null
+++ b/ansible/inventory/group_vars/switches
@@ -0,0 +1,3 @@
+---
+# Whether to save switch configuration after it has been applied.
+switch_config_save: false
diff --git a/ansible/physical-network.yml b/ansible/physical-network.yml
index 06a4a4ef0c55cd195735bc2bb7a412409f30ae18..1be7bbb3c1e923db0365ca1d86746ff66b5b81a0 100644
--- a/ansible/physical-network.yml
+++ b/ansible/physical-network.yml
@@ -122,6 +122,7 @@
       dell_switch_provider: "{{ switch_dellos_provider }}"
       dell_switch_config: "{{ switch_config }}"
       dell_switch_interface_config: "{{ switch_interface_config }}"
+      dell_switch_save: "{{ switch_config_save }}"
 
 - name: Ensure Dell PowerConnect physical switches are configured
   hosts: switches_of_type_dell-powerconnect:&switches_in_display_mode_False
diff --git a/ansible/roles/dell-switch/defaults/main.yml b/ansible/roles/dell-switch/defaults/main.yml
index f642dd32508d2c3ad1c3a8a09825eb79a624d97d..36118c251868595592b9a7ddb9c668ba1adc9154 100644
--- a/ansible/roles/dell-switch/defaults/main.yml
+++ b/ansible/roles/dell-switch/defaults/main.yml
@@ -12,3 +12,6 @@ dell_switch_config: []
 # dicts. Each dict contains a 'description' item and a 'config' item which
 # should contain a list of per-interface configuration.
 dell_switch_interface_config: {}
+
+# Whether to save the configuration.
+dell_switch_save: false
diff --git a/ansible/roles/dell-switch/tasks/main.yml b/ansible/roles/dell-switch/tasks/main.yml
index 07fd3d92315ea5853b84399ff9faa41cfde970f8..9bc146b8988eb5c002736f14851a72f861df88f6 100644
--- a/ansible/roles/dell-switch/tasks/main.yml
+++ b/ansible/roles/dell-switch/tasks/main.yml
@@ -4,6 +4,7 @@
     module: dellos6_config
     provider: "{{ dell_switch_provider }}"
     src: dellos6-config.j2
+    save: "{{ dell_switch_save | bool }}"
   when: dell_switch_type == 'dellos6'
 
 - name: Ensure DellOS9 switches are configured
@@ -11,6 +12,7 @@
     module: dellos9_config
     provider: "{{ dell_switch_provider }}"
     src: dellos9-config.j2
+    save: "{{ dell_switch_save | bool }}"
   when: dell_switch_type == 'dellos9'
 
 - name: Ensure DellOS10 switches are configured
@@ -18,4 +20,5 @@
     module: dellos10_config
     provider: "{{ dell_switch_provider }}"
     src: "{{ lookup('template', 'dellos10-config.j2') }}"
+    save: "{{ dell_switch_save | bool }}"
   when: dell_switch_type == 'dellos10'
diff --git a/doc/source/configuration/reference/physical-network.rst b/doc/source/configuration/reference/physical-network.rst
index ef5de6f14f8aa85f03303656053bf8d905c3708a..6ee5cb8ec48cc20b5bc989dd5d08636f13f28070 100644
--- a/doc/source/configuration/reference/physical-network.rst
+++ b/doc/source/configuration/reference/physical-network.rst
@@ -229,6 +229,9 @@ Configuration for these devices is applied using the ``dellos6_config``,
 
 ``switch_type`` should be set to ``dellos6``, ``dellos9``, or ``dellos10``.
 
+``switch_config_save`` may be set to ``true`` to enable saving configuration
+after it has been applied.
+
 Provider
 ^^^^^^^^
 
diff --git a/releasenotes/notes/dell-switch-save-0d49488a5c4c25c0.yaml b/releasenotes/notes/dell-switch-save-0d49488a5c4c25c0.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..ef4812c68e66f226a562bdf58d9d015dc3ecca79
--- /dev/null
+++ b/releasenotes/notes/dell-switch-save-0d49488a5c4c25c0.yaml
@@ -0,0 +1,6 @@
+---
+features:
+  - |
+    Adds support for saving configuration to switches when running ``kayobe
+    physical network configure``. Currently only supported on Dell OS9 and OS10
+    devices.