1. A method, comprising: instantiating a virtual resource; in response to instantiating the virtual resource, generating a snapshot image comprising a base configuration of the virtual resource; receiving a request to de-provision the virtual resource; in response to receiving the request to de-provision the virtual resource, determining, using a processor, whether the base configuration of the virtual resource is in a set of highly utilized virtual resource configurations based on whether a frequency with which the base configuration of the virtual resource is requested is above a particular threshold; and in response to determining that the base configuration of the virtual resource is in the set of highly utilized virtual resource configurations: reverting the virtual resource to its base configuration using the snapshot image; and allocating the virtual resource to a resource pool.