AI Automation Β· Workflow

AI Personalization SOP

From raw prospect data to QC-approved personalization lines ready to inject into any cold email sequence. First run: 60 to 90 min. Subsequent runs: 15 to 20 min.

Before You Start

What this SOP produces: output, time, and prerequisites

Output: QC-approved AI personalization lines mapped to contact records, ready to inject as custom variables in cold email sequences. Time: 60 to 90 min for first-run setup; 15 to 20 min per subsequent batch once prompt and columns are locked.

πŸ“‹
Prerequisites

Enriched lead list with first name, last name, job title, company name, domain, and at least one live signal field (LinkedIn post, job change under 90 days, tech in use, or funding event). Access to Clay or Lyne.ai / Smartwriter.ai, plus Instantly or Smartlead with at least one active mailbox.

Workflow Overview

The 5-step AI personalization SOP at a glance

StepActionToolOutput
1Assemble and validate personalization inputsClay / Lead databaseStructured input columns per contact
2Write and scope the AI promptClay AI column / OpenAITested, bounded prompt template
3Run bulk generation and export raw outputClay / Lyne.ai / Smartwriter.aiRaw personalization CSV, one line per contact
4QC filter: score, sample, and reject unsafe linesLavender / manual reviewApproved output batch, rejection log
5Inject approved lines into sequence as custom variableInstantly / SmartleadLive campaign with safe, field-mapped personalization

Step by Step

Complete AI personalization SOP: inputs to QC to safe output

  1. Step 1: Assemble and validate your personalization inputs

    Confirm each contact has job title, company name, domain, and one live signal field (LinkedIn post, job change under 90 days, tech in use, or funding event). Remove any contact where the signal is blank or older than 90 days before running.

  2. Step 2: Write and scope your AI prompt

    Build the prompt with four components: role instruction ("Write a one-sentence opening line"), scope limit ("Do not infer revenue or headcount"), output format rule ("Output the line only, no greeting"), and fallback ("If signal is empty, output SKIP"). Test on 10 contacts and fix if more than 2 of 10 fail on accuracy, tone, or unverifiable claims.

  3. Step 3: Run bulk generation and export raw output

    In Clay, add an AI column using the tested prompt, map input fields, and run on the full list. Export to a CSV named with the batch date and prompt version. Do not inject anything at this stage.

  4. Step 4: QC filter β€” score, sample, and reject unsafe lines

    Filter out rows with the SKIP token, lines over 35 words, and any unverifiable claim (inferred revenue, fabricated product name, wrong title). Then manually review a random 10% sample: if more than 5% fail, stop and fix the prompt before proceeding. A rejection rate above 20% is a prompt problem, not a data problem.

  5. Step 5: Inject approved lines into your sequence as a custom variable

    In Instantly or Smartlead, create a custom variable (e.g., {{personalization}}), import the QC-approved CSV, map the column, and verify rendering on 3 test contacts before activating. Position the variable in sentence one, not sentence two.

⚠️
Never skip the 10-contact manual test

A prompt producing fabricated claims at a 10% rate means 50 bad emails in a batch of 500. The reputational cost far exceeds the time saved by skipping the test.

Common Failures

What breaks in the AI personalization SOP and how to fix it

Most failures trace back to stale input data or an under-scoped prompt. Both are preventable at Steps 1 and 2.

If
Lines reference roles or companies the prospect has left
The signal field is outdated. Filter by signal date, remove contacts with signals older than 90 days, and re-run the generation step.
If
Output sounds generic despite AI generation
Input fields lack specificity. Add a richer signal field (LinkedIn post excerpt, confirmed tech stack item, or recent company announcement), then retest on 10 contacts before re-running.
If
QC rejection rate exceeds 20%
The prompt scope is too loose. Add explicit "do not" instructions for each claim type that failed QC, then retest on 10 contacts before re-running at scale.
If
Personalization variable renders as a raw token in sent emails
The CSV column name does not match the variable name in the sending platform. Check the exact string (capitalization and brackets), confirm the CSV header matches, then re-import.

Tool Stack

AI personalization SOP: which tool fits each step

Four tools cover the full SOP. Match each to the step it handles rather than combining multiple tools in a single step.

Clay
Steps 1, 2, 3
Clay handles input assembly via waterfall enrichment across 150+ providers, then runs AI personalization through native AI columns using your custom prompt and mapped input fields.
Claygent research AI columns Bulk export
Lyne.ai
Step 3: Generation
Generates personalized cold email intro lines in bulk from a CSV upload. One credit per row; credits roll over on paid plans.
Bulk intros CSV import Credit rollover
Smartwriter.ai
Step 3: Generation
Generates icebreakers from prospect social activity, LinkedIn bio, and job description data. Up to 15 personalized lines per lead credit.
Social signals Icebreakers Credit rollover
Lavender
Step 4: QC Layer
Scores each email 0 to 100 in real time inside Gmail or Outlook, catching structural issues in AI-generated lines before they enter a live sequence.
Real-time scoring Gmail/Outlook Reply coaching
πŸ’‘
Recommended stack

Clay for Steps 1, 2, and 3 paired with Lavender for Step 4. Lyne.ai and Smartwriter.ai substitute for Step 3 when Clay is not in the stack. See the AI Personalization directory for a full comparison.

SOP running? Protect deliverability before you scale volume.

The AI Personalization and Deliverability guide covers the specific spam triggers that AI-generated copy introduces and how to avoid them before scaling send volume.