Set the URL. Get the image.
img2.site stores your images and renders every size, crop and format straight from the delivery URL. Upload once, then change the URL, not the file.
Public beta · Open to everyone Plans from $9/month. Built for public images.
Swap a segment. The proof re-renders from the new URL.
Photos by Frank-2.0 and Jebulon, CC0, via Wikimedia Commons. Rendered live on an img2.site delivery host.
The grammar fits on one line.
Operations are lowercase name/value segments, in any order, followed by /f/ and the file slug. A chain that does not parse answers 404 instead of guessing.
- resize
resize/{w}x{h}1 to 8192 px per side. Leave one side empty, as in 1024x, to keep the aspect ratio.
- fit
resize/{w}x{h}/fill · smart · fitCover the box and crop the centre, crop around the most interesting region, or fit inside the box.
- crop
crop/{x},{y},{w},{h}Take a pixel box from the source before resizing.
- format
format/webp · avif · jpeg · pngPick the output format. Without it, the stored format is kept (PNG for an SVG).
- quality
quality/{1-100}Encoder quality for JPEG, WebP and AVIF.
- preset
preset:{name}A named chain you define for the project, such as preset:large, so templates never spell out sizes.
- original
originals/f/{slug}The sanitized image as stored, with no transforms and no embedded metadata.
Upload once. Change the URL, not the file.
Upload
Send the file through the SDK or an upload session. It is sanitized and stored in your project.
Render
The first request for a chain renders it; after that it is served from cache. Output never carries embedded metadata.
Deliver
Put the URL in an img tag or srcset. Protected projects use signed URLs, and each project can limit which chains it allows.
import { createUploader, imageUrl } from "@img2site/sdk-client";
const uploader = createUploader({ endpoint: "/api/img2site" });
const { file_slug } = await uploader.upload(file);
imageUrl({ host: "my-store.i2scd.net", slug: file_slug, chain: "resize/800x/format/webp" });
// https://my-store.i2scd.net/resize/800x/format/webp/f/<file_slug>See recent activity and finalized totals in one dashboard. Straightforward plans, with no automatic overages.
Three plans, shared across your projects.
- Starter$9200,000 delivery credits
10 GB image storage - Builder$29750,000 delivery credits
50 GB image storage - Growth$792,500,000 delivery credits
200 GB image storage
Join the public beta.
Create an account, choose a plan and upload your first image. Questions first? Tell us what you are building and we will reply by email.
Get started