Cj Nnemeka
← Back to work
Case Study

NoelX

An AI-powered patient recovery and retention system for medical spas. Three layers of automation that turn dormant patient databases into recurring revenue.

Role

Solo — Design, Architecture, Dev

Timeline

2 months

Stack

Next.js · Node · PostgreSQL · Anthropic API

Status

Live — noelx.co

View live siteExplore the design system
FigmaNext.jsTypeScriptNode.jsPostgreSQLAnthropic APITwilioStripeVercelTailwind CSSFigmaNext.jsTypeScriptNode.jsPostgreSQLAnthropic APITwilioStripeVercelTailwind CSSFigmaNext.jsTypeScriptNode.jsPostgreSQLAnthropic APITwilioStripeVercelTailwind CSS
NoelX — Hero / Marketing Site Screenshot

01 — The Problem

Med spas are hemorrhaging revenue from patients who already walked in the door.

Medical spas generating $1M–$3M/year have 500+ patients in their database. At any given time, 150+ of those patients have lapsed — 90+ days since their last visit. These aren't lost leads. They already paid, already liked the service, and already gave their contact info. They just drifted away.

Marketing agencies charge $3K–$5K/month and deliver "leads" hidden behind vanity metrics. Generic CRM platforms require the owner to do the marketing themselves. Manual front desk outreach happens for two weeks after a slow month, then stops.

The core insight: the patients are already in the database. The spa already paid to acquire them. What's missing isn't leads or ads — it's infrastructure that automatically catches, recovers, and retains patients without anyone lifting a finger.

02 — Strategic Positioning

Infrastructure, not agency.

The initial concept was a reactivation service — "we'll get your lapsed patients back." One function, evaluated monthly on a number. This is the agency model. It creates a fragile relationship: every month is a performance review.

