Templates

404 page

A 404 page informs users that a requested page doesn’t exist.

About the 404 page template

A 404 page informs users that a requested page doesn’t exist. This kind of error can be frustrating or confusing. Straightforward plain language can help. Use a 404 page to explain the error and instruct the user what to do next.

This 404 page template has six sections. This general structure is also applicable to non-404 error pages as well:

  1. Describe the error: Heading
  2. What caused the error: Lead text
  3. Possible ways to fix the error: Regular text
  4. Actions: Buttons or links
  5. Additional support channels, if available: List
  6. Error code: Small text
<a class="usa-skipnav" href="#main-content">Skip to main content</a>
  






<section class="usa-banner" aria-label="Official government website">
  <div class="usa-accordion">
    <header class="usa-banner__header">
      <div class="usa-banner__inner">
        <div class="grid-col-auto">
          <img class="usa-banner__header-flag" src="/assets/img/us_flag_small.png" alt="U.S. flag">
        </div>
        <div class="grid-col-fill tablet:grid-col-auto">
          <p class="usa-banner__header-text">An official website of the United States government</p>
          <p class="usa-banner__header-action" aria-hidden="true">Here’s how you know</p>
        </div>
        <button class="usa-accordion__button usa-banner__button"
          aria-expanded="false" aria-controls="gov-banner">
          <span class="usa-banner__button-text">Here’s how you know</span>
        </button>
      </div>
    </header>
    <div class="usa-banner__content usa-accordion__content" id="gov-banner">
      <div class="grid-row grid-gap-lg">
        <div class="usa-banner__guidance tablet:grid-col-6">
          <img class="usa-banner__icon usa-media-block__img" src="/assets/img/icon-dot-gov.svg" role="img" alt="" aria-hidden="true">
          <div class="usa-media-block__body">
            <p>
              <strong>
                Official websites use .gov
</strong>
              <br/>
              A <strong>.gov</strong> website belongs to an official government organization in the United States.

            </p>
          </div>
        </div>
        <div class="usa-banner__guidance tablet:grid-col-6">
          <img class="usa-banner__icon usa-media-block__img" src="/assets/img/icon-https.svg" role="img" alt="" aria-hidden="true">
          <div class="usa-media-block__body">
            <p>
              <strong>
                Secure .gov websites use HTTPS
</strong>
              <br/>
              A <strong>lock</strong> (
<span class="icon-lock"><svg xmlns="http://www.w3.org/2000/svg" width="52" height="64" viewBox="0 0 52 64" class="usa-banner__lock-image" role="img" aria-labelledby="banner-lock-title banner-lock-description" focusable="false"><title id="banner-lock-title">Lock</title><desc id="banner-lock-description">A locked padlock</desc><path fill="#000000" fill-rule="evenodd" d="M26 0c10.493 0 19 8.507 19 19v9h3a4 4 0 0 1 4 4v28a4 4 0 0 1-4 4H4a4 4 0 0 1-4-4V32a4 4 0 0 1 4-4h3v-9C7 8.507 15.507 0 26 0zm0 8c-5.979 0-10.843 4.77-10.996 10.712L15 19v9h22v-9c0-6.075-4.925-11-11-11z"/></svg></span>
) or <strong>https://</strong> means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

            </p>
          </div>
        </div>
      </div>
    </div>
  </div>
</section>


  

<div class="usa-overlay"></div>
<header class="usa-header usa-header--basic">
  <div class="usa-nav-container">
    <div class="usa-navbar">
  <div class="usa-logo" id="basic-logo">
    <em class="usa-logo__text"><a href="/" title="Home" aria-label="Home">Project title</a></em>
  </div>
  <button class="usa-menu-btn">Menu</button>
</div>
<nav aria-label="Primary navigation" class="usa-nav">
      <button class="usa-nav__close"><img src="/assets/img/usa-icons/close.svg" role="img" alt="close"></button>
