---
title: "Supabase Storage v2: Image resizing and Smart CDN"
description: "Supabase Storage introduces image resizing, webhooks, and a Smart CDN, positioning them as components of an on-demand image delivery system. Resizing uses imgproxy and supports width, height, and contain, cover, or fill modes through JavaScript clients or direct Storage API requests; images are not enlarged beyond their original dimensions, and aspect ratio is preserved by default. The Smart CDN stores resized results using cache keys based on an Etag, tenant ID, bucket, and image name, while webhook-driven metadata updates propagate invalidations globally within about 60 seconds. Image Resizing is beta for Pro and Enterprise customers, with 100 transformed images per project at no additional cost and $5 per additional 1,000; self-hosting is free."
---

# Supabase Storage v2: Image resizing and Smart CDN

[Supabase](https://yomu.fyi/company/supabase) · fabrizio,inian · Dec 13, 2022

**Type:** Announcement

## Summary

Supabase Storage introduces image resizing, webhooks, and a Smart CDN, positioning them as components of an on-demand image delivery system. Resizing uses imgproxy and supports width, height, and contain, cover, or fill modes through JavaScript clients or direct Storage API requests; images are not enlarged beyond their original dimensions, and aspect ratio is preserved by default. The Smart CDN stores resized results using cache keys based on an Etag, tenant ID, bucket, and image name, while webhook-driven metadata updates propagate invalidations globally within about 60 seconds. Image Resizing is beta for Pro and Enterprise customers, with 100 transformed images per project at no additional cost and $5 per additional 1,000; self-hosting is free.

## Context

Supabase developers previously used client-side compression or external providers because Supabase Storage did not provide image resizing. Resized images can be expensive to generate, and the existing one-hour cache could continue serving stale or deleted images until expiration.

## Approach / What changed

The release adds on-demand resizing through imgproxy, JavaScript client transformations, and direct Storage API parameters. A Smart CDN uses globally distributed caching, metadata in a global KV store, and cache keys containing an Etag, tenant ID, bucket name, and image name. Storage webhooks notify a cache manager about object changes so updated metadata causes cache invalidation within about 60 seconds.

## Takeaways

- Image resizing supports contain, cover, and fill modes, follows CSS object-fit conventions, and never enlarges an image beyond its original dimensions.
- The image resizer and Storage API run as separate containers so they can scale independently for different resize and read workloads.
- Storage webhooks include object creation, update, deletion, move, copy, and metadata-update events; platform exposure was described as forthcoming, while self-hosted users could enable them with environment variables.

**Tags:** [Architecture](https://yomu.fyi/topic/architecture), [Caching](https://yomu.fyi/topic/caching), [Open Source](https://yomu.fyi/topic/open-source), [Performance](https://yomu.fyi/topic/performance)

- Source: [Supabase](https://supabase.com/blog/storage-image-resizing-smart-cdn)
- Source URL: https://supabase.com/blog/storage-image-resizing-smart-cdn
- Ingested by Yomu: 2026-08-29T01:15:25.680Z

[Read original post](https://supabase.com/blog/storage-image-resizing-smart-cdn)
