Portfolio Project Ideas Using Marketing Data

Ian Klosowicz

Marketing data is one of the best sources for a data analyst portfolio project because every company has it and every company wants it explained. A good marketing project answers a question like "which channel is worth the money," shows real SQL, and ends with a budget recommendation. This post gives you 8 project ideas, where to find the data, the metrics to define up front, and how to write each one up.

You need 1 finished project, not all 8. Pick the idea closest to the jobs you want and build that one properly.

Table of Contents

My first data role was marketing analytics, and it ran on Google Sheets and BigQuery. I'd spent 5 to 6 months learning Python first, and the job needed none of it. What it needed was SQL, spreadsheets, and the ability to explain what a campaign number meant. I had no portfolio site, only 3 project links on my resume: 2 Tableau Public dashboards and 1 Power BI project. A marketing project built on the same kind of questions would have fit right in.

Are marketing projects good for an analyst portfolio?

Yes, especially if you want a marketing analytics role or any role that touches customers. A marketing project works when it has 3 parts:

  • A decision to inform. "Where should the next $10,000 of ad budget go?" is a decision. "Marketing dashboard" is not.
  • Real analysis. Joins, aggregations, and a clear metric definition, not just a chart of clicks.
  • A recommendation with caveats. What to do, and what the data can't prove.

A hiring manager reading it should be able to say what you'd do on the first week of the job. That's the test. What a marketing analyst does shows the work this kind of project mirrors.

Why marketing data works

Marketing data has 4 advantages for a portfolio:

  1. It maps to business outcomes. Spend, signups, and revenue are numbers every stakeholder understands.
  2. It needs the full skill set. You join tables, define metrics, handle dates, and tell a story.
  3. It's relevant to many roles. Retail, software, finance, and healthcare companies all run campaigns.
  4. It practices the part people skip. Marketing numbers are messy, so you have to state your assumptions, and that's what interviewers want to see.

It also helps career changers. If you're coming from a marketing job, a project like this turns your past experience into evidence. Switching from marketing to data analytics covers how to use that background.

Where to find marketing data

Real company data is private, so you'll use public or sample datasets and check each one's terms before you republish anything. These are common starting points:

  • Kaggle. Search for marketing campaign, customer segmentation, and online retail datasets, usually CSV files.
  • The UCI Machine Learning Repository. It hosts a bank marketing dataset built from phone campaigns.
  • The Google Analytics sample ecommerce dataset in BigQuery. Public web traffic and purchase data, good for funnels and channels.
  • Your own data. A side project, a small business, or a newsletter can give you real traffic and campaign numbers.
  • Synthetic data. You can generate a fake but realistic campaign table if you label it clearly as made up.

Pick one dataset and stay with it for the whole project. If you build your own synthetic data, say so at the top of the write-up so nobody mistakes it for real results.

The metrics to define first

Define your metrics before you write a query, because every marketing result depends on how you count. Write each definition in the project so a reader can check your math.

These are the ones that come up most:

  • Conversion rate. Conversions divided by visits or leads, with the denominator stated.
  • CTR (click-through rate). Clicks divided by impressions.
  • CAC (customer acquisition cost). Spend divided by new customers acquired.
  • ROAS (return on ad spend). Revenue attributed to ads divided by ad spend.
  • Retention. The share of customers who come back after a given period.

Two analysts can calculate the same metric differently and both be reasonable. Showing your definition is what separates a careful analyst from someone who copied a formula.

8 marketing project ideas

Here are 8 ideas, each framed as a question a marketing team would ask:

  1. Channel performance. Which channels bring customers at the lowest cost, and which bring the most revenue?
  2. Funnel drop-off. Where do visitors leave between landing, signup, and purchase?
  3. Email campaign test. Did version B of an email beat version A, and is the gap real or noise?
  4. Customer segmentation. Which customers buy most recently, most often, and for the most money?
  5. Attribution comparison. How do results change if you credit the first touch versus the last touch?
  6. Cohort retention by channel. Do customers from one channel stay longer than from another?
  7. Budget allocation. If you had to move 20% of the budget, where should it go?
  8. Seasonality. When do traffic and conversions peak, and how should campaign timing change?

Ideas 1, 2, and 4 are the best starting points. They use data that's easy to find and they produce a clear recommendation. Ideas 5 and 6 are stronger signals once your SQL is comfortable with window functions.

Two SQL examples to start with

Both use simple tables. They show the kind of SQL a marketing analytics team writes every week.

First, spend, customers, and CAC by channel, which uses a join and an aggregation:

