Skip to main content
Back

Feedback

This pattern lets users give feedback about HMRC services.

When to use

Use this pattern to encourage users to give feedback about a service.

How it works

You need HMRC Frontend to use this pattern — find out how to install HMRC Frontend. If you use the HMRC Nunjucks macro, you must copy and paste the entire macro into your code.

Use HMRC’s microservice for feedback. To set up feedback for your service email paul.voller@hmrc.gov.uk.

If your service has a phase banner add the question page URL to the ‘feedback’ link.

For authenticated non-linear journeys, open the feedback page if the user clicks the sign out link. The form should open within the same tab.

For linear journeys, the feedback text below should appear at the bottom of the page, on the last page(s) a user sees within a service, such as the confirmation page or sign out page (including service timeout sign outs).

It could also be shared as a link at the last transaction a user has with a service (for example by email). Services often have many different end points for users. Make sure there’s a way to collect feedback on all of them.

The question page:

              <h1 class="govuk-heading-xl">Give feedback</h1>

<p class="govuk-body">We use your feedback to improve our services. To better understand it, we may link your feedback to other information we hold about you, like gender and age.</p>

<p class="govuk-body">See the <a class="govuk-link" href="https://www.gov.uk/government/publications/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you" rel="noreferrer noopener" target="_blank">HMRC Privacy Notice (opens in new tab)</a> for details about how we collect, use, protect and secure your personal information.</p>

<p class="govuk-body">This survey has 4 optional questions.</p>

<form action="/form-handler" method="post" novalidate>
  <div class="govuk-form-group">
    <fieldset class="govuk-fieldset">
      <legend class="govuk-fieldset__legend govuk-fieldset__legend--m">
        Were you able to do what you needed to do today?
      </legend>
      <div class="govuk-radios" data-module="govuk-radios">
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="able-yes" name="able" type="radio" value="yes">
          <label class="govuk-label govuk-radios__label" for="able-yes">
            Yes
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="able-no" name="able" type="radio" value="no">
          <label class="govuk-label govuk-radios__label" for="able-no">
            No
          </label>
        </div>
      </div>
    </fieldset>
  </div>

  <div class="govuk-form-group">
    <fieldset class="govuk-fieldset">
      <legend class="govuk-fieldset__legend govuk-fieldset__legend--m">
        How easy was it for you to do what you needed to do today?
      </legend>
      <div class="govuk-radios" data-module="govuk-radios">
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-VeryEasy" name="howEasyScore" type="radio" value="VeryEasy">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-VeryEasy">
            Very easy
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-Easy" name="howEasyScore" type="radio" value="Easy">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-Easy">
            Easy
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-Moderate" name="howEasyScore" type="radio" value="Moderate">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-Moderate">
            Neither easy or difficult
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-Difficult" name="howEasyScore" type="radio" value="Difficult">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-Difficult">
            Difficult
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-VeryDifficult" name="howEasyScore" type="radio" value="VeryDifficult">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-VeryDifficult">
            Very difficult
          </label>
        </div>
      </div>
    </fieldset>
  </div>

  <div class="govuk-form-group govuk-character-count" data-module="govuk-character-count" data-maxlength="1000">
    <label class="govuk-label govuk-label--m" for="whyGiveScore">
      Why did you give this answer?
    </label>
    <div id="whyGiveScore-hint" class="govuk-hint">
      Please do not enter personal information such as your National Insurance number, Unique Tax Reference or address or telephone number in this box. Please note we are unable to reply to comments individually but we do use your feedback to help improve our services.
    </div>
    <textarea class="govuk-textarea govuk-js-character-count" id="whyGiveScore" name="moreDetail" rows="5" aria-describedby="whyGiveScore-info whyGiveScore-hint"></textarea>
    <div id="whyGiveScore-info" class="govuk-hint govuk-character-count__message">
      You can enter up to 1000 characters
    </div>
  </div>

  <div class="govuk-form-group">
    <fieldset class="govuk-fieldset">
      <legend class="govuk-fieldset__legend govuk-fieldset__legend--m">
        Overall, how did you feel about the service you received today?
      </legend>
      <div class="govuk-radios" data-module="govuk-radios">
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-VerySatisfied" name="howDoYouFeelScore" type="radio" value="VerySatisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-VerySatisfied">
            Very satisfied
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-Satisfied" name="howDoYouFeelScore" type="radio" value="Satisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-Satisfied">
            Satisfied
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-Moderate" name="howDoYouFeelScore" type="radio" value="Moderate">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-Moderate">
            Neither satisfied or dissatisfied
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-Dissatisfied" name="howDoYouFeelScore" type="radio" value="Dissatisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-Dissatisfied">
            Dissatisfied
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-VeryDissatisfied" name="howDoYouFeelScore" type="radio" value="VeryDissatisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-VeryDissatisfied">
            Very dissatisfied
          </label>
        </div>
      </div>
    </fieldset>
  </div>

  <button type="submit" class="govuk-button" data-module="govuk-button">
    Send feedback
  </button>
