Regork regularly offers discounts through retailer and manufacturer promotions, but not all discounts result in higher customer spending. Understanding the effectiveness of different discount strategies can help optimize pricing and promotional campaigns to maximize revenue while maintaining profit margins.
This analysis addresses: 1. How do different types of discounts impact overall revenue? 2. Which product categories benefit most from discount strategies? 3. How does customer demographic influence discount effectiveness?
By optimizing discount strategies, Regork can: - Increase revenue without excessive margin losses. - Design targeted promotions to maximize customer engagement. - Reduce ineffective discounting practices that do not lead to higher spending.
Utilizing the following datasets from Complete Journey: - Transactions: Purchase records including discount details. - Coupons: Information on manufacturer and retailer discounts. - Demographics: Household data to analyze discount effectiveness across different customer segments.
# Load necessary datasets
transactions <- get_transactions()
# Merge transaction data with coupon and demographic information
df <- transactions %>%
left_join(products, by = "product_id") %>% # Include product categories
left_join(coupons, by = "product_id") %>%
left_join(demographics, by = "household_id", keep = TRUE) %>%
mutate(total_discount = replace_na(retail_disc, 0) + replace_na(coupon_match_disc, 0))
discount_revenue <- df %>%
mutate(has_discount = ifelse(total_discount > 0, "Discount Applied", "No Discount")) %>%
group_by(has_discount) %>%
summarise(total_sales = sum(sales_value, na.rm = TRUE))
# Bar chart for revenue impact of discounts
ggplot(discount_revenue, aes(x = has_discount, y = total_sales, fill = has_discount)) +
geom_bar(stat = "identity") +
labs(title = "Impact of Discounts on Total Revenue",
x = "Discount Applied", y = "Total Revenue") +
theme_minimal() +
scale_y_continuous(labels = scales::comma)
discount_products <- df %>%
filter(total_discount > 0) %>%
group_by(product_category) %>%
summarise(total_discounted_sales = sum(sales_value, na.rm = TRUE)) %>%
arrange(desc(total_discounted_sales)) %>%
head(10)
# Bar chart for product categories benefiting from discounts
ggplot(discount_products, aes(x = reorder(product_category, -total_discounted_sales), y = total_discounted_sales, fill = product_category)) +
geom_bar(stat = "identity") +
labs(title = "Top Product Categories Benefiting from Discounts",
x = "Product Category", y = "Total Sales with Discounts") +
theme_minimal() +
coord_flip() +
scale_y_continuous(labels = scales::comma)
discount_demographics <- df %>%
filter(total_discount > 0, !is.na(age), !is.na(income)) %>%
group_by(age, income) %>%
summarise(total_spent_with_discounts = sum(sales_value, na.rm = TRUE))
# Heatmap for demographic response to discounts
ggplot(discount_demographics, aes(x = age, y = income, fill = total_spent_with_discounts)) +
geom_tile() +
labs(title = "Demographic Response to Discount Strategies",
x = "Age Group", y = "Income Group") +
scale_fill_gradient(low = "lightblue", high = "darkblue", labels = scales::comma) +
theme_minimal()
This report analyzed how different discount strategies impact customer spending and revenue, helping Regork optimize promotions for better profitability. By merging transaction data with coupon and demographic details it was possible to analyze the impact of discounts on revenue, and assess customer responsiveness to price reductions.