Why I Moved from Growth Hacking to Data-Driven Ecommerce Growth

In the fast-paced world of digital marketing, growth hacking has been a buzzword for years. However, over time, I found myself moving away from working with informational websites or growth hacking strategies and gravitating toward a more structured, data-driven approach with transactional websites—namely ecommerce stores and web apps that allow subscriptions.

The key difference between informational sites and transactional sites is the goal. Informational websites are designed to educate, inform, or entertain, often without a clear direct outcome for the user (beyond, perhaps, driving traffic and engaging users). However, when working with ecommerce stores or web apps with subscriptions, the goals are far more defined and quantifiable. These websites aim to sell a product or service, and the success of these efforts can be tracked with clear metrics: sales, subscription rates, user lifetime value (LTV), and churn.

Through my work as a data scientist, I’ve realised that data is the key to navigating the challenges of scaling transactional businesses. Data allows me to make decisions based on actual customer behaviour, rather than relying on assumptions or vague growth tactics. In this blog post, I’ll explain why I shifted focus, provide examples of challenges faced when working with informational websites, and show how data science can supercharge growth for ecommerce stores.

The Growth Hacking Dilemma: Why Informational Websites Fell Short

Growth hacking is often seen as a shortcut to rapid growth—utilising clever marketing tactics, creative ideas, and unconventional strategies to generate quick wins. When working with informational websites, this approach might work temporarily, but it quickly falls short when you realise that the key metrics for success are vague and difficult to measure. Here are a few challenges I encountered with growth hacking on informational websites:

1. Undefined Goals

On informational websites, the main goal is often to drive traffic and increase engagement. However, this is a slippery slope. How do you measure success? Is it by the number of views or clicks? Or maybe the time spent on the site? These metrics don’t always correlate to real business value. There's no tangible conversion like a sale or a subscription—just engagement, which is often too ambiguous to make well-informed decisions.

2. Difficulty in Predicting Customer Behavior

Informational websites typically lack detailed data on user actions. You might know how many people are reading an article or clicking a link, but you don’t know why they are doing it or how their behaviour affects your broader business goals. The inability to track meaningful metrics means you're left guessing about user intent.

For example, if a visitor reads an article about "how to start an online store," you might get some traction through social media or SEO, but there's no way to track how this person progresses down the sales funnel or whether they will ever convert.

3. Lack of Automated, Data-Driven Marketing

Growth hacking often involves manual, time-consuming experimentation with no clear feedback loop. You might try different ad creatives, copywriting styles, or viral marketing campaigns, but these efforts are rarely measured in a way that allows you to scale them effectively.

Transitioning to Transactional Websites: Why Data Matters

With transactional websites, such as ecommerce stores or subscription-based platforms, the goals are clearer and more concrete. The metrics you need to track are sales, subscriptions, and lifetime value (LTV), making it much easier to apply data science to analyse and optimise business processes.

I moved toward transactional websites because of their focus on quantifiable data. Here’s how data science helped me grow ecommerce stores:

1. Clear, Measurable Goals

The goals of an ecommerce store are well-defined—sell products. With this focus, I can measure success in terms of revenue, conversion rates, and customer lifetime value (LTV). These goals are aligned with the needs of the business, allowing me to optimise and track the impact of various strategies.

For instance, I can use Python and SQL to pull transaction data, segment customers by lifetime value, and identify high-converting campaigns. This clarity allows me to make data-driven decisions, targeting customers based on their purchasing history or engagement with specific products.

2. Data-Driven Insights into Marketing Campaigns

One of the most powerful things about working with transactional sites is the ability to track the ROI of marketing efforts. Using Python and tools like Google Analytics, I can track campaign performance by linking ecommerce data to marketing data from Google Ads, Facebook Ads, Mailchimp, and other channels.

By analysing the relationship between spend and sales, I can adjust bids, budget allocation, and target audiences. Here's an example of how Python can help automate this process:

Example: Using Python for Campaign Data Analysis

Using data analysis and automation, I built a system to optimise digital campaigns. I pulled sales and spend data into a Python script, which then calculated Return on Ad Spend (ROAS), Cost per Acquisition (CPA), and Conversion Rate. The script then flagged underperforming campaigns, which I could adjust quickly.

