diff --git a/.github/ISSUE_TEMPLATE/Bug.md b/.github/ISSUE_TEMPLATE/Bug.md
deleted file mode 100644
index 038330a..0000000
--- a/.github/ISSUE_TEMPLATE/Bug.md
+++ /dev/null
@@ -1,103 +0,0 @@
----
-name: Bug Report
-about: Report a problem with HAProxy to help us resolve it.
-labels: 'type: bug, status: needs-triage'
----
-
-<!--
-
-Welcome! - We kindly ask that you:
-
-  1. Fill out the issue template below - not doing so needs a good reason.
-  2. Use the forum or the mailing list if you have a question rather than a bug or feature request.
-
-The forum is at: https://discourse.haproxy.org/
-
-The mailing list (no need to subscribe) is: haproxy@formilux.org
-Subscribe to the list: haproxy+subscribe@formilux.org
-Unsubscribe from the list: haproxy+unsubscribe@formilux.org
-
-Forum and mailing list are correct places for questions about HAProxy or general suggestions
-and topics, e.g. usage or documentation questions! This issue tracker is for tracking bugs and
-feature requests directly relating to the development of the software itself.
-
-Thanks for understanding, and for contributing to the project!
-
--->
-
-
-## Detailed description of the problem
-
-<!--
-In this section, please try to concentrate on observations. Only describe what you
-observed directly.
--->
-
-## Expected behavior
-
-<!--
-Explain why you consider the described behavior (above) to be wrong. What did you expect instead?
-
-Most likely this is a mismatch between HAProxy's documentation and HAProxy's behavior.
--->
-
-## Steps to reproduce the behavior
-
-<!--
-The more time you spend describing an easy way to reproduce the behavior (if
-this is possible), the easier it is for the project developers to fix it!
--->
-
-1. 
-2. 
-3. 
-
-## Do you have any idea what may have caused this?
-
-## Do you have an idea how to solve the issue?
-
-## What is your configuration?
-
-<!--
-Include as much configuration as possible, including global and default sections.
-Replace confidential data like domain names and IP addresses.
-
-Put it in code blocks ```:
--->
-
-```
-(paste your output here)
-```
-
-## Output of `haproxy -vv` and `uname -a`
-
-<!-- Put it in code blocks ```: -->
-
-```
-(paste your output here)
-```
-
-## If HAProxy crashed: Last outputs and backtraces
-
-<!--
-If HAProxy crashed then please provide:
-
-  1. The last output from your HAProxy logs (e.g. from journalctl or syslog).
-  2. A backtrace from a coredump (`t a a bt full`).
-
-Put all results in code blocks ```:
--->
-
-```
-(paste your output here)
-```
-
-## Additional information (if helpful)
-
-<!--
-Any additional information about your environment that may be useful to know about. For example:
-  - Any local patches applied.
-  - Environment specificities
-  - Unusual workload
-  - Interesting observations or coindidences with events on other components
--->
diff --git a/.github/ISSUE_TEMPLATE/Bug.yml b/.github/ISSUE_TEMPLATE/Bug.yml
new file mode 100644
index 0000000..b56ecb7
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/Bug.yml
@@ -0,0 +1,108 @@
+name: Bug Report
+description: Report a problem with HAProxy to help us resolve it.
+labels:
+- 'type: bug'
+- 'status: needs-triage'
+body:
+- type: markdown
+  attributes:
+    value: |
+      ## Welcome!
+
+      You are about to *report a bug* you encountered in HAProxy. Please use the 'Feature Request' template if you want to propose a new feature instead.
+
+      This issue tracker is used to track actual bugs. Please use [the forum](https://discourse.haproxy.org/) or mailing list if you have a question, e.g. to get help with building a configuration to achieve your desired behavior.
+
+      The forum is at: https://discourse.haproxy.org/
+
+      The mailing list (no need to subscribe) is: haproxy@formilux.org
+      Subscribe to the list: haproxy+subscribe@formilux.org
+      Unsubscribe from the list: haproxy+unsubscribe@formilux.org
+
+      Forum and mailing list are correct places for questions about HAProxy or general suggestions and topics, e.g. usage or documentation questions! This issue tracker is for tracking bugs and feature requests directly relating to the development of the software itself.
+
+      Thanks for understanding, and for contributing to the project!
+- type: textarea
+  id: description
+  attributes:
+    label: Detailed Description of the Problem
+    description: |
+      In this section, please try to concentrate on observations. Only describe what you observed directly.
+  validations:
+    required: true
+- type: textarea
+  id: expected-behavior
+  attributes:
+    label: Expected Behavior
+    description: |
+      Explain why you consider the described behavior (above) to be wrong. What did you expect instead?
+
+      Most likely this is a mismatch between HAProxy's documentation and HAProxy's behavior.
+  validations:
+    required: true
+- type: textarea
+  id: steps
+  attributes:
+    label: Steps to Reproduce the Behavior
+    description: |
+      The more time you spend describing an easy way to reproduce the behavior (if this is possible), the easier it is for the project developers to fix it!
+    placeholder: |
+      1.
+      2.
+      3.
+  validations:
+    required: true
+- type: textarea
+  id: possible-cause
+  attributes:
+    label: Do you have any idea what may have caused this?
+    description: |
+      Simply leave this empty if you do not.
+- type: textarea
+  id: possible-solution
+  attributes:
+    label: Do you have an idea how to solve the issue?
+    description: |
+      Simply leave this empty if you do not.
+- type: textarea
+  id: configuration
+  attributes:
+    label: What is your configuration?
+    description: |
+      - Include as much configuration as possible, including global and default sections.
+      - Replace confidential data like domain names and IP addresses.
+    render: haproxy
+  validations:
+    required: true
+- type: textarea
+  id: haproxy-vv
+  attributes:
+    label: 'Output of `haproxy -vv`'
+    description: |
+      Please run `haproxy -vv` (with two `v`) and paste the output into this field.
+
+      Please also include the output of `uname -a` if you use HAProxy 2.1 or older.
+    render: plain
+  validations:
+    required: true
+- type: textarea
+  id: last-output
+  attributes:
+    label: Last Outputs and Backtraces
+    description: |
+      If HAProxy crashed then please provide:
+
+        1. The last output from your HAProxy logs (e.g. from journalctl or syslog).
+        2. A backtrace from a coredump (`t a a bt full`).
+    render: plain
+- type: textarea
+  id: additional
+  attributes:
+    label: Additional Information
+    description: |
+      Any additional information about your environment that may be useful to know about. For example:
+
+        - Any local patches applied
+        - Environment specificities
+        - Unusual workload
+        - Interesting observations or coincidences with events on other components
diff --git a/.github/ISSUE_TEMPLATE/Code-Report.md b/.github/ISSUE_TEMPLATE/Code-Report.md
deleted file mode 100644
index d1bcd49..0000000
--- a/.github/ISSUE_TEMPLATE/Code-Report.md
+++ /dev/null
@@ -1,55 +0,0 @@
----
-name: Code Report
-about: File a Code Report (for example from coverity or valgrind)
-labels: 'type: code-report'
----
-
-<!--
-
-Welcome! - We kindly ask that you:
-
-  1. Fill out the issue template below - not doing so needs a good reason.
-  2. Use the forum or the mailing list if you have a question rather than a bug or feature request.
-
-The forum is at: https://discourse.haproxy.org/
-
-The mailing list (no need to subscribe) is: haproxy@formilux.org
-Subscribe to the list: haproxy+subscribe@formilux.org
-Unsubscribe from the list: haproxy+unsubscribe@formilux.org
-
-Forum and mailing list are correct places for questions about HAProxy or general suggestions
-and topics, e.g. usage or documentation questions! This issue tracker is for tracking bugs and
-feature requests directly relating to the development of the software itself.
-
-Thanks for understanding, and for contributing to the project!
-
--->
-
-## Code Report
-
-<!--
-In this section please provide:
-  1. Information about the tool that generated the report (e.g. valgrind-3.11.0 or Coverity).
-  2. Provide the full output of the tool in code blocks (```).
--->
-
-Tool: (tool name goes here)
-
-```
-(paste your output here)
-```
-
-
-## Output of `haproxy -vv` and `uname -a`
-
-<!--
-Please add the output of haproxy -vv you are currently using here, this helps us
-later to see what has changed in HAProxy when we revisit this issue after some
-time.
-
-Put it in code blocks ```:
--->
-
-```
-(paste your output here)
-```
diff --git a/.github/ISSUE_TEMPLATE/Code-Report.yml b/.github/ISSUE_TEMPLATE/Code-Report.yml
new file mode 100644
index 0000000..41d1dd6
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/Code-Report.yml
@@ -0,0 +1,43 @@
+name: Code Report
+description: File a Code Report (for example from coverity or valgrind)
+labels:
+- 'type: code-report'
+body:
+- type: markdown
+  attributes:
+    value: |
+      ## Welcome!
+
+      You are about to *report an issue found using an automated tool*. Please use the 'Bug Report' template if you encountered a regular bug.
+
+      Please use the forum or mailing list if you have a question, e.g. to get help with building a configuration to achieve your desired behavior.
+- type: input
+  id: tool
+  attributes:
+    label: Tool Name and Version
+    description: The name and version of the tool you used (e.g. valgrind-3.13.0, or Coverity)
+  validations:
+    required: true
+- type: textarea
+  id: code-report
+  attributes:
+    label: Code Report
+    description: Please provide the full output of the tool here.
+    render: plain
+  validations:
+    required: true
+- type: textarea
+  id: additional
+  attributes:
+    label: Additional Information
+    description: |
+      Any additional information about your environment (e.g. example configurations to trigger a memory leak).
+- type: textarea
+  id: haproxy-vv
+  attributes:
+    label: 'Output of `haproxy -vv`'
+    render: plain
+    description: |
+      Please add the output of `haproxy -vv` you are currently using here, this helps us later to see what has changed in HAProxy when we revisit this issue after some time.
+  validations:
+    required: true
diff --git a/.github/ISSUE_TEMPLATE/Feature.md b/.github/ISSUE_TEMPLATE/Feature.md
deleted file mode 100644
index eaaa7e5..0000000
--- a/.github/ISSUE_TEMPLATE/Feature.md
+++ /dev/null
@@ -1,55 +0,0 @@
----
-name: Feature Request
-about: Suggest a new feature or enhancement for HAProxy.
-labels: 'type: feature'
----
-
-<!--
-
-Welcome! - We kindly ask that you:
-
-  1. Fill out the issue template below - not doing so needs a good reason.
-  2. Use the forum or the mailing list if you have a question rather than a bug or feature request.
-
-The forum is at: https://discourse.haproxy.org/
-
-The mailing list (no need to subscribe) is: haproxy@formilux.org
-Subscribe to the list: haproxy+subscribe@formilux.org
-Unsubscribe from the list: haproxy+unsubscribe@formilux.org
-
-Forum and mailing list are correct places for questions about HAProxy or general suggestions
-and topics, e.g. usage or documentation questions! This issue tracker is for tracking bugs and
-feature requests directly relating to the development of the software itself.
-
-Thanks for understanding, and for contributing to the project!
-
--->
-
-## What should haproxy do differently? Which functionality do you think we should add?
-
-<!--
-Please describe the feature you would like us to add here.
--->
-
-## What are you trying to do?
-
-<!--
-This section should contain a brief description what you're trying to do, which
-would be possible after implementing the new feature.
--->
-
-## Output of `haproxy -vv` and `uname -a`
-
-<!--
-Please add the output of haproxy -vv you are currently using here, this helps us
-later to see what has changed in HAProxy when we revisit this issue after some
-time.
-
-*PLEASE DO NOT LEAVE THIS OUT*
-
-Put it in code blocks ```:
--->
-
-```
-(paste your output here)
-```
diff --git a/.github/ISSUE_TEMPLATE/Feature.yml b/.github/ISSUE_TEMPLATE/Feature.yml
new file mode 100644
index 0000000..8515256
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/Feature.yml
@@ -0,0 +1,50 @@
+name: Feature Request
+description: Suggest a new feature or enhancement for HAProxy.
+labels:
+- 'type: feature'
+body:
+- type: markdown
+  attributes:
+    value: |
+      ## Welcome!
+
+      You are about to *request a feature* you are missing in HAProxy.
+
+      This issue tracker is used to track feature requests and bug reports. Please use [the forum](https://discourse.haproxy.org/) or mailing list if you have a question, e.g. to get help with building a configuration to achieve your desired behavior.
+
+      The forum is at: https://discourse.haproxy.org/
+
+      The mailing list (no need to subscribe) is: haproxy@formilux.org
+      Subscribe to the list: haproxy+subscribe@formilux.org
+      Unsubscribe from the list: haproxy+unsubscribe@formilux.org
+
+      Forum and mailing list are correct places for questions about HAProxy or general suggestions and topics, e.g. usage or documentation questions! This issue tracker is for tracking bugs and feature requests directly relating to the development of the software itself.
+
+      Thanks for understanding, and for contributing to the project!
+- type: textarea
+  id: feature-request
+  attributes:
+    label: Your Feature Request
+    description: |
+      What should HAProxy do differently? Which functionality do you think we should add? Please describe the feature you would like us to add here.
+  validations:
+    required: true
+- type: textarea
+  id: feature-explanation
+  attributes:
+    label: What are you trying to do?
+    description: |
+      This section should contain a brief description what you're trying to do, which would be possible after implementing the new feature.
+  validations:
+    required: true
+- type: textarea
+  id: haproxy-vv
+  attributes:
+    label: 'Output of `haproxy -vv`'
+    render: plain
+    description: >
+      Please add the output of `haproxy -vv` you are currently using here, this helps us later to see what has changed in HAProxy when we revisit this issue after some time.
+
+      Please *do not* enter "future version" or something similar. We are interested in the version you are *currently using*.
+  validations:
+    required: true
diff --git a/.github/ISSUE_TEMPLATE/Question.md b/.github/ISSUE_TEMPLATE/Question.md
deleted file mode 100644
index 99b93e6..0000000
--- a/.github/ISSUE_TEMPLATE/Question.md
+++ /dev/null
@@ -1,19 +0,0 @@
----
-name: Question
-about: Do NOT ask questions in the issue tracker. This issue tracker is for tracking bugs and feature requests directly relating to the development of the software itself.
-labels: 'status: invalid'
----
-
-# :stop_sign: HOLD ON :stop_sign:
-
-Do **NOT** ask questions in the issue tracker. This issue tracker is for tracking bugs and
-feature requests directly relating to the development of the software itself.
- 
-Use the forum or the mailing list if you have a question rather than a bug or feature request.
- 
-The forum is at: https://discourse.haproxy.org/
- 
-- The mailing list (no need to subscribe) is: haproxy@formilux.org
-- Subscribe to the list: haproxy+subscribe@formilux.org
-- Unsubscribe from the list: haproxy+unsubscribe@formilux.org
-