<ul class="usa-nav__primary usa-accordion"><li class="usa-nav__primary-item">
    <button class="usa-accordion__button usa-nav__link  usa-current" aria-expanded="false" aria-controls="basic-nav-section-one"><span>Current section</span></button>
    <ul id="basic-nav-section-one" class="usa-nav__submenu"><li class="usa-nav__submenu-item">
              <a href="#" class=""> Navigation link</a>
            </li><li class="usa-nav__submenu-item">
              <a href="#" class=""> Navigation link</a>
            </li><li class="usa-nav__submenu-item">
              <a href="#" class=""> Navigation link</a>
            </li></ul></li><li class="usa-nav__primary-item">
    <button class="usa-accordion__button usa-nav__link" aria-expanded="false" aria-controls="basic-nav-section-two"><span>Section</span></button>
    <ul id="basic-nav-section-two" class="usa-nav__submenu"><li class="usa-nav__submenu-item">
              <a href="#" class=""> Navigation link</a>
            </li><li class="usa-nav__submenu-item">
              <a href="#" class=""> Navigation link</a>
            </li><li class="usa-nav__submenu-item">
              <a href="#" class=""> Navigation link</a>
            </li></ul></li><li class="usa-nav__primary-item">
    <a class="usa-nav__link" href="javascript:void(0)"><span>Simple link</span></a>
    </li></ul><form class="usa-search usa-search--small " role="search">
  <label class="usa-sr-only" for="basic-search-field-small">Search small</label>
  <input class="usa-input" id="basic-search-field-small" type="search" name="search">
  <button class="usa-button" type="submit"><span class="usa-sr-only">Search</span></button>
</form>
</nav>
  </div>
</header>


  

<div class="usa-section">
  <div class="grid-container">
    <div class="grid-row grid-gap">
      <main class="" id="main-content">
        <div class="usa-prose">

          <!-- This template can be used for most types of error pages -->
          <!-- Remove these comments when you build your error pages -->

          <!-- Describe the error in the main heading -->
          <h1>Page not found</h1>

          <!-- Explain what caused the error in the lead text -->
          <p class="usa-intro">We’re sorry, we can’t find the page you're looking for. It might have been removed, changed names, or is otherwise unavailable.</p>

          <!-- Provide instructions how the user can address or fix the error -->
          <p>If you typed the URL directly, check your spelling and capitalization. Our URLs look like this: <strong>designsystem.digital.gov/example-one</strong>.</p>

          <p>Visit our homepage for helpful tools and resources, or contact us and we’ll point you in the right direction. </p>

          <!-- Use buttons for main actions user can take, such as visiting the homepage or a contact page -->
          <div class="margin-y-5">
            <ul class="usa-button-group">
              <li class="usa-button-group__item">
                <a href="#" class="usa-button">Visit homepage</a>
              </li>
              <li class="usa-button-group__item">
                <button class="usa-button usa-button--outline">Contact us</button>
              </li>
            </ul>
          </div>

          <!-- List additional support channels -->
          <p>For immediate assistance:</p>
          <ul>
            <li><a href="javascript:void();" class="usa-link">Start a live chat with us</a></li>
            <li>Call <a href="javascript:void();" class="usa-link">(555) 555-5555</a></li>
          </ul>

          <!-- Error code if appropriate -->
          <p class="text-base"><strong>Error code:</strong> 404</p>
        </div>
      </main>
    </div>
  </div>
</div>

Guidance

When to use the 404 page template

  • Page doesn’t exist. Users might navigate to a missing page for a number of reasons:

    • They followed an incorrect link
    • The page was removed from the website
    • They entered a typo into the URL

When to consider something else

  • Other types of errors. Don’t use this template for form validation errors, submission errors, or if a website has been taken down for maintenance.

  • Inline errors. Use alerts or form input errors when displaying errors that occur from interactions on a page.

Usability guidance

  • Use concise, non-technical language. Don’t make the error code a prominent part of the page or get into too many details about what went wrong. Be concise and don’t add unnecessary content just to fill the space.

  • Avoid funny, cutesy, or whimsical error messages. Users might not get the joke or appreciate levity when attempting to access critical information or services. Government website content should always be authoritative and trustworthy.

  • Be apologetic. Show empathy, and don’t blame the user. Use messaging like “We’re sorry, that page can’t be found” instead of “Whoops, you made a mistake.”

  • Let users know what they can do next. This might be advice such as correcting typos in the URL or reporting a problem if they think they’ve reached the 404 page in error. Also, give them a way out of the “dead end” error page by directing them to the homepage, a contact page, a search page, or a chatbot/live chat.

  • Use a consistent layout. The error page should look like your website to avoid confusion. Include the main navigation so that users can navigate directly to another part of the site.

  • Don’t include multiple search boxes. Only include a search option on the error page if there isn’t already a search box in the site’s header or anywhere else on the page.

Using the 404 page template

Components used in this template