SELECT c.channel,
  SUM(s.spend) AS total_spend,
  COUNT(DISTINCT cu.customer_id) AS new_customers,
  SUM(s.spend) / NULLIF(COUNT(DISTINCT cu.customer_id), 0) AS cac
FROM channel_spend s
JOIN channels c ON c.channel_id = s.channel_id
LEFT JOIN customers cu ON cu.channel_id = c.channel_id
GROUP BY c.channel;

Watch the join in that query. Joining spend to customers can multiply the spend rows, so check the totals against the source table before you trust the result. It's a common bug, and finding it is worth mentioning in your write-up. Second, each customer's first touch, which uses a window function:

SELECT customer_id, channel, touch_date
FROM (
  SELECT customer_id, channel, touch_date,
    ROW_NUMBER() OVER (
      PARTITION BY customer_id ORDER BY touch_date
    ) AS rn
  FROM touches
) t
WHERE rn = 1;

Flip the sort to descending and you get last touch, which is the whole attribution comparison. If joins or window functions feel shaky, start with SQL joins explained and SQL window functions explained. Date-heavy ideas like seasonality lean on SQL date and time functions.

How to write it up

A project without a write-up is just a file. Spend as much time on the explanation as on the analysis, because that's what a hiring manager actually reads.

A good write-up covers these 6 parts:

  1. The decision. One sentence, framed for a marketing lead.
  2. The data. Where it came from, how many rows, and whether any of it is synthetic.
  3. The metric definitions. Exactly how you counted conversions, CAC, or ROAS.
  4. The finding. The answer in plain language, with 1 or 2 charts.
  5. The caveats. What the data can't prove, like causation or missing channels.
  6. The recommendation. What the team should do with the budget or timing.

Keep it to about 1 page. How to write a project README has the structure, presenting a boring project result helps when your finding is modest, and where to host your data analyst portfolio covers where to put it.

Mistakes that make marketing projects forgettable

Most marketing projects stop at a dashboard of vanity numbers. These are the mistakes to avoid:

  • Reporting clicks and impressions only. They don't say whether the campaign made money.
  • Hiding the metric definition. If the reader can't check your math, they can't trust it.
  • Claiming causation from correlation. A channel that looks best may simply reach people who were going to buy anyway.
  • Ignoring sample size. A test with 40 conversions can't prove much, so say so.
  • No recommendation. A project that ends with a chart leaves the decision to the reader.

The attribution one trips up the most people. Last-touch credit favors the final channel a customer saw, and first-touch favors the first. Neither is the truth. Showing both and explaining the difference is the whole point of idea 5.

When a marketing project is the wrong choice

Skip it if the jobs you want sit in a different industry. A finance analyst role is better served by a finance project, and portfolio projects for finance covers that. Retail and ecommerce roles overlap with marketing, so portfolio projects for retail and ecommerce is a good companion.

If you're deciding how many projects to build, how many portfolio projects you need has the answer. And if you're worried a marketing project will look generic, portfolio projects that don't look like tutorials explains how to avoid that.

The 90 days at Analyst Hive include project work with a clear structure, so you finish with something worth linking on your resume.

What people ask about marketing data portfolio projects

Is a marketing project good for a data analyst portfolio?

Yes. It shows SQL, metric definitions, and business thinking in one project. It works best when it informs a decision, like where to put budget, and ends with a recommendation. That combination is what hiring managers look for in analyst candidates.

Where can I get marketing data for a portfolio project?

Start with public datasets on Kaggle, the UCI repository, and the Google Analytics sample ecommerce dataset in BigQuery. You can also use your own site or newsletter numbers, or build a clearly labeled synthetic dataset. Check each source's terms before you republish anything.

Do I need marketing experience to build a marketing project?

No. You need to understand a few metrics, like conversion rate, CAC, and ROAS, and define them clearly. Those take an afternoon to learn. The analysis skills are the same ones you'd use on any business dataset.

Which marketing metrics should I include?

Include the ones tied to a decision: conversion rate, CAC, ROAS, and retention. Skip long lists of metrics that don't connect to a recommendation. State how you calculated each one so the reader can check your work.

Do I need Python for a marketing analytics project?

No. SQL and a BI tool like Tableau or Power BI cover most of these ideas. Python helps for statistical tests or API pulls, and it's optional for an analyst portfolio.

How long should a marketing portfolio project take?

A focused project takes a few weekends. Spend the first on the data and metric definitions, the second on the analysis and dashboard, and the third on the write-up. If it takes much longer, the question was probably too broad, so narrow it down.

If you want a day-by-day plan for building projects like this, join Analyst Hive and work through it in order.