diff --git a/ansible/inventory/group_vars/all/neutron b/ansible/inventory/group_vars/all/neutron
index cf1c479448ab7af333cf3308605dd3fd35fe4526..acd1e48305da816c1599deebb8b5a46ddd42f28f 100644
--- a/ansible/inventory/group_vars/all/neutron
+++ b/ansible/inventory/group_vars/all/neutron
@@ -10,13 +10,13 @@ kolla_neutron_ml2_mechanism_drivers:
 kolla_neutron_ml2_type_drivers:
   - flat
   - vlan
-  - vxlan
+  - "{{ 'geneve' if kolla_enable_ovn | bool else 'vxlan' }}"
 
 # List of Neutron ML2 tenant network types to use.
 kolla_neutron_ml2_tenant_network_types:
   - flat
   - vlan
-  - vxlan
+  - "{{ 'geneve' if kolla_enable_ovn | bool else 'vxlan' }}"
 
 # List of Neutron ML2 network VLAN ranges to use. Each item should be a dict
 # containing the following items:
diff --git a/releasenotes/notes/neutron-use-geneve-with-ovn-4d739c90b1aaa3eb.yaml b/releasenotes/notes/neutron-use-geneve-with-ovn-4d739c90b1aaa3eb.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..e0cf42b26eac140acca4d26edad84df577099be2
--- /dev/null
+++ b/releasenotes/notes/neutron-use-geneve-with-ovn-4d739c90b1aaa3eb.yaml
@@ -0,0 +1,7 @@
+---
+upgrade:
+  - |
+    Updates the default Neutron ML2 type drivers and tenant network types to
+    use ``geneve`` instead of ``vxlan`` when OVN is enabled. This affects the
+    ``kolla_neutron_ml2_type_drivers`` and
+    ``kolla_neutron_ml2_tenant_network_types`` variables.