1. A method comprising: sending, from a user device, a request to access at least one image from a content management system; receiving at the user device, a first version of the at least one image; determining one or more past actions taken with respect to the at least one image based on metadata associated with the at least one image; identifying, by at least one processor on the user device, an expected use of the at least one image on the user device based on the one or more past actions, the expected use corresponding to a second version of the at least one image; and causing, based on the expected use, a download of the second version of the at least one image from the content management system to the user device, wherein the second version of the at least one image comprises a higher resolution than the first version of the at least one image.