The reframe: NoelX is infrastructure the practice runs on — like their PMS or payment processor. Nobody cancels Stripe because it "only processed 30 payments this month." This decision cascaded through every other product decision — pricing ($2,997/month justified as always-on infrastructure), guarantees (operational, not performance-based), and churn prevention (infrastructure doesn't get monthly performance reviews).

Layer 01

Backlog Recovery

Reactivates patients who have already lapsed (90+ days). Works through the entire dormant database in months 1–4. Immediate, visible ROI that justifies the price from day one.

Layer 02

Lapse Interception

Every month, patients cross the 90-day threshold. The system catches them automatically within days of lapsing — before they find another provider. Prevents the lapsed pool from rebuilding.

Layer 03

Post-Visit Retention

After a patient visits, the system sends follow-ups: satisfaction check, rebooking nudge, next-treatment reminder based on specific treatment cadence. Reduces churn at the source.

03 — Key Design Decisions

Key Design Decisions

Decision 01

Dashboard: Bento Grid with Revenue Hero

The Challenge

Med spa owners are non-technical and time-pressed. They log in asking one question: 'Is NoelX making me money?' The answer must be obvious within 2 seconds.

The Decision

Asymmetric bento grid layout. Revenue hero card dominates row 1 at 3x the size of supporting elements. Monthly AI-generated narrative summary explains performance in plain language. Progressive disclosure — aggregate metrics on homepage, campaign detail on click, full conversation on drill-down.

The Result

The owner sees revenue impact first, trend context second, real-time activity third. No information overload. The dashboard builds confidence, not anxiety.

NoelX — Dashboard Bento Grid Layout
Decision 02

Light Mode over Dark Theme

The Challenge

Initial build used a dark theme (Carbon Amber — charcoal with gold accents). After evaluating against reference products, the aesthetic felt like a developer tool, not a wellness business dashboard.

The Decision

Shifted to light mode with warm neutrals (off-white #F9F8F6, warm gray borders, charcoal text). Retained the amber accent sparingly for active states and key CTAs. The ICP is a 35–55 year old med spa owner, not a SaaS engineer.

The Result

The dashboard conveys premium-but-approachable. Amber works as a highlight, not a wash. Matches the $3K/month price point expectation.

NoelX — Light vs Dark Theme Comparison
Decision 03

Campaign Approval Workflow

The Challenge

TCPA compliance requires the spa to have legal defensibility over every message sent. The AI generates message templates, but the spa needs to approve them.

The Decision

Built a campaign approval view showing sample messages with real merge fields populated (patient first name + last initial, treatment type, spa name). The owner sees exactly what the final message looks like before anything sends.

The Result

Three purposes in one screen: legal defensibility, client confidence (no black box), and quality control for tone matching. Compliance becomes a trust-building feature, not a friction point.

NoelX — Campaign Approval Screen
Decision 04

Three-Layer Architecture as Lifecycle Infrastructure

The Challenge

The obvious MVP is a one-shot reactivation blast — send a campaign to every lapsed patient and see who books. Early validation showed this works once. Practices running a single reactivation campaign get a spike in week one, then revert to baseline within 60 days. One-time recovery doesn't prevent the next cohort from lapsing.

The Decision

Three-layer architecture: Backlog Recovery reactivates patients already lapsed — immediate ROI, targeting the 150+ dormant patients already in the database. Lapse Interception catches patients before they cross the 90-day threshold — automated, running continuously as new patients age. Post-Visit Retention follows up after every appointment — satisfaction check, rebooking prompt, next-treatment recommendation. Each layer activates as the previous one saturates.

The Result

NoelX is always doing work, not responding to commands. A practice running for six months has Layer 1 winding down, Layer 2 running continuously, and Layer 3 building a retention habit after every visit. Churn from 'we've already recovered everyone' becomes structurally impossible — the system is always ahead of the next cohort. The three-layer design is what makes the $3K/month infrastructure pricing defensible: it's not a campaign spend, it's a system that compounds.

NoelX — Three-Layer Patient Retention System
See how these decisions shipped — explore the design system

04 — The Solution

A 10-module system designed, architected, and built from zero.

NoelX isn't a Figma prototype. It's a production system with real business logic, real compliance infrastructure, real AI pipelines, and real payment processing. 25 routes compiled, zero TypeScript errors. 10 modules covering everything from CSV upload and audit to Stripe subscriptions and dunning.

01 / 06

The atoms behind these screens

Every screen above is built from a documented system — warm neutrals, an amber brand, six classification roles, a dark sidebar anchoring a light canvas. See it in full.

Open design system

05 — AI Integration

Two-tier classification with a de-identification pipeline.

When a patient replies to an outreach message, the system classifies intent and routes the response. This is the core AI capability: understanding whether a patient is interested, has booked, has a question, wants to opt out, isn't interested, or needs human review.

Before any text reaches the AI, patient names are stripped and replaced with [PATIENT]. No phone numbers or identifiers in API calls. No PHI reaches the model — only anonymous text strings. De-identification has zero impact on classification quality, validated during development.

Classification Pipeline

Step 01

De-identify

Patient reply arrives via Twilio webhook. Names stripped, replaced with [PATIENT]. No PHI leaves the system.

Step 02

Primary Classification

Sonnet classifies into 6 categories using structured prompt with campaign context. Fast, cost-effective for high volume.

Step 03

Escalation

If confidence < 0.85, Opus runs a second opinion. If both models disagree, the reply enters the human review queue.

InterestedBookedQuestionOpt OutNot InterestedNeeds Review

06 — Design Under Constraint

Three compliance frameworks shaped every interaction.

Healthcare communication operates in a regulated environment. Every design decision passed through three filters simultaneously: TCPA (telecommunications law), HIPAA (healthcare data privacy), and Twilio A2P 10DLC (carrier registration). Compliance wasn't a checkbox — it was a design material.

TCPA

Liability Architecture

The med spa is the sender, NoelX is the tool. Dedicated local numbers per spa. Double opt-in required. Quiet hours enforced (8am–9pm). Opt-out language in first message of every sequence.

HIPAA

Data Minimization

Store only: first name, last name, phone, email, last visit date, treatment category. No diagnosis codes, SSNs, insurance, or clinical notes. Patient names displayed as First Name + Last Initial throughout the dashboard.

A2P 10DLC

Carrier Registration

Full business profile and campaign registration with Twilio. Public consent page at noelx.co/consent. Three rounds of submission and revision before carrier approval.

07 — Outcome & Reflection

Shipped. Live. Learning.

NoelX is live at noelx.co. The complete system — 10 modules, 25 API routes, AI classification pipeline, Stripe billing, Twilio SMS, HIPAA-compliant infrastructure — was designed, architected, and built solo. Currently in early customer acquisition.

The distance between "I designed this" and "I designed, architected, and built this from zero to production" is the differentiator. Most designers show screens. This is a complete product lifecycle: problem identification → strategic positioning → system design → full-stack implementation → live deployment.

0

System modules

0

API routes

0

TypeScript errors

0

Gross margin at scale

What I'd do differently

Integrate directly with PMS APIs (Zenoti, Boulevard) instead of CSV uploads — the manual refresh creates unnecessary friction.

Build the design system as a shared component library from day one rather than extracting patterns after the fact.

Conduct more structured user testing with actual med spa owners during the dashboard design phase rather than relying on competitive analysis.

Next Project

Clovr

Trade Promotion & Deduction Recovery Platform