How to build a data analyst portfolio from scratch (with 4 real examples)
Every data analyst job post asks for experience, and a portfolio is how you prove it before anyone has paid you. Here is the step-by-step way to build one from zero: which three projects to pick, how to document them, and where to publish so a recruiter can open your work in one click.
Building a data analyst portfolio from scratch feels like a chicken-and-egg problem: you need experience to get the job, and a job to get experience. A portfolio is the way out, because it lets you generate the evidence yourself. This guide walks through the whole build, from choosing the right three projects to publishing them where a recruiter can open your work in one click, with four real finished examples to calibrate against.
The build in five steps:
- Pick 3 projects that cover the analyst workflow
- Choose real, messy data
- Analyse toward a decision, not a chart dump
- Document decisions, not code
- Publish where one click opens everything
The one rule before you start
A portfolio is not a collection of everything you have ever coded. It is a curated argument that you can do a specific job. Before the first project, decide the role you are aiming at, because everything downstream, the projects, the tools, even the write-ups, should look like that job. If you are unsure whether you are aiming at analyst, scientist, engineer, or business analyst, settle that choice first: the projects for each differ more than the job titles suggest. And if you are still wondering whether the effort pays off at all, the honest answer is in is a data analyst portfolio worth it: yes, and more each year.
The build, step by step
- 1
Pick 3 projects that cover the workflow
Recruiters skim for coverage of the actual analyst workflow: pull data, clean and analyse it, communicate the result. Three projects, one per stage, prove the whole loop. Ten notebooks that all do the same exploratory analysis prove one stage ten times. If you need concrete briefs, steal from our 10 portfolio project ideas.
Questions to ask- One SQL project: query a real database toward a business answer
- One Python analysis: clean messy data and analyse it
- One dashboard: communicate a decision visually
- 2
Choose real, messy data
Clean teaching datasets hide the most hireable part of the job. Real data has duplicates, nulls, inconsistent labels, and dates in three formats, and handling that well is precisely what separates a working analyst from a course graduate. Work through a proper data cleaning checklist on each dataset and keep notes as you go: those notes become your write-up.
Questions to ask- Public sources: Kaggle, data.gov, BigQuery public datasets
- Avoid famous tutorial datasets like Titanic
- Messiness is a feature: it gives you decisions to show
- 3
Do the analysis toward a decision
Frame each project as a question a manager would ask: why did revenue dip in Q3, which channel has the worst retention, where is the funnel leaking. Then analyse toward the answer. For the SQL project this means joins, aggregation, and window logic in service of the question (our SQL joins cheat sheet covers the patterns you will lean on most). For the dashboard, pick chart types deliberately with the chart chooser rather than defaulting to whatever the tool suggests.
Questions to ask- Write the business question before the first query
- Every chart should earn its place
- End with a recommendation someone could act on
- 4
Document decisions, not code
This is the step most portfolios skip and the one recruiters notice most. Nobody reads your code top to bottom, but everyone reads the first screen of your README. Lead with the question and the finding, then explain your decisions: why you dropped those rows, why median instead of mean, why the result holds. A documented judgement call is worth more than a hundred lines of clever pandas.
Questions to ask- README: question, approach, finding, in that order
- Explain the judgement calls: what you removed, kept, assumed
- Write the one sentence a manager would repeat
- 5
Publish where one click opens everything
A recruiter gives you one click, not a scavenger hunt. The winning setup is a single public page with your name, target role, and projects, each linking to its write-up and code. GitHub alone works but has limits (we cover the details in a GitHub portfolio for data analysts); a hosted portfolio page in front of it is what turns repositories into a presentation.
Questions to ask- A public portfolio page as the front door
- Code on GitHub behind it
- Link it from your CV and LinkedIn headline
What "from scratch" actually looks like, finished
Calibration is everything when you have never seen a finished portfolio. These four are real, public pages, one per data path, each built from validated projects. Open the one closest to your target role and note the pattern: a handful of finished projects, clear titles, skills visible, everything one click deep.
The classic analyst build: SQL foundations, a Python analysis, a BigQuery and GA4 funnel project, and a Power BI dashboard. Exactly the three-stage coverage from step one, plus a capstone.
“World's best boss of business intelligence. I make SQL look easy and hard truths sound like a 'that's what she said.'”
Open the portfolio →The business-facing variant: SQL reporting, Excel and Power Query modelling, a KPI dashboard, and a business case. Lighter on Python, heavier on stakeholder deliverables.
“Business Analyst and professional stakeholder whisperer. I have a lot of feelings about the requirements doc.”
Open the portfolio →The modelling route: statistics, supervised learning, a time-series forecast, and a deep-learning project. Same documentation discipline, different deliverables.
“Data Scientist. I build models that predict things. Mostly they predict that Dwight will fall for it. He does.”
Open the portfolio →The infrastructure route: data modeling, dbt transformations, Airflow pipelines, and a Kafka streaming job. Proof of systems, not dashboards.
“Data Engineer. Fact: pipelines are like beets. Build them right and they never fail. Mine never fail.”
Open the portfolio →The mistakes that quietly sink first portfolios
Beyond finishing, watch for these: private repos (a portfolio nobody can open does not exist), write-ups that describe the code instead of the decision, tutorial datasets a recruiter has seen four hundred times, and a landing page with no target role on it. Each one is cheap to fix and expensive to leave.
Recruiters do not hire the person who learned the most. They hire the person whose work they can open.
Your first week, concretely
Do not start by designing the perfect portfolio. Start by finishing one small project. Pick a public dataset this week, write one business question at the top of a blank README, and answer it in SQL with a three-paragraph write-up. That single finished piece changes your momentum, because every project after it is an addition to something real rather than a step toward something imaginary.
If you would rather not assemble the datasets, questions, and briefs yourself, that is the part D8A does for you. Each path is a sequence of guided, real-world projects on messy data, in the same order as the steps above. Every project is auto-validated when you finish and published straight to a public portfolio page like the four examples here, with your own titles, descriptions, and photo. You bring the work; the structure, the validation, and the recruiter-ready page are already built.