PORTFOLIO · CASE STUDY

Live in production

2026 · RETAIL OPS · INDEPENDENT GROCERY · CASE STUDY

Competitor Watch

All-in-one dashboard for market deals, sales pulse, and retention for independent grocers

Weekly ad scan · Store KPIs · WhatsApp retention · Demand ranges

Note: first load can take about 60 seconds.

ROLE

Product design · UX/IA · Full-stack

STACK

React · Python · shadcn/ui

SHIPPED

2 weeks · MVP → production

COMPETITOR SCAN · THIS WEEK

Live

Store

Chicken

Ground beef

vs market

Your store

$2.49/lb

$4.99/lb

Up 12%

Chain B

$2.79/lb

$5.19/lb

Down 3%

Chain C

$2.59/lb

$4.89/lb

Up 7%

140+ ads indexed · 18 retailers · Updated Thu 8am

7+

Markets tracked

140+

Live ads indexed

5

Dashboard sections

2 wk

MVP → production

SECTION 01 — STORE PULSE

Today’s numbers, at a glance

Owner-gated

Last 7 days

$53,880

Up 8%

Orders (7d)

1,624

Up 12%

Avg Basket

$33.15

Down 1%

Active Shoppers

843

Up 31%

Top basket categories this week

by revenue share

Meat & Seafood

38%

Produce

24%

Dairy

18%

Beverages

12%

Snacks

8%

Store Pulse unifies revenue, basket, and promo performance a typical back-office never surfaces.

THE BRIEF

The gap independent grocers couldn’t close — until now

The problem

The solution

01

Invisible competition

Ads change every Thursday; without tooling, owners miss the window before the weekend rush.

02

No weather playbook

Rain, heat, and holidays shift demand with no system to turn forecasts into action.

03

Siloed sales data

Exports and back-office reports only; no unified revenue, basket, or promo view.

04

Zero retention view

82% came once and never returned; no CRM, no segments, no proof an offer worked.

SECTION 02–04 — KEY FEATURES

Four modules, one operational picture.

01

Store Pulse

KPIs, weekly changes, and basket analysis in one dashboard.

Data coverage

92%

KPIs

Weekly changes

Basket analysis

02

Live Competitor Deals

ZIP-based weekly deal tracking across mainstream chains and international grocers.

Ad sync rate

87%

ZIP-based

140+ ads

18 retailers

03

Weather Playbook

Forecasts become plain-language weekend actions and category demand ranges.

Forecast accuracy

78%

3-day view

Category signals

Demand ranges

04

Trade Area & Retention

Lapse segments, ZIP mapping, WhatsApp reach, and 7-day visit matching.

Retention modeled

71%

Lapse segments

ZIP map

WhatsApp CRM

The retention loop: from blind coupon to attributed engagement.

Segment → WhatsApp reach → 7-day visit match → measure.

01

Segment

Behavioral groups from sales history.

02

Reach out

WhatsApp-first, timed for weekday vs weekend.

03

Attribute

Match POS visits within 7 days.

04

Measure

Identity-tied points instead of a nameless discount.

WHATSAPP · THIS WEEK (SAMPLE)

1,240

Sent

899

Read

214

Visits matched

13.3%

Match rate

Campaign

Segment

Matched visits

Weekend return

Lapsed 60d+

214

Recommendation

ATTACH

Attach a weather-aware WhatsApp offer to the lapsed segment, then match visits inside seven days before expanding the campaign.

DECISIONS

Three product calls that shaped the system.

WhatsApp-first CRM

WhatsApp isn’t just outreach it’s the future storefront: catalogue-driven merchandising.

Forecasts as ranges

Operators ignored single numbers; bands got used.

Deferred loyalty

Instant coupons couldn’t be measured; points require a return visit.

Forecast range

Projected $8,420

Range $7,890

$8,950

RETROSPECTIVE

What I’d carry forward

Shipping beat polishing. Design from the operator’s reality — channel, margin, and trust in the numbers.

Built a tool a real store runs on.

I’m looking to do the same for product teams — design and build, end to end.

Create a free website with Framer, the website builder loved by startups, designers and agencies.