runbookify
← All plans
Sales & CRM / Sales Operations & CRM Data Hygiene

Import Staging & Validation Sandbox: Clean Every List Before It Hits Your CRM

A staging area where every list bound for your CRM is checked against your field rules, deduped against existing records, and corrected — so a bad import never pollutes the live system, and a person signs off before anything goes in.

IntermediateA weekendBuilds onNext.jsSupabaseResend
What you'll build

A web tool where you upload an incoming list, map its columns to your CRM fields, the tool validates every row against your field rules and dedupes it against existing records and itself, a reviewer resolves each error and duplicate, approves the batch, and it exports an import-ready CSV in your CRM's exact columns plus a quarantine file of the rejected rows.

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.

Before you start

  • A Supabase account (free)
  • A Vercel account (free)
  • A Resend account (free)
  • A CSV of the list you want to import, your CRM's field/format rules, and a CSV export of existing CRM records to dedupe against
  • Claude Code or any AI coding agent

The problem this kills

You get a list — a purchased file, event scans, a partner's referral spreadsheet — and someone has to get it into the CRM. So they map the columns as best they can, click import, and hope. A week later the damage shows up: required fields blank, picklist values the CRM silently rejected, phone numbers in five different shapes, and worst of all, hundreds of duplicates layered on top of accounts your reps were already working. Now you're untangling merged records, dead leads, and angry salespeople — and the clean data you started with is gone.

The maddening part is that almost every one of those problems is catchable before the import. The incoming list, your CRM's field rules, and your existing records are all sitting right there. What's missing is a safe place to check the list against the rules, find the duplicates, fix what's fixable, quarantine what isn't, and have a human approve the batch — all before a single row touches the live system. You don't need to be a developer to build that place.

What you'll build

A simple internal web tool — a staging sandbox — for your sales/marketing ops team. You upload an incoming list, map its columns to your CRM fields, and load an export of existing records to check against. The tool validates every row against your field rules (required fields, picklist values, formats), separates hard errors from warnings, and flags duplicates — both against your existing records and within the batch itself, using your CRM's real match rule. A reviewer works the results screen: fixes the fixable, decides each duplicate (merge, skip, or import anyway), and quarantines the rest. Only when the reviewer approves the batch does the tool generate a clean, import-ready CSV in your CRM's exact columns — plus a quarantine file of every rejected row and why. The live CRM stays untouched until you say go.

What's inside the Implementation Plan

The downloadable plan is a step-by-step file you paste into an AI coding agent. It opens by interviewing you about your business — your current import process, which CRM you run, the exact fields and picklist values it enforces, the real columns and naming in the lists you receive, your dedupe match rule (email? company? both?), your typical and peak list sizes, and the messy edge cases that have burned you before. It reads a short spec back to you for a thumbs-up, then builds the tool around your CRM and your rules instead of a generic template. From there it walks the agent through the data model, the upload and column-mapping step, the validation engine, the dedupe engine, the reviewer's resolve-and-approve screen, the human approval gate, and the import-ready and quarantine exports. Every step ends with a ready-to-copy prompt.

The governance it includes (this is the point)

This isn't a toy. The plan builds in the controls a real sales operation needs: login so only your team can use it, row-level security so people only ever see their own organization's data, a complete audit trail of every fix, dedupe decision, and approval (who, what, when, and why), a hard human-approval gate so no import-ready file is produced until a person has resolved every error and duplicate, and duplicate guards so the same list file can't be staged and processed twice. The whole tool exists to make a careful human decision easy — the tool flags the problems, a person makes the call, and the live CRM is never written to blind.

Who it's for

Marketing and sales ops people who run regular CRM imports and have been burned by a bad one — the folks who own list onboarding, lead routing, and CRM data quality. If you can describe what makes a row "valid" and two rows "the same" in your world, you can build this.

You've got this — open the plan, paste the first prompt, and you'll be staging your first real list this weekend.

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.