In short. Response header transformations change delivered headers, while Cache Rules control Cloudflare cache behavior.
Definition: Cloudflare response header transform rules change HTTP response headers sent to website visitors. Changing a cache header with one of these rules does not change how Cloudflare caches the object, because Cloudflare evaluates caching behavior before applying response header modifications.
Key facts
- Cloudflare's Response Header Transform Rules reference says the rules manipulate headers in HTTP responses sent to website visitors.
- Cloudflare's cache response documentation says
CF-Cache-Statusindicates whether a resource is cached. - Cloudflare's Cache Rules documentation describes Cache Rules as the place to adjust cache eligibility, duration, and location.
- RFC 9111 defines
Cache-Controlas the HTTP header field used to list directives for caches.
What does a response header transformation change?
Response Header Transform Rules operate on the HTTP response delivered to a visitor. A Set operation overwrites the previous value of a named header or creates that header when it is absent. An Add operation appends a value while preserving existing headers with the same name. Cloudflare also provides a Remove operation for a named response header.
The same Cloudflare reference identifies the cache-header boundary. Modifying cache-control, CDN-Cache-Control, or Cloudflare-CDN-Cache-Control with a response header transform does not change the way Cloudflare caches an object. Cloudflare evaluates caching behavior before applying the response header modification. A transformed value can therefore be visible in the delivered response while the Cloudflare cache decision has already been made.
Cache-Control: no-store
CDN-Cache-Control: no-store
These are cache directives discussed in Cloudflare's cache response documentation. The transform reference does not turn them into a cache-setting control when they are modified in the response-header phase.
Where is Cloudflare cache behavior configured?
Cloudflare's Cache Rules documentation says that Cache Rules adjust what is eligible to cache, how long content should be cached, and where. It lists the dashboard, API, and Terraform as ways to create a rule. Those settings address the cache decision itself, so they are the documented place to use when a site needs to change Cloudflare caching behavior.
HTTP caching has a broader protocol meaning. RFC 9111 says that a fresh response can satisfy later requests without contacting the origin server, and that a response's freshness lifetime runs from its generation by the origin to its expiration time. The Cache-Control field supplies directives for caches, while Cloudflare's rule system determines the platform-specific cache treatment described above.
How can you check the resulting response?
Cloudflare documents CF-Cache-Status as the response header that reports whether a resource is cached. Its documented status values include HIT, MISS, EXPIRED, REVALIDATED, BYPASS, and DYNAMIC.
CF-Cache-Status: BYPASS
Cloudflare uses BYPASS when it chooses not to cache a response. DYNAMIC is used when Cloudflare determines that the asset is not eligible for cache at request time. The two statuses describe different points in the caching decision.
Related terms
- How do Cloudflare Set and Add response header operations differ?
- Can a Cloudflare response header rule match a value changed by an earlier rule?
- Does adding Cache-Control through a CloudFront response policy change edge caching?
FAQ
If I transform Cache-Control to no-store, will Cloudflare stop caching the object?
No. Cloudflare evaluates caching behavior before response header modifications, so a response transform alone does not change the Cloudflare cache decision. Use a Cache Rule for that decision.
Can the transformed header still appear in the response?
Yes. Response Header Transform Rules manipulate headers sent to website visitors. Set replaces a named header value, while Add preserves existing headers with the same name.
Which response header should I inspect?
Inspect CF-Cache-Status. Cloudflare uses BYPASS when it chooses not to cache a response and DYNAMIC when the asset was ineligible for caching at request time.
Sources
- Cloudflare, "Response Header Transform Rules", September 4, 2026
- Cloudflare, "Cloudflare cache responses", September 4, 2026
- Cloudflare, "Cache Rules", August 14, 2026
- IETF, "RFC 9111: HTTP Caching", June 2022
Check how a page reads to answer engines. Open the GEO score analyzer