New

The Image CDN that actually works for developers

Set up in 60 seconds, scale forever. Run locally with Docker, serve globally with our CDN. Predictable pricing, no surprise bills.

Free tier available
No credit card required
dashboard.icefiery.com
Dashboard Screenshot

Smart Uploads

24-hour auto-expiry prevents dangling images

Simple API

Upload, transform, and serve images with ease

Predictable Pricing

No pricing cliffs or confusing credit systems

Global CDN

Fast image delivery worldwide with edge caching

Local Development

Local Development That Matches Production

Run identical infrastructure locally with our Docker image. No internet required, same API endpoints as production.

terminal
docker run -d \
-p 5100:5100 \
ghcr.io/icefiery-com/icefiery:latest
✓ Container started successfully
✓ Ready in 2.4s
# Dashboard: http://localhost:5100
# API: http://localhost:5100/api/v1
# CDN: http://localhost:5100/res

Zero Internet Dependency

Develop completely offline. No external API calls required during development.

Production Parity

Identical API endpoints and behavior between local and production environments.

Team Consistency

Every team member runs the exact same infrastructure locally.

Developer Experience

API That Just Works

Simple, predictable API that works with any framework. No complex SDKs to learn.

Smart Temporary Uploads

24-hour auto-expiry prevents dangling images from form abandonment. Perfect for handling user uploads in forms.

Flexible Metadata

Update image metadata anytime, unlike S3's immutable metadata. Store and update custom metadata with your images.

Built-in Transformations

Transform images on-the-fly with URL parameters. Automatic WebP conversion, smart resizing, and global CDN caching.

App.jsx
const uploadImage = async (file) => {
const res = await fetch(
'https://api.icefiery.com/v1/upload-temporary-image/upl_07c1b6044f944e6f8c160',
{
headers: {
'X-Original-Filename': file.name,
},
body: file,
}
);
const { imageUrl } = await res.json();
return imageUrl;
};
// Display with auto-resize
function ImagePreview({ imageId }) {
const placeholderImage = 'img_12346798.png';
return (
<img src={`https://res.icefiery.com/${imageId || placeholderImage}?width=200&height=200&format=webp`} />
);
}
Transparent Pricing

Pricing That Makes Sense

Start free, scale smoothly. Transparent monthly pricing with no surprise bills or confusing credit systems.

Select your image volume

Drag the slider to see pricing for different usage levels

50
500
1,500
4,500
13,500
40,500
$15/month
500 images
Everything you need to scale your image infrastructure
  • 500 images per month
  • 2,500 transformations per month
  • 40GB bandwidth per month
  • Global CDN delivery
  • On-the-fly image transformations
  • Docker local development

Need even more? We offer custom pricing that scales linearly with your needs.

Contact us for custom pricing

Perfect For Your Use Case

From social features to e-commerce, Icefiery handles your image needs

Social Features
Profile pictures, user-generated content, social media posts
Content Management
Blog images, event headers, marketing materials
E-commerce
Product catalogs, review photos, variant images
SaaS Applications
Team avatars, document thumbnails, dashboard assets
Cloud Platform

Start Building in Minutes

Three simple steps to get your image infrastructure running

1

Sign up free in 60 seconds

Create your account quickly. No credit card required for the free tier.

2

Upload an image from a web page

Use our simple API to upload images directly from your web application.

const uploadImage = async (file) => {
const res = await fetch(
'https://api.icefiery.com/v1/upload-temporary-image/upl_07c1b6044f944e6f8c160',
{
headers: {
'X-Original-Filename': file.name,
},
body: file,
}
);
const { imageUrl } = await res.json();
return imageUrl;
};

Save temporary uploads with your private API key after form submission:

const saveImage = async (imageId) => {
const res = await fetch(
`https://api.icefiery.com/v1/save-temporary-image/${imageId}`,
{
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
},
}
);
return res.json();
};
3

Serve the image from our CDN with transformations

Apply transformations on-the-fly by adding parameters to the image URL.

function ImagePreview({ imageId }) {
const placeholderImage = 'img_12346798.png';
const url = `https://res.icefiery.com/${imageId || placeholderImage}?width=400&height=300&format=webp`;
return (
<img src={url} alt="Transformed image" />
);
}
Local Development

Develop Locally with Docker

Get started with local development in two easy steps

1

Start our Docker container

Run a single command to start the Icefiery container on your local machine.

docker run -d -p 5100:5100 ghcr.io/icefiery-com/icefiery:latest
2

Start uploading to your local instance

Upload and transform images using your local endpoints at http://localhost:5102.

View Docker documentation