</form>
            
                <h1 class="govuk-heading-xl">Rhoi adborth</h1>

<p class="govuk-body">Rydym yn defnyddio’ch adborth i wella ein gwasanaethau. I ddeall eich adborth yn well, efallai y byddwn yn ei gysylltu â gwybodaeth arall sydd gennym amdanoch, megis eich rhywedd a’ch oedran.</p>

<p class="govuk-body">Gweler <a class="govuk-link" href="https://www.gov.uk/government/publications/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you" rel="noreferrer noopener" target="_blank">Hysbysiad Preifatrwydd CThEF (yn agor tab newydd)</a> i gael gwybod sut yr ydym yn casglu, defnyddio a diogelu’ch gwybodaeth bersonol.</p>

<p class="govuk-body">Mae’r arolwg hwn yn cynnwys 4 cwestiwn dewisol.</p>

<form action="/form-handler" method="post" novalidate>
  <div class="govuk-form-group">
    <fieldset class="govuk-fieldset">
      <legend class="govuk-fieldset__legend govuk-fieldset__legend--m">
        A oeddech wedi gallu gwneud yr hyn yr oedd angen i chi ei wneud heddiw?
      </legend>
      <div class="govuk-radios" data-module="govuk-radios">
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="able-yes" name="able" type="radio" value="yes">
          <label class="govuk-label govuk-radios__label" for="able-yes">
            Iawn
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="able-no" name="able" type="radio" value="no">
          <label class="govuk-label govuk-radios__label" for="able-no">
            Na
          </label>
        </div>
      </div>
    </fieldset>
  </div>

  <div class="govuk-form-group">
    <fieldset class="govuk-fieldset">
      <legend class="govuk-fieldset__legend govuk-fieldset__legend--m">
        Pa mor hawdd oedd hi i wneud yr hyn yr oedd angen i chi ei wneud heddiw?
      </legend>
      <div class="govuk-radios" data-module="govuk-radios">
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-VeryEasy" name="howEasyScore" type="radio" value="VeryEasy">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-VeryEasy">
            Hawdd iawn
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-Easy" name="howEasyScore" type="radio" value="Easy">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-Easy">
            Hawdd
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-Moderate" name="howEasyScore" type="radio" value="Moderate">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-Moderate">
            Ddim yn hawdd nac yn anodd
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-Difficult" name="howEasyScore" type="radio" value="Difficult">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-Difficult">
            Anodd
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howEasyQuestion-VeryDifficult" name="howEasyScore" type="radio" value="VeryDifficult">
          <label class="govuk-label govuk-radios__label" for="howEasyQuestion-VeryDifficult">
            Anodd iawn
          </label>
        </div>
      </div>
    </fieldset>
  </div>

  <div class="govuk-form-group govuk-character-count" data-module="govuk-character-count" data-maxlength="1000" data-i18n.characters-under-limit.other="Mae gennych %{count} o gymeriadau yn weddill" data-i18n.characters-under-limit.one="Mae gennych 1 cymeriad yn weddill" data-i18n.characters-at-limit="Mae gennych 0 o gymeriadau yn weddill" data-i18n.characters-over-limit.other="Mae gennych %{count} o gymeriadau yn ormod" data-i18n.characters-over-limit.one="Mae gennych 1 cymeriad yn ormod" data-i18n.words-under-limit.other="Mae gennych %{count} o eiriau yn weddill" data-i18n.words-under-limit.one="Mae gennych 1 gair yn weddill" data-i18n.words-at-limit="Mae gennych 0 o eiriau yn weddill" data-i18n.words-over-limit.other="Mae gennych %{count} o eiriau yn ormod" data-i18n.words-over-limit.one="Mae gennych 1 gair yn ormod">
    <label class="govuk-label govuk-label--m" for="whyGiveScore">
      Pam y gwnaethoch roi’r ateb hwn?
    </label>
    <div id="whyGiveScore-hint" class="govuk-hint">
      Peidiwch â nodi gwybodaeth bersonol, megis eich rhif Yswiriant Gwladol, eich Cyfeirnod Unigryw y Trethdalwr, eich cyfeiriad neu’ch rhif ffôn yn y blwch hwn. Sylwer – ni allwn ymateb i sylwadau’n unigol, ond mi ydym yn defnyddio’ch adborth i helpu i wella ein gwasanaethau.
    </div>
    <textarea class="govuk-textarea govuk-js-character-count" id="whyGiveScore" name="moreDetail" rows="5" aria-describedby="whyGiveScore-info whyGiveScore-hint"></textarea>
    <div id="whyGiveScore-info" class="govuk-hint govuk-character-count__message">
      Gallwch nodi hyd at 1000 o gymeriadau
    </div>
  </div>

  <div class="govuk-form-group">
    <fieldset class="govuk-fieldset">
      <legend class="govuk-fieldset__legend govuk-fieldset__legend--m">
        Yn gyffredinol, beth oedd eich barn am y gwasanaeth a gawsoch heddiw?
      </legend>
      <div class="govuk-radios" data-module="govuk-radios">
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-VerySatisfied" name="howDoYouFeelScore" type="radio" value="VerySatisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-VerySatisfied">
            Bodlon iawn
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-Satisfied" name="howDoYouFeelScore" type="radio" value="Satisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-Satisfied">
            Bodlon
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-Moderate" name="howDoYouFeelScore" type="radio" value="Moderate">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-Moderate">
            Ddim yn fodlon nac yn anfodlon
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-Dissatisfied" name="howDoYouFeelScore" type="radio" value="Dissatisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-Dissatisfied">
            Anfodlon
          </label>
        </div>
        <div class="govuk-radios__item">
          <input class="govuk-radios__input" id="howDoYouFeelQuestion-VeryDissatisfied" name="howDoYouFeelScore" type="radio" value="VeryDissatisfied">
          <label class="govuk-label govuk-radios__label" for="howDoYouFeelQuestion-VeryDissatisfied">
            Anfodlon iawn
          </label>
        </div>
      </div>
    </fieldset>
  </div>

  <button type="submit" class="govuk-button" data-module="govuk-button">
    Anfon adborth
  </button>
