UX Writing for Digital Services - A question protocol
We should only collect the information we need to deliver a service and no more than that.
A question protocol makes us consider why we are asking people for each piece of information. It provides a way of removing unnecessary questions.
Every question we ask takes time and effort for people to answer the question. If we don't need the answer to a question to deliver the service, we should not ask the question.
Our question protocol is to only include a question on a form if we know:
- why we need the information to deliver the service
- who will use the information and for what purpose
- how we will check the information is accurate
- how we will keep the information up to date
How to write good questions for forms - design-system.service.gov.uk
GDPR
Using a question protocol also helps us to meet our legal requirements under General Data Protection Regulation (GDPR).
GDPR requires that:
- there must be specific purposes for processing the data and the company or organisation must communicate those purposes to individuals when collecting their personal data. A company or organisation can't simply collect personal data for undefined purposes ('purpose limitation')
- the company or organisation must collect and process only the personal data that is necessary to fulfill the purposes communicated ('data minimisation')
Optional questions
If a question is optional, you probably don't need to ask it. Do not ask an optional question unless there is a very specific need for it.
An example of when you have to ask for something that is optional is for 'Address line 2' in a postal address. Not everyone will have one but many will.
An optional question might also be asking people where they heard of the service or why they chose to use the service. This information can be helpful in improving a service or for reporting. If you ask for this type of information, tell people why you are asking for it.
If you ask for optional information:
- add '(optional)' to the labels of optional fields
- for radios and checkboxes, add '(optional)' to the legend