Does each web page have a page title?

Open ten tabs in your browser: how do you find the one you're interested in? Thanks to the title displayed in the tab. A screen reader user hears this title as soon as the page opens: it's the first piece of information the assistive technology announces, even before the first <h1> heading.

Criterion 8.5 is minimalist: it only verifies that a <title> element is present in the document's <head>. Not that its content is descriptive, not that it is unique across pages. Just that it exists. Criterion 8.6 takes over to judge the relevance of the content.

No <title>, no identifiable page. It's the quickest test of theme 8.

Un test to verify that the page has a title

Presence of <title> element in <head>

  1. Open the page source code (Ctrl+U) or inspect the <head> using developer tools.
  2. Look for a <title> element in the <head> section of the document.
  3. If the <title> element is present (even empty), the test is validated.
  4. If no <title> element exists in the <head>, the test fails.

Examples

❌ Non-compliant : Page without a <title> element

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="description" content="Welcome to our site">
</head>
<body>
  <h1>Home</h1>
</body>
</html>

No <title> element in the <head>. The screen reader has nothing to announce when the page opens. In the browser, the tab displays the raw URL or remains empty. The user doesn't know where they are before they even start reading the content.

✅ Compliant : Page with a <title> element present

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Home - My site</title>
</head>
<body>
  <h1>Home</h1>
</body>
</html>

The <title> element is present in the <head>. The screen reader announces it as soon as the page loads. The browser tab displays "Home - My site", allowing the user to identify the page in their tab list or browsing history.

Tips and pitfalls

⚠️ Empty <title>: 8.5 passes, 8.6 fails

An empty <title></title> technically satisfies criterion 8.5 (the element exists in the DOM), but fails criterion 8.6 which requires relevant content. In an audit, an empty <title> often reveals a misconfigured template or a CMS whose metadata fields have never been filled in.

⚠️ Single-page applications (SPA): the title must change with each navigation

In a Vue, React, or Angular SPA, the <title> tag in the initial HTML document does not update automatically when navigating on the client side. If the user moves from the home page to the Contact page without a full page reload, the title must be updated via JavaScript (document.title = 'Contact - My site') or via the mechanisms provided by the router. Without this, the screen reader always announces the title of the first page loaded.

💡 Two-second verification with the console

In the "Console" tab of DevTools, type document.title. If the answer is an empty string, the page passes 8.5 but likely fails 8.6. If the property is not defined, it means the <title> element is missing. Faster than manually browsing through the source code.

⚠️ Documents loaded in an <iframe> are affected

Each HTML document loaded in an <iframe> is a complete web page in the RGAA sense. If the target document has its own <html> and <head>, it must also have a <title>. This is often overlooked on embedded form pages or document viewers.

⚠️ Two <title> tags in the same <head>

Some templating tools or server-side rendering engines sometimes stack two <title> tags in the <head>. Browsers generally retain the first one, but this behavior is not guaranteed and the markup is invalid. Only one <title> per document.

Frequently asked questions

What is the difference between RGAA criterion 8.5 and criterion 8.6?

Criterion 8.5 verifies only that the <title> element exists in the <head>. Criterion 8.6 verifies that its content is relevant, that is, it allows the user to identify the page in their history or tab list. A page can pass 8.5 and fail 8.6 if the title is present but empty or generic ("Untitled", "Page").

How do you test criterion 8.5 during an RGAA accessibility audit?

Three quick methods: (1) look at the title displayed in the browser tab — if there is one, the element exists; (2) open the page source (Ctrl+U) and search for <title>; (3) type document.title in the DevTools console. An empty string in return means the element exists but its content is empty: 8.5 passes, 8.6 fails.

Does an empty <title> tag satisfy RGAA criterion 8.5?

Yes. Test 8.5.1 only requires finding the <title> element in the document. Its presence is sufficient to validate the test, whether it contains text or not. It is criterion 8.6 that judges the relevance of the content.

How does criterion 8.5 apply to pages generated dynamically by JavaScript?

Yes. What matters is the state of the DOM when the user interacts with the page, not the initial HTML source. A framework that injects a <title> after loading satisfies the criterion. On the other hand, if navigation between views in an SPA does not update document.title, each new view fails the criterion.

References