</form>
              
                {% from "govuk/components/radios/macro.njk" import govukRadios %}
{% from "govuk/components/character-count/macro.njk" import govukCharacterCount %}
{% from "hmrc/components/character-count/macro.njk" import hmrcCharacterCount %}
{% from "govuk/components/button/macro.njk" import govukButton %}

<h1 class="govuk-heading-xl">Give feedback</h1>

<p class="govuk-body">We use your feedback to improve our services. To better understand it, we may link your feedback to other information we hold about you, like gender and age.</p>

<p class="govuk-body">See the <a class="govuk-link" href="https://www.gov.uk/government/publications/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you" rel="noreferrer noopener" target="_blank">HMRC Privacy Notice (opens in new tab)</a> for details about how we collect, use, protect and secure your personal information.</p>

<p class="govuk-body">This survey has 4 optional questions.</p>

<form action="/form-handler" method="post" novalidate>
  {{ govukRadios({
    name: "able",
    fieldset: {
      legend: {
        text: "Were you able to do what you needed to do today?",
        isPageHeading: false,
        classes: "govuk-fieldset__legend--m"
      }
    },
    items: [
      {
        value: "yes",
        text: "Yes",
        id: "able-yes"
      },
      {
        value: "no",
        text: "No",
        id: "able-no"
      }
    ]
  }) }}

  {{ govukRadios({
    name: "howEasyScore",
    fieldset: {
      legend: {
        text: "How easy was it for you to do what you needed to do today?",
        isPageHeading: false,
        classes: "govuk-fieldset__legend--m"
      }
    },
    items: [
      {
        value: "VeryEasy",
        text: "Very easy",
        id: "howEasyQuestion-VeryEasy"
      },
      {
        value: "Easy",
        text: "Easy",
        id: "howEasyQuestion-Easy"
      },
      {
        value: "Moderate",
        text: "Neither easy or difficult",
        id: "howEasyQuestion-Moderate"
      },
      {
        value: "Difficult",
        text: "Difficult",
        id: "howEasyQuestion-Difficult"
      },
      {
        value: "VeryDifficult",
        text: "Very difficult",
        id: "howEasyQuestion-VeryDifficult"
      }
    ]
  }) }}

  {{ hmrcCharacterCount({
    name: "moreDetail",
    id: "whyGiveScore",
    maxlength: 1000,
    label: {
      text: "Why did you give this answer?",
      classes: "govuk-label--m",
      isPageHeading: false
    },
    hint: {
      text: "Please do not enter personal information such as your National Insurance number, Unique Tax Reference or address or telephone number in this box. Please note we are unable to reply to comments individually but we do use your feedback to help improve our services."
    }
  }) }}

  {{ govukRadios({
    name: "howDoYouFeelScore",
    fieldset: {
      legend: {
        text: "Overall, how did you feel about the service you received today?",
        isPageHeading: false,
        classes: "govuk-fieldset__legend--m"
      }
    },
    items: [
      {
        value: "VerySatisfied",
        text: "Very satisfied",
        id: "howDoYouFeelQuestion-VerySatisfied"
      },
      {
        value: "Satisfied",
        text: "Satisfied",
        id: "howDoYouFeelQuestion-Satisfied"
      },
      {
        value: "Moderate",
        text: "Neither satisfied or dissatisfied",
        id: "howDoYouFeelQuestion-Moderate"
      },
      {
        value: "Dissatisfied",
        text: "Dissatisfied",
        id: "howDoYouFeelQuestion-Dissatisfied"
      },
      {
        value: "VeryDissatisfied",
        text: "Very dissatisfied",
        id: "howDoYouFeelQuestion-VeryDissatisfied"
      }
    ]
  }) }}

  {{ govukButton({
    text: "Send feedback"
  }) }}
