1. A computer-implemented method for printing a plurality of digital images, the method comprising: determining, by a computing device, an expected image processing time of each of the plurality of digital images; comparing, by the computing device, the expected image processing time of each of the plurality of digital images to a threshold amount of time, wherein the threshold amount of time is based at least in part on an amount of time to print an image using a print engine; performing, by the computing device, image processing on the plurality of digital images to produce a plurality of processed images, wherein the image processing is performed on the plurality of digital images in an order based at least in part on the expected image processing time of each of the plurality of digital images; and printing a first plurality of processed images using the print engine.