Imager X

Imager is a Craft plugin for doing image transforms, optimizations and manipulations. It does all the things that the built-in image transform functionality do – and so much more.


  • The most efficient template syntax for doing a bunch of image transforms in one go.
    {{ craft.imager.transformImage(myImage, [{ width: mySmallestSize }, { width: myBiggestSize }], { ratio: 16/9, fillTransforms: true }) | srcset }}
  • Transforms are completely file based, no database queries needed.
  • Transform Assets (local and cloud-based ones), local images, external images, or even the transformed images themselves.
  • Optimize your transformed images with jpegoptim, jpegtran, mozjpeg, optipng, pngquant, gifsicle, TinyPNG, Imagemin or Kraken. Or, write your own optimizer interface for whichever post-optimization tool or service you want.
  • Upload and serve transforms from Amazon S3 or Google Cloud Storage. Or, write your own storage interface to use whichever cloud service you want. (PRO)
  • Auto generate transforms on Asset upload or when saving elements. (PRO)
  • Console commands for batch generating transforms. (PRO)
  • A nifty utility for batch generating transforms. (PRO)
  • GraphQL support. (PRO)
  • Offload all your transforms to Imgix. Or, write your own transformer to use whichever method/service you'd like. (PRO)
  • Support for interlaced/progressive images.
  • Support for animated gifs.
  • Support for saving images in WebP format.
  • Support for saving images in AVIF format.
  • Support for fallback images when Assets are missing, or completely replacing all images with a placeholder one (especially useful in development).
  • If you know the aspect ration you want, you don't have to calculate the extra height/width.
    { width: 800, ratio: 16/9 }
  • New letterbox resize mode.
    { width: 600, height: 600, mode: 'letterbox', letterbox: { color: '#000', opacity: 0 } }
  • New croponly mode. To crop, not resize.
    { width: 600, height: 600, mode: 'croponly', position: '20% 65%' }
  • New cropZoom parameter for when you want to get a little closer.
    { width: 600, height: 600, mode: 'crop', position: '20% 65%', cropZoom: 1.5 }
  • Basic image effects, including grayscale, negative, blur, sharpen, gamma and colorize.
    { effects: { sharpen: true, gamma: 1.4, colorize: '#ff9933' } }
  • Advanced image effects, including color blend, tint, clut, levels, sepia, contrast, modulate, normalize, contrast stretch, unsharp mask, posterize and many more (Imagick imagedriver only).
    { effects: { modulate: [100, 40, 100], colorBlend: ['rgb(255, 153, 51)', 0.5] } }
  • Your own choice of which resize filter to use. Speed vs. quality is up to you (Imagick imagedriver only).
  • Support for watermarks.
    { watermark: { image: logo, width: 80, height: 80, position: { right: 30, bottom: 30 }, opacity: 0.8, blendMode: 'multiply' } }
  • Get color information, dominant color and palette, from your images.
  • A bunch of color utilities for getting brightness, hue, lightness, percieved brightness, relative luminance, saturation, brightness difference, color difference and (puh!) contrast ratio.

Interested? Read the documentation to learn more! To play around with the effects, check out the playground app.

Upgrading from Imager 2.0?

Before upgrading, make sure you uninstall Imager 2.0 first, since there are conflicting dependencies.

Imager X is a drop-in replacement for Imager 2.0. All you need to do is copy over your config settings from your imager.php file to imager-x.php, and you're good to go!



Price includes 1 year of updates.
$29/year per site for updates after that.

  • Efficient templating
  • Completely file based
  • Transform everything
  • Optimize
  • Use cutting edge image formats
  • Enhance and manipulate
  • Color information and analysis
  • And much, much more...



Price includes 1 year of updates.
$59/year per site for updates after that.

  • All the features of Lite, plus...
  • Auto-generate
  • Console commands
  • Imgix and custom transformers
  • External storages
  • GraphQL support (beta)

Package Name

To install this plugin, search for its package name on the Plugin Store and click “Install”.


Report an issue