Checklist: Setting Up for Success
Black Friday falls on November 27 this year and Cyber Monday on November 30. Inbox placement during those days is decided by what you send in the weeks before. Mailbox providers like Gmail, Yahoo and Microsoft judge you on recent history, so a sudden change in volume, list quality or engagement in November is treated as a risk.
The steps below are the ones we see make the biggest difference. Most of them take a few weeks to show results, so start now. Our deliverability team monitors your traffic throughout the season, and the better prepared you are, the less there is to fix.
1. Get authentication in good shape
Gmail, Yahoo and Microsoft all require bulk senders to authenticate their mail, and unauthenticated mail is the first to be filtered when volume peaks. Check these before the season, not during it:
| Record | Target | Why it matters |
|---|---|---|
| DMARC | p=quarantine or p=reject, with an rua= tag for reporting | p=none only monitors; enforcement protects your brand from spoofing |
| DNS TTL | 3600 seconds (1 hour) or more | Very short TTLs mean more lookups, and resolvers can fail to return your records at peak, especially for Microsoft sends |
Mailkit's knowledge base explains how to set up SPF records and a DMARC record with Mailkit reporting. Mailkit checks that a minimal required DMARC record is present, but not that it is enforced at p=quarantine or reject, which provides better protection for your domains. Additionally, without an rua= tag in the DMARC record, you are missing out on the best benefit of having DMARC in the first place (the reporting aspect).
If your DMARC policy is still at p=none, review your DMARC reports first and make sure every legitimate sender passes. Then move to quarantine, and later to reject. Make any of these changes now, in October. Don't rotate keys or tighten DMARC in the middle of November.
2. Separate marketing and transactional mail
Order confirmations, shipping updates and password resets must arrive on time, and Black Friday is when they matter most. If they share a reputation with your promotions or marketing mail, one bad campaign can delay every receipt.
Keep the two streams clearly apart:
- Different sending subdomains, for example news.yourbrand.com for marketing and mail.yourbrand.com for transactional. Each builds its own reputation.
- Different sender addresses, so recipients and mailbox providers can tell an offer from a receipt.
- No promotions in transactional mail. A large discount banner in an order confirmation makes it marketing in the eyes of filters and the law.
In Mailkit, send transactional messages as transactional campaigns rather than reusing marketing campaigns, and contact us if you want to review how your streams are set up before the season.
3. Secure your signup sources
Every bad address that gets onto your list costs you later. The weeks before Black Friday bring a rush of signups from contests, discount pop-ups and checkout forms, and also bots, typos and spam traps. Protect every form that feeds your list:
- Email validation: check syntax and that the domain can receive mail before accepting the address.
- reCAPTCHA or a similar challenge: stop bots from flooding your forms with fake or malicious addresses.
- Typo catching: suggest a fix for common domain mistakes, like gmial.com or yaho.com, before the form is submitted. We can recommend this open source option for typo catching.
- Include the signup source: In the event that you are seeing issues crop up from a particular source, identifying that source clearly can help you remove all contacts from the poor quality source at once.
- Double opt-in (DOI): send a confirmation email and add the contact only after they click it. This is the strongest protection against traps and fake signups.
The easiest way to get this right is Mailkit's subscribe form generator, found under Profile / Subscribe forms. The code it generates for your website already handles double opt-in, syntax checking and typo catching, and for extra security we recommend adding reCAPTCHA and email validation on top. If you use your own forms, apply all five protections to each one.
- List every source that adds contacts: website forms, pop-ups, checkout, contests, imports.
- Replace or protect any form without validation, bot protection and DOI.
4. Prune your list and build engagement cohorts
A smaller, engaged list delivers better than a large, stale one. Before the season, remove addresses that only hurt your reputation. This step is especially relevant if you skipped Step 3 above before now:
- Long-term inactives that haven't opened or clicked in 6–12 months (adjust for your purchase cycle).
- Suspected spam traps: old imports, addresses never confirmed, and obvious typo domains.
- Role addresses (info@, admin@) that were never actively subscribed.
Then split the remaining audience into cohorts by engagement, and send to each at a different rate. In Mailkit, the Engagement score rates every recipient from 0 to 5 based on how they respond to your mail. New recipients start at 3. Each score also has a trend showing whether a recipient is warming up or cooling off.
| Cohort | Engagement score | Suggested approach in the busy season |
|---|---|---|
| Most engaged | 4–5 | Every campaign, including early access and first-wave offers |
| Neutral and new | 3 | Regular cadence; watch the trend |
| Cooling off | 1–2, or a negative trend | Reduced frequency, strongest offers only |
| Disengaged | 0 | Re-engagement campaign, low volume, or suppress (see section 7) |
You can target cohorts directly when sending a campaign with delivery capping, limiting each send to recipients with a given score or trend. Start your volume ramp with the top cohort and add lower cohorts only while metrics stay healthy.
5. Increase volume gradually
If you plan to send more in November than you do today, raise volume by no more than 20% over the previous day's sends. Mailbox providers read a sudden jump as a red flag, and respond with deferrals, throttling, or spam folder placement.
At 20% per day, doubling your volume takes about four days, and tripling it about a week. Each step only works if engagement holds, so check bounces, complaints and deferrals before every increase.
- Write down your current daily volume and your planned peak.
- Work backwards from your peak date to set the start of your ramp.
- Pause the ramp if bounces, complaints or deferrals rise.
- Start the ramp with your most engaged contacts.
6. Send at a slower rate
Spreading a campaign over time is safer than releasing it all at once. Mailbox providers watch how many messages arrive from you per minute. A burst of hundreds of thousands in a few minutes can trigger deferrals, especially at Microsoft and Yahoo, and deferred mail arrives late or not at all.
A slower, steady send also leaves room to react. If early batches show rising bounces or complaints, you can stop the campaign before it reaches the whole list. It also protects your website and customer service from a traffic spike when every recipient clicks at once.
In Mailkit, you can set this per campaign with sending rate limits. Tick "Enable sending rate limits" when scheduling, then set a volume and time period, such as 500 messages per minute. It works for immediate, unattended, and recurring deliveries.
- Set a sending rate limit on every large busy-season campaign.
- Schedule large sends early enough to finish before your offer goes live.
- Watch the first hour of delivery before letting the rest go out.
7. Re-engaging an older list
Sending a Black Friday offer to an old, unmailed list is one of the riskiest things you can do before the season, and it’s the single biggest contributor of spikes in complaints and bounces. Unfortunately, we see this all the time. It’s a problem because old lists contain addresses that have been abandoned or turned into spam traps, and people who no longer remember you. A single send can bring bounces, trap hits and complaints that damage the reputation your whole program relies on in November.
If you want to bring an older list back, do it now, weeks before the peak, and do it carefully:
- Validate the list first. Remove invalid addresses, known bounces and risky domains before anything is sent. You can do this using a third-party solution, such as Bouncer.
- Split it by age. Group contacts by when they last opened, clicked, or bought. Start with the most recent group and leave the oldest for last, sending in smaller batches as you go backwards.
- Incorporate inactives into regular sending at a rate no higher than ~5-10% of regular sending volume. Try mixing in some of the less active list members into your typical sending, so you have at least one touchpoint before the busy season begins.
- Send a re-engagement message to inactives who do not engage. Remind people who you are and why they signed up, and ask whether they want to keep hearing from you. Make unsubscribing easy - unsubscribes are always better than complaints.
- Send in small batches at a slow rate. Use a sending rate limit and check bounces and complaints after each batch before sending the next.
- Keep only the people who respond and/or do not bounce. Contacts who open or click move into your active cohorts. Suppress those who don't respond after two or three attempts.
- Stop if the numbers go wrong. If a batch shows high bounces or complaints, stop and don't send the older groups at all.
You can also use the Mailkit Engagement score for contacts already on your list. Target recipients with a low score or a declining trend with a reactivation campaign before they become fully disengaged.
If the list hasn't been mailed in more than two years, talk to us before sending anything. In many cases it's safer not to send at all.
Checklist
- ☐ Check DMARC (quarantine or reject, rua=) and SPF and DNS TTLs (3600+).
- ☐ Keep marketing and transactional mail on separate streams.
- ☐ Protect every signup form with validation, reCAPTCHA, typo catching and double opt-in.
- ☐ Remove bounces, long-term inactives and suspected traps.
- ☐ Build cohorts with the Engagement score and target them with delivery capping.
- ☐ Plan your volume ramp, no more than 20% above the previous day.
- ☐ Set sending rate limits on large campaigns.
- ☐ Re-engage older contacts now, or leave them out of the season.
Want help preparing your account? Contact us at helpdesk@mailkit.com.