Image formats and size variants
How MartechFlow renders your badged product images: WebP and JPEG output, size caps, square 1080 canvas, content-addressed immutable URLs, and which channels receive the badged image versus the clean original.

How images are rendered
MartechFlow renders your image templates server-side with sharp (the libvips imaging engine), the same fast pipeline used at scale. Your source product image is fitted onto a canvas, your layers are composited on top, and the result is encoded to a web-ready file.
The default badged variant is a square 1080 by 1080 canvas encoded as WebP, which keeps files small while staying sharp. This is the version served to overlay-friendly channels.
Formats and sizes
The renderer can output WebP or JPEG, and can cap the output width so large source images are scaled down (it never enlarges a small one).
WebP is the default because it gives the best quality-to-size ratio. JPEG is available where a channel or use case needs it; since JPEG has no transparency, it is flattened onto a background (white by default).
- WebP: default, quality-tuned, smallest files, supports transparency during compositing.
- JPEG: flattened onto a solid background, for channels that require it.
- Width cap: scales the output down to a maximum width; smaller sources are left as-is.
- Default canvas: square 1080 by 1080 for the badged overlay variant.
Stable, immutable image URLs
Every rendered image gets a content-addressed URL. The address is computed from everything that affects the pixels: the renderer version, the template and its version, the source image, the resolved values like discount and price, and any logo or frame assets.
This has two big benefits. First, if nothing changed, the image is reused rather than re-rendered, which is fast and cheap. Second, any change (a new sale price, an edited template, a swapped logo) produces a new address, so a live image URL is never overwritten in place. That matters because ad channels cache images aggressively, and overwriting a URL can serve stale pixels.
Image keys are opaque by design and do not embed your tenant, SKU, or merchant identifiers, so nothing about your catalog leaks through the URL.
Which channels get which image
Channel policy decides whether the badged image or the clean original is sent.
This is deliberate. It is both a creative advantage on social and a safety net: a promo overlay on the main image can cause disapprovals on Google and Microsoft, so those channels always receive the untouched original.
- Badged variant goes to: Meta, TikTok, Snapchat, and Pinterest.
- Clean original always goes to: Google Shopping and Microsoft.
- If a product has no matching active template, its export simply uses the original image everywhere.
Decode safety and metadata
Source images are user-supplied, so the renderer guards against decompression bombs by capping decoded pixels and limiting download size before processing.
On output, source metadata is stripped, so EXIF and GPS data from the original photo is never propagated into your generated assets.