Ayodeji Emmanuel

AnalystOndo, Nigeria

Junior data analyst building revenue, customer, and operations insights in Excel, SQL and Power Bi.

Looking for: Junior Data Analyst

Scores reflect independent, automated grading of simulated business tasks completed on DataSimHQ.

Graded projects
6
Average best score
87/100
Career level
Analyst
Core tool stack
Excel (5) · SQL (1)

About

Working through retail and customer analytics scenarios on DataSimHQ, I have practiced translating stakeholder questions into structured Excel and SQL deliverables. My work has covered SUMIFS-based revenue reconciliation, multi-methodology customer counts, PivotTable breakdowns by order status, and combination charts built for investor presentations.

Across these scenarios I focused on producing outputs that a non-technical stakeholder could read and act on directly, clear labels, correct currency formatting, and live formulas rather than hardcoded values. Each submission was graded independently against a verified dataset, giving me a concrete benchmark for accuracy.

Skills

SQL

  • COUNT with FILTER clause for conditional aggregation in PostgreSQL
  • Layered WHERE-clause logic for multi-condition filtering in SQL

Excel

  • SUMIFS with multiple criteria pairs
  • COUNTIF and COUNTIFS with boolean and numeric conditions
  • COUNTA for row counting
  • PivotTable construction with row, column, and value field configuration
  • PivotTable grouping by month
  • Running cumulative total formula in Excel
  • Nigerian naira number formatting with thousand separators
  • DATE function for dynamic date boundaries

Excel Charts

  • Stacked bar chart creation from PivotTable data
  • Combination chart with dual axes (bar and line series)

Retail · Excel

Monthly customer acquisition trend chart with cumulative total for investor presentation

Independent grading: 92/100(verify, opens in a new tab)

Problem

Chidi Okafor at Meridian Retail (simulated retailer) needed a customer growth chart as the centrepiece of an investor slide. The chart had to show monthly new customer acquisition alongside a running cumulative total, filtered to non-duplicate customers only, and styled to Meridian brand colours.

What I did

The foundation is a PivotTable on a Customer Growth sheet, grouped by acquisition month and filtered to is_duplicate = FALSE so duplicate signups do not inflate the counts. A running cumulative total column sits next to the PivotTable, built with a formula that adds each month's new customers to the prior period's running sum. The combination chart places monthly new customers as orange bars on the left axis and the cumulative total as a navy line on the right axis, giving both series readable scales without one dominating the other.

Finding

The cumulative total line reaches approximately 2,100 by December 2024, consistent with the verified non-duplicate customer count of 2,131, and monthly bar values fall consistently in the 38 to 52 range across the four-year acquisition window from January 2021 through December 2024.

Outcome

Chidi received a presentation-ready chart titled clearly, with a dual-axis layout and brand colours, that tells a four-year customer growth story in a single visual.

Next step

Adding a second line showing the cumulative total of active customers only (those with total_orders greater than zero) would let Chidi show investors not just signups but genuine conversion alongside growth.

  • PivotTable construction with row, column, and value field configuration
  • PivotTable grouping by month
  • Running cumulative total formula in Excel
  • Combination chart with dual axes (bar and line series)

Retail · Excel

Gross vs net October revenue reconciliation for a retail finance cross-check

Independent grading: 97/100(verify, opens in a new tab)

Problem

Nura Ibrahim at Meridian Retail (simulated retailer) needed the October 2023 revenue figure in Excel to cross-check against the Finance system. The specific question was how much of total order revenue was lost to cancelled, returned, and refunded orders, and what gap that left between gross and net figures.

What I did

To answer this, I built three live formulas on a dedicated Oct Revenue Analysis sheet rather than hardcoding any values. The gross revenue formula uses SUMIFS on the total_naira column with two date boundary criteria built from the DATE function, bounding the range to October 2023 exactly. For net revenue, I added three separate not-equal criteria pairs on the status column within the same SUMIFS call, which applies AND logic so only rows passing every condition are summed. The gap cell references the two results directly as a subtraction, keeping everything updatable if the source data changes.

Finding

Gross October revenue was NGN 56,876,792.48 and net revenue after removing cancelled, returned, and refunded orders was NGN 38,450,382.35, leaving a revenue gap of NGN 18,426,410.13.

Outcome

Nura received a single sheet with three labelled, live figures formatted in naira that she could use directly to reconcile against the Finance system.

Next step

A useful follow-up would be to break the NGN 18,426,410.13 gap down by individual status, cancelled vs returned vs refunded, to see which category drives the most lost revenue.

  • SUMIFS with multiple criteria pairs
  • DATE function for dynamic date boundaries
  • Nigerian naira number formatting with thousand separators
  • COUNTA for row counting