</form>
              
                  {% from "govuk/components/radios/macro.njk" import govukRadios %}
{% from "govuk/components/character-count/macro.njk" import govukCharacterCount %}
{% from "hmrc/components/character-count/macro.njk" import hmrcCharacterCount %}
{% from "govuk/components/button/macro.njk" import govukButton %}

<h1 class="govuk-heading-xl">Rhoi adborth</h1>

<p class="govuk-body">Rydym yn defnyddio’ch adborth i wella ein gwasanaethau. I ddeall eich adborth yn well, efallai y byddwn yn ei gysylltu â gwybodaeth arall sydd gennym amdanoch, megis eich rhywedd a’ch oedran.</p>

<p class="govuk-body">Gweler <a class="govuk-link" href="https://www.gov.uk/government/publications/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you/data-protection-act-dpa-information-hm-revenue-and-customs-hold-about-you" rel="noreferrer noopener" target="_blank">Hysbysiad Preifatrwydd CThEF (yn agor tab newydd)</a> i gael gwybod sut yr ydym yn casglu, defnyddio a diogelu’ch gwybodaeth bersonol.</p>

<p class="govuk-body">Mae’r arolwg hwn yn cynnwys 4 cwestiwn dewisol.</p>

<form action="/form-handler" method="post" novalidate>
  {{ govukRadios({
    name: "able",
    fieldset: {
      legend: {
        text: "A oeddech wedi gallu gwneud yr hyn yr oedd angen i chi ei wneud heddiw?",
        isPageHeading: false,
        classes: "govuk-fieldset__legend--m"
      }
    },
    items: [
      {
        value: "yes",
        text: "Iawn",
        id: "able-yes"
      },
      {
        value: "no",
        text: "Na",
        id: "able-no"
      }
    ]
  }) }}

  {{ govukRadios({
    name: "howEasyScore",
    fieldset: {
      legend: {
        text: "Pa mor hawdd oedd hi i wneud yr hyn yr oedd angen i chi ei wneud heddiw?",
        isPageHeading: false,
        classes: "govuk-fieldset__legend--m"
      }
    },
    items: [
      {
        value: "VeryEasy",
        text: "Hawdd iawn",
        id: "howEasyQuestion-VeryEasy"
      },
      {
        value: "Easy",
        text: "Hawdd",
        id: "howEasyQuestion-Easy"
      },
      {
        value: "Moderate",
        text: "Ddim yn hawdd nac yn anodd",
        id: "howEasyQuestion-Moderate"
      },
      {
        value: "Difficult",
        text: "Anodd",
        id: "howEasyQuestion-Difficult"
      },
      {
        value: "VeryDifficult",
        text: "Anodd iawn",
        id: "howEasyQuestion-VeryDifficult"
      }
    ]
  }) }}

  {{ hmrcCharacterCount({
    name: "moreDetail",
    id: "whyGiveScore",
    maxlength: 1000,
    language: "cy",
    label: {
      text: "Pam y gwnaethoch roi’r ateb hwn?",
      classes: "govuk-label--m",
      isPageHeading: false
    },
    hint: {
      text: "Peidiwch â nodi gwybodaeth bersonol, megis eich rhif Yswiriant Gwladol, eich Cyfeirnod Unigryw y Trethdalwr, eich cyfeiriad neu’ch rhif ffôn yn y blwch hwn. Sylwer – ni allwn ymateb i sylwadau’n unigol, ond mi ydym yn defnyddio’ch adborth i helpu i wella ein gwasanaethau."
    }
  }) }}

  {{ govukRadios({
    name: "howDoYouFeelScore",
    fieldset: {
      legend: {
        text: "Yn gyffredinol, beth oedd eich barn am y gwasanaeth a gawsoch heddiw?",
        isPageHeading: false,
        classes: "govuk-fieldset__legend--m"
      }
    },
    items: [
      {
        value: "VerySatisfied",
        text: "Bodlon iawn",
        id: "howDoYouFeelQuestion-VerySatisfied"
      },
      {
        value: "Satisfied",
        text: "Bodlon",
        id: "howDoYouFeelQuestion-Satisfied"
      },
      {
        value: "Moderate",
        text: "Ddim yn fodlon nac yn anfodlon",
        id: "howDoYouFeelQuestion-Moderate"
      },
      {
        value: "Dissatisfied",
        text: "Anfodlon",
        id: "howDoYouFeelQuestion-Dissatisfied"
      },
      {
        value: "VeryDissatisfied",
        text: "Anfodlon iawn",
        id: "howDoYouFeelQuestion-VeryDissatisfied"
      }
    ]
  }) }}

  {{ govukButton({
    text: "Anfon adborth"
  }) }}
</form>
                

When the user has submitted the feedback, display a separate thank you page. Include a research banner on this page.

              <h1 class="govuk-heading-xl">Thank you for your feedback</h1>

<p class="govuk-body">We will use your feedback to make our services better.</p>
            
                <h1 class="govuk-heading-xl">Diolch i chi am eich adborth</h1>

<p class="govuk-body">Byddwn yn defnyddio eich adborth i wella ein gwasanaethau.</p>
              
                <h1 class="govuk-heading-xl">Thank you for your feedback</h1>

<p class="govuk-body">We will use your feedback to make our services better.</p>
              
                  <h1 class="govuk-heading-xl">Diolch i chi am eich adborth</h1>

<p class="govuk-body">Byddwn yn defnyddio eich adborth i wella ein gwasanaethau.</p>
                

Research

We need more research. If you have used feedback, get in touch to share your research findings.

Discuss feedback on GitHub