HTTP status code

HTTP 409 Conflict

409 Conflict means the request can't be completed because it conflicts with the current state of the resource on the server.

Reviewed: 6 November 2026
Class
4xx · Client errors
Where the problem is
Problem with the request (client)
Who fixes it
You can often fix it yourself (URL, sign-in, cookies).

What it means

409 is a typical API code: creating a user with an email that already exists, updating a record someone else changed in the meantime, or a git push to a branch that has moved. The response should explain what conflicts so the client can resolve it.

Most common causes

  • A resource with the same unique key already exists.
  • Concurrent edits to the same record (optimistic locking).
  • An invalid state transition, e.g. cancelling an order that has already shipped.
  • The file or object version doesn't match the expected one.

What you can do as a visitor

  1. Refresh the page to get the latest state and try again.
  2. If sign-up returns a 409, an account with those details probably already exists.

Shows the HTTP status, redirect chain, HTTPS and basic SEO signals. Works for public addresses only.

What the site owner or developer should do

  1. Describe the conflict in the response and how to resolve it.
  2. For concurrent editing, use ETag and If-Match (which may also return 412).
  3. Don't use 409 for general validation errors; those are 400 or 422.

Impact on SEO and Google

409s occur in APIs and forms and have no effect on the SEO of public pages.

Frequently asked questions

Is a 409 a server error?

No. The server is working; the request conflicts with the current state.

How do I fix a 409 in an API?

Fetch the current state of the resource, reconcile your data and send the request again.

Sources