Got Imager running great on my S3 hosted images. However it's cacheing transforms locally on my server. I'd like to save some disc space and have the transforms on S3 too, but struggling to get my config right. I've created a couple of folders on S3 (imagertransforms) and added the following to my imager config:

'imagerSystemPath' => 'imager/',
'imagerUrl' => 'https://myaddress.s3.amazonaws.com/_imagertransforms/',

Doesn't seem to be working though and not sure how best to debug. Am I missing something?

1 Answer 1


Imager will always create and store the transformed images locally in your imagerSystemPath, even if you choose to upload and serve them from an external storage. The files in that folder acts as the cache, so that Imager knows if a transform has been created or not.

Alternatively, Imager either would have to; 1) make a request for each transformed image to see if it existed in the external storage, or 2) have some other method of keeping track of what transforms has been made (DB, DB-like file, or something). Option 1) adds an insane amount of overhead, whereas 2) adds quite a bit of complexity and possibly some overhead (like Craft's built-in transforms, which requires DB queries). So I opted for speed and simplicity, and sacrificed disk space. :)

  • is this still the case with imager-x and craft 4?
    – Mark
    Dec 11, 2023 at 14:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.