← Things I built
Spruce · B2C Home Services · Shipped

Balancing Revenue Growth with Supply Constraints Through Regional Demand Design

A limited-time offer. Six channels. Regional supply constraints. Two weeks to make it work.

WHAT I INHERITED

Spruce ran promotions nationally. The problem was that national didn't account for the fact that some markets had too many cleaners and not enough customers, while others had the opposite problem. Operations set the cadence — if supply was constrained, marketing stopped. It was a blunt instrument for a nuanced problem. When the opportunity came to run a national limited-time offer — a discounted first clean deployed across our full U.S. property network — that tension became the central design problem. A one-size-fits-all LTO would flood constrained markets and starve undersupplied ones. We had one to two weeks to generate maximum revenue without breaking fulfillment.

WHAT I BUILT
  • Designed a regionally tiered omnichannel campaign across 6 channels: email, SMS, push, in-app, direct mail, Bulletin.io
  • Tiered offer intensity by operational supply forecasts and customer lifecycle stage
  • Built A/B testing into the architecture from day one — by cohort, region, and channel
  • Hired and onboarded the campaign designer; built a fast collaborative process

I designed a regionally tiered omnichannel campaign across six channels — email, SMS, push notifications, in-app messaging, direct mail, and Bulletin.io — where each market received a different version of the offer based on two variables: operational demand forecasts and customer lifecycle stage. Markets with available supply got full urgency — aggressive cadence, promotional pricing, strong LTO language. Constrained markets got a softer touch. Early outreach targeted reactivating users most likely to convert quickly. Colder leads got a staggered sequence that didn't waste the offer on contacts unlikely to move in a two-week window. I built A/B testing into the architecture from the start — subject lines and CTAs tested by cohort and region, push notification timing optimized against engagement spikes, in-app banners rotated weekly against conversion heatmaps. A twice-weekly reporting cadence let us make real pivots mid-flight. When a specific incentive structure outperformed in the Southwest, we scaled it. Underperforming variants got cut without disrupting the broader rollout. I also hired and onboarded the designer on the campaign — we built a collaborative process that let us move fast without sacrificing quality. The constraint wasn't just creative. It was operational. Every conversion had to be fulfillable — or the campaign would generate revenue on the front end and churn on the back.

What it produced
$764,924
Incremental revenue — regional LTO campaign
20%
Lift in incremental conversions — LTO campaign
57%
Increase in average monthly booking performance — lifecycle programs
50%
Quarterly increase in new sign-ups — early lifecycle redesign
35%
Increase in sign-up rates — first 90 days
30%
Increase in overall revenue — full tenure
25hrs
Weekly inefficiency eliminated — process and automation

Fulfillment quality maintained across all active regions during LTO.

Growth achieved without breaking downstream operational systems.

60% boost in customer engagement through marketing automation.

What I'd do differently

The regional segmentation logic lived in my head longer than it should have. For a campaign with this many moving parts, the targeting framework needed documentation from day one — both so it could run without me and so the next LTO could start smarter instead of from scratch. I'd also push for cleaner regional attribution baked into the reporting infrastructure before launch, not reconstructed afterward.

Next → The program was running.