Skip to content
SM: Budget Increase Analysis
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