runbookify
← All plans
Customer Support & Service / CSAT, NPS & Voice of Customer

NPS Campaign Manager

Run scheduled NPS surveys, collect 0–10 scores plus the "why", auto-segment promoters/passives/detractors, and watch your relationship-health metric trend over time — with a human approval gate before every send.

IntermediateA weekendBuilds onNext.js (App Router) on VercelSupabase (Postgres, Storage, Auth + RLS)Resend (survey + reminder email)
What you'll build

A team-only web app that loads your customer list, proposes eligible recipients (respecting a per-contact cooldown), waits for a manager to approve the batch and send window, sends NPS surveys via Resend, scores and segments responses, and dashboards your rolling NPS over time.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.

The problem this kills

You know NPS matters — it's the one number that tells you whether customers actually love you or are quietly heading for the exit. But running it is a mess. Someone exports a customer list, hand-picks who to email, copies addresses into a survey tool, forgets who got surveyed last quarter (so the same people get pinged twice), and then pastes raw 0–10 scores into a spreadsheet that nobody trusts. The NPS number you finally report is computed by hand, sometimes wrong, and impossible to trend.

Worse, there's no guardrail. A clumsy filter and you accidentally blast your whole book of business in a week. There's no record of who approved the send, who got surveyed, or why one quarter looks better than the last.

This tool fixes all of that: one clean pipeline from list to score to trend, with a person in the loop before anything goes out.

What you'll build

A small, private web app your CX team logs into. You upload (or sync) your customer list, and the tool proposes who's eligible to be surveyed right now — automatically skipping anyone surveyed inside your cooldown window. Your CX manager reviews that batch, sets the send window, and approves it. Only then does Resend send the NPS survey. As responses come back, each 0–10 score is captured along with the open-text "why", auto-segmented into Promoter (9–10), Passive (7–8), or Detractor (0–6), and your rolling NPS is recomputed and charted so you can see the trend campaign over campaign.

What's inside the Implementation Plan

  • It starts by interviewing you about your business. Before any code, the plan has the AI agent ask you about your customer list, your segments, how you name things, your survey cadence and cooldown rule, your typical and peak send volumes, and your messy edge cases (duplicate emails, multiple contacts per account, opt-outs). It reflects a short tailored spec back to you, gets your thumbs-up, and only then builds — so you get a tool shaped to your process, not a generic template.
  • A step-by-step build you complete by pasting ready-made prompts into an AI coding agent — no prior coding needed.
  • The full data model for contacts, campaigns, sends, and scored responses — tuned to your real field names.
  • Correct NPS math built in (% promoters minus % detractors), plus segmentation and rolling trend.
  • A cooldown engine that enforces a minimum interval between surveys per contact.
  • The manager approval gate, the audit trail, and duplicate guards.
  • A "No API yet?" fallback so you can run the whole thing from a CSV / Google Sheet today.

The governance it includes (this is the point)

  • Login so only your team can open the tool.
  • Row-level security so each organization only ever sees its own contacts and results.
  • A complete audit trail — who proposed a batch, who approved it, when it sent, and every score recorded.
  • A hard human-in-the-loop approval gate — the AI proposes the eligible recipient batch and send window, but nothing emails until your CX manager reviews and approves it.
  • Duplicate guards — a dedupe key of recipient + campaign ID means the same person can't be surveyed twice in one campaign, and the same response can't be counted twice.

Who it's for

CX managers, support leads, and ops owners who are responsible for the relationship-health metric and are tired of running NPS by hand in a spreadsheet. If you can fill in a form and follow steps, you can build this.

You've got this — paste the first prompt and let the agent interview you.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.