Watermark not visible in WordPress Media Library

What’s happening?

You have applied a watermark to an image, but when you open it in the WordPress Media Library, the watermark does not appear.

Don’t worry — in most cases, the problem is due to the cache: your browser, cache plugin, or CDN (Content Delivery Network) is still showing the old version of the image without the watermark.

The watermark is almost always present on the server, but the file you are seeing has not yet been updated.

How to check if the watermark is really there

  1. Go to the Media Library in WordPress.
  2. Open the image and copy the direct URL (the link to the file).
  3. Open a browser window in Incognito/Private mode.
  4. Paste the URL into the address bar.
  • If you see the watermark in Incognito mode, it means the watermark has been applied correctly.
  • If you don’t see it, the watermark may not have been applied yet or there may be a configuration issue.

How to fix it

Clear your browser and site cache

  • Refresh the page with CTRL + F5 (Windows) or CMD + Shift + R (Mac).
  • If you are using a cache plugin (e.g., WP Rocket, LiteSpeed Cache, W3 Total Cache, etc.), open the plugin settings and clear the cache.

Clear the CDN cache

If your site uses a CDN, it may still be serving the old version of the image from one of its servers.

The image URL may change depending on the type of CDN you are using:

CDN typeExample image URLHow to recognize it
CDN with dedicated subdomainhttps://cdn.yoursite.com/wp-content/uploads/…Domain type “cdn.” or “media.”
Third-party CDNhttps://yoursite.b-cdn.net/…
https://abc123.cloudfront.net/…
BunnyCDN, Cloudfront, KeyCDN, etc.
Jetpack/WordPress CDNhttps://i0.wp.com/yoursite.com/wp-content/uploads/…Used by Jetpack Site Accelerator
Transparent CDNhttps://yoursite.com/wp-content/uploads/…
Same domain, but cache visible in HTTP headers
Cloudflare, Sucuri

If you are unsure whether the image comes from a CDN:

  • Right-click on the image → Inspect → open the Network tab.
  • Reload the page and check the response headers.
    If you find entries such as cf-cache-status, x-cache, x-bunny-cache, etc., it means that the image is served by the CDN.

Then:

  • Cloudflare: go to Caching → Purge Everything.
  • BunnyCDN / KeyCDN: perform a Purge Cache for your site’s zone.
  • Jetpack CDN: temporarily disable Site Accelerator and re-enable it to regenerate image copies.