예제 #1
0
    def ret_romi(self):
        """
        Return an estimate of how effective retention spend is, as a rough
        integer multiple of current investment.

        Returns 0 if the marketing investment in this period is $0.
        """
        return round(
            d_div_or_0(self.estimated_ret_revenue_gain, self.ret_investment))
예제 #2
0
    def romi(self):
        """
        Return an estimate of how effective marketing spend is, as a rough
        integer multiple of current investment.

        Returns 0 if the marketing investment in this period is $0.
        """
        acq_weight = d_div_or_0(self.acq_investment, self.investment)
        ret_weight = decimal.Decimal(1) - acq_weight
        weighted_acq_romi = mult_or_0(self.acq_romi, acq_weight)
        weighted_ret_romi = mult_or_0(self.ret_romi, ret_weight)
        return round(sum_or_0(weighted_acq_romi, weighted_ret_romi))
예제 #3
0
 def cost_per_exe(self):
     """Return the estimated cost to obtain a lease execution in this period."""
     return d_quant_currency(
         d_div_or_0(self.acq_investment, self.leases_executed))
예제 #4
0
 def cost_per_app(self):
     """Return the estimated cost to obtain a lease application in this period."""
     return d_quant_currency(
         d_div_or_0(self.acq_investment, self.lease_applications))
예제 #5
0
 def cost_per_tou(self):
     """Return the estimated cost to obtain an inbound tour in this period."""
     return d_quant_currency(d_div_or_0(self.acq_investment, self.tours))
예제 #6
0
 def cost_per_inq(self):
     """Return the estimated cost to obtain an inbound inquiry in this period."""
     return d_quant_currency(
         d_div_or_0(self.acq_investment_without_leasing, self.inquiries))
예제 #7
0
 def cost_per_usv(self):
     """Return the estimated cost to obtain a unique site visitor in this period."""
     return d_quant_currency(
         d_div_or_0(self.acq_investment_without_leasing, self.usvs))