UStackUStack
imgproxy icon

imgproxy

imgproxy is a self-hosted image processing server for resizing, converting, and optimizing remote images on the fly with URL-based transformations.

imgproxy

What is imgproxy?

imgproxy is a standalone server for on-the-fly image processing. It resizes, crops, rotates, watermarks, filters, and converts remote images by applying processing parameters in the image URL, so applications do not need to pre-generate every image variant in advance.

It is designed to run on your own infrastructure and work with your own image storage. The product is available as an open-source core project, with a Pro version that adds advanced features such as additional processing options, preview generation for video, PDF, and Photoshop documents, and other enhancements.

Key Features

  • On-the-fly image resizing and conversion — Serve the exact image variant needed at request time instead of storing many prebuilt files.
  • URL-based processing options — Specify transformations and output format directly in the image URL, which fits CDN- and app-driven image delivery workflows.
  • Self-hosted deployment — Run imgproxy on your own server or infrastructure rather than sending images to a third-party SaaS service.
  • Security controls for image requests — Includes protection against image bombs, URL signing to prevent unauthorized transformations, and authorization via HTTP header to help protect cached delivery paths.
  • Broad image processing support — Covers resizing, cropping, rotating, watermarking, filters, color profile stripping, metadata stripping, PNG quantization, and smart cropping in the open-source edition.
  • Open-core and Pro feature split — The open-source version is on GitHub, while Pro adds advanced compression, dynamic watermarking, video previews, object detection, advanced smart cropping, and other premium features.

How to Use imgproxy

A typical setup starts by installing imgproxy as a Docker image or Linux package on your own machine or hosting environment. You then upload or point it at images in your storage, configure the server as needed, and request processed images by adding transformation parameters to the URL.

In practice, the application or frontend generates image URLs with the required size, format, and transformation settings, and imgproxy returns the processed result on demand.

Use Cases

  • Responsive image delivery for web applications — Generate different image sizes and formats at request time for layouts that need multiple variants.
  • Private infrastructure image processing — Keep image handling inside your own environment when you do not want to send assets to an external service.
  • Cost control for high-volume image workloads — Replace a managed image SaaS with a self-hosted server to keep processing and scaling decisions under your control.
  • Processing images with security requirements — Use signed URLs and request authorization to reduce abuse and unauthorized transformation requests.
  • Advanced media workflows — Use Pro features for tasks such as video previews, PDF or Photoshop document previews, advanced compression, and dynamic watermarks.

FAQ

Is imgproxy self-hosted? Yes. The source describes imgproxy as a self-hosted image-processing server that runs on your own infrastructure.

Do I need to pre-generate image variants? No. imgproxy is intended to process and convert images on the fly based on URL parameters.

Is there an open-source version? Yes. The product is open core: the open-source version is published on GitHub, and there is also a closed-source Pro version.

What formats and transformations are supported? The source mentions common formats such as JPEG, PNG, GIF, WebP, AVIF, and JPEG XL, along with resizing, cropping, rotating, watermarking, filters, and several optimization features.

How is imgproxy deployed? It is distributed as Docker images and Linux packages and is designed to run on virtually any hosting service or on a local machine.

Alternatives

  • Other self-hosted image processors — Similar tools that focus on running image transformations inside your own infrastructure, often with different configuration models or feature sets.
  • Managed image transformation services — SaaS platforms that handle resizing and conversion for you, usually with less operational control than a self-hosted server.
  • CDN image resizing features — Edge-based image processing offered by some delivery networks, which can simplify deployment but may not expose the same processing depth or deployment control.
  • Custom in-application image processing pipelines — Libraries or services built directly into an app stack, which may fit smaller workloads but require more application-side maintenance.