---
title: X-Cache
summary: null
url: https://www.fastly.com/documentation/reference/http/http-headers/X-Cache
---

Fastly appends this non-standard header to all responses by default, using a simplified derivative of the value of the `fastly_info.state` variable.  If the value of `fastly_info.state` is `HIT` or any value that starts with `HIT-` then `X-Cache` will be set to `HIT`, otherwise `MISS`.

Requests resulting in a PASS will be reported as `MISS`, while requests resulting in edge-generated synthetic content will be reported as `HIT`.  Additionally all hits resulting from serving stale or background revalidations will also report as `HIT`.

This header may contain reports from multiple servers, if [shielding](https://www.fastly.com/documentation/guides/concepts/shielding/) or [Next-gen WAF at Edge](https://docs.fastly.com/products/fastly-next-gen-waf) is enabled, or if you use custom VCL code that invokes the `restart` statement.

Other than in the case of a `restart`, any entries in this header except "MISS" indicate that the request was satisfied from cache and not forwarded to origin (or Next-gen WAF at Edge)

You can remove this header, or make it subject to `Fastly-Debug`, by using VCL in the `vcl_deliver` subroutine (after the `#FASTLY deliver` placeholder in custom VCL, or in a 'deliver' VCL snippet):

```vcl content="vcl_deliver { ... }"
if (!req.http.Fastly-Debug) {
  unset resp.http.X-Cache;
}
```
