---
title: "Gain better insights into edge caching behavior on Netlify"
description: "Fine-grained cache control headers allow teams to precisely configure which content gets cached and control parameters to selectively invalidate content to ensure a higher cache rate"
source: "https://www.netlify.com/blog/gain-better-insights-into-edge-caching-behavior-on-netlify/"
last_updated: "2026-07-10T21:15:52.000Z"
---
Over the last year, Netlify has made significant investment in making the caching features of the Netlify Edge even more powerful. These platform primitives unlock the ability to create dynamic digital experiences. Here’s what’s new:

-   We’ve added support for [fine-grained cache control headers](https://www.netlify.com/blog/swr-and-fine-grained-cache-control/) to precisely configure which content gets cached for how long and in which CDN provider.
-   [Cache Tag support](https://www.netlify.com/blog/cache-tags-and-purge-api-on-netlify/) allows developers to selectively invalidate content to ensure a high cache hit rate for the overall site.
-   With the [addition of Netlify-Vary](https://www.netlify.com/blog/netlify-cache-key-variations/), dynamic content can be cached selectively for different variations in request details like URL query, cookies or headers.

### Cache-Status Response Header

Netlify now provides a new HTTP response header, `Cache-Status`, to offer insights into the caching process. Detailed in [RFC 9211](https://datatracker.ietf.org/doc/html/rfc9211), this header includes directives that explain a cache’s behavior in generating an HTTP response.

Here are some example values that you might see in this header, and what they mean:

-   `Cache-Status: "Netlify Edge"; hit` - Response was served from the edge cache directly
-   `Cache-Status: "Netlify Edge"; fwd=miss` - Response was served from an origin because there was no cached object for this request
-   `Cache-Status: "Netlify Edge"; fwd=stale` - Response was served from an origin because the object in the cache was stale (invalidated or expired)
-   `Cache-Status: "Netlify Edge"; hit, fwd=stale` - A stale response was served from the edge cache, but a background refresh was triggered (because of the `stale-while-revalidate` cache directive)

### Using information from Cache Status with synthetic tests

The information provided in ‘Cache-Status’ can be helpful when running synthetic testing against your Netlify site. Your synthetic test can check if the ‘hit’ directive is present in the ‘Cache-Status’ header or export it as a metric. Grouping latency measurements by cache status provides better data than when latency measurements from cached and uncached responses are mixed.

### Cache status usage with Real User Monitoring (RUM)

When using a configurable Real User Monitoring (RUM) service, you can record the cache status as metadata with your measurements which helps you differentiate latency and error rate for cached vs uncached responses to fetch calls in your frontend code.

### Share

-   [X (fka Twitter)](https://twitter.com/intent/tweet?text=Gain better insights into edge caching behavior on Netlify&url=https://www.netlify.com/blog/gain-better-insights-into-edge-caching-behavior-on-netlify/)
-   [LinkedIn](https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.netlify.com%2Fblog%2Fgain-better-insights-into-edge-caching-behavior-on-netlify%2F)
-   [Facebook](https://www.facebook.com/sharer.php?u=https://www.netlify.com/blog/gain-better-insights-into-edge-caching-behavior-on-netlify/)
-   [Bluesky](https://bsky.app/intent/compose?text=Gain better insights into edge caching behavior on Netlify+https://www.netlify.com/blog/gain-better-insights-into-edge-caching-behavior-on-netlify/)

* * *

### Tags

-   [Caching](/blog/tags/caching/)
-   [CDN](/blog/tags/cdn/)
-   [changelog](/blog/tags/changelog/)

## Keep reading

![](/_astro/9e2fd67496411cd76ae1ec47f62411541c810db3-2400x1260_x7tC0.webp)

News & Announcements September 28, 2023

[

### SWR & Fine Grained Cache Control on Netlify

](/blog/swr-and-fine-grained-cache-control)

-   ![Profile picture of Mathias Biilmann](/_astro/f193d4707a6391d843d5aaa73338b5a5971ec5cc-960x960_1Yylqm.webp)
    
    Mathias Biilmann
    

![](/_astro/b7970e0a0172fbde93b81e2dd212f135c7942ce6-2400x1260_1XrJhH.webp)

News & Announcements October 13, 2023

[

### Cache-tags & Purge API on Netlify

](/blog/cache-tags-and-purge-api-on-netlify)

-   ![Profile picture of Paulo Araújo](/_astro/daa935d2ed234741f03dd38a194860b9a971f887-450x450_1q8XMJ.webp)
    
    Paulo Araújo
    

## Recent posts

News & Announcements June 25, 2026

[

### Netlify Functions, designed for Agent Experience

](/blog/netlify-functions-designed-for-agent-experience)

-   ![Profile picture of Eduardo Bouças](/_astro/52958f21e8450baf6d8e60302341a984e220c0cd-512x512_13VDlu.webp)
    
    Eduardo Bouças
    

News & Announcements June 24, 2026

[

### How we measure Netlify’s Agent Experience

](/blog/how-we-measure-netlify-agent-experience)

-   ![Profile picture of Sean Roberts](/_astro/bbf2243f8171dbddd80ab2103622106cef84d125-512x512_Z1d2LKE.webp)
    
    Sean Roberts
    

Guides & Tutorials May 15, 2026

[

### How to build a real-time AI chatbot in minutes with Netlify Agent Runners (no backend)

](/blog/how-to-build-a-real-time-ai-chatbot-in-minutes-with-netlify-agent-runners-no-backend)

-   ![Profile picture of Nahrin Jalal](/_astro/f0e7c8f227a03fe58340c99ef5439d5a896c0733-272x272_Z23kDpD.webp)
    
    Nahrin Jalal
    

![](/_astro/3f255b372fa958df35802666ee33b4609b2d71bd-1200x1586_1VtE2D.webp)

### How do the best dev and marketing teams work together?

[Access the report](https://www.netlify.com/reports/2024-leadership-trend-report/access/)