The blog · Tools & Stack · 8 min

Which words send a cold email to spam?

The 125 terms on our 2024 spam list fall into four kinds, money, urgency, promises and protest, and a second AI column in the enrichment table strips them before the email leaves.

A sealed envelope on a dark dotted sea, small orange embers peeling off it and sinking, a lit harbor ahead. Artwork from The Demand Compass.

Words like "free", "guaranteed", "buy now", "no obligation", "risk-free", "act now" and "this isn't spam" raise a cold email's chance of landing in the spam folder, because they are the vocabulary of the mail that filters were trained on. Our archive list, compiled in September 2024, runs to 125 terms, and most are one of four kinds: money words, urgency words, promises, and the telltale phrases a sender uses to protest innocence. No single word condemns an email, and a clean vocabulary does not save one sent from a burned domain. The list is a hygiene floor, not a deliverability strategy, and the cheapest way to enforce it is a second AI pass in your enrichment table that swaps each spam word for a plain one before the email leaves.

Which words are on the spam list?

The list we kept in September 2024 has 125 terms, and reading it in groups says more than reading it alphabetically. Money words: dollar signs, "cash", "cheap", "discount", "bargain", "credit", "loans", "mortgage rates", "refinance", "income", "earn", "investment", "unsecured debt". Urgency words: "act", "urgent", "limited", "apply", "order", "buy now", "claim", "win", "prize", "congratulations". Promises: "guaranteed", "100%", "risk-free", "money-back", "no catch", "no cost", "no fees", "no hidden costs", "no obligation", "no strings attached", "no questions asked", "lifetime", "unlimited". And the protest words, which are the most revealing category: "this isn't spam", "this isn't junk", "not junk", "we hate spam", "sent in compliance", "in accordance with laws", "unsolicited", "opt in", "removal".

Then there is the vocabulary of mass mailing itself: "bulk email", "direct email", "direct marketing", "mass email", "internet marketing", "online marketing", "marketing solution", "search engine", "web traffic", "join millions", "multi-level marketing", "work from home". And the pharmacy and diet aisle that gave the filters their earliest training data: "weight loss", "lose weight", "cures", "human growth hormone", and three drug names that have no business in a B2B email to begin with.

The full list is at the end of this post. A handful of the entries are ordinary business words that turn risky only in the company of the others: "offer", "deal", "quote", "rates", "trial", "free-trial", "score", "certified", "warranty", "terms and conditions". You will not stop using the word "quote". You will stop writing "claim your free trial, no obligation, act now".

Why do these words hurt a cold email?

Spam filters learned what spam looks like from decades of it, and this vocabulary is the fingerprint of the mail they were built to catch. The words cluster around four intentions a legitimate B2B email rarely needs to voice: get money from the reader, rush the reader, promise the reader something for nothing, and reassure the reader that this is not what it looks like. A pitch that leans on any of the four reads like the training set.

An email that has to say it isn't spam has already told the filter what it is.

The protest category is the one that catches thoughtful senders. Someone worried about deliverability adds a line saying the message is sent in compliance, or that they hate spam too, and that line is a stronger signal than anything else in the body, the same kind of read the Demand Compass takes on an account before a single rep reaches out. An email that has to say it isn't spam has already told the filter what it is.

Do spam words matter more than sender reputation?

No. The word list is a floor, and most cold email that lands in spam gets there for reasons no vocabulary can fix: a sending domain with no warm-up, a mailbox that sends too much too fast, a list full of addresses that bounce, and a history of recipients who never open. In one of our own deployments, deliverability was the slowest asset to build and the easiest to burn: 35 warmed domains and 104 mailboxes running at a 0.8 percent bounce rate with zero spam flags, and the company's core domain never carried a cold send. That infrastructure decides whether the inbox opens the door. The words decide whether what walks through it looks like a person or a flyer.

So use the list for what it is. It removes the self-inflicted part of the problem, which is the part you control in the next hour. It does nothing for the part that takes weeks of warming and months of list discipline, and it says nothing about whether the account on the other end was worth the email in the first place.

How do you strip spam words automatically in Clay?

