--- title: "206 Partial Content — what it means and how to fix it" description: "The server is returning only the requested byte range of a file, not the whole thing. What causes an HTTP 206, what to try as a visitor, and what to check if it is your own site." url: https://atoneplace.net/error/206/ site: "At One Place" --- # HTTP 206 — Partial Content **HTTP 206: Partial Content** The server is returning only the requested byte range of a file, not the whole thing. ## What 206 actually means The client sent a `Range` header asking for part of a file and the server obliged. This is what makes video seeking, resumable downloads and parallel download managers work: a browser scrubbing to the middle of an MP4 asks for exactly those bytes rather than fetching the file from the start. The response carries a `Content-Range` header saying which bytes it contains and how large the whole file is. ## Common causes - A video or audio player requested a byte range to seek - A download resumed after being interrupted - A download manager fetched several chunks of one file in parallel ## If you're just trying to view the page 1. Nothing — this is how seeking and resuming downloads are supposed to work 2. If video seeking does not work on a site, the server is probably ignoring range requests rather than returning 206 ## If it's your site 1. Advertise support with `Accept-Ranges: bytes`; without it clients will not try 2. Serve `Content-Range` correctly — an off-by-one on the end byte corrupts downloads in ways that are painful to trace 3. Many application frameworks do not implement ranges; serve large media through a static file server or CDN that does 4. If the requested range is outside the file, return 416, not 206 with empty content ## Reference - **Status code:** 206 - **Reason phrase:** Partial Content - **Category:** 2xx — Success - **Cacheable by default:** Yes - **Defined in:** RFC 9110 §15.3.7 ## Common questions ### What does HTTP 206 mean? The server is returning only the requested byte range of a file, not the whole thing. The client sent a `Range` header asking for part of a file and the server obliged. This is what makes video seeking, resumable downloads and parallel download managers work: a browser scrubbing to the middle of an MP4 asks for exactly those bytes rather than fetching the file from the start. ### How do I fix a 206 error? Nothing — this is how seeking and resuming downloads are supposed to work ### Is 206 a client error or a server error? 206 is in the 2xx range, which means success. It is not an error at all. ## Related pages - [200 OK](https://atoneplace.net/error/200/) - [204 No Content](https://atoneplace.net/error/204/) - [201 Created](https://atoneplace.net/error/201/) - [202 Accepted](https://atoneplace.net/error/202/) - [207 Multi-Status](https://atoneplace.net/error/207/) - [203 Non-Authoritative Information](https://atoneplace.net/error/203/) - [205 Reset Content](https://atoneplace.net/error/205/) - [208 Already Reported](https://atoneplace.net/error/208/) - [226 IM Used](https://atoneplace.net/error/226/) ## Sources - Hypertext Transfer Protocol (HTTP) Status Code Registry — IANA (https://www.iana.org/assignments/http-status-codes/) - RFC 9110: HTTP Semantics — IETF (https://www.rfc-editor.org/rfc/rfc9110.html)