Getting started
How to send bulk email without getting blocked
Updated 3 September 2026 · 7 min read · SendKernel
Sending bulk email successfully comes down to three things done before you write a word: send from a domain you own with SPF, DKIM, and DMARC configured, mail only people who explicitly asked to hear from you, and make your first campaign a small one so mistakes are cheap. The setup takes about an hour, most of which is waiting for DNS to propagate. Skipping it is why most first campaigns land in spam — not the subject line, and not the platform.
The short version
- You cannot send bulk email from a Gmail or Outlook address. You need a domain you can add DNS records to.
- Where your addresses came from predicts delivery better than anything you write.
- Send to your most engaged few hundred recipients first, then widen. Never start with the whole list.
- A postal address and a working unsubscribe link are legal requirements, not conventions.
What you need before you start
Two things, and neither can be substituted. The first is a domain you control — not a free mailbox address. Mail claiming to come from gmail.com but sent through a platform fails authentication against Gmail's own policy and gets rejected, so a From address at a free provider is a dead end regardless of which service you sign up for.
The second is a list of people who agreed to hear from you, and the standard here is narrower than most people assume. Someone who bought from you agreed to a receipt, not to a newsletter. A business card at a conference is not consent. A purchased list is not consent and will contain spam traps, which is the fastest way to lose a sending domain.
Step one: verify your domain (about 20 minutes)
Your sending platform gives you DNS records to publish. There are usually five: a few CNAMEs for DKIM, one TXT for SPF, one TXT for DMARC. You add them wherever your domain's DNS lives — the registrar, or a provider like Cloudflare — and then the platform checks them.
1Copy each record exactly
Name, type, and value. A trailing character or a missing dot is a failed check, and the error message will not tell you which one.
2Watch for your DNS provider appending the domain
The most common failure by a distance. Many providers add your domain to whatever you type, so entering the full hostname produces sk1._domainkey.example.com.example.com. Enter only the part before your domain when that happens.
3Publish exactly one SPF record
If your domain already has one for another service, merge the two into a single record rather than adding a second. Two SPF records is a permanent failure, not a combination.
4Wait, then check
Propagation is usually minutes and occasionally an hour. If a record does not appear after that, it is nearly always a typo or the appended-domain problem rather than a delay.
Step two: get your list in properly (about 15 minutes)
Export what you have as a CSV with an email column. Before importing, clean it — this is worth doing properly, because bounces from a dirty list damage the reputation you are about to need.
- Remove role addresses: info@, sales@, support@, admin@. They generate complaints out of proportion to their number and rarely belong to one person.
- Remove anything you cannot explain the origin of. If nobody can say how the address was collected, it is not consented.
- Keep your unsubscribe history and import it. Mailing someone who already opted out is the single worst thing you can do to your reputation.
- Do not deduplicate by hand — any decent platform does it on import, along with dropping malformed addresses.
Record how these people opted in while you still remember. Consent is something you may have to demonstrate later under GDPR or CASL, and reconstructing it two years afterwards is not possible.
Step three: what has to be in the email
Some of this is law rather than best practice, and the legal parts are not optional even for a first small send.
| Element | Required? | Why |
|---|---|---|
| A real postal address | Yes, by law | CAN-SPAM requires a valid physical address in every commercial message |
| A working unsubscribe link | Yes, by law | Must work without a login and be honoured within ten business days — do it immediately |
| One-click unsubscribe headers | Yes, at bulk volume | RFC 8058, required by Gmail, Yahoo, and Microsoft for bulk marketing mail |
| An accurate From name and subject | Yes, by law | Misleading headers or subject lines are prohibited outright |
| A plain-text alternative | No, but expected | Filters treat HTML-only messages with more suspicion |
Step four: the first send, deliberately small
Do not send to the whole list. Nothing about a first campaign is proven yet — not the authentication, not the list, not the rendering — and a bad first impression at scale is expensive to undo.
1Send to yourself first, at two different providers
One Gmail address, one Outlook or Yahoo address. Check it renders, check the links work, and open the raw headers to confirm SPF, DKIM, and DMARC all pass.
2Then to your most engaged few hundred
Recent customers, recent signups. Early positive engagement shapes how the rest of the campaign is treated, so lead with the people most likely to open.
3Wait a few hours and read the numbers
Bounces under 2% and complaints under 0.1% mean carry on. Above either, stop and find out why before sending to anyone else.
4Widen in stages
Roughly double each send rather than jumping to the whole list. A domain with no sending history that suddenly emits 40,000 messages looks exactly like a compromised account.
What to watch after it goes out
| Number | Healthy | Act when |
|---|---|---|
| Bounce rate | Under 2% | Over 2% — the list has a quality problem |
| Complaint rate | Under 0.1% | Over 0.1% — stop mailing unengaged segments |
| Unsubscribe rate | Under 0.5% | Over 1% — you are sending too often or to the wrong people |
| Open rate | Varies wildly | Useful as a trend, meaningless as an absolute since privacy features inflate it |
The two numbers that matter are bounces and complaints, because they are the ones mailbox providers are also watching. Open rate has been unreliable since privacy protection features began pre-fetching images, so use it to compare your own campaigns against each other and never as a benchmark against anyone else's.
Common mistakes on a first campaign
- Sending from a free mailbox domain. It cannot pass authentication and will not be delivered.
- Importing an old list and mailing all of it at once. The bounce spike alone can cost you the domain.
- Adding a second SPF record instead of merging into the existing one.
- Publishing DMARC at p=reject on day one, before knowing every system that sends as your domain.
- Treating a receipt as consent for marketing. It is not, and recipients report it as spam accordingly.
- Building an unsubscribe link that expires. An old newsletter then produces a complaint instead of an unsubscribe, which is worse for you in every way.
Questions people actually ask
- Can I send bulk email from Gmail or Outlook?
- Not to any real number of people. Consumer mailboxes cap outbound volume at a few hundred a day, there is no unsubscribe handling or bounce processing, and a From address at gmail.com sent through any other service fails authentication against Gmail's own published policy. You need a domain you control and a service built for it.
- How many emails can I send at once?
- Technically as many as your plan allows; practically, far fewer on a domain with no sending history. Start with a few hundred of your most engaged recipients and roughly double each send. A sudden jump from no volume to tens of thousands is one of the clearest signals of a compromised account, and it is treated that way.
- Do I legally need to include my address in a marketing email?
- Yes. US federal law requires a valid physical postal address in every commercial message, and equivalent rules apply in most other jurisdictions. It must be a real address where you can receive mail — a PO box registered to you is acceptable. You also need a functioning unsubscribe mechanism that works without a login.
- How long does it take to set up bulk email sending?
- About an hour of actual work, most of it waiting for DNS records to propagate. Domain verification is around twenty minutes, cleaning and importing a list is fifteen, and writing the first campaign is however long the writing takes. What extends this is almost always a DNS mistake — usually a provider appending your domain to a record you pasted in full.
- What is the cheapest way to send bulk email properly?
- Most platforms have a free tier that is enough to run a small list rather than merely to evaluate the product — commonly a few hundred to a few thousand contacts. Ours is 500 contacts with broadcasts included and no card required. Below a few thousand recipients, the free tiers are genuinely sufficient, and the honest advice is to use one until you outgrow it.
Set up a domain and send your first campaign free
500 contacts and 2,000 transactional emails, free and not time-limited. The assistant walks you through the DNS records and checks them for you, which is the part people get stuck on.
Start freeRead next
Why your email goes to spam, in the order worth checking
A diagnostic order for spam-folder problems: authentication first, list quality second, content last. Most of the internet has this sequence backwards.
The bulk sender rules for Gmail, Yahoo, and Microsoft, and what happens when you miss one
The 5,000-a-day threshold, the 0.3% complaint ceiling, and the authentication every mailbox provider now requires — with the failure codes you will see.
How to warm up a sending domain, with an actual schedule
A four-week volume schedule for a new sending domain, what to watch at each step, and how to tell a warm-up problem from a list problem.