1. An apparatus, comprising: a processor and a memory communicatively connected to the processor, the processor configured to: receive historical application data for a cloud-based application, wherein the historical application data comprises historical application demand data for the cloud-based application and historical application capacity data for the cloud-based application; determine a set of constraints associated with the cloud-based application; determine perfect application capacity data for the cloud-based application based on the historical application demand data for the cloud-based application and the set of constraints associated with the cloud-based application, wherein the perfect application capacity data comprises at least one of economically perfect application capacity data for the cloud-based application or technically perfect application capacity data for the cloud-based application; and identify, based on at least a portion of the perfect application capacity data for the cloud-based application and at least one of the historical application demand data for the cloud-based application or the historical application capacity data for the cloud-based application, an opportunity to improve elastic capacity management for the cloud-based application.