The variant syntax that makes every sent email unique, the ~2,000-send threshold that tells you when to deepen it, and the QA step most teams skip.
By Joel Wylie, Founder · Last updated 7 August 2026
Spintax is a variant syntax, written as {option one|option two|option three}, that makes each sent copy of a cold email unique. The sending tool picks one option from each group per send, so no two recipients get an identical body. It matters at volume because mailbox filters fingerprint identical bodies arriving across many inboxes, and because past roughly 2,000 cumulative sends of one variant the pattern goes stale and reply rates decay.
We spintax every campaign we run for clients, under a strict internal rulebook, because bad spintax is worse than none: a spun email that renders an ungrammatical sentence, or drifts a number, goes out to a real prospect under the client's name. This post covers how deep to spin each part of the email, what must never be touched, and the QA step that catches broken banks before they ship.
Spintax is nested variant syntax embedded directly in the email body. Curly braces mark a spin group, and pipes separate the options: {Quick idea|Got an idea|Had a thought}. At send time the platform picks one option from each group, independently, per recipient. A sentence with three spin groups of three options each can render 27 different ways, and a full email with spin groups on most lines can render thousands of distinct bodies from one template.
The crucial property: every rendered version says exactly the same thing. Spintax varies the wording, never the message. You are rephrasing one idea the dozen ways a human might naturally phrase it, not writing new ideas. That distinction is the entire craft.
Here is one sentence with three spin groups:
{Put together|Came up with|Been working on} {a few thoughts|some ideas|a couple of angles} on how {COMPANY} could {reach more|start more conversations with|get in front of more} of the right buyers.
Rendered outputs from that single line:
Notice that every combination reads as a natural sentence a real person would send, every option fits its slot grammatically, and the company merge tag is untouched. That is the standard: if any single combination reads awkwardly, the bank is broken and must be fixed before launch. Note the braces too: most platforms use different brace conventions for spintax groups and merge tags, and mixing them up sends a literal "{FIRST_NAME}" to a prospect.
Because filters fingerprint bodies. When hundreds of near-identical emails arrive across many inboxes at the same provider, that is the signature of bulk mail, and no clean wording hides it. An unspun template at volume tells every filter it touches: this is a blast. Spintax breaks the fingerprint. Each send looks slightly different, the way individually written emails do, so the pattern-match across the list fails.
The second reason is staleness. In our campaigns, once a single variant crosses roughly 2,000 cumulative sends, the pattern has been seen enough times that it degrades: the wording is stale to the ecosystem and reply rates decay. Spintax extends a winning variant's life by keeping its sends varied, and deepening the spin at that threshold extends it further. This is one specific case of a broader phenomenon we cover in why cold email campaigns decay: everything in outbound wears out with exposure, and variation is the counter.
Spin density should vary by section, because different lines carry different amounts of meaning. Housekeeping lines carry almost none, so they tolerate huge variation. Fact lines carry everything, so they get no spin at all. Here is the density map we apply to every campaign:
At launch, light body spin is fine. The CTA and opt-out banks are always in, but a new variant at low volume does not need deep body spin, and your effort is better spent on the offer and the list. The investment case changes as sends accumulate:
| Cumulative sends per variant | What to do |
|---|---|
| 0 to ~2,000 | Light body spin is fine. CTA bank (10 to 30+ options) and full opt-out bank always in from day one. |
| ~2,000 and beyond | Deepen the body spin: more spin points per line, bigger banks. Add personalisation tokens, but only genuinely relevant ones. Beyond first name and company there often are none, and forcing a token in reads worse than leaving it out. |
| Merged variants | Merging near-identical variants pools their send counts. Judge the ~2,000 threshold on the merged cumulative total, not the count since the merge. |
The core test for any phrase: if I swap this for a synonym, does the meaning, the proof, or the specificity change at all? No means safe to spin. Yes means protect it. When in doubt, don't spin it.
This never-spin list is also why spintax and A/B testing are different tools that must not blur into each other. Spintax varies the wording of one message; an A/B variant tests a genuinely different message, a new angle, offer, or CTA. If your spin options drift the meaning, you are accidentally running an uncontrolled test inside a single variant, and your results become unreadable. Keep the meaning locked in spin, and test message changes properly, as we lay out in our cold email A/B testing guide.
Render samples and read them as a prospect would. Pick several random combinations from the spin blocks and read each one end to end; every combination must read as a natural, grammatical, sensible email. Most teams skip this step, and it is the one that catches everything, because spintax errors are combination errors: each option looks fine alone and breaks only next to a particular neighbour.
The specific checks we run on every spun email:
We enforce this because we learned it the hard way. A formatting convention once drifted between our spintax rules and our sending platform's merge-tag syntax, the two use different brace styles, and the mismatch leaked into live copy before we caught it. Nothing teaches you to render samples like discovering that a rule inconsistency shipped to real inboxes. The render-and-read check is now a blocking step in our pre-launch QA, alongside the spam scan and list checks, and no campaign goes out without it.
Spintax is a syntax for embedding variants inside copy, written as {option one|option two|option three}. Each time the email sends, the tool picks one option per group, so every recipient gets a slightly different body. The message stays the same, the wording varies, and filters can't fingerprint an identical template across the list.
Yes, at volume. Mailbox filters fingerprint identical or near-identical bodies arriving across many inboxes, which is exactly what an unspun template looks like. Spintax breaks that pattern so each send reads as an individually written email. It doesn't fix a burned domain, but it removes one of the clearest bulk-mail signals.
It varies by section. Housekeeping lines get the biggest banks: the CTA line gets 10 to 30+ options and the opt-out line uses a full standing bank. The body gets multiple spin points per line at word, phrase, and clause level. Fact-carrying sentences get zero spin. At launch, light body spin is fine.
Merge tags, brand and product names, tool names, numbers and metrics, named case studies with their results, the offer's unique mechanism, and any literal reply word the prospect is told to type. If swapping a phrase would change a fact, weaken proof, or lose the offer's specificity, protect it.
Once a variant crosses roughly 2,000 cumulative sends. Past that point the pattern goes stale and reply rates decay, so deepen the body spin with more spin points and bigger banks, and add personalisation tokens only where they're genuinely relevant. If you merged near-identical variants, judge the threshold on their pooled send total.
Render sample combinations and read them as a prospect would. Every option must fit its slot grammatically, options in a block should be roughly even in length, the register must match the original, and no rendered version may change a fact. If any random combination reads awkwardly, fix the bank before launch.
Want outbound like this run for you, end to end?
Book A Call
Campaigns do not die randomly. They decay through identifiable mechanisms you can read in your numbers.

The control-plus-variants system we run across client campaigns, and the decision bars that stop feelings and tiny samples deciding your tests.

Verification is not optional for scraped or built lists. Here is exactly when to verify, what verifiers can and cannot catch, and how not to overpay for it.