CCloud Releases
Home
Following

Cloud Releases

Service catalogues and updates come from each provider's public product listing and announcements.

Explore

  • Home
  • Latest updates
  • Following

About

  • About
  • Contact
  • Privacy Policy
  • Terms of Use

Providers

  • Amazon Web Services
  • Microsoft Azure
  • Google Cloud
  • Cloudflare

Not affiliated with any cloud provider. Product names and logos belong to their owners.

  1. Providers
  2. ›Cloudflare
  3. ›Cache / CDN
  4. ›Update

Feature•Jul 2, 2026

Cache multiple versions of a URL with Vary

Cache / CDNCloudflare · Application performance

Your origin can serve different responses for the same URL — different languages based on Accept-Language, or different formats based on Accept — by returning a Vary response header. Cloudflare's cache now honors that header directly in Cache Rules, so the same URL can hold multiple cached versions and each request is matched to the right one. Content that previously had to bypass cache to stay correct can now be cached, following standard HTTP caching behavior.

What changed

Your origin now decides which request headers matter by listing them in its Vary response, and you control how Cloudflare treats each one. When you have enabled Vary using a cache rule and a response includes a Vary header, the request headers listed become part of the cache key.

For each header your origin varies on, choose one of three actions:

Action · Behavior · Best for

normalize · Converts equivalent header values to the same cache key value before matching, collapsing redundant versions. · Most Accept, Accept-Language, and Accept-Encoding use cases.

passthrough · Uses the raw header value to select the cached version and forwards it to the origin unchanged. · When byte-for-byte differences in the header value should create versions.

bypass · Bypasses cache whenever this header name appears in the origin's Vary response. · Per-user values, or headers with too many possible values to cache safely.

Benefits

  • Higher cache hit ratios: normalize treats semantically equivalent headers as one version. For example, Accept-Language: en-US, fr;q=0.8 and Accept-Language: fr;q=0.8, en-GB both resolve to the same cache key, so you serve more requests from cache instead of the origin.
  • Correct content negotiation: Requests always receive the cached version that matches their headers, so language and format variants stay accurate.
  • No origin or Worker changes required: If your origin already sends Vary, you configure the behavior entirely in Cache Rules.
  • Standards-aligned: Cache key calculation follows RFC 9111, and Vary: * continues to bypass cache as required by RFC 9110.

Availability

Vary in Cache Rules is available on all plans (Free, Pro, Business, and Enterprise). For per-request control in Workers subrequests, use the cf.vary property.

Get started

Configure Vary in the Cloudflare dashboard under Caching > Cache Rules, or through the Rulesets API. To learn how Vary affects cache keys and how each action works, refer to Vary and the Cache Rules Vary setting.

Read the original announcement↗

More from Cache / CDN

All Cache / CDN updates →
  1. Invalidate cached content instead of purging it

    You can now invalidate cached content instead of purging it. Invalidation marks matching content as stale. On the next request, Cloudflare revalidates the content with your origin.

    Cache / CDN•Feature•Sep 28, 2026
  2. Purge now forces a cache miss for Cache Reserve content

    Purge requests now force a cache miss for Cache Reserve content, regardless of purge type. Previously, purging by cache tag, hostname, prefix, or everything marked matching Cache Reserve content for revalidation.

    Cache / CDN•Feature•Sep 28, 2026
  3. Configure Origin Range Requests with the Rulesets API

    The Rulesets API now supports Origin Range Requests in Cache Rules. This setting lets Cloudflare fetch large files from your origin in cache-aligned byte ranges. Cloudflare may expand a client range and issue several single-range origin requests.

    Cache / CDN•Feature•Sep 2, 2026
  4. BYPASS status now returned for uncacheable responses

    Cloudflare now returns a BYPASS cache status whenever a response is not cacheable, instead of the previous mix of BYPASS and MISS that depended on why Cloudflare chose not to cache the response.

    Cache / CDN•Feature•May 26, 2026
  5. Pingora now powers Cloudflare's cache

    Cloudflare's cache now runs on a new proxy built on Pingora, the Rust-based framework that already serves a significant portion of Cloudflare's network traffic. The new proxy is faster, more memory-safe, and designed to evolve our cache architecture.

    Cache / CDN•Feature•May 4, 2026