TL;DR: Within Cache Rules, for non-terminating actions the last change made wins (later rules overwrite earlier ones in the same phase). ## The migration trap Teams with old Page Rules for caching ("Cache Everything" on # Cache Rules are the current caching config Page Rules are deprecated. For caching behavior, the current product is **Cache Rules**, which control cache eligibility, edge TTL, and browser TTL per request match. ## Execution order matters Rules features execute in a fixed order: Single Redirects, URL Rewrite, Configuration Rules, Origin Rules, Bulk Redirects, Managed Transforms, Request Header Transforms, Cache Rules, then Snippets.

## Fix
1. Within Cache Rules, for non-terminating actions the last change made wins (later rules overwrite earlier ones in the same phase). ## The migration trap Teams with old Page Rules for caching ("Cache Everything" on.
   Expected: this specific failure stops.
2. ) add a Cache Rule and assume both apply.
   Expected: this specific failure stops.

## Details
# Cache Rules are the current caching config Page Rules are deprecated. The listed products take precedence over Page Rules: if a Cache Rule and a Page Rule both match, the Cache Rule wins. `/static/*` They do not: on conflict the newer product wins, and on non-conflict both can stack in surprising ways.

## When to use
You hit exactly this: Cloudflare cache rules vs page rules: where caching config lives now in Cloudflare cache rules vs page rules.

## When not to use
A different error, or the same symptom in a different tool. This page only covers the failure above.

## Compatibility
Cloudflare cache rules vs page rules.

## Edge cases
- For caching behavior, the current product is **Cache Rules**, which control cache eligibility, edge TTL, and browser TTL per request match. ## Execution order matters Rules features execute in a fixed order: Single Redirects, URL Rewrite, Configuration Rules, Origin Rules, Bulk Redirects, Managed Transforms, Request Header Transforms, Cache Rules, then Snippets.