Retail · SQL

Resolving conflicting customer count figures ahead of an investor meeting

Independent grading: 95/100(verify, opens in a new tab)

Problem

Chidi Okafor at Meridian Retail (simulated retailer) was receiving three different customer counts from three internal teams and needed one defensible number before an investor meeting. The task was to show all three counts in a single query and explain why they differed.

What I did

Rather than writing separate queries, I used conditional aggregation with COUNT(*) FILTER (WHERE ...) to produce all three figures in one result row. The marketing count is an unfiltered COUNT(*) over the full customers table. Adding a FILTER clause for is_duplicate = false isolates the operations count. A second FILTER then layers in total_orders > 0 to reach the finance count of active, non-duplicate customers. The comment in the submission explains the logic: the discrepancy comes from each team applying different inclusion rules, not from a data error.

Finding

The marketing count of 2,331 includes duplicate records, the operations count of 2,131 removes duplicates, and the finance count of 2,105 further restricts to customers who have placed at least one order, making the finance figure the most defensible for an investor audience.

Outcome

Chidi had a single query result with all three figures labelled and a written explanation he could use to settle the internal disagreement before the meeting.

Next step

The next useful step would be to segment the 2,105 active customers by acquisition month to see whether recent cohorts are converting to first orders at the same rate as older ones.

  • COUNT with FILTER clause for conditional aggregation in PostgreSQL
  • Layered WHERE-clause logic for multi-condition filtering in SQL

Retail · Excel

Three-methodology customer count validation table for investor review

Independent grading: 95/100(verify, opens in a new tab)

Problem

Chidi Okafor at Meridian Retail (simulated retailer) needed the same customer count discrepancy resolved in Excel, using an export of the customers table. The task was to replicate all three counting methodologies with live formulas and explain why each number differs in a format Chidi could show directly to an investor.

What I did

On a new Customer Count Validation sheet I wrote three separate formulas, each representing one team's methodology. COUNTA on the customer ID column captures every row including duplicates for the marketing figure. COUNTIF on the is_duplicate column with a boolean FALSE criterion removes duplicates for the operations figure. COUNTIFS then combines the is_duplicate = FALSE condition with a greater-than-zero check on total_orders to isolate active customers for the finance figure. Each formula sits beside a plain-language label in column C explaining what it counts and why it differs from the others.

Finding

The three counts are 2,331 (all signups), 2,131 (non-duplicates), and 2,105 (non-duplicates with at least one order), and the gap between the largest and smallest figure is explained entirely by two sequential filters, not by any data error.

Outcome

Chidi received a labelled summary table with live formulas and written explanations he could walk an investor through to show the company understood its own data.

Next step

It would be worth checking how many of the 26 customers who appear in the operations count but not the finance count signed up recently, since a high share of very new customers with zero orders would suggest normal onboarding lag rather than a data problem.

  • COUNTA for row counting
  • COUNTIF and COUNTIFS with boolean and numeric conditions
  • Nigerian naira number formatting with thousand separators

Retail · Excel

Q4 2023 order status revenue breakdown with stacked bar chart

Independent grading: 92/100(verify, opens in a new tab)

Problem

Nura Ibrahim at Meridian Retail (simulated retailer) wanted to move beyond a single month and see Q4 2023 revenue split by order status across October, November, and December. The underlying question was whether cancellations were deteriorating month-over-month or whether October had been an outlier.

What I did

To answer this, I built a PivotTable sourced from the full Orders range, placing order status on rows and order_date on columns grouped by month. All seven order statuses appear as row labels so no category is hidden. Naira formatting was applied to all value cells using the same currency format code used in the revenue reconciliation task. A stacked bar chart sits beneath the PivotTable, referencing the Status Breakdown sheet directly, so each status's monthly share is visible as a proportional band.

Finding

The October grand total of NGN 56,876,792.48 matches the verified platform figure, and the Q4 grand total of NGN 177,793,954.30 confirms all three months of data are fully and correctly aggregated.

Outcome

Nura received a single sheet where she could compare the revenue contribution of each status across all three months at a glance, with a chart she could drop into a report.

Next step

Calculating each status as a percentage of its monthly total, rather than an absolute naira figure, would make it easier to spot whether the cancellation share grew between October and December.

  • PivotTable construction with row, column, and value field configuration
  • PivotTable grouping by month
  • Stacked bar chart creation from PivotTable data
  • Nigerian naira number formatting with thousand separators