Only ask for title if the service cannot be provided without it.
Avoid asking for title just because a back-end system needs it.
Do not use title to establish gender.
- Field label: 'Your title'
- Type of field: text input. Use a free-text input field rather than a list of predefined options. There are lots of titles and it can be upsetting for a user if their title is not listed.
- Error message if mandatory and left blank: 'You need to tell us your title'
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
Full name
If possible, ask for the person's full name. Different cultures use given names and family names in different ways. Asking for the name as a whole makes the field easier to answer.
- Field label: 'Your full name'
- Type of field: text input
- Error message if mandatory and left blank: 'You need to tell us your name'
Separate names
If you absolutely must ask for a person's names separately use:
- Field label: 'Your first or given name'
- Type of field: text input
- Error message if mandatory and left blank: 'You need to tell us your first or given name'
- Field label: 'Your last or family name'
- Type of field: text input
- Error message if mandatory and left blank: 'You need to tell us your last or family name'
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
- Field label: 'Your phone number'
- Type of field: text input, set to trigger the numeric keyboard on touchscreen devices
- Hint text: tell users why someone might contact them and when
- Error message if mandatory and left blank: 'You need to tell us your phone number'
- Error message if invalid phone number: 'This must be a phone number, such as 01234 567890. You can use spaces, dashes or brackets.'
Allow users to enter phone numbers in a format that's familiar to them. Allow spaces, dashes and brackets.
Phone and phone number in our A to Z of style
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
- Field label: 'Your email address'
- Type of field: text input, set to trigger the email focussed keyboard on touchscreen devices
- Hint text: tell users why someone might contact them and when: for example, 'We'll use this email address to send you a copy of your form.'
- Error message if mandatory and left blank: 'You need to tell us your email address'
- Error message if invalid email address: 'This must be an email address, using the format name@example.com'
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
To ask for an address, you can use an address lookup or a text area field:
Address lookup
Use an address lookup field when you're asking users for an address in the Bristol City Council (BCC) area. With this type of field, the user is asked to enter their postcode and choose from a list of street addresses.
- Field label: 'Your postcode'
- Type of field: address lookup, postcode field
- Hint text: 'Find your postcode on royalmail.com.'
- Error message if mandatory and left blank: 'You need to tell us your postcode'
- Field label: 'Your address'
- Type of field: address lookup, street address field
- Hint text: 'Tell us your address is not listed.'
- Error message if mandatory and left blank: 'You need to tell us your address'
The address lookup field also includes standard error messages for when the:
- service is unavailable
- user enters an invalid postcode
- user enters a postcode outside the BCC area
Text area
Use a text area field if the address is likely to be outside the BCC area or the address does not have to be for a specific property. For example:
- Field label: 'Your address'
- Type of field: text area
- Hint text: 'Find your postcode on royalmail.com.'
- Error message if mandatory and left blank: 'You need to tell us your address'
Or:
- Field label: 'Where's the problem?'
- Type of field: text area
- Hint text: 'Include as much detail as you can to help us find the problem.'
- Error message if mandatory and left blank: 'You need to tell us where the problem is'
Addresses in our A to Z of style
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
Date of birth
You can only ask for date of birth if:
- the service cannot be provided without it, in which case you must explain why you need it and what you'll do with it in the hint text
- you get consent from the user, go to demographic or equalities information
Where the service cannot be provided without it
- Field label: 'Your date of birth'
- Type of field: date
- Hint text: 'For example, 16 10 1975. We need this information to [x]. We will not use it for anything else.'
- Error message if left blank: 'You need to tell us your date of birth'
- Error message if user enters date in future: 'Date of birth must be in the past' or 'Date of birth must be today or in the past'
The date field also includes standard error messages for when:
- date is incomplete
- date does not exist
- user enters something other than numbers
Other dates
If you need to ask for a date that's not date of birth, use a date field and change the wording. For example:
- Field label: 'Date of your event'
- Hint text: 'For example, 15 10 2026.'
- Error message if mandatory and left blank: 'You need to tell us the date of your event'
- Error message if user enters date in past: 'Date of event must be in the future'
- Field label: 'Date child started school'
- Hint text: 'For example, 3 9 2025.'
- Error message if mandatory and left blank: 'You need to tell us when the child started school'
- Error message if user enters date in past: 'Date child started school must be in the past'
- Field label: 'Date your passport was issued'
- Hint text: 'For example, 11 3 2023.'
- Error message if mandatory and left blank: 'You need to tell us when your passport was issued'
- Error message if user enters date in past: 'Date your passport was issued must be in the past'
Approximate date
Ask for an approximate date if you think users will struggle to enter an exact date. For example:
- Field label: 'Month and year passport was lost'
- Type of field: text input
- Hint text: 'For example, August 2025.'
- Error message if mandatory and left blank: 'You need to tell us when the passport was lost'
Dates and times in our A to Z of style
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
You can only ask for sex or gender identity if:
- the service cannot be provided without it, in which case you must explain why you need it and what you'll do with it in the hint text
- you get consent from the user, go to demographic or equalities information
Sex (where the service cannot be provided without it)
- Field label: 'Your sex'
- Type of field: radio button, with the options:
- 'Female'
- 'Male'
- 'Child not born', if the field is about a child
- 'X or other', if the service can be provided with that as an answer, this helps ensure that we're inclusive
- 'Prefer not to say', if the service can be provided with that as an answer
- Hint text: 'This is what's recorded on your birth certificate. We need this information to [x]. We will not use it for anything else.'
- Error message if left blank (field must be mandatory as the service cannot be provided without this information): 'You need to tell us your sex'
Gender identity (where the service cannot be provided without it)
If you have asked for a person's sex and also need to ask about gender identity, first ask if their gender is the same as their sex:
- Field label: 'Is your gender the same as your sex?'
- Type of field: radio button, with the options:
- 'Yes'
- 'No'
- Error message if left blank (field must be mandatory as the service cannot be provided without this information): 'You need to tell us if your gender is the same as your sex'
If the user chooses 'No', ask for their gender identity:
- Field label: 'Your gender identity'
- Type of field: text input. Use a free-text input field rather than a list of pre-defined options. It can be upsetting for a user if their gender identity is not listed in a pre-defined list.
- Hint text: 'For example, man, woman or non-binary. We need this information to [x]. We will not use it for anything else.'
- Error message if left blank (field must be mandatory as the service cannot be provided without this information): 'You need to tell us your gender identity'
Gender and sex in our A to Z of style
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
- Field label: 'Your National Insurance number'
- Type of field: text input
- Hint text: 'For example, QQ 12 34 56 C.'
- Error message if mandatory and left blank: 'You need to tell us your National Insurance number'
- Error message if invalid entry: 'This must be a National Insurance number'
Allow users to enter:
- 13 characters, as National Insurance numbers are spaced in pairs followed by a single letter
- upper and lower case letters, additional spaces and punctuation
National Insurance number in our A to Z of style
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
To ask a user what relationship they have with someone:
- Field label: 'Their relationship to you' or 'Your relationship to them'
- Type of field: text input or radio button with an 'Other' option and a 'Give details' field
- Error message if mandatory and left blank: 'You need to tell us their relationship to you' or 'You need to tell us your relationship to them'
If the user answers a question with 'Other', another field should appear to ask for details:
- Field label: 'Give details' or 'Give details of [x]'
- Type of field: text input or text area
- Error message if mandatory and left blank: 'You need to give details'
If you need to ask the user to describe something:
- Field label: 'Describe the [x]'. For example 'Describe the problem in the park'
- Type of field: text area
- Error message if mandatory and left blank: 'You need to describe the [x]'
- Error message if there's a word count and there are too many words: 'You have [x] words too many'
- Field label: 'Upload [x]'. For example 'Upload an image of the problem' or 'Upload your bank statement'
- Type of field: File upload
- Hint text: If file size is limited, add the hint text ‘Maximum file size is [x]'. If file type is limited, add hint text such as ‘You can upload images, pdfs or documents'
- Error message if mandatory and left blank: 'You need to upload [x]'
- Error message if file is too big: 'You cannot upload a file that's larger than [x]'
- Error message if file is not an accepted type: 'You cannot upload this type of file'
You can only ask for personal information, for demographic or equalities purposes, if you get consent from the user. This is a data protection requirement (GDPR). This includes information about:
- age or date of birth
- disability
- ethnic group
- marital or partnership status
- religion
- sex and gender identity
- sexual orientation
Consent
- Text: 'We want to ask you some equalities questions. These are questions about you and your background. We gather this information to find out who's using our services. This is so we can make sure everyone can access our services and no-one is discriminated against. Our privacy statement explains how we process your personal information, how long it's kept for and your rights as a data subject.'
- Field label: 'Will you answer some equalities questions?'
- Type of field: radio button, with the options:
- 'Yes'
- 'No'
- Hint text: 'It's ok to say no, it will not affect the service we give you.'
- Error message if mandatory and left blank: 'You need to tell us if you'll answer some equalities questions'
Only show the following fields if the user has answered 'yes' to answering the equalities questions.
Make the questions optional, unless you have reason to make them mandatory. This is so the user can still progress through the form even if they choose not to answer a question.
Age or date of birth
To gather information about a user's age, it's less intrusive to ask which age group they're in, rather than for their date of birth.
Age group
- Field label: 'Your age group'
- Type of field: radio button, with options relevant to the people filling in the form. For example:
- '0 to 15'
- '16 to 24'
- '25 to 44'
- '45 to 64'
- '65 to 74'
- '75 and over'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us which age group you're in'
Date of birth
If you have to ask for date of birth:
- Field label: 'Your date of birth'
- Type of field: date
- Hint text: 'For example, 16 10 1975.'
- Error message if mandatory and left blank: 'You need to tell us your date of birth'
- Error message if user enters date in future: 'Date of birth must be in the past' or 'Date of birth must be today or in the past'
The date field also includes standard error messages for when:
- date is incomplete
- date does not exist
- user enters something other than numbers
Dates and times in our A to Z of style
Disability
- Field label: 'Do you have any physical or mental health conditions or illnesses lasting, or expected to last, 12 months or more?'
- Type of field: radio button, with the options:
- 'Yes'
- 'No'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us if you have any health conditions or illnesses'
If 'Yes':
- Field label: 'Do any of your conditions or illnesses reduce your ability to carry out day to day activities?'
- Type of field: radio button, with the options:
- 'Yes, a lot'
- 'Yes, a little'
- 'Not at all'
- 'Prefer not to say'
- Hint text: 'For example, eating, washing, walking or going shopping.'
- Error message if mandatory and left blank: 'You need to tell us if your ability to carry out day to day activities is reduced'
Disabilities and conditions in our A to Z of style
Ethnic origin
- Field label: 'Your ethnic group'
- Type of field: radio button, with the options:
- 'White'
- 'Mixed or multiple ethnic groups'
- 'Asian or Asian British'
- 'Black, African, Caribbean or Black British'
- 'Other ethnic group'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us your ethnic group'
If 'White':
- Field label: 'Which best describes your background?'
- Type of field: radio button, with the options:
- 'English, Welsh, Scottish, Northern Irish or British'
- 'Irish'
- 'Gypsy or Irish Traveller'
- 'Roma'
- 'Any other White background'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us which best describes your background'
If 'Mixed or multiple ethnic groups':
- Field label: 'Which best describes your background?'
- Type of field: radio button, with the options:
- 'White and Black Caribbean'
- 'White and Black African'
- 'White and Asian'
- 'Any other mixed or multiple ethnic background'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us which best describes your background'
If 'Asian or Asian British':
- Field label: 'Which best describes your background?'
- Type of field: radio button, with the options:
- 'Indian'
- 'Pakistani'
- 'Bangladeshi'
- 'Chinese'
- 'Any other Asian background'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us which best describes your background'
If 'Black, African, Caribbean or Black British':
- Field label: 'Which best describes your background?'
- Type of field: radio button, with the options:
- 'African'
- 'Caribbean'
- 'Any other Black, African or Caribbean background'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us which best describes your background'
If 'Other ethnic group':
- Field label: 'Which best describes your background?'
- Type of field: radio button, with the options:
- 'Arab'
- 'Any other ethnic group'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us which best describes your background'
Ethnicity and ethnic minorities in our A to Z of style
Marital or partnership status
- Field label: 'Your legal marital or registered civil partnership status'
- Type of field: radio button, with the options:
- 'Never married and never registered in a civil partnership'
- 'Married'
- 'In a registered civil partnership'
- 'Separated, but still legally married'
- 'Separated, but still legally in a civil partnership'
- 'Divorced'
- 'Formerly in a civil partnership which is now legally dissolved'
- 'Widowed'
- 'Surviving partner from a registered civil partnership'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us your marital or civil partnership status'
Religion
- Field label: 'Your religion'
- Type of field: radio button, with the options:
- 'No religion'
- 'Christian, including Church of England, Catholic, Protestant and all other Christian denominations'
- 'Buddhist'
- 'Hindu'
- 'Jewish'
- 'Muslim'
- 'Sikh'
- 'Any other religion'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us your religion'
Sex
- Field label: 'Your sex'
- Type of field: radio button, with the options:
- 'Female'
- 'Male'
- 'X or other'
- 'Prefer not to say'
- Hint text: 'This is what's recorded on legal documents, such as your birth certificate.'
- Error message if mandatory and left blank: 'You need to tell us your sex'
Gender identity
If you have asked for a person's sex and also need to ask about gender identity, first ask if their gender is the same as their sex:
- Field label: 'Is your gender the same as your sex?'
- Type of field: radio button, with the options:
- 'Yes'
- 'No'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us if your gender is the same as your sex'
If the user chooses 'No', ask for their gender identity:
- Field label: 'Your gender identity'
- Type of field: text input. Use a free-text input field rather than a list of pre-defined options. It can be upsetting for a user if their gender identity is not listed in a pre-defined list.
- Hint text: 'For example, man, woman, non-binary or prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us your gender identity'
Gender and sex in our A to Z of style
Sexual orientation
- Field label: 'Your sexual orientation'
- Type of field: radio button, with the options:
- 'Bisexual'
- 'Gay or lesbian'
- 'Heterosexual or straight'
- 'Other'
- 'Prefer not to say'
- Error message if mandatory and left blank: 'You need to tell us your sexual orientation'
You can change 'your'
You can swap 'your', in the field label, for another word as needed. For example:
- their, such as 'Their name'
- child's, such as 'Child's date of birth'
- parent's, such as 'Parent's email address'
- company, such as 'Company address'
You must link to our privacy statement and add a link to the service's privacy notice on all forms that collect personal information.
Text: 'Our privacy statement and our [service-name] privacy notice explain how we process your personal information, how long it's kept for and your rights as a data subject.'
Do not use a checkbox to get users agreement to the privacy statement and notice.
Use a checkbox field to ask a user to confirm that they've read and agree to a set of terms and conditions. Do not use a virtual signature field as these can be prone to accessibility issues.
Make your terms and conditions as easy to read and understand as possible.
List them on the same page or on a separate page.
On the same page
If there are fewer than 10 items, list them on the same page.
- Text: list out the terms and conditions in a bullet point list
- Field label: 'Declaration'
- Type of field: checkbox, with one option: 'I've read and agree to the terms and conditions'
- Error message if mandatory and left blank: 'You need to confirm that you've read and agree to the terms and conditions'
On a separate page
If there are more than 10 items, list them on a separate page and link to that page from the declaration. The link should open a new tab.
- Field label: 'Declaration'
- Type of field: checkbox, with one option: 'I've read and agree to the terms and conditions (opens in new window)'
- Error message if mandatory and left blank: 'You need to confirm that you've read and agree to the terms and conditions'
Use a checkbox field to ask a user to agree to a declaration. Do not use a virtual signature field as these can be prone to accessibility issues.
- Field label: 'Declaration'
- Type of field: checkbox, with one option. For example 'I confirm the information I've given in this form is correct to the best of my knowledge'
- Error message if mandatory and left blank: 'You need to confirm [statement]'