← Back to blog

Why Spintax Is Dying (And the 3-Step Clay Process That Replaced It)

We tested 10,000 emails in Q1 and watched deliverability crash.

Open rates dropped 40% in three weeks. Inbox placement tanked across Gmail and Outlook. Nothing had changed in our infrastructure — same domains, same warmup, same sending volume. The only variable was the emails themselves.

After pulling apart every campaign, we found the cause: spintax.

What Happened

For years, spintax was the standard move. You’d write a template, sprinkle in variations — {Hi|Hey|Hello}, {looking to|hoping to|wanting to} — and your sending tool would randomly assemble combinations. The idea was that every email looked different enough to avoid pattern detection.

That worked when spam filters were matching on exact text. It stopped working when they got smarter.

Modern spam filters don’t just compare your email to a known template. They analyze structural patterns. Sentence rhythm, formatting, paragraph structure, the ratio of personalization to boilerplate. Spintax swaps individual words, but the skeleton stays the same. Filters caught on.

We saw it clearly in our data. Campaigns with spintax-generated copy were hitting spam at 2-3x the rate of campaigns with genuinely unique copy. Same lists, same infrastructure, same offers. The only difference was how the emails were written.

Why This Is Happening Now

Spam filters have always been getting smarter, but the jump in the last 12 months has been significant. Gmail and Microsoft are both using ML models that evaluate emails holistically — not just for trigger words, but for how “templated” a message feels. They’re looking at:

  • Structural similarity across messages sent from the same domain
  • Linguistic patterns that indicate automated generation
  • Personalization depth — is the personalization cosmetic (first name, company name) or substantive?

Spintax fails all three. The structure is identical across sends. The language variations are shallow. And the personalization is almost always surface-level.

Six months ago, a well-built spintax system could still get by. Not anymore.

The 3-Step Clay Process We Built

After the crash, we rebuilt our email generation process from scratch inside Clay. The goal was simple: every email needs to be genuinely unique — not template-with-variations unique, but actually different in structure, length, and approach.

Here’s the process.

Step 1: Feed Multiple Writing Examples to Claygent

This is the foundation, and most people get it wrong. They paste one example email into their AI prompt and say “write like this.” That gives you a copy of one email, not a voice.

I learned this from Eric Nowoslawski back in 2023, and it’s still the most important principle: you need to feed the model 5-10 examples of your actual writing. Not templates. Real sent emails that performed well.

What this looks like in practice:

  • Pull 8-10 of your best-performing cold emails from actual campaigns
  • Include variety — different lengths, different angles, different CTAs
  • Mix in emails that were replies, not just first touches, so the model picks up conversational tone
  • Include at least 2-3 examples that break your own “rules” — short one-liners, questions-only emails, direct asks

The model isn’t memorizing these emails. It’s extracting your patterns — how you open, how long your sentences are, when you use questions vs. statements, how you transition from problem to ask. More varied examples means more range in the output.

In Clay, we set this up as a Claygent column that references a table of example emails. Every time it generates, it draws from that full range instead of mimicking a single template.

Step 2: Set Clear Boundaries on What NOT to Do

This is arguably more important than step one.

Most people write AI prompts that say “write a personalized cold email.” That’s not an instruction. That’s a wish.

The negative instructions — what the model should never do — are what actually control output quality. Here’s what we include in every prompt:

Formatting restrictions:

  • Never use bullet points or numbered lists in the email body
  • Never bold or italicize text
  • Never use more than one link
  • Never open with “I hope this email finds you well” or any variant
  • Never use the prospect’s first name more than once

Content restrictions:

  • Never claim we “noticed” something unless the personalization data actually supports it
  • Never use superlatives about our own work (“best”, “top”, “leading”)
  • Never pitch in the first two sentences
  • Never include more than one call-to-action
  • Never write more than 120 words (or whatever your target length is)

Structural restrictions:

  • Never use the same sentence structure for the opening line twice in a row across sends
  • Vary paragraph count between 2-4 paragraphs
  • Never end with “Let me know if you’d like to chat” or any generic closer

These negative constraints do more for deliverability than any positive instruction. They prevent the model from falling back on the patterns that spam filters are trained to detect. Without them, AI-generated emails converge on a recognizable “AI cold email” style that filters are already learning to flag.

Step 3: Personalization Beyond First Name and Company

Here’s the gap most teams never close. They have the AI generating unique-sounding copy, but the personalization inputs are still just {first_name} and {company_name}. That’s not personalization. That’s mail merge.

Real personalization means giving the model something substantive to work with. In Clay, we enrich every prospect with:

  • A specific company initiative or event — recent funding, product launch, job postings that signal a problem, a podcast appearance, a conference talk
  • A role-specific pain point — not “you probably struggle with growth” but “VP Marketing at a 50-person SaaS company that just raised a Series A probably has a demand gen mandate without the team to execute it”
  • A connection point — shared background, mutual connection, same market vertical, geographic proximity, similar company stage

Each of these becomes a variable that the Claygent column can reference. The model doesn’t just swap in a name — it builds the email around a specific, verifiable detail about that person’s situation.

The difference in output is dramatic. Instead of “Hi Sarah, I noticed Company X is growing fast” you get emails that reference a specific initiative and connect it to a specific problem. Spam filters can’t pattern-match that because there is no pattern. Every email is structurally different because the inputs are different.

What This Means Going Forward

The era of template-based outbound is ending. Not slowly — fast. Every quarter, the filters get better at detecting manufactured variation.

The teams that will maintain deliverability are the ones treating email copy as a data problem, not a copywriting problem. The inputs matter more than the prompt. The constraints matter more than the instructions. And the infrastructure — having a system that generates genuinely unique emails at scale — matters more than any individual email.

We’re running this process across every client campaign now. Deliverability recovered within two weeks of switching. Not because the emails were “better” in some abstract sense, but because they were actually, measurably different from each other.

Spintax had a good run. Time to move on.