HTTP Status Codes

HTTP 506 Variant Also Negotiates

506
MediumWeb ServerReference page

Variant Also Negotiates — the selected representation has a circular negotiation configuration

A 506 Variant Also Negotiates response means the server selected a representation that is itself configured as another negotiable resource, creating a circular negotiation condition. It is a server-side configuration problem tied to representation selection rather than a generic internal crash.

Visual summary

A quick reference view of how HTTP 506 indicates a server-side content negotiation loop instead of a standard redirect or concrete file.

HTTP 506 visual summary showing a server configuration node pointing to variants that loop back to each other
Visual summary: 506 means the server tried to negotiate a representation, but the selected variant points to another negotiable resource, creating a loop.

What 506 Means

The shortest useful reading of this status code.

Variant Also Negotiates means the selected representation has a circular negotiation configuration.

For negotiation failures, the key distinction is that the server loop is inside representation selection rather than in generic routing or protocol parsing.

Quick read

Circular variant selection

A 506 means representation negotiation selected another negotiable variant instead of one concrete result.

Technical Context

How this status behaves without turning the page into a repair guide.

Negotiation loop

The useful reading of 506 is that the negotiation system chose a result that cannot actually terminate the selection process. Instead of ending with one concrete representation, the server lands on another negotiable variant and creates a circular path. The response therefore signals a configuration fault inside representation handling, not a malformed request from the client.

Status-code boundary

That makes 506 different from 300, 505, and 508. A 300 exposes multiple possible representations to the client. A 505 rejects the HTTP protocol version. A 508 signals a broader processing loop. A 506 is narrower: the loop is specifically inside the server's representation negotiation logic.

Related HTTP Codes

Nearby HTTP status codes help clarify how 506 differs inside the same response family.

Common Causes

Server negotiation config points a variant back to itself

The chosen representation loops back into the same negotiation system instead of ending at one concrete file or view.

Transparent content negotiation mapping creates circular representation selection

Negotiation logic keeps selecting another negotiable variant instead of one stable result.

Variant metadata references another negotiable resource instead of a concrete file

The variant map resolves to a target that re-enters negotiation rather than terminating the representation choice.

Typical Scenarios

01

A content negotiation setup for language or media variants accidentally points one variant at another negotiable resource

02

A server uses transparent negotiation rules and the chosen representation loops back into the same selection logic

03

Variant metadata for an alternate file references a negotiable target instead of a concrete stored representation

What To Know

A 506 usually points to misconfigured variant metadata or negotiation rules on the server side. The important distinction is that the server reached the representation-selection stage but could not resolve it to one stable concrete result.

Frequently Asked Questions

Common interpretation questions about HTTP 506.

Usually no. It generally indicates that the server's own negotiation setup for alternate representations is circular or internally inconsistent.

A 506 is specifically about circular representation negotiation. A 508 is a broader server-side loop detection status that is often discussed in recursive or WebDAV-style traversal contexts.