--- title: "416 Range Not Satisfiable — what it means and how to fix it" description: "The byte range you asked for does not exist within the file. What causes an HTTP 416, what to try as a visitor, and what to check if it is your own site." url: https://atoneplace.net/error/416/ site: "At One Place" --- # HTTP 416 — Range Not Satisfiable **HTTP 416: Range Not Satisfiable** The byte range you asked for does not exist within the file. ## What 416 actually means The client sent a `Range` header pointing outside the resource — asking for bytes 5000-6000 of a 3000-byte file. It usually means the client's idea of the file has gone stale: a download resuming from an offset into a file that has since been replaced with a shorter one, or a media player seeking against a cached length that no longer matches. The response should include a `Content-Range` header giving the real size. ## Common causes - A download resuming past the end of a file that changed on the server - A media player seeking beyond the actual duration - A cached `Content-Length` that no longer matches the current file - A client requesting a range against a resource whose length is unknown ## If you're just trying to view the page 1. Delete the partial download and start it again from the beginning 2. Clear the browser or player cache so it re-reads the file's real size 3. If a video will not seek, reload the page to fetch fresh metadata ## If it's your site 1. Include `Content-Range: bytes */` in the 416 so the client can correct itself 2. Change the ETag whenever a file's content changes, so stale resumes are rejected as 412 rather than producing corrupt files 3. The specification allows ignoring an unsatisfiable range and returning the whole resource with 200 — often kinder to clients ## Reference - **Status code:** 416 - **Reason phrase:** Range Not Satisfiable - **Category:** 4xx — Client Error - **Defined in:** RFC 9110 §15.5.17 ## Common questions ### What does HTTP 416 mean? The byte range you asked for does not exist within the file. The client sent a `Range` header pointing outside the resource — asking for bytes 5000-6000 of a 3000-byte file. It usually means the client's idea of the file has gone stale: a download resuming from an offset into a file that has since been replaced with a shorter one, or a media player seeking against a cached length that no longer matches. ### How do I fix a 416 error? Delete the partial download and start it again from the beginning ### Is 416 a client error or a server error? 416 is in the 4xx range, which means client error. The request itself was the problem, so retrying it unchanged will usually return the same code. ## Related pages - [404 Not Found](https://atoneplace.net/error/404/) - [403 Forbidden](https://atoneplace.net/error/403/) - [401 Unauthorized](https://atoneplace.net/error/401/) - [429 Too Many Requests](https://atoneplace.net/error/429/) - [400 Bad Request](https://atoneplace.net/error/400/) - [413 Content Too Large](https://atoneplace.net/error/413/) - [422 Unprocessable Content](https://atoneplace.net/error/422/) - [405 Method Not Allowed](https://atoneplace.net/error/405/) - [409 Conflict](https://atoneplace.net/error/409/) - [415 Unsupported Media Type](https://atoneplace.net/error/415/) - [408 Request Timeout](https://atoneplace.net/error/408/) - [410 Gone](https://atoneplace.net/error/410/) ## 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)