Content-Range

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The HTTP Content-Range response header is used in range requests to indicate where the content of a response body belongs in relation to a complete resource.

It should only be included in 206 Partial Content or 416 Range Not Satisfiable responses.

Header type Response header, Content header
Forbidden request header No
CORS-safelisted request header No

Syntax

http
Content-Range: <unit> <range>/<size>
Content-Range: <unit> <range>/*
Content-Range: <unit> */<size>

Directives

<unit>

The unit for specifying ranges. Currently, only bytes is supported.

<range>

A range with the format <range-start>-<range-end>, where <range-start> and <range-end> are integers for the start and end position (zero-indexed & inclusive) of the range in the given <unit>, respectively. * is used in a 416 Range Not Satisfiable response to indicate that the value is not a range.

<size>

The total length of the document (or * if unknown).

Examples

Partial content response

This 206 Partial Content response shows a partial response, with the Content-Range indicating that it contains the first 1024 bytes of a 146515 byte file.

http
HTTP/2 206
content-type: image/jpeg
content-length: 1024
content-range: bytes 0-1023/146515
…

(binary content)

Range not satisfiable

If the server cannot satisfy the requested range request, it should respond with a 416 Range Not Satisfiable status, and the Content-Range should specify * for the range along with the total size of the resource.

http
HTTP/2 416

Content-Range: bytes */67589

Specifications

Specification
HTTP Semantics
# field.content-range

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Content-Range

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

See also