The workflow we ran in Clay in 2024 has two steps, and the second is the useful one. Step one generates a personalized email body as a column in the leads table, with an AI text column. Step two runs a second AI column over that body with one instruction: check the email against the spam list, replace any spam word with a similar word that keeps the meaning, do not invent new spam words, do not modify anything else, and print the modified body.

The prompt, as we wrote it then: "Check if this email body contains any of the following spam words and replace them for similar words so it maintains the meaning of the mail, and print the modified email body. Only modify if you find the words of the list, do not create your own spam words or modify them." Paste the 125 terms under it.

Two things make this work in practice. The instruction is narrow, so the model does not rewrite the email, it only substitutes. And the substitution happens before the sequencer ever sees the copy, so a template that drifted into "limited offer" language gets caught on every row, not on the one a person happened to proofread. Enrichment tables and AI columns have changed since 2024; the two-step shape has not.

125terms on the 2024 spam list
2AI columns in the Clay workflow
0.8%bounce rate on the warmed infrastructure that made the words matter at all

Which words can you keep?

Keep the ordinary business words when the sentence around them is ordinary. "Here is the quote you asked for" is a normal sentence. "Free quote, no obligation, limited time" is three list entries in a row. The list flags "trial" and "free-trial"; a product that has a free trial can still say so, once, in a sentence that describes it rather than pushes it. What the filter reads is density and company. One word from the list in a five-sentence email written to a person is noise. Six of them in a two-line pitch is the pattern.

The better test is the one from the rest of our method: an email to a Cold account is an awareness tool, not a closing tool, and reaching for urgency in it is usually a sign the sender does not yet know how to tell when the account is actually ready to buy. A sequence written to build recall, three emails, a clean ending, a different angle next round, has almost no reason to reach for urgency or promises in the first place. The spam vocabulary shows up when a cold email is asked to force a meeting. Stop asking it to, and the list mostly enforces itself.

The list, as we kept it in September 2024: $, 100%, accept credit cards, act, ad, all new, apply, as seen on, bargain, beneficiary, billing, bonus, bulk email, buy, buy direct, buy now, cancel at any time, cards accepted, cash, cash bonus, certified, cheap, check or money order, claim, claims, clearance, compare rates, confidentiality, congratulations, credit, credit card offers, cures, deal, dear friend, debt, direct email, direct marketing, discount, earn, exclusive, fantastic, free, free-trial, gift, guaranteed, hidden charges, human growth hormone, in accordance with laws, income, internet marketing, investment, join millions, lifetime, limited, loans, lose weight, luxury, marketing solution, mass email, meet singles, message contains, money-back, mortgage rates, multi-level marketing, name brand, no catch, no cost, no credit check, no fees, no gimmick, no hidden costs, no hidden fees, no interest, no investment, no obligation, no purchase necessary, no questions asked, no strings attached, not junk, notspam, obligation, offer, online marketing, opt in, order, passwords, pre-approved, prize, quote, rates, refinance, refund, removal, requires initial investment, reserves the right, risk-free, sale, score, search engine, sent in compliance, social security number, special deal, special promotion, subject to, terms and conditions, this isn't a scam, this isn't junk, this isn't spam, trial, undisclosed, unlimited, unsecured credit, unsecured debt, unsolicited, urgent, valium, viagra, vicodin, warranty, we hate spam, web traffic, weight loss, win, work from home, xanax.

Will removing these words get my cold email out of spam?

Only the part of the problem the words caused. If the sending domain is new, the volume ramped too fast, or the list bounces, the email lands in spam with a perfect vocabulary. Fix the infrastructure first; run the word pass on top.

Is the list still current?

It is from September 2024, and filters have kept moving toward sender reputation and engagement since then. The four intentions behind the list, money, urgency, promises, protest, are as reliable a tell as they were. Treat the exact entries as a starting point and the categories as the rule.

Can I just ask the AI to write the email without spam words in the first place?

You can add it to the first prompt, and you should. The second pass exists because generation prompts drift and templates get edited by hand. A separate column that only substitutes is cheap and catches what the first pass missed, on every row.

What about the subject line?

The same list applies, and the subject line is where the worst offenders concentrate: "free", "limited", "act now", "congratulations". A subject line written like the first line of a normal email to a colleague has no reason to contain any of them.