Fletcher Keeley

Case study — the business behind the systems

Running an Eight-Figure DTC Brand

Before I built software for businesses, I ran one. For six years I owned the ecommerce operation of a national DTC apparel brand: eight demand channels and their budgets, the Shopify storefront and its dev team, the CRM and retention program, in-house customer service, five agencies, and the annual growth model that set every one of their targets. This page maps that business the way the rest of this portfolio maps codebases, because that is what it was: an architected system, operated daily for years.

~10x
revenue growth
8
demand channels operated
5-day
delivery, anywhere in the US
<24hr
CS response, every channel

in practice

What running it actually meant

The year started with a model. Each annual cycle I projected the customer base forward: how many new customers each channel would bring at what cost, what the returning base would spend based on cohort behavior, and what blended profitability required. That rolled down into per-channel spend, revenue, and return targets, and those targets became the KPIs every agency partner was held to. When a paid media agency asked what their ROAS goal was, the answer came out of my spreadsheet, not theirs.

The day started with the revenue read: yesterday's revenue against plan, spend and return by channel, email performance, and anything the storefront or CS queue was signaling. The week ran on the marketing calendar: campaigns, promotions, content, and channel pushes sequenced against inventory position and season. This cadence, daily read, weekly budget-and-calendar review, annual model, ran for years without a gap.

The scope beneath it: I purchased, onboarded, and built the processes for every piece of the ecommerce technology and agency stack. Storefront, email platform, CS software, Loop returns, affiliate network, analytics. When a tool was in the stack, it was because I put it there and trained the team that used it.

architecture

The business as a system

The operating map, demand to doorstep

Demand

eight channels, one growth model

Google AdsMetaaffiliates (60–120 partners)email + SMS (Klaviyo)direct mail RT + prospectingcatalog (300K circulation)influencersorganic social

Every channel carried spend, revenue, and return targets from the annual growth model. Agencies ran four of them, each held to the model's numbers.

sessions

Storefront

Shopify, owned end to end

merchandisingpromotionsCROsite operationsdev agency (3)

Full store ownership: catalog, pricing and promotion mechanics, conversion work, and a three-person dev agency shipping against a roadmap I set.

orders

Order-to-cash

NetSuite ERP + 3PL fulfillment

Shopify ↔ NetSuite sync3PL integrationLoop returnsAvalara taxecom / wholesale allocation

The ownership boundary: NetSuite ops belonged to another business lead and the 3PL was a third party. I owned the integrations that connected them to the store, plus Loop returns wired into tax and inventory systems. Output: 5-day delivery anywhere in the US, every day, for years.

customers

Customer layer

in-house CS + lifecycle CRM

Zendesk (chat, email, phone, tickets)10–200 contacts/daysub-24hr responseKlaviyo flowscohort LTV

Customer service run in house on software I purchased, configured, and trained the team on. Every contact channel integrated and tracked. The CRM feeds retention revenue back into the model.

daily

Instrumentation

the daily revenue read and the annual model

Daily revenue, spend, and channel metrics against plan. Annually: a growth model projecting the customer base, new versus returning revenue, and per-channel targets that became each agency's KPIs.

five in-house + five agencies under direct managementevery tool in this map purchased and onboarded by me~10x revenue growth across the run
01

Demand: eight channels, four agencies

Google Ads and Meta each carried six-figure monthly budgets at peak, run through a paid media agency held to channel ROAS targets. Around them: a tiered affiliate program, email and SMS through Klaviyo, an auto-triggered direct mail program, a national catalog campaign, influencers, and organic social. Budgets moved between channels based on blended CAC and the model's return requirements.

02

Storefront: full Shopify ownership

Merchandising, pricing and promotion mechanics, CRO, and site operations, with a three-person dev agency shipping changes against a roadmap I set. Consumer-style dynamics: the store was the product, and everything from the session up was my zone.

03

Retention: CRM as a P&L input

Klaviyo flows and campaigns for lifecycle revenue, with the customer base modeled by cohort: repeat rates, LTV curves, and base health treated as a forecastable revenue line, not a marketing afterthought. Returning-customer revenue had its own targets in the annual model.

04

Order-to-cash: integrations at the boundary

NetSuite owned inventory and the allocation between ecommerce and wholesale, run by another business lead; fulfillment was a third-party 3PL. My job was the connective tissue: maintaining the Shopify integrations to both, and owning Loop returns, wired deep into Avalara tax and the inventory stack. The output the customer saw: 5-day delivery, anywhere in the US.

05

Customer service: in-house, every channel

Zendesk, purchased and configured by me, processes built to match the business, one trained CS specialist. Customers could ticket, chat, email, or call, and every contact was integrated, tracked, and answered within 24 business hours, through a queue that ran anywhere from 10 to 200 contacts a day with the season. The CS queue doubled as a product and site feedback loop.

06

The team: five in-house, five agencies

My in-house team ran five deep: two on content, two on social, one on email, plus the CS specialist I trained. Around it, five agencies under my direct management: dev, paid media, affiliate, catalog, and direct mail. Each held to KPIs derived from the growth model, so agency accountability was arithmetic, not vibes.

operating highlights

The parts that show the operator

An affiliate channel opened from zero to 8% of revenue

I opened the affiliate channel and grew it from 2% of revenue to 8%. The program ran 60–120 partners at any given time on a tiered commission structure: heavy-discount publishers at low rates, premium partners like Capital One's shopping program at higher ones. Payouts ran automatically through attribution on the affiliate network, and a two-person agency recruited and managed partners against the channel's targets.

Direct mail that landed two days after a site visit

The direct mail program was not batch-and-blast. Retargeting and prospecting pieces were auto-triggered off site behavior, with a physical piece landing on a potential customer's doorstep within two days of their visit. I owned audience creation and creative direction; the agency handled print and delivery logistics. It ran for multiple years.

The CAC ceiling, managed with the brakes on

The hardest calls were the pullbacks. Acquisition cost hit a structural ceiling three times across the run, and each time the model said the same thing: spend through it and lose money on every incremental customer, or pull back and protect the P&L. We pulled back. That failure mode — a structural CAC ceiling propagating through a whole funnel, down to email revenue — is one I've since published a full quantitative study of.

The growth model was the management system

One spreadsheet lineage connected the board-level revenue target to an individual agency's monthly ROAS goal: customer base projection, new versus returning revenue, per-channel spend and return, rolled up to the profitability the year required. Every vendor conversation, budget shift, and pullback decision traced back to it. The growth dashboard in this portfolio is that model's instrument panel, rebuilt in software.

instruments

The systems this business trained me to build

The engineering in this portfolio comes from this operation. The ecommerce data warehouse reconciles this brand's five years of orders, spend, and sessions, and the DTC growth dashboard is the operating picture I ran the business from, rebuilt as software. First I ran the machine. Then I built the instruments I always wanted while running it.

stack

Operated with

Shopify (storefront, owned end to end) · Klaviyo (email + SMS) · Zendesk (in-house CS) · ShareASale (affiliate network) · Loop (returns, integrated with Avalara tax and inventory) · NetSuite + 3PL (via integrations I maintained) · Google Ads + Meta (agency-run, six-figure monthly budgets) · direct mail and catalog programs · BigQuery, later, for the analysis layer.

The brand is genericized here as in the rest of this portfolio, and scale figures are given as ranges.