HTTPREF
← Back to status codes

HTTP Status Code

426 Upgrade Required

Client Error

The server requires the client to switch to a different protocol before continuing.

HTTP status code reference, response example, common causes, fixes, and related status codes.

What does HTTP 426 Upgrade Required mean?

HTTP 426 Upgrade Required is a status code sent by a server to indicate the result of an HTTP request.

Status codes help browsers, APIs, apps, and backend systems understand whether a request succeeded, failed, was redirected, or needs additional action.

In practice, HTTP 426 Upgrade Required usually appears when a server responds under specific request, validation, permission, or infrastructure conditions.

Response example

HTTP/1.1 426 Upgrade Required
Upgrade: HTTP/2.0

HTTP example

HTTP/1.1 426 Upgrade Required

Relevant headers

Upgrade
Upgrade: HTTP/2.0

Common causes

  • Protocol mismatch
  • Server requires a newer protocol

How to fix it

  • Upgrade the client protocol
  • Check Upgrade header requirements

Common mistakes

  • Assuming the status code alone explains the full backend issue
  • Ignoring related response headers that add important context
  • Treating temporary errors as permanent failures
  • Retrying too aggressively without checking the cause
  • Debugging the frontend only when the problem is server-side

How browsers and APIs use it

Browsers, APIs, and backend services use HTTP status codes to understand the outcome of a request. Depending on the status code, an application may render content, retry a request, redirect the user, show an error, or trigger a different flow in the client or server.

Developer note

HTTP 426 is uncommon in everyday frontend work, but it can appear when servers enforce protocol upgrades.

Related status codes