diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml
index 360117927f..72edd47738 100644
--- a/ansible/group_vars/all.yml
+++ b/ansible/group_vars/all.yml
@@ -1092,6 +1092,7 @@ enable_prometheus_blackbox_exporter: "{{ enable_prometheus | bool }}"
 
 prometheus_alertmanager_user: "admin"
 prometheus_openstack_exporter_interval: "60s"
+prometheus_openstack_exporter_timeout: "10s"
 prometheus_elasticsearch_exporter_interval: "60s"
 prometheus_cmdline_extras:
 prometheus_ceph_mgr_exporter_endpoints: []
diff --git a/ansible/roles/prometheus/templates/prometheus.yml.j2 b/ansible/roles/prometheus/templates/prometheus.yml.j2
index 5384b7b5f5..fa0aabba02 100644
--- a/ansible/roles/prometheus/templates/prometheus.yml.j2
+++ b/ansible/roles/prometheus/templates/prometheus.yml.j2
@@ -78,6 +78,7 @@ scrape_configs:
 {% if enable_prometheus_openstack_exporter | bool %}
   - job_name: openstack_exporter
     scrape_interval: {{ prometheus_openstack_exporter_interval }}
+    scrape_timeout: {{ prometheus_openstack_exporter_timeout }}
     honor_labels: true
     static_configs:
       - targets:
diff --git a/releasenotes/notes/add-openstack-exporter-scrape-timeout-af5dcd5d988ae12b.yaml b/releasenotes/notes/add-openstack-exporter-scrape-timeout-af5dcd5d988ae12b.yaml
new file mode 100644
index 0000000000..1e434a9d39
--- /dev/null
+++ b/releasenotes/notes/add-openstack-exporter-scrape-timeout-af5dcd5d988ae12b.yaml
@@ -0,0 +1,4 @@
+---
+features:
+  - Add new option prometheus_openstack_exporter_timeout to override default
+    scrape_timeout for openstack exporter job.