diff --git a/src/assets/images/rules/reference/page-rules-migration/pr-mirage-new.png b/src/assets/images/rules/reference/page-rules-migration/pr-mirage-new.png
deleted file mode 100644
index 911e4290fd6d787..000000000000000
Binary files a/src/assets/images/rules/reference/page-rules-migration/pr-mirage-new.png and /dev/null differ
diff --git a/src/assets/images/rules/reference/page-rules-migration/pr-mirage.png b/src/assets/images/rules/reference/page-rules-migration/pr-mirage.png
deleted file mode 100644
index 7f2c779ef1f6a92..000000000000000
Binary files a/src/assets/images/rules/reference/page-rules-migration/pr-mirage.png and /dev/null differ
diff --git a/src/content/docs/cache/get-started.mdx b/src/content/docs/cache/get-started.mdx
index 32d0f0cd1409453..0b4da0aefd685d8 100644
--- a/src/content/docs/cache/get-started.mdx
+++ b/src/content/docs/cache/get-started.mdx
@@ -68,7 +68,6 @@ Review the list of Cloudflare features that function in this manner:
* [Rocket Loader](/speed/optimization/content/rocket-loader/)
* [Polish](/images/polish/)
-* [Mirage](/speed/optimization/images/mirage/) (deprecated)
* [Hotlink Protection](/waf/tools/scrape-shield/hotlink-protection/)
* [Email address obfuscation](/waf/tools/scrape-shield/email-address-obfuscation/)
* [Bot Management JavaScript Detections](/bots/additional-configurations/javascript-detections/)
diff --git a/src/content/docs/cache/reference/etag-headers.mdx b/src/content/docs/cache/reference/etag-headers.mdx
index 37ebb8f2d5d8ff4..59f4b9b8a8c7de0 100644
--- a/src/content/docs/cache/reference/etag-headers.mdx
+++ b/src/content/docs/cache/reference/etag-headers.mdx
@@ -50,7 +50,7 @@ The Cloudflare network will take the following actions, depending on the visitor
-Enabling **Respect Strong ETags** in Cloudflare automatically disables Rocket Loader, Email Obfuscation, Automatic HTTPS Rewrites, and Mirage.
+Enabling **Respect Strong ETags** in Cloudflare automatically disables Rocket Loader, Email Obfuscation, and Automatic HTTPS Rewrites.
### Behavior with Respect Strong ETags disabled
diff --git a/src/content/docs/cloudflare-for-platforms/cloudflare-for-saas/saas-customers/product-compatibility.mdx b/src/content/docs/cloudflare-for-platforms/cloudflare-for-saas/saas-customers/product-compatibility.mdx
index 0d55c627e9220d7..69bd2df137e8582 100644
--- a/src/content/docs/cloudflare-for-platforms/cloudflare-for-saas/saas-customers/product-compatibility.mdx
+++ b/src/content/docs/cloudflare-for-platforms/cloudflare-for-saas/saas-customers/product-compatibility.mdx
@@ -37,7 +37,6 @@ This is not an exhaustive list of Cloudflare products and features.
| [IPv6 Compatibility](/network/ipv6-compatibility/) | Yes | Yes\* | If the customer zone has **IPv6 Compatibility** enabled, generally the SaaS zone should as well.
If not, make sure the SaaS zone enables [Pseudo IPv4](/network/pseudo-ipv4/). |
| [Load Balancing](/load-balancing/) | No | Yes | Customer zones can still use Load Balancing for non-O2O traffic. |
| [Page Rules](/rules/page-rules/) | Yes\* | Yes | Page Rules that match the subdomain used for O2O may block or interfere with the flow of visitors to your website. |
-| [Mirage](/speed/optimization/images/mirage/) (deprecated) | Yes | Yes | |
| [Origin Rules](/rules/origin-rules/) | Yes | Yes | Enterprise zones can configure Origin Rules, by setting the Host Header and DNS Overrides to direct traffic to a SaaS zone. |
| [Page Shield](/page-shield/) | Yes | Yes | |
| [Polish](/images/polish/) | Yes\* | Yes | Polish only runs on cached assets. If the customer zone is bypassing cache for SaaS zone destined traffic, then images optimized by Polish will not be loaded from origin. |
diff --git a/src/content/docs/fundamentals/reference/policies-compliances/content-security-policies.mdx b/src/content/docs/fundamentals/reference/policies-compliances/content-security-policies.mdx
index 3682261eef68092..c0e9a9cc0197620 100644
--- a/src/content/docs/fundamentals/reference/policies-compliances/content-security-policies.mdx
+++ b/src/content/docs/fundamentals/reference/policies-compliances/content-security-policies.mdx
@@ -37,7 +37,7 @@ To use certain Cloudflare features, however, you may need to update the headers
| Feature(s) | Updated headers |
| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
-| [Rocket Loader](/speed/optimization/content/rocket-loader/), [Mirage](/speed/optimization/images/mirage/) | `script-src 'self' ajax.cloudflare.com;` |
+| [Rocket Loader](/speed/optimization/content/rocket-loader/) | `script-src 'self' ajax.cloudflare.com;` |
| [Scrape Shield](/waf/tools/scrape-shield/) | `script-src 'self' 'unsafe-inline'` |
| [Web Analytics](/web-analytics/) | `script-src static.cloudflareinsights.com; connect-src cloudflareinsights.com` |
| [Bot products](/bots/) | Refer to [JavaScript detections and CSPs](/cloudflare-challenges/challenge-types/javascript-detections/#if-you-have-a-content-security-policy-csp). |
diff --git a/src/content/docs/rules/configuration-rules/settings.mdx b/src/content/docs/rules/configuration-rules/settings.mdx
index 1dda905af487084..2891de9fd69d607 100644
--- a/src/content/docs/rules/configuration-rules/settings.mdx
+++ b/src/content/docs/rules/configuration-rules/settings.mdx
@@ -152,30 +152,6 @@ API configuration property name: `"fonts"` (boolean).
-## Mirage
-
-:::caution[Deprecation notice]
-Mirage was deprecated on September 15, 2025.
-:::
-
-[Mirage](/speed/optimization/images/mirage/) accelerates image delivery for your visitors based on their device.
-
-Use this setting to turn on or off Mirage for matching requests.
-
-
-
-API configuration property name: `"mirage"` (boolean).
-
-```json title="API configuration example"
-"action_parameters": {
- "mirage": false
-}
-```
-
-
-
-
-
## Opportunistic Encryption
[Opportunistic Encryption](/ssl/edge-certificates/additional-options/opportunistic-encryption/) allows browsers to access HTTP URIs over an encrypted TLS channel.
diff --git a/src/content/docs/rules/page-rules/reference/settings.mdx b/src/content/docs/rules/page-rules/reference/settings.mdx
index e9e0e46093b458f..f5a6056b11c9651 100644
--- a/src/content/docs/rules/page-rules/reference/settings.mdx
+++ b/src/content/docs/rules/page-rules/reference/settings.mdx
@@ -39,7 +39,6 @@ The available Page Rules settings are the following:
| Forwarding URL | Redirects one URL to another using an `HTTP 301/302` redirect. Refer to [Wildcard matching and referencing](/rules/page-rules/reference/wildcard-matching/). | All |
| Host Header Override | Apply a specific host header. | Enterprise |
| IP Geolocation Header | Cloudflare adds a `CF-IPCountry` HTTP header containing the country code that corresponds to the visitor. | All |
-| [Mirage](/speed/optimization/images/mirage/) | Turn on or off **Mirage** (deprecated). | Pro and above |
| [Opportunistic Encryption](/ssl/edge-certificates/additional-options/opportunistic-encryption/) | Turn on or off the **Opportunistic Encryption**. | All |
| [Origin Cache Control](/cache/concepts/cache-control/) | Origin Cache Control is enabled by default for Free, Pro, and Business domains and disabled by default for Enterprise domains. | All |
| Origin Error Page Pass-thru | Turn on or off Cloudflare error pages generated from issues sent from the origin server. If enabled, this setting triggers error pages issued by the origin. | Enterprise |
diff --git a/src/content/docs/rules/reference/page-rules-migration.mdx b/src/content/docs/rules/reference/page-rules-migration.mdx
index 655c3c2f65796a6..2f7fd9b5f3aa5ed 100644
--- a/src/content/docs/rules/reference/page-rules-migration.mdx
+++ b/src/content/docs/rules/reference/page-rules-migration.mdx
@@ -97,7 +97,6 @@ Also, to streamline common configurations, the Cloudflare dashboard now includes
| Forwarding URL | Redirect Rules (Single Redirects) | [Migrate Forwarding URL](#migrate-forwarding-url) |
| Host Header Override | Origin Rules | [Migrate Host Header Override](#migrate-host-header-override) |
| IP Geolocation Header | Transform Rules (Managed Transforms) | [Migrate IP Geolocation Header](#migrate-ip-geolocation-header) |
-| Mirage (deprecated) | Configuration Rules | [Migrate Mirage](#migrate-mirage) |
| Opportunistic Encryption | Configuration Rules | [Migrate Opportunistic Encryption](#migrate-opportunistic-encryption) |
| Origin Cache Control | Cache Rules | [Migrate Origin Cache Control](#migrate-origin-cache-control) |
| Origin Error Page Pass-thru | Cache Rules | [Migrate Origin Error Page Pass-thru](#migrate-origin-error-page-pass-thru) |
@@ -629,7 +628,7 @@ You configured a Page Rule turning off Cloudflare Apps (deprecated) for all subd
The **Disable Performance** setting is deprecated. Any Page Rules with this setting will not be migrated.
:::
-This Page Rules setting turned off Mirage (deprecated), Polish, and Rocket Loader. You can still turn on or off relevant Cloudflare features one by one using Configuration Rules.
+This Page Rules setting turned off Polish and Rocket Loader. You can still turn on or off relevant Cloudflare features one by one using Configuration Rules.
@@ -644,7 +643,7 @@ You configured a Page Rule with **Disable Performance** (deprecated) for all sub
-1. [Create a configuration rule](/rules/configuration-rules/create-dashboard/) to disable Mirage, Polish, and Rocket Loader for any hostname containing `example.com`:
+1. [Create a configuration rule](/rules/configuration-rules/create-dashboard/) to disable Polish and Rocket Loader for any hostname containing `example.com`:
- **When incoming requests match**: Custom filter expression
- Using the Expression Builder:
@@ -652,7 +651,6 @@ You configured a Page Rule with **Disable Performance** (deprecated) for all sub
- Using the Expression Editor:
`(http.host contains "example.com")`
- **Then the settings are**:
- - **Mirage**: Off
- **Polish**: _Off_
- **Rocket Loader**: Off
@@ -1007,47 +1005,6 @@ You configured a Page Rule adding a `CF-IPCountry` HTTP header, for all requests
-### Migrate Mirage (deprecated) {/* migrate-mirage */}
-
-
-
-**Context:**
-
-You configured a Page Rule turning off Mirage (deprecated) for all subdomains of `example.com` and the `example.com` domain itself:
-
-- **URL**: `*example.com/*`
-- **Setting**: _Mirage_
-- **Value**: Off
-
-**How to migrate**:
-
-
-
-1. [Create a configuration rule](/rules/configuration-rules/create-dashboard/) to turn off Mirage for any hostname containing `example.com`:
-
- - **When incoming requests match**: Custom filter expression
- - Using the Expression Builder:
- `Hostname contains "example.com"`
- - Using the Expression Editor:
- `(http.host contains "example.com")`
- - **Then the settings are**:
- - **Setting**: Mirage
- - **Value**: Off
-
-2. Turn off your existing Page Rule and validate the behavior of the configuration rule you created.
-
-3. If your tests succeed, delete the existing Page Rule.
-
-
-
-
-
-| Page Rules configuration | Migrate to a configuration rule |
-| -------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
-|  |  |
-
-
-
### Migrate Opportunistic Encryption
diff --git a/src/content/docs/speed/optimization/images/mirage.mdx b/src/content/docs/speed/optimization/images/mirage.mdx
index 7f2bca3b66bd7bf..a69a31c5d372cb4 100644
--- a/src/content/docs/speed/optimization/images/mirage.mdx
+++ b/src/content/docs/speed/optimization/images/mirage.mdx
@@ -10,82 +10,37 @@ sidebar:
label: Mirage
badge:
text: Deprecated
-
---
-import { FeatureTable, GlossaryTooltip, Render, DashButton} from "~/components"
-
:::caution[Deprecation notice]
-Mirage was deprecated on September 15, 2025.
-As an alternative, Cloudflare recommends using [lazy loading](/images/tutorials/optimize-mobile-viewing/) and [responsive images](/images/transform-images/make-responsive-images/) to optimize image performance for all devices.
-:::
-
-Cloudflare Mirage reduces bandwidth used by images in mobile browsers. It can accelerate loading of image-heavy websites on very slow mobile connections and HTTP/1.
-
-It does this by:
-
-* Replacing images with low-resolution thumbnails, which are bundled together into one file.
-* Acting as a lazy loader, deferring loading of higher-resolution images until they become visible.
-
-JavaScript must be enabled for Mirage to work.
-
-***
-
-## Comparison
-
-* [Polish](/images/polish/) seamlessly optimizes images for all browsers, not only mobile, and keeps images at full resolution.
-* [Image Resizing](/images/transform-images/) together with `loading="lazy"` and `srcset` HTML attributes can achieve similar results as Mirage, but requires markup changes to implement.
-
-## Availability
+Mirage was deprecated on September 15, 2025 and is no longer available.
-
-
-***
-
-## Image formats compatible with Mirage
-
-Mirage will work with the following image formats:
-
-* `.jpg`
-* `.jpeg`
-* `.png`
-* `.gif`
-* `.img`
-
-***
-
-## Enable Mirage
-
-:::note
-
-If you send a Content Security Policy (CSP) header that restricts where scripts can be loaded, you will need to ensure `ajax.cloudflare.com` is enabled. For example, to allow scripts from your own domain and `ajax.cloudflare.com` enter the following:
-`script-src 'self' ajax.cloudflare.com;`
+As an alternative, Cloudflare recommends using [lazy loading](/images/tutorials/optimize-mobile-viewing/) and [responsive images](/images/transform-images/make-responsive-images/) to optimize image performance for all devices.
:::
-To enable Mirage image optimization for your entire domain:
-
-1. In the Cloudflare dashboard, go to the **Speed** > **Settings** page.
-
-
-
-3. Go to **Image Optimization**.
-4. For **Mirage**, switch the toggle to **On**.
+## What was Mirage?
-
+Cloudflare Mirage was a mobile image optimization feature that reduced bandwidth usage and accelerated image loading on slow mobile connections and HTTP/1.
-***
+Mirage worked by:
-## Test Mirage
+- Replacing images with low-resolution thumbnails bundled together into one file.
+- Acting as a lazy loader, deferring loading of higher-resolution images until they become visible.
-Mirage's features for Mobile Browser optimization are triggered based on high latency and poor network connections. You can test Mirage by making a request to your domain using a mobile [user-agent string](http://en.wikipedia.org/wiki/User_agent) and one of the following flags with your domain in your mobile browser:
+## Why was it deprecated?
-`EXAMPLE.COM/?forcepreload`
+Modern web standards and browser capabilities have evolved to provide native support for many of Mirage's features:
-To run the pre-loader only and serve degraded images on the page enter:
+- Native lazy loading with the `loading="lazy"` HTML attribute.
+- Responsive images using `srcset` and `` elements.
+- HTTP/2 and HTTP/3 providing better performance.
+- Improved mobile networks reducing the need for aggressive optimization.
-`EXAMPLE.COM/?forcepreloadonly`
+## Migration path
-Here is an example where Mirage 2 is triggered by a `?forcepreloadonly` flag. The notable image degradation is a sign that Mirage is working:
+Instead of Mirage, use:
-
+- **[Polish](/images/polish/)** - Seamlessly optimizes images for all browsers, not only mobile, and keeps images at full resolution.
+- **[Image Resizing](/images/transform-images/)** - Combined with `loading="lazy"` and `srcset` HTML attributes, provides modern responsive image delivery.
+- **[Lazy loading guide](/images/tutorials/optimize-mobile-viewing/)** - Learn how to implement native lazy loading.
+- **[Responsive images guide](/images/transform-images/make-responsive-images/)** - Create images that adapt to different devices.
diff --git a/src/content/docs/speed/optimization/images/troubleshooting/troubleshooting-missing-images.mdx b/src/content/docs/speed/optimization/images/troubleshooting/troubleshooting-missing-images.mdx
index 5e34ff7b1a6a138..19cac0a34d0b2f9 100644
--- a/src/content/docs/speed/optimization/images/troubleshooting/troubleshooting-missing-images.mdx
+++ b/src/content/docs/speed/optimization/images/troubleshooting/troubleshooting-missing-images.mdx
@@ -14,6 +14,5 @@ To troubleshoot:
* [Purge cache](/cache/how-to/purge-cache) for the URL of the missing image file.
* [Temporarily pause Cloudflare](/fundamentals/manage-domains/pause-cloudflare/).
* Disable [Rocket Loader](/speed/optimization/content/rocket-loader/enable/).
- * Disable [Mirage](/speed/optimization/images/mirage/#enable-mirage) (deprecated).
2. Retest the image load in a private browser tab.
3. If the issue is not fixed, try another of the actions suggested in Step 1.
diff --git a/src/content/docs/support/third-party-software/content-management-system-cms/speed-up-wordpress-and-improve-performance.mdx b/src/content/docs/support/third-party-software/content-management-system-cms/speed-up-wordpress-and-improve-performance.mdx
index a8d1690ab837fa5..e600958a302b190 100644
--- a/src/content/docs/support/third-party-software/content-management-system-cms/speed-up-wordpress-and-improve-performance.mdx
+++ b/src/content/docs/support/third-party-software/content-management-system-cms/speed-up-wordpress-and-improve-performance.mdx
@@ -19,8 +19,6 @@ Images can be incredibly costly to page load times; fortunately, Cloudflare can
After enabling [**Polish**](/images/polish/), you can dramatically improve image and web page load times by compressing images and stripping metadata. Lossless will strip most metadata (`EXIF` data, for example) but doesn't change the image detail. Lossy will strip most metadata and compresses images by approximately 48 percent.
-If you wish to optimise your site for mobile visitors, enabling [**Mirage**](/speed/optimization/images/mirage/) (deprecated) will allow images to be optimised and delivered based on the end-users network connection and device type.
-
### Enable HTTP/2
**HTTP/2** allows for a multitude of performance features including multiplexing, header compression. In order to enable HTTP/2 on your WordPress site, ensure that your site is loaded over HTTPS.
diff --git a/src/content/docs/support/third-party-software/content-management-system-cms/what-settings-are-applied-when-i-click-optimize-cloudflare-for-wordpress-in-cloudflares-wordpress-plugin.mdx b/src/content/docs/support/third-party-software/content-management-system-cms/what-settings-are-applied-when-i-click-optimize-cloudflare-for-wordpress-in-cloudflares-wordpress-plugin.mdx
index 75c34e4aa14df15..eefed927b9686d4 100644
--- a/src/content/docs/support/third-party-software/content-management-system-cms/what-settings-are-applied-when-i-click-optimize-cloudflare-for-wordpress-in-cloudflares-wordpress-plugin.mdx
+++ b/src/content/docs/support/third-party-software/content-management-system-cms/what-settings-are-applied-when-i-click-optimize-cloudflare-for-wordpress-in-cloudflares-wordpress-plugin.mdx
@@ -22,5 +22,5 @@ If you are using Cloudflare's WordPress plugin, our "Optimize Cloudflare for Wor
| IP Geolocation | On |
| Email Address Obfuscation | On |
| Hotlink Protection | Off |
-| Image optimization (Polish and Mirage) | Off (unless on Pro or higher plan) |
+| Image optimization (Polish) | Off (unless on Pro or higher plan) |
| Rocket Loader | Off |
diff --git a/src/content/docs/workers/configuration/workers-with-page-rules.mdx b/src/content/docs/workers/configuration/workers-with-page-rules.mdx
index 52a67307c839164..1606e286cbad94a 100644
--- a/src/content/docs/workers/configuration/workers-with-page-rules.mdx
+++ b/src/content/docs/workers/configuration/workers-with-page-rules.mdx
@@ -44,7 +44,6 @@ The following Page Rules may not work as expected when an incoming request is ma
* [Forwarding URL](/workers/configuration/workers-with-page-rules/#forwarding-url)
* Host Header Override
* [IP Geolocation Header](/workers/configuration/workers-with-page-rules/#ip-geolocation-header)
-* Mirage (deprecated)
* [Origin Cache Control](/workers/configuration/workers-with-page-rules/#origin-cache-control)
* [Rocket Loader](/workers/configuration/workers-with-page-rules/#rocket-loader)
* [Security Level](/workers/configuration/workers-with-page-rules/#security-level)
diff --git a/src/content/docs/workers/runtime-apis/request.mdx b/src/content/docs/workers/runtime-apis/request.mdx
index ee382a96c6f3e93..3801e388a7fb576 100644
--- a/src/content/docs/workers/runtime-apis/request.mdx
+++ b/src/content/docs/workers/runtime-apis/request.mdx
@@ -134,10 +134,6 @@ Invalid or incorrectly-named keys in the `cf` object will be silently ignored. C
* Enables [Image Resizing](/images/transform-images/) for this request. The possible values are described in [Transform images via Workers](/images/transform-images/transform-via-workers/) documentation.
-* `mirage`
-
- * Whether [Mirage](https://www.cloudflare.com/website-optimization/mirage/) (deprecated) should be enabled for this request, if otherwise configured for this zone. Defaults to `true`.
-
* `polish`
* Sets [Polish](https://blog.cloudflare.com/introducing-polish-automatic-image-optimizati/) mode. The possible values are `lossy`, `lossless` or `off`.
diff --git a/src/content/partials/speed/brotli-compression-warning.mdx b/src/content/partials/speed/brotli-compression-warning.mdx
index 97dfa5ee83bede2..0e8cb285114246c 100644
--- a/src/content/partials/speed/brotli-compression-warning.mdx
+++ b/src/content/partials/speed/brotli-compression-warning.mdx
@@ -11,7 +11,6 @@ Even when using the same compression algorithm end to end (between your origin s
- [Automatic HTTPS Rewrites](/ssl/edge-certificates/additional-options/automatic-https-rewrites/)
- [Cloudflare Fonts](/speed/optimization/content/fonts/)
- [Email Address Obfuscation](/waf/tools/scrape-shield/email-address-obfuscation/)
-- [Mirage](/speed/optimization/images/mirage/) (deprecated)
- [Polish](/images/polish/)
- [Rocket Loader](/speed/optimization/content/rocket-loader/)
- [JavaScript detections](/bots/additional-configurations/javascript-detections/)
diff --git a/src/content/plans/index.json b/src/content/plans/index.json
index 77d303e501b04e5..f1964cddcfc447f 100644
--- a/src/content/plans/index.json
+++ b/src/content/plans/index.json
@@ -2438,20 +2438,6 @@
}
}
},
- "mirage": {
- "title": "Mirage (deprecated)",
- "link": "/speed/optimization/images/mirage/",
- "properties": {
- "availability": {
- "title": "Availability",
- "summary": "Pro and above",
- "free": "No",
- "pro": "Yes",
- "biz": "Yes",
- "ent": "Yes"
- }
- }
- },
"polish": {
"title": "Polish",
"link": "/images/polish/",