How tiny.pictures Optimizes Images in Real Time
Updated
tiny.pictures is an image processing CDN that applies resizing, cropping, size optimization, and other effects dynamically at request time, then delivers the result through edge locations worldwide. You don't pre-process anything: you point your image URLs at your tiny.pictures subdomain, and the service handles format conversion, scaling, and caching on the fly. This suits sites that serve images to many device sizes and want to cut CPU, disk, and bandwidth costs without building their own image pipeline.
What "real-time" means here
Traditional workflows generate every needed image size ahead of time and store each variant. tiny.pictures instead processes on demand:
- A request comes in for an image at a given size or effect.
- The service applies the transformation (resize, crop, optimize, effects) at that moment.
- The result is delivered, and cached so repeat requests don't redo the work.
Because there's no pre-processing step, you don't need to guess which sizes you'll need or maintain a library of variants.
The optimization steps
Dynamic manipulation
Resizing, cropping, size optimization, and other effects are applied on the fly. The site states no pre-processing is needed, which is what saves CPU power, disk space, and bandwidth on your side.
Automatic format conversion
Images are automatically converted to WebP, and delivery uses HTTP/2 with TLS encryption. This is included by default rather than something you configure.
Device-appropriate delivery
The same source image is served at the dimensions and quality appropriate to each device, so a phone doesn't download a desktop-sized file.
Origin protection
Unlike typical CDN services that cache for a few hours, tiny.pictures keeps your images in a second caching layer for as long as you want. That reduces repeated load on your origin server.
The size difference in practice
The site's own example shows the effect of scaling and quality adjustment:
| Original | Served by tiny.pictures | |
|---|---|---|
| File size | 980 kB | 50 kB |
| Dimensions | 1,000 × 667 px | 575 × 384 px |
| Quality | 100% | 80% |
| Scaling | by CSS | by tiny.pictures |
The point isn't the exact numbers — it's that the browser receives a file roughly 95% smaller because the image is scaled and compressed server-side instead of being sent full-size and shrunk by CSS.
How you set it up
The registration form asks for three things:
- Your website — the web folder where your images live, e.g.
http://your.domain/images/. Your tiny.pictures subdomain maps to this. - Your user name — used to create your subdomain. Lowercase letters only, 3–32 characters.
- Your email — where the confirmation email with an auto-generated password is sent.
After that, you use the API and client libraries to request images at any size. The site notes no backend development is needed, which is aimed at frontend developers who want any image at any size available directly.
Plans and limits
Pricing is published on the site, with monthly and yearly options:
| Plan | Monthly | Yearly | Included |
|---|---|---|---|
| Hobby | €0/mo | €0/mo | 50k requests, 2 GB viewer traffic, 10k transformations |
| Startup | €49/mo | €44/mo | Increased included allowances |
| Business | €129/mo | €114/mo | — |
| Enterprise | €279/mo | €249/mo | — |
The free Hobby plan is described as enough processing power for a personal project, and the site suggests registering for it to try the API and libraries before scaling. Billing address details can be filled in later from your dashboard.
When this fits
Choose tiny.pictures if you want dynamic, request-time image optimization with automatic WebP conversion and don't want to run your own processing pipeline. The free plan lets you test the API and libraries against a real project before committing. If your needs are limited to a fixed set of pre-generated sizes and you already have that pipeline working, the main advantage — eliminating pre-processing — matters less.