
format=auto — negotiated to WebP or AVIF per Accept header.

q=auto — content-aware quality tuned to the source.

Fixed width (left) vs Client Hints ?ch=Width,Dpr (right).
Format negotiation
format=auto (the SDK default) picks the best format from the browser’s Accept header:
- AVIF when
image/avifis advertised - WebP when
image/webpis advertised - JPEG fallback for older browsers
Vary: Accept so edge caches stay correct — at most two variants per URL (modern + JPEG).
Force a specific format with format=webp, format=avif, format=jpeg, or format=png. For SVG tracing and SVG source handling, see Vector & SVG. For forced downloads, see Download.
Progressive JPEG
When output format is JPEG (explicitformat=jpeg or negotiated from format=auto), Convertly uses progressive encoding by default. The full image appears quickly at low quality and sharpens as more bytes arrive — unlike baseline JPEG, which paints top-to-bottom.

Progressive (default) vs baseline (jpgProgressive=0) loading behaviour.
The final decoded image is identical — only the byte stream order changes.
Content-aware quality
Adaptive quality analyzes the source on the first cache miss and picks a quality band:
Choose the delivery intent that fits the surface:
Framework image adapters default to
q=auto. Raw CDN URLs without q retain the backward-compatible q=80 default. All adaptive modes work inside presets too.
Actual byte reduction varies by source complexity, requested dimensions, and negotiated format. Adaptive modes express delivery intent rather than promising a fixed percentage reduction.
Client hints
Passch=Width,Dpr to opt into browser Client Hints for sizing. When w is omitted and ch=Width is set, the CDN uses Sec-CH-Width (CSS pixels) multiplied by dpr.
Metadata stripping
strip=all (or strip=1) removes EXIF/XMP/ICC from output. strip=icc keeps colour profile metadata but drops camera tags.

?strip=all — visually identical; metadata removed from the JPEG container.
PDF pages and GIF frames
Network-aware quality
When the browser sendsSave-Data: on, Convertly drops encode quality by 15 points (floored at 40). The route sets Vary: Save-Data and caches both variants independently — no client-side changes required.
See Transforms overview → caching for cache behaviour with Accept and Save-Data.