SEO Tools

Image Vary Accept Header Checker

Validate image response Vary headers against Accept/content-type negotiation and catch cache-fragmenting Vary patterns before release.

About this tool

Audit image response exports before deployment so format-negotiated AVIF/WebP delivery includes Vary: Accept and avoids cache-fragmenting header patterns.

The Image Vary Accept Header Checker inspects HTTP response headers on image URLs to verify that endpoints performing content negotiation include the correct Vary: Accept directive. When a server selects between AVIF, WebP, and legacy formats based on the request's Accept header but omits Vary, shared caches and CDNs may serve the wrong format to subsequent visitors. This tool surfaces every image where that mismatch risk exists.

  • Parses rows in URL|image-url|accept|vary|content-type|status|context|bytes format and normalizes relative URLs with an optional base URL.
  • Flags missing Vary headers, missing Vary: Accept on format-negotiated image responses, wildcard Vary usage, and high-cardinality Vary tokens.
  • Highlights critical-image risk bytes per page so teams can prioritize Vary header fixes for LCP-sensitive assets first.

How to use Vary Accept Checker

Provide a page URL and the tool fetches each image resource, examines the response's Content-Type and Vary headers, and flags images where format negotiation is happening without a matching Vary: Accept token. Results are grouped by severity so you can prioritize high-traffic or LCP-critical images first. After updating your CDN or origin server rules, re-run the check to confirm every negotiated image carries the proper cache-key signal.

When this tool is useful

  • Audit image response headers before launch when AVIF/WebP format negotiation is handled through CDNs or edge transforms.
  • Catch missing Vary: Accept directives that can return the wrong image variant from shared caches.
  • Prioritize high-impact hero/LCP images where missing Vary coverage can create both SEO and UX regressions.

Practical tips

  • If an endpoint negotiates format by Accept header, keep Vary: Accept explicit even when the CDN appears to auto-handle variants.
  • Avoid Vary: * and high-cardinality Vary tokens unless you have a measured reason; they fragment cache keys and reduce hit rates.
  • Track critical-image byte risk by page so missing Vary fixes land first on LCP-sensitive templates.

Why people use this tool

A missing Vary: Accept header on a format-negotiated image means a CDN edge node could cache the WebP variant and serve it to a browser that only supports JPEG, or vice versa. This leads to broken images, inflated byte transfers, and inconsistent rendering across user agents. Correct Vary directives ensure each cached variant is keyed to the requesting client's capabilities, protecting both performance and visual reliability at scale.

Related search intents

image vary accept checker, vary accept header validator, image format negotiation checker, image cache vary header audit.

Frequently asked questions

What input format does this Vary header checker expect?

Use one row per image in URL|image-url|accept|vary|content-type|status|context|bytes format. Bytes can be in B, KB, or MB values.

When is Vary: Accept required for images?

If your image endpoint serves different formats based on the Accept header, Vary: Accept should be present so caches store separate variants safely.

What is the risk of omitting Vary: Accept on image responses that use content negotiation?

Without Vary: Accept, shared caches and CDNs may serve a cached WebP image to a browser that only supports JPEG, causing a broken image. The checker flags responses that return different formats based on the Accept header but lack the Vary signal to prevent cache collisions.

How does the tool detect cache-fragmenting Vary patterns?

The tool flags Vary headers that include unnecessary fields beyond Accept, such as User-Agent or Cookie, on image responses. Each additional Vary field multiplies the number of cache entries, fragmenting CDN storage and reducing cache hit rates for the same underlying image.

Should Vary: Accept be set on images that are only served in a single format?

No. If the server always returns the same format regardless of the Accept header, adding Vary: Accept creates unnecessary cache variants and lowers hit rates. The checker flags this pattern and recommends removing the Vary header when content negotiation is not active.

Related tools

Keep the workflow moving

These tools are the closest next steps based on category, keyword overlap, and popular workflow paths.

SEO

Article Schema Generator

Generate Article JSON-LD markup.

SEO

Breadcrumb Schema Generator

Generate BreadcrumbList JSON-LD markup.

SEO

Canonical Tag Generator

Create canonical link tags for SEO.

SEO

FAQ Schema Generator

Generate FAQ JSON-LD markup.