HTTP Status Codes
HTTP 409 Conflict
Conflict
A 409 error happens when a request fundamentally conflicts with the current state of the target resource.
Visual summary
A quick reference view of how HTTP 409 works: Two elements trying to occupy the same state or space, resulting in a collision.

What 409 Means
The shortest useful reading of this status code.
Conflict.
This status falls into the 4xx class, indicating a client-side error outcome for the request.
Quick read
Conflict
A 409 error happens when a request fundamentally conflicts with the current state of the target resource.
Technical Context
How this status behaves without turning the page into a repair guide.
Standard usage
The 409 status signals that the server understood the request, but the action would violate business logic or database constraints if executed.
Technical nuance
Unlike 400 Bad Request, a 409 request is perfectly formatted, it just clashes with existing data.
Related HTTP Codes
Nearby HTTP status codes help clarify how 409 differs inside the same response family.
409
Conflict
A 409 error happens when a request fundamentally conflicts with the current state of the target resource.
400
Bad Request
the server cannot process the request because it is malformed
412
Precondition Failed
a conditional header did not match current resource state
428
Precondition Required
the server requires a conditional request before changing state
Common Causes
Concurrent edit collision
A common condition that triggers a 409 response when the web server evaluates the transaction.
Trying to create a resource that already exists
A common condition that triggers a 409 response when the web server evaluates the transaction.
Database unique constraint violation
A common condition that triggers a 409 response when the web server evaluates the transaction.
Typical Scenarios
Two administrators try to update the exact same file simultaneously.
A user tries to register an account with an email address that is already firmly taken.
What To Know
Synchronization of the client with the latest server state or modification of the conflicting payload (e.g., choosing a unique username) resolves the collision.
Frequently Asked Questions
Common interpretation questions about HTTP 409.
It means your request clashes with data already on the server, like trying to create a user that already exists.