HTTPError.net

The fastest way to diagnose, understand, and fix any HTTP status code

206 Partial Content

Fault: Neither
TL;DR

Used for resumable downloads and media streaming: the client asked for a byte range and the server returned just that range.

The server is delivering only part of the resource in response to a Range request.

What HTTP 206 Partial Content Means

The server is delivering only part of the resource in response to a Range request.

Used for resumable downloads and media streaming: the client asked for a byte range and the server returned just that range.

Common Causes

How to Fix It (For Visitors)

How to Fix It (For Developers/Admins)

Returning a 206 Partial Content (Code Examples)

If you build APIs or web apps, here is how to send an HTTP 206 response and how to test for it:

Node.js (Express)

app.get('/resource', (req, res) => {
  res.status(206).json({ error: 'Partial Content' });
});

Python (Flask)

@app.route('/resource')
def resource():
    return jsonify(error='Partial Content'), 206

PHP

<?php
http_response_code(206);
header('Content-Type: application/json');
echo json_encode(['error' => 'Partial Content']);

Check the status with curl

curl -I https://example.com/resource
# Look for: HTTP/1.1 206 Partial Content

Frequently Asked Questions

What does HTTP 206 Partial Content mean?

Used for resumable downloads and media streaming: the client asked for a byte range and the server returned just that range. In short: The server is delivering only part of the resource in response to a Range request.

How should I handle an HTTP 206 Partial Content response?

Return 206 with Content-Range when honoring a Range request. Support Accept-Ranges: bytes for resumable downloads. Return 416 if the requested range is invalid.

Official Specification

The 206 Partial Content status code is defined in RFC 9110 Section 15.3.7.

View the IANA HTTP Status Code Registry →