Styles - Typography

Our fonts and typographic styles, and how to apply them.

Font

Frutiger

Frutiger has been the NHS brand font since 1999. We use the web font for consistency between online and offline materials.

NHS England has a licence for the Frutiger webfont that the NHS website team can use. (The web font is hosted on www.nhs.uk and referenced in the NHS.UK frontend.)

All other NHS England teams and other NHS organisations must have their own licence with Monotype.

If you're not sure whether you should be using Frutiger, you can email the service manual team at service-manual@nhs.net.

Fallback font

Default to Arial when Frutiger isn't available.

font-family: “Frutiger W01”, Arial, sans-serif;

Headings

Open this headings typography example in new window
Copy headings typography code
<h1 class="nhsuk-heading-xl">nhsuk-heading-xl</h1>
<h2 class="nhsuk-heading-l">nhsuk-heading-l</h2>
<h3 class="nhsuk-heading-m">nhsuk-heading-m</h3>
<h4 class="nhsuk-heading-s">nhsuk-heading-s</h4>
<h5 class="nhsuk-heading-xs">nhsuk-heading-xs</h5>

Paragraphs

Body

The default paragraph font size is 19px on large screens and 16px on small screens.

You can also add classes to create a lead paragraph or smaller body copy to convey hierarchy in your page.

Lead paragraph

A lead paragraph is an introductory paragraph that you can use at the top of a page to summarise the content. Lead paragraphs use 24px type on desktop and should only be used once per page if needed.

Body small

You can use the nhsuk-body-s class sparingly to make your paragraph font size smaller: 16px on larger screens and 14px on smaller screens.

The majority of your body copy should use the standard 19px paragraph size.

Bold, italics and underlining

Do not use italics or underlining (except for links, which are underlined by default). Use bold sparingly.

Find out more about bold, italics and underlining on the Formatting and punctuation page in the content guide.

Font override classes

You might need to set the font size or font weight of an element outside of the predefined heading and paragraph classes. For this you can use the font override classes in your HTML or reference the typography mixins in your own components.

Font size

The full NHS.UK typography scale goes from 14px up to 64px on large screens. You can add these font size override classes to any other typographic class or element and they will change the font size.

Open this sizes typography example in new window
Copy sizes typography code
<p class="nhsuk-u-font-size-64">nhsuk-u-font-size-64</p>
<p class="nhsuk-u-font-size-48">nhsuk-u-font-size-48</p>
<p class="nhsuk-u-font-size-32">nhsuk-u-font-size-32</p>
<p class="nhsuk-u-font-size-24">nhsuk-u-font-size-24</p>
<p class="nhsuk-u-font-size-22">nhsuk-u-font-size-22</p>
<p class="nhsuk-u-font-size-19">nhsuk-u-font-size-19</p>
<p class="nhsuk-u-font-size-16">nhsuk-u-font-size-16</p>
<p class="nhsuk-u-font-size-14">nhsuk-u-font-size-14</p>

Font weight

As with the font size, you can add a font weight override class to any other typographic class or element to change the font weight to regular or bold weight.

Open this weight typography example in new window
Copy weight typography code
<p class="nhsuk-u-font-weight-normal">nhsuk-u-font-weight-normal</p>
<p class="nhsuk-u-font-weight-bold">nhsuk-u-font-weight-bold</p>

Links are blue and underlined by default with a styled focus state for people who use keyboards or other devices to navigate through a page.

If your link is at the end of a sentence or paragraph, make sure that the linked text does not include the full stop.

If it's not helpful to distinguish between visited and unvisited states, for example when linking to pages with frequently-changing content, such as the dashboard for an admin interface, use the nhsuk-link--no-visited-state modifier class.

Open this links unvisited typography example in new window

Lists

Use lists to make blocks of text easier to read, and to break information into manageable chunks.

Open this lists typography example in new window
Copy lists typography code
<ul class="nhsuk-list">
  <li><a href="#">Money, work and benefits</a></li>
  <li><a href="#">Care after a hospital stay</a></li>
  <li><a href="#">Support and benefits for carers</a></li>
</ul>

Bulleted lists

Introduce bulleted lists with a lead-in line ending in a colon. Start each item with a lowercase letter, and do not use a full stop at the end.

Open this lists bulleted typography example in new window
Copy lists bulleted typography code
<p>Symptoms can include:</p>
<ul class="nhsuk-list nhsuk-list--bullet">
  <li>tiredness and lack of energy</li>
  <li>shortness of breath</li>
  <li>noticeable heartbeats (heart palpitations)</li>
  <li>pale skin</li>
</ul>

Numbered lists

Use numbered lists instead of bulleted lists when the order of the items is relevant.

You do not need to use a lead-in line for numbered lists. Items in a numbered list should end in a full stop because each should be a complete sentence.

Open this lists numbered typography example in new window
Copy lists numbered typography code
<h3>How to gargle with salt water</h3>
<ol class="nhsuk-list nhsuk-list--number">
  <li>Dissolve half a teaspoon of salt in a glass of warm water.</li>
  <li>Gargle with the solution then spit it out – don't swallow it.</li>
  <li>Repeat as often as you like.</li>
</ol>

Section break

You can use the nhsuk-section-break classes on an <hr> element to create a thematic break between sections of content. nhsuk-section-break has class-based modifiers for different size margins.

By default nhsuk-section-break is only visible by its margin. You can add the nhsuk-section-break--visible class to make it visible with a separator line.

Open this section breaks typography example in new window
Copy section breaks typography code
<hr class="nhsuk-section-break nhsuk-section-break--xl nhsuk-section-break--visible">
<hr class="nhsuk-section-break nhsuk-section-break--l nhsuk-section-break--visible">
<hr class="nhsuk-section-break nhsuk-section-break--m nhsuk-section-break--visible">
<hr class="nhsuk-section-break nhsuk-section-break--visible">

Text alignment

Left-align text in English. Text is left-aligned by default.

The straight edge of left-aligned text helps people who use screen magnifiers. It saves them having to search around the screen for the next line or item. People who use magnifiers may miss things that are not left-aligned.

Some people with cognitive differences have difficulty with blocks of text that are justified (aligned to left and right margins).

Only centre-align or fully justify text if you can show a clear clinical or user need.

Text alignment override classes

For translations into languages that run right to left (like Arabic), right-align instead. You need to use the text alignment override class in your HTML to right-align text.

Here is an example of Arabic.

Open this text alignment typography example in new window
Copy text alignment typography code
<p class="nhsuk-u-text-align-right">تعديل اتجاه الكتابة باللغة العربية ليكون من اليمين الى اليسار</p>

Research

We've tested our typography with lots of users including, for example, people with dyslexia and colour blindness.

Help us improve this guidance

Share insights or feedback and take part in the discussion. We use GitHub as a collaboration space. All the information on it is open to the public.

Read more about how to feedback or share insights.

If you have any questions, get in touch with the service manual team.

Updated: January 2024