Expires

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 Expires response header contains the date/time after which the response is considered expired in the context of HTTP caching.

The value 0 is used to represent a date in the past, indicating the resource has already expired.

Note: If there is a Cache-Control header with the max-age or s-maxage directive in the response, the Expires header is ignored.

Header type Response header
Forbidden header name No
CORS-safelisted response header Yes

Syntax

http
Expires: <day-name>, <day> <month> <year> <hour>:<minute>:<second> GMT

Directives

<day-name>

One of Mon, Tue, Wed, Thu, Fri, Sat, or Sun (case-sensitive).

<day>

2 digit day number, e.g., "04" or "23".

<month>

One of Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec (case sensitive).

<year>

4 digit year number, e.g., "1990" or "2016".

<hour>

2 digit hour number, e.g., "09" or "23".

<minute>

2 digit minute number, e.g., "04" or "59".

<second>

2 digit second number, e.g., "04" or "59".

GMT

Greenwich Mean Time. HTTP dates are always expressed in GMT, never in local time.

Examples

http
Expires: Wed, 21 Oct 2015 07:28:00 GMT

Specifications

Specification
HTTP Caching
# field.expires

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
Expires

Legend

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

Full support
Full support

See also