All HTTP status codes
4xx Client Error
RFC 9110

412 Precondition Failed

A precondition specified in the request headers was not met.

What it means

HTTP 412 Precondition Failed is returned when one of the conditional request headers (If-Match, If-Unmodified-Since, etc.) evaluates to false on the server, preventing the request from proceeding.

When it's used

Optimistic concurrency control, conditional updates, cache validation requiring exact match.

Common causes
  • If-Match header ETag does not match current resource ETag
  • If-Unmodified-Since timestamp older than current Last-Modified
  • Resource changed between read and write
How to fix it
  • Fetch the latest resource and retrieve its current ETag
  • Re-issue the request with the updated If-Match value
  • Implement conflict resolution UI for the user
Example response
HTTP/1.1 412 Precondition Failed
ETag: "new-version-abc"
SEO impact

API-only. Not relevant to SEO.