On-the-fly image API

Set a parameter.
Ship the picture.

Point Refract at your image origin and shape every render from the query string. Chain a few parameters, watch the result change in the same frame — nothing re-uploaded, everything fetched on demand and cached at the edge.

https://demo.refract.dev/hero.jpg?w=1200&fm=auto&q=80
A single bright piece of citrus fruit on a clean pale surface — a sample render served by Refract.
hero.jpg?w=1200&fm=auto&q=80 — one source, one request, one render
Three moves

Transform, optimize, deliver — each a color you learn.

Every capability owns one mechanic and one hue. Learn the color once and you know what it does everywhere on the page.

A smooth colorful ceramic bowl pushed to one side of a bright studio background.

Transform

Ten chainable URL parameters resize, crop, rotate, and blur on the fly. Smart crop keeps the subject in frame, so a square thumbnail never loses the point.

w=1200
A calm high-key gradient of midday sky with a single small bright cloud low to one side.

Optimize

fm=auto negotiates AVIF, WebP, or JPEG from the request's Accept header — the right format for every browser, an average 62% smaller than the source JPEG.

fm=auto
An overhead view of a smooth curving path crossing bright open ground.

Deliver

Every render is served from 41 edge locations and cached close to your users. Cached responses land in a median 21 ms.

41 edge locations
Live demo

Build a transform by tapping.

Press the tiles, nudge the steppers, drag the blur. The result frame and the URL below answer in the same frame — this is exactly what the query string does.

Source
A single ripe apple on a plain pale tabletop, off-center — the untouched source image.
Result
The same apple, re-rendered live as you change the parameters.
fit resize mode
crop crop strategy
rot rotation, degrees
w width, px
600 px
h height, px
400 px
blur gaussian blur, 0–100
0
bg contain fill — active only when fit=contain

Negotiated fm, q, and dpr are content-negotiated from the request, not tapped here.

The scoreboard

Four numbers behind every render.

62% average payload reduction vs. source JPEG
21 ms median cached response
98.6% cache hit ratio
99.95% uptime SLA on the Scale plan

Ready to shape your first image?

Create a key, connect your origin, and request a transform in three steps. No re-uploads, no build step, no waiting.

Start building