THE DEFINITIVE 2026 GUIDE
How to Make an Email Marketing Calendar
THE SHORT ANSWERBuild an email marketing calendar by setting a revenue goal, mapping the dates you already know about, then giving every send a segment, an offer, and an owner before anyone writes a subject line. Plan four to six weeks ahead, get the plan approved before production starts, and review results against the goal before you plan the next month.
The monthly planning process WIN runs for brands on Klaviyo, Braze, Mailchimp and Fishbowl—built to work in a spreadsheet and scale in software.
Most email calendars fail for the same three reasons
A calendar is not a list of dates. It is a commitment about how you intend to make a number.
The calendars that fall apart in week two almost always share the same defects. The first is that they start with ideas instead of a goal, so there is no way to tell whether nine sends is enough or four too many. The second is that they list send dates but not owners, so every row is technically someone's job and practically nobody's. The third is that they get built, sent to the client as a PDF, and then quietly abandoned the moment the first campaign slips, because there is nowhere for a change to live.
Fix those three things and the rest is mechanical.
The version below is the process my agency runs every month for brands on Klaviyo, Braze, Mailchimp and Fishbowl. It works in a spreadsheet. It works better in software. It does not work in your head.
The ten fields every calendar row needs
Skip any of these and you will end up rebuilding the row later. This is the minimum viable schema for a campaign calendar, and it is the exact field set in the free template further down this page.
| Field | What it captures | Why it earns its column |
|---|---|---|
| Goal | The single job this send is hired to do — acquire, convert, reactivate, educate, retain | Forces you to notice when eight of your ten sends are all doing the same job |
| Audience | The specific segment receiving it, not "the list" | The segment decides the offer, the subject line and the realistic revenue |
| Offer | The actual incentive and code, or "none" | Written down, an offer ladder becomes visible. Undocumented, you discount every week without meaning to |
| Send date | Date and time, in the recipient's timezone logic | Time matters as much as date. A 6am BFCM send and a 10am one are different campaigns |
| Channel | Email, SMS, or push | Stops SMS from being an afterthought bolted on the day before |
| Owner | The one person accountable for the send shipping | Not the team. One name |
| Status | Planned → Briefed → In design → In review → Approved → Scheduled → Sent | Status is what makes the calendar a working document instead of a wish |
| Approval date | The date the client or stakeholder signed off | The single most useful column when something goes wrong |
| Revenue target | What this send is expected to contribute | Ten rows that sum to the monthly goal, or the plan is not a plan |
| Results | Actual revenue and the one metric that explains it | Without this the calendar teaches you nothing next month |
Two of these get cut constantly and shouldn't be. Approval date is the column that ends the "we never approved that" conversation, and it costs nothing to fill in. Revenue target is the column that turns a content calendar into a revenue plan — if your ten planned sends sum to sixty percent of the monthly goal, you found that out in planning instead of on the 28th.
The process, in order
1. Start with the number, not the ideas
EMAILPILOT FEATURERevenue Analytics Dashboard
Before you open a calendar, write down what email and SMS need to produce this month. Pull the same month last year, then last month, and set a target you can defend. Everything downstream is a decision about how to close the gap between that number and zero.
2. Pull last month's actuals first
EMAILPILOT FEATURERevenue Analytics Dashboard
You cannot plan next month honestly without knowing which sends carried last month. Look at revenue per send, not open rate. You are looking for two things: the campaign types that over-delivered against their target, and the ones that quietly underperformed while looking busy.
3. Block the dates you don't control
EMAILPILOT FEATUREAI Calendar Planning
Holidays, product launches, inventory arrivals, shipping cutoffs, sale windows, the client's trade show. These are fixed. Put them in first so the flexible sends fit around them rather than colliding with them. Shipping deadlines are worth calling out: in our accounts they consistently outperform their forecast, and they are the sends most brands forget to plan.
4. Give every slot a job
EMAILPILOT FEATUREAI Calendar Planning
Assign a campaign type to each open slot before you name it. A healthy month for most DTC brands mixes promotional, product launch, educational, win-back, and retention or nurture sends. If your calendar is nine promotional sends and one newsletter, you don't have a calendar, you have a discount schedule.
5. Choose the segment before the subject line
EMAILPILOT FEATUREAI Calendar Planning
This is the step that separates plans that work from plans that read well. A 25% win-back offer sent to your engaged 30-day segment is money set on fire. The same offer sent to lapsed subscribers is one of the highest-ROI sends of the month. Decide who is receiving it, then decide what it says.
6. Set the offer ladder for the whole month at once
EMAILPILOT FEATUREAI Calendar Planning
Look at the offer column top to bottom. If you see 20% off, 20% off, 25% off, 20% off, you have trained the list to wait. Ladder deliberately: exclusive access for VIPs, free shipping or a gift-with-purchase for the broad list, and steeper discounting reserved for lapsed segments and end-of-month recovery.
7. Layer SMS as a companion, not a copy
EMAILPILOT FEATUREAI Calendar Planning
SMS earns its place when it does something email can't — a deadline reminder, a flash window, a shipping cutoff. Plan it on the same grid, on the same day as its email counterpart where it makes sense, with its own row and its own revenue target.
8. Assign an owner and a date to every stage
EMAILPILOT FEATUREAutomated Brief Generation · Asana
Brief due, design due, QA, approval, schedule. Working backwards from the send date, our workflow needs seven to ten business days per campaign; yours may be tighter. Put those dates on the row, not in someone's head.
9. Get the plan approved, not the finished email
EMAILPILOT FEATUREClient Approval Workflows
This is the highest-leverage change most teams can make. A client can review a month's calendar in a single sitting. Reviewing eleven finished emails one at a time, after design has already built them, stretches across weeks and generates rework that the calendar review would have prevented. Approve the strategy up front and production stops being a negotiation.
10. Put the review on the calendar too
EMAILPILOT FEATURERevenue Analytics Dashboard
Book the date you will sit down with the results column filled in. A calendar that never gets reviewed produces the same mediocre month twelve times.
A filled-in 30-day example
Below is a complete January for a DTC coffee roaster — ten sends against a $48,000 campaign revenue goal. The campaigns, dates, segments and offers are a real generated plan from EmailPilot's demo brand. The owner, approval date, revenue target and result columns are illustrative, added so you can see what a calendar looks like at the end of a month rather than the beginning. It is a worked example, not a client case study.
Month goal: $48,000 in campaign-attributed revenue. Planned: $48,000 across 10 sends. Actual: $46,180 (96.2%).
| Send date | Ch. | Campaign | Goal | Audience | Offer | Owner | Status | Approved | Target | Result |
|---|---|---|---|---|---|---|---|---|---|---|
| Jan 2, 10:17 | New Year New Brew | Reactivate post-holiday | Engaged (0–30 days) | Free shipping $35+ | Strategy | Sent | Dec 20 | $4,200 | $3,910 | |
| Jan 8, 11:00 | January Flash Sale | Convert | Engaged (0–30 days) | 20% off — FLASH20 | Copy | Sent | Dec 20 | $9,500 | $11,240 | |
| Jan 8, 11:05 | SMS | Flash Sale companion | Convert | Engaged (0–30 days) | 20% off — FLASH20 | Copy | Sent | Dec 20 | $2,800 | $2,150 |
| Jan 12, 09:30 | Colombia Huila launch | New product | Single Origin Enthusiasts | Free 2oz sample | Design | Sent | Jan 2 | $3,600 | $2,980 | |
| Jan 15, 08:00 | VIP Reserve early access | Retain / reward | VIP Connoisseurs | 24-hour early access | AM | Sent | Jan 2 | $5,400 | $6,720 | |
| Jan 18, 07:30 | Pour-over brewing tips | Educate | Engaged (0–30 days) | 15% off equipment | Copy | Sent | Jan 9 | $2,100 | $1,640 | |
| Jan 20, 10:00 | Subscription gear upsell | Cross-sell | Subscription Loyalists | 15% off — SUBGEAR | Strategy | Sent | Jan 9 | $3,200 | $3,050 | |
| Jan 22, 09:00 | Win-back: We miss you | Reactivate | Lapsed Subscribers | 25% off + free ship | AM | Sent | Jan 9 | $4,800 | $4,310 | |
| Jan 25, 10:17 | Subscription drive | Acquire subs | Engaged (0–30 days) | 15% off subscriptions | Strategy | Sent | Jan 16 | $4,400 | $3,890 | |
| Jan 28, 11:00 | Last chance — month end | Convert | Engaged (0–30 days) | 20% off — JAN20 | Copy | Sent | Jan 16 | $8,000 | $6,290 |
What this month actually taught us
The interesting part of a filled-in calendar is the variance column, not the total.
Two sends beat plan. The flash sale came in 18% over target, and the VIP early-access send — no discount at all, just twenty-four hours of exclusivity — came in 24% over. Three sends missed by more than a fifth. The worst was the SMS companion at 23% under, which went out five minutes after its own email and had nothing left to say. Then the educational send at 22% under, and the end-of-month "last chance" at 21% under — the third sitewide 20%-off send in four weeks.
Three legible lessons, none of which you get without the results column. Give SMS its own job and its own hour rather than firing it alongside the email. Educational sends need an offer chosen on purpose, not an equipment discount bolted on at the end. And this list responds to access and scarcity more than it responds to another sitewide discount — by week four, the discount had lost its edge. Next month moves budget toward segment-exclusive access and replaces the month-end repeat discount with a different mechanic.
How many emails should you actually send?
The honest answer is that cadence is a function of list health and offer variety, not a number you can copy off a blog. That said, the working range most established DTC brands land in is two to three campaign sends per week to engaged segments, with lapsed and unengaged segments touched far less frequently and on a different offer ladder.
The signal that matters more than frequency is whether each additional send has a distinct job and a distinct audience. Four sends a week to four different segments with four different offers is healthier than two sends a week that both go to everyone. Watch unsubscribe rate and revenue per recipient as you scale up, and stop scaling when revenue per send starts falling faster than total revenue rises.
Where spreadsheets stop working
A spreadsheet calendar is genuinely good, and it is where almost every brand should start. It stops being enough at a predictable point: when the plan needs to be approved by someone outside your team, when you are running more than a couple of brands, or when last month's results need to feed next month's plan automatically instead of by memory.
That is the problem EmailPilot was built to solve, and it is worth being specific about what it does rather than hand-waving at "AI."
It generates the plan from brand context, not from a blank grid. The Intelligence Hub holds brand voice, audience, positioning, campaign history and performance, and grades how complete that picture is — a letter grade and a score out of 100, with the specific gaps flagged by category. If your audience detail is thin, it tells you before generation, not after the client says "this doesn't sound like us."
Every generated campaign arrives with the fields filled. Not just a date and a name — send date and time, channel, campaign type, segment, two subject line variants, preview text, the offer, the hero headline, the CTA, and the strategic rationale for why the send exists. That is the same schema as the table above, populated.
The plan is approved as a plan. Client Approval Workflows turn the live calendar into a shareable review page. Clients comment inline, no account required, and every decision and revision is tracked. That is step nine of the process, running as software.
Approved campaigns become briefs. Automated Brief Generation converts the approved rows into production-ready direction for copy and design, and pushes them into Asana. Briefs stay editable before they go out.
Results come back to the calendar. The Revenue Analytics Dashboard tracks revenue by campaign and channel against the planned targets, so the variance analysis in the section above happens automatically rather than in a Sunday-night spreadsheet session.
Start in the spreadsheet. Move when the spreadsheet is costing you more time than it saves.
Questions people ask
How far ahead should an email marketing calendar be planned?+
Four to six weeks for the detailed plan, and a rough quarterly skeleton behind it. Six weeks gives production enough runway; further out than that and you are guessing at inventory and promotions that will change anyway. The quarterly skeleton exists so you are not surprised by Mother's Day in the third week of April.
What's the difference between an email marketing calendar and a content calendar?+
A content calendar plans publishing across channels — blog, social, email — and is organised around themes. An email marketing calendar plans sends against revenue and segments, and carries offers, audiences and targets that a content calendar has no column for. Most brands need both, and they should not be the same document.
Should campaigns and automated flows live on the same calendar?+
Flows shouldn't occupy dated rows, because they don't have send dates — they fire on triggers. But your calendar should show which flows are live, because a win-back campaign landing in the same week as your automated win-back flow is a bad experience and a wasted send. Keep flows on a reference tab, campaigns on the dated grid.
How many emails per week is too many?+
When revenue per send falls faster than total revenue rises, and when unsubscribes climb without a matching lift. That threshold is different for every list, which is why the honest answer is to scale up deliberately and watch two metrics rather than copy a number.
Who should own the calendar at an agency?+
One strategist owns the plan; individual sends have individual owners. The failure mode is a calendar owned by "the team," which means the plan drifts and nobody notices until a send is missed.
Do I need a separate calendar for SMS?+
No, and separating them is how brands end up sending an SMS and an email with the same offer forty minutes apart. Plan both on one grid with a channel column, so the whole week's contact load is visible at once.
What should be on the calendar for Black Friday?+
More rows than you think and earlier than you think. A working BFCM plan usually starts with early-access list building in the first week of November, a VIP window before the public sale, the main launch, at least one mid-weekend reminder, and a Cyber Monday close — each with its own segment and its own SMS decision.
How do I get a client to approve the calendar quickly?+
Send them the plan, not the emails, and give them one page with dates, audiences and offers visible at a glance. A calendar review is one sitting; reviewing finished creative one email at a time stretches across weeks and generates rework the calendar would have prevented.
About this guide
Damon Didier is the founder of EmailPilot and CEO of WIN, a Klaviyo Master Platinum retention marketing agency based in Plano, Texas. He has worked in email marketing for more than eighteen years and has spent the last five running WIN, where the team plans and executes email and SMS programs for B2C brands in the $15–80M revenue range across e-commerce, food and beverage, restaurant, and health and wellness.
Methodology. The process in this guide is the monthly planning workflow WIN runs across its client roster on four different email platforms — Klaviyo, Braze, Mailchimp and Fishbowl. The ten-field schema is the one we standardised on after enough months of rebuilding rows that were missing an owner or an approval date. The example calendar is a real generated plan from EmailPilot's demo brand, with owner, approval and result columns filled in to show the complete lifecycle of a calendar rather than only its planning state. EmailPilot exists because we got tired of running this process in spreadsheets across a dozen accounts.
Last reviewed: September 2026.
Calendar Drop
Get the calendar, filled in.
Download the 2026 email marketing calendar template — the same ten-field schema used above, in Excel and Google Sheets, with the filled 30-day example included so you are not starting from an empty grid.
Planning across more than one brand? EmailPilot generates the whole month from your brand context, routes it through client approval, and turns approved campaigns into briefs. Start a 7-day free trial
KEEP BUILDING
