Add options to an image’s address and Pawabase serves that version. The stored original is never changed, so you don’t generate thumbnails yourself.

Turn it on in Studio

  1. Services → Storage, open the bucket, then its settings.
  2. Find Image transformations and turn on Enable transformations.
  3. Choose Allowed output formats and Allowed fits, and set the largest sizes you’ll allow (see Bucket settings).
  4. Save.

Try it in Studio

  1. Open an image in the file browser, then the Transform tab.
  2. Under Try a transformation set Width, Height, Fit, Format, Quality and Rotate.
  3. The Result shows the picture and the exact address to use. Copy it.
The stored original is never changed. Settings here only build a URL. Only PNG, JPEG, WebP, GIF, AVIF and BMP images can be transformed; for anything else the tab says so. If transformations are off for the bucket, it tells you to enable them in the bucket’s settings.

Use it in your app

Resizing works for public URLs, signed links and share links. The read rule is checked on every request, so a variant is never shown to someone who couldn’t read the original.

Options

Photo orientation is applied. Animated images use their first frame. SVG is never rasterised. In Python, transform_url accepts width, height, fit (cover, contain, fill, inside, outside), format and quality. In TypeScript, append the options to a URL as above.

Limits and refusals

Everything is bounded by the bucket’s settings:

Sizes worth reusing

Each variant is generated once and cached, so reuse a few sizes: For sharp pictures on high-density screens:

Caching

Variants are cached per original and options, and are purged when you replace the original. Responses carry an ETag, and Vary: Accept when you use format=auto, so a CDN keeps the right version for each browser.

Bucket settings

The limits.

Links and URLs

Where the address comes from.