// VERSUS · BUNNY

A specialized image CDN. A full image API, not just an optimizer.

Bunny's Image Optimizer is a flat add-on per pull zone plus metered CDN bandwidth on top — hard to beat if light optimization is all you need. img apis is the full image API: a /info bundle returning palette + BlurHash + metadata in one round-trip, /grid composition for 2–5 sources, background removal at a disclosed credit cost, an account-level default mark that auto-applies across every endpoint on Pro+, idempotent credits — served from Cloudflare's 300+ POPs with bandwidth bundled flat.

You like Bunny's CDN, but the Optimizer stops short — no /info bundle, no /grid composition, no auto-mark, no first-class background remover. Bolting a second service in front of it defeats the simplicity that brought you to Bunny in the first place.

Pick us when

Pick img apis when the full image API is the wedge.

  • You need a /info bundle — palette + BlurHash + metadata in a single round-trip, WCAG-paired contrast on every swatch.
  • First-class /grid composition for 2–5 sources, plus a /placeholder family that renders BlurHash or color tiles to real PNG.
  • Account-level default mark (Pro+) auto-applies across every image-returning endpoint — set the brand once, every URL ships marked.
  • Background removal at a disclosed credit cost (not buried as an AI add-on), idempotent credits, cache hits cost zero.
  • An image CDN with intelligence built in — Cloudflare’s 300+ POPs, bandwidth bundled flat, BYO R2 / S3 / HTTPS source.
Pick them when

Pick Bunny when CDN is the product.

  • A fast, regional, low-cost CDN is your primary need — image optimization is secondary.
  • You are already on Bunny Storage and want the stack inside one vendor.
  • You want per-region bandwidth pricing controls and a granular pull-zone model.
  • Light optimization (resize + format auto) is enough — no BlurHash, no palette extraction, no metadata API needed.
  • Cost-per-transform at scale is the axis that matters most.
// SIDE BY SIDE

img apis vs Bunny

Compared on billing shape and feature coverage — line by line, claim by claim.

// comparison matrix2 vendors
// feature
oursimg apis
Bunny
Mid-tier billing modelflat plan, bandwidth bundledflat add-on per pull zone
Transforms at mid-tierflat credit allowanceunlimited optimization, bandwidth on top
Palette + BlurHash + metadata in one /info call
Color pairs with WCAG contrast
Smart gravity (face + entropy)
Background removal
BlurHash decode endpoint (renders to PNG/JPEG)
1-year immutable transform cache
Edge POPs serving you300+100+
Free trial200 cr / 7d14d capped
Bill is one line (no shared pool with bandwidth & storage)
Same URL never billed twice
Custom domain on cheapest plan

Spotted something off? tell us →

// FORMAT NEGOTIATION

Same negotiation, beyond the optimize step.

Bunny's Optimizer auto-negotiates AVIF and WebP at the edge — and so does img apis with format=auto. Same physics, same per-Accept negotiation. The wedge sits in everything else the URL can do: BlurHash, palette, idempotent billing.
Trail · SS24 hero77%
jpeg
146KB
webp
58KB
avif
33KB
Linen hero78%
jpeg
130KB
webp
50KB
avif
28KB
Bloom hero78%
jpeg
138KB
webp
53KB
avif
31KB
One URL · format=auto · cached one year, immutable.
// BEYOND OPTIMIZE

Optimization plus everything /info returns.

Bunny's Optimizer resizes, recompresses and reformats — that is the whole product surface. img apis adds /info on top: dimensions, a WCAG-paired palette and a BlurHash string, all in one round-trip with a 24-hour edge cache.
// THE INVOICE

One line. Bandwidth included.

This is the part nobody reads until invoice day. Bunny meters identical URLs every refresh — cache reads count as bandwidth, so a popular product image is charged perpetually. img apis is idempotent: the same URL deducts credits once per month, period.
json·Bunny · what you actually get billed for
{
  "Image Optimizer":                   "flat add-on, per pull zone",
  "CDN Volume bandwidth":              "metered per GB",
  "Edge Storage":                      "metered per GB",
  "Cache-miss revalidation":           "metered with bandwidth",
  "Identical URLs billed twice?":      true,
  "/info bundle, /grid, auto-mark":    "not bundled"
}
json·img apis · transform only, idempotent billing
{
  "Monthly plan":                      "flat — one line item",
  "Transform call":                    "1 credit",
  "Info call (palette + BlurHash)":    "0.5 credit",
  "Bandwidth":                         "bundled flat (CF edge, 300+ POPs)",
  "Identical URLs billed twice?":      false
}
// READY TO COMPARE FOR REAL

Ship faster than Bunny.

200 credits free for 7 days. No card, no SDK to pin — paste a URL, watch it work.