imgproxy: fast and secure on-the-fly image processing

Open Source version
Docker, Heroku or install from source
Learn about the Pro version
Advanced features, priority support
Resizeable image
Resizeable image
Resizeable image
Resizeable image
Resizeable image
Resizeable image

Why imgproxy?

Users generate a great deal of every application’s visual content: avatars, photos, product pictures. With different versions of your product tailored to different screens and devices, managing user uploads becomes a pain. Handling and resizing image files drains your storage, processing resources, and development time. imgproxy can solve this problem once and for all.

How most developers deal with images now:

  • Install an image processing tool on your servers.
  • Configure an image library or a plugin for your framework or programming language.
  • Upload user images: to the cloud or your own storage.
  • Optional: perform image resizing in a background processing queue.
  • Generate enough image versions to cater to all possible page designs and screen sizes…
  • … rinse and repeat for all the images you store every time you change your app’s design.

With imgproxy, everything is simple:

  • Install imgproxy.
  • Upload user images: directly to the cloud without any back-end processing—or to your own storage.
  • Request all images from imgproxy by putting desired parameters in the request URL. An image is processed on the fly and served directly.
  • That’s all!

Can be installed in your cluster

Image processing SaaS
  • Is a black box
  • that is controlled by someone, and
  • can be shut down one day.
  • It becomes expensive to scale, and
  • provides service as is; you can’t change it.
Own cluster
imgproxy in your cluster
  • Is transparent and
  • controlled by you only.
  • Costs depend on your infrastructure,
  • so you fully control scaling.
  • imgproxy is free and open source.

How it works

imgproxy resizes images on the fly and does not consume disk space. It reduces your costs and removes an expensive requirement for all saved images to conform to specific formats.

how imgproxy works
All the features you need, none you don't

imgproxy takes care of all your image needs, keeps your product slick

Compress and optimize:


imgproxy reduces the size of your images and delivers them to your customers fast.

Format conversion

imgproxy works with JPEG, PNG, GIF, SVG, and even HEIC and WebP formats.

Resizing & cropping

imgproxy can generate any size and crop type you might need for your transformed images.

Metadata operations

imgproxy uses existing image metadata to resize, rotate, and make automated changes.

Color fill

imgproxy converts images on transparent background into images with the selected background color to better fit your


Smart operations with SVG

imgproxy allows you to to perform SVG minification. With imgproxy, you can even inject custom CSS into SVG.


Advanced JPEG optimization

Squeeze your JPEGs to the last byte without compromising on quality.


Your own presets

imgproxy saves development time: create a named preset and use it as a shortcut throughout your app code.

Make images fit your design:

Image adjustment

imgproxy adjusts brightness, contrast, and saturation to make your images more vibrant.


Blur & sharpen filters

imgproxy can take care of blur—or sharpening—for you to make sure your images make the maximum impact.

Auto unsharpening

imgproxy automatically unsharpens your pictures on resize, so the image remains crisp.


Pixelate filter

imgproxy can pixelate images to hide sensitive information!



imgproxy allows you to add a logo or copyright text to images.

Custom watermarks

You can use different watermarks for different images specifying their URLs.

Embrace modern web formats:

Animated images processing

You can apply all imgproxy features to GIFs and animated WebPs.

Automatic conversion to WebP

imgproxy can automatically convert your image to WebP, if the user’s broswer supports it.

GIF to MP4 conversion

imgproxy can convert your GIFs to MP4s to reduce animations size dramatically.


Video thumbnail generation

imgproxy can turn every frame from a video file into a preview image.


Security out of the box

Mass processing of images is potentially dangerous, security-wise. So it is a good idea to consider preventive measures first. imgproxy deals with the most common attack vectors:

Image bomb

Image bombs

imgproxy checks image type and its “real” dimensions and cancels processing if the image is fake or its size is too big—protecting you from GB-sized surprises, waste of processor time and denial of service.



imgproxy protects image URLs with a cryptographic signature, so attackers cannot cause a denial-of-service attack by requesting multiple image resizes.



imgproxy supports authorization by an HTTP header. It can hide the origin of your image to protect it from attackers, while still allowing to serve images from a CDN or a caching server.

Fast as in “instant”

imgproxy uses probably the most efficient image processing library out there, libvips. It is screaming fast and has a tiny memory footprint. See the comparison with some well-known alternatives in our benchmark.

Speed comparison

Try imgproxy for free


See full documentation, or read our article for a step-by-step guide!

Resizeable image

Go further with our Pro version

For our most demanding customers, we can provide access to a Pro version of imgproxy that includes additional features and priority support for all your issues.

Build a custom solution

imgproxy development is backed by Evil Martians, a product development consultancy with more than ten years of experience in building successful applications. We are ready to consult your development team, adjust imgproxy to your needs, or even integrate it into your infrastructure.