Pricing
By default, all users are on the Images Free plan. The Free plan includes access to the transformations feature, which lets you optimize images stored outside of Images, like in R2.
The Paid plan allows transformations, as well as access to storage in Images.
Pricing is dependent on which features you use. The table below shows which metrics are used for each use case.
Use case | Metrics | Availability |
---|---|---|
Optimize images stored outside of Images | Images Transformed | Free and Paid plans |
Optimized images that are stored in Cloudflare Images | Images Stored, Images Delivered | Only Paid plans |
On the Free plan, you can request up to 5,000 unique transformations each month for free.
Once you exceed 5,000 unique transformations:
- Existing transformations in cache will continue to be served as expected.
- New transformations will return a
9423
error. If your source image is from the same domain where the transformation is served, then you can use theonerror
parameter to redirect to the original image. - You will not be charged for exceeding the limits in the Free plan.
To request more than 5,000 unique transformations each month, you can purchase an Images Paid plan.
When you purchase an Images Paid plan, you can choose your own storage or add storage in Images.
Metric | Pricing |
---|---|
Images Transformed | First 5,000 unique transformations included + $0.50 / 1,000 unique transformations / month |
Images Stored | $5 / 100,000 images stored / month |
Images Delivered | $1 / 100,000 images delivered / month |
If you optimize an image stored outside of Images, then you will be billed only for Images Transformed.
Alternatively, Images Stored and Images Delivered apply only to images that are stored in your Images bucket. When you optimize an image that is stored in Images, then this counts toward Images Delivered — not Images Transformed.
A unique transformation is a request to transform an original image based on a set of supported parameters. This metric is used only when optimizing images that are stored outside of Images.
For example, if you transform thumbnail.jpg
as 100x100, then this counts as 1 unique transformation. If you transform the same thumbnail.jpg
as 200x200, then this counts as a separate unique transformation.
You are billed for the number of unique transformations that are counted during each billing period.
Unique transformations are counted over a 30-day sliding window. For example, if you request width=100/thumbnail.jpg
on June 30, then this counts once for that billing period. If you request the same transformation on July 1, then this will not count as a billable request, since the same transformation was already requested within the last 30 days.
The format
parameter counts as only 1 billable transformation, even if multiple copies of an image are served. In other words, if width=100,format=auto/thumbnail.jpg
is served to some users as AVIF and to others as WebP, then this counts as 1 unique transformation instead of 2.
A retail website has 1,000 original product images that get served in 5 different sizes each month. This results in 5,000 unique transformations — or a cost of $2.50 per month.
Storage in Images is available only with an Images Paid plan. You can purchase storage in increments of $5 for every 100,000 images stored per month.
You can create predefined variants to specify how an image should be resized, such as thumbnail
as 100x100 and hero
as 1600x500.
Only uploaded images count toward Images Stored; defining variants will not impact your storage limit.
For images that are stored in Images, you will incur $1 for every 100,000 images delivered per month. This metric does not include transformed images that are stored in remote sources.
Every image requested by the browser counts as 1 billable request.
A retail website has a product page that uses Images to serve 10 images. If the page was visited 10,000 times this month, then this results in 100,000 images delivered — or $1.00 in billable usage.