Skip to content

Incremental Budget Analysis

OBJECTIVE:

  • To understand the impact that a late injection of substantial funds (ex. JMF) has on overall sales volume and marketing efficiency

METHODS:

  • Analyzing post fund-injection period (5 weeks out - 0 weeks out) with the previous period (11 weeks out - 6 weeks out)
  • Comparing TSM 350 data with all 2023 completed Cup Series campaigns that did not deploy JMF/additional late funds

METRICS:

  • Total Revenue
  • Revenue/Marketing Spend (ROI)
  • Number of Accounts Generated
  • CPA (cost-per-account generated)

DATA SELECTIONS:

  • PowerBI: Ticket Sales (Weekly) Report
  • Digital Marketing Spend (Weekly, inclusive of all management cost)

INITIAL FINDINGS

  • Late, substantial budget increase deployed 5 Weeks Out has a negative impact on marketing efficiency metrics (return on marketing investment, cost to acquire a new account)
  • However, increasing spend during this window has proven to show a significant lift in total revenue volume and accounts generated

AREAS OF FURTHER INVESTIGATION

  • Relationship between digital activity (impressions served, total spend) and PowerBI revenue/accounts generated to assess ultimate sales impact and identify an accurate point of diminishing return
  • Work to create a predictive model to help forecast potential sales impact that a specific budget increase could have during a designated timeframe

import pandas as pd
sonoma_spend_revenue = pd.read_csv('sonoma_spend_revenue.csv')
sonoma_spend_revenue
Hidden output
import pandas as pd
jmf_spend_revenue = pd.read_csv('jmf_spend_revenue.csv')
jmf_spend_revenue
Hidden output
import pandas as pd
all_jmf_spend_revenue = pd.read_csv('all_jmf_spend_revenue.csv')
all_jmf_spend_revenue
Hidden output
sonoma_spend_revenue2 = sonoma_spend_revenue.groupby('Weeks Out').agg({'Revenue': 'sum', 'Spend': 'sum'})
sonoma_spend_revenue2['Revenue / Spend'] = sonoma_spend_revenue2['Revenue'] / sonoma_spend_revenue2['Spend']
sonoma_spend_revenue2.dropna(inplace=True)
sonoma_spend_revenue2
Hidden output
sonoma_spend_accounts = sonoma_spend_revenue.groupby('Weeks Out').agg({'# of Accounts': 'sum', 'Spend': 'sum'})
sonoma_spend_accounts['CPA (Accounts)'] = sonoma_spend_accounts['Spend'] / sonoma_spend_accounts['# of Accounts']
sonoma_spend_accounts.dropna(inplace=True)
sonoma_spend_accounts
Hidden output
jmf_spend_revenue2 = jmf_spend_revenue.groupby('Weeks Out').agg({'Revenue': 'sum', 'Spend': 'sum'})
jmf_spend_revenue2['Revenue / Spend'] = jmf_spend_revenue2['Revenue'] / jmf_spend_revenue2['Spend']
jmf_spend_revenue2.dropna(inplace=True)
jmf_spend_revenue2
Hidden output
jmf_spend_accounts = jmf_spend_revenue.groupby('Weeks Out').agg({'# of Accounts': 'sum', 'Spend': 'sum'})
jmf_spend_accounts['CPA (Accounts)'] = jmf_spend_accounts['Spend'] / jmf_spend_accounts['# of Accounts']
jmf_spend_accounts.dropna(inplace=True)
jmf_spend_accounts
Hidden output
all_jmf_revenue = all_jmf_spend_revenue.groupby('Weeks Out').agg({'Revenue': 'sum', 'Spend': 'sum'})
jmf_spend_revenue2['Revenue / Spend'] = jmf_spend_revenue2['Revenue'] / jmf_spend_revenue2['Spend']
jmf_spend_revenue2.dropna(inplace=True)
jmf_spend_revenue2
Hidden output
all_jmf_spend_accounts = all_jmf_spend_revenue.groupby('Weeks Out').agg({'# of Accounts': 'sum', 'Spend': 'sum'})
all_jmf_spend_accounts['CPA (Accounts)'] = all_jmf_spend_accounts['Spend'] / all_jmf_spend_accounts['# of Accounts']
all_jmf_spend_accounts.dropna(inplace=True)
all_jmf_spend_accounts
Hidden output