import pandas as pd

# Load data
ads_data = pd.read_csv('google_ads_data.csv')
sales_data = pd.read_csv('sales_data.csv')

# Merge data on the common 'campaign_id' column
merged_data = pd.merge(ads_data, sales_data, on='campaign_id')

# Calculate ROAS
merged_data['ROAS'] = merged_data['revenue'] / merged_data['ad_spend']

# Filter campaigns with ROAS below 3
underperforming_campaigns = merged_data[merged_data['ROAS'] < 3]

# Display underperforming campaigns
print(underperforming_campaigns)

This analysis helps ensure that marketing spend is allocated efficiently, based on real-time data, rather than gut-feelings or assumptions.

3. Automated Campaigns Measured in Terms of Success

Once I had the infrastructure in place to measure success, I began automating campaigns that could be adjusted based on data-driven insights. For example, email marketing campaigns could be triggered based on a customer's actions, such as abandoned carts, first-time purchases, or re-engagement after inactivity.

Example: Python for Automating Campaigns

Using Python, I integrated customer data from Rails Solidus and marketing platforms like Mailchimp to trigger personalised campaigns. I created a script that would automatically send emails to customers who abandoned their shopping carts:

import smtplib
from email.mime.text import MIMEText
import pandas as pd

# Load abandoned cart data
cart_data = pd.read_csv('abandoned_cart_data.csv')

# Email content
subject = "Don't forget your items!"
body = "It looks like you left some items in your cart. Complete your purchase today!"

# Set up the SMTP server
server = smtplib.SMTP('smtp.mailtrap.io', 587)
server.starttls()

# Send an email to customers with abandoned carts
for _, row in cart_data.iterrows():
    msg = MIMEText(body)
    msg['Subject'] = subject
    msg['From'] = "[email protected]"
    msg['To'] = row['email']

    server.sendmail("[email protected]", row['email'], msg.as_string())

# Close the server connection
server.quit()

This kind of automation ensures that marketing efforts are targeted and measurable, while freeing up time to focus on higher-level strategies.

Scaling with Machine Learning: Automating Google Ads Bids To take things a step further, I integrated machine learning to automate the bidding process for Google Ads. Instead of manually adjusting bids or budgets, I created machine learning models that adjust bids based on sales performance, profit margins, competition, and other factors.

Example: Python for Automated Google Ads Bidding

Here's an outline of how I used Python to adjust bids for Google Shopping campaigns. By analysing factors such as competition data, cost-per-click (CPC), and profit margins, the script optimised the bidding strategy to ensure maximum ROI.

import numpy as np
from sklearn.linear_model import LinearRegression

# Example data for sales and competition
data = pd.read_csv('google_shopping_data.csv')

# Feature columns: competition, cpc, profit_margin
X = data[['competition', 'cpc', 'profit_margin']]

# Target column: sales
y = data['sales']

# Train a linear regression model
model = LinearRegression()
model.fit(X, y)

# Predict optimal bid for each product
predicted_sales = model.predict(X)
optimal_bids = np.maximum(predicted_sales / 100, 0.10)  # Ensure a minimum bid

# Update bids on Google Ads using the predicted optimal bid
print(optimal_bids)

With this automation, bids are adjusted based on real-time data, and campaigns are optimised without human intervention. This is a massive improvement over traditional methods where teams manually analyse and adjust bids based on previous data.

Conclusion: A Data-Driven Approach Beats Traditional Marketing

By moving away from growth hacking and focusing on transactional websites like ecommerce stores, I was able to leverage data science to overcome growth challenges, make data-driven decisions, and scale businesses effectively. The shift to using Python for data analysis and machine learning to automate marketing campaigns has allowed me to create more targeted, measurable, and scalable strategies.

As a result, my marketing efforts are now far more efficient than traditional methods, where marketing teams manually evaluate and adjust campaigns. The competitive advantage lies in the ability to optimise in real-time, making data-driven decisions that outpace traditional marketing teams using slower, less efficient approaches.

This is the future of ecommerce growth, where data science, automation, and machine learning combine to create a more effective, scalable marketing approach.