Blog content calendar — 90-day plan
Set up a rolling 90-day blog calendar in SGEN — categories, draft pipeline, scheduled publish, and social cross-post
Most blogs die in week six. The first three posts land on schedule, the next two slip a week, and by post seven the calendar is a memory. The cause is not laziness — it is the absence of a system that survives a busy week.
This recipe sets up a 90-day blog content calendar inside SGEN. Categories carry topic discipline. Drafts move through a fixed pipeline. The scheduled-publish queue handles the actual go-live. Social cross-posts piggy-back on the same artifacts. The calendar runs itself for a quarter at a time.
What is this for?
Use this recipe to set up a blog calendar that survives the week the writer is sick, the week the client launch slips, and the week the team is at an offsite. The output is a rolling 90-day plan with at least the next 30 days in scheduled-publish state.
The end state after setup:
- A category structure that maps to the brand's content pillars (3 to 5 categories).
- A draft pipeline with five named states: idea, draft, review, scheduled, published.
- A scheduled-publish queue with at least 12 posts dated forward 30 to 90 days.
- A social cross-post recipe that pulls the post excerpt, image, and link automatically.
- A weekly check-in cadence that catches a slipping post before it slips.
Good use cases
Brand blog with a small team. One writer plus a reviewer. The calendar prevents the "what should I write next?" question from eating the writer's first hour every Monday.
Multi-author blog. Two to five writers each owning a category. The calendar shows whose post is up next and prevents two posts in the same category landing in the same week.
Content-led marketing program. Blog is the top of the funnel. The calendar aligns post topics with product launches, seasonal campaigns, and email-list themes for the quarter.
What NOT to use this for
- Daily news posts. A news desk needs a different cadence — same-day publish, no 30-day queue. This recipe is built for evergreen-leaning content, not breaking news.
- One-off campaigns. A single launch announcement does not need a 90-day plan. Use the product-launch playbook instead.
- Internal company updates. Those live in the team wiki, not the public blog. The calendar discipline is the same; the surface is different.
How this connects to other features
- Blog — every post is a Blog entry. Categories carry the topic structure. Tags carry the sub-topic detail.
- Pages + SG-Builder — category landing pages and the main
/blog/index are SG-Builder pages. Build them once; they update automatically as posts publish. - Forms — email-capture forms on category pages feed the newsletter list. New posts ping that list weekly or bi-weekly.
- Custom Codes — open-graph image and schema markup ride on each post. The schema-org
BlogPostingmarkup is set once in the Custom Codes layer. - Media library — every post gets a hero image. Upload with WebP and compression toggled on; the calendar respects the existing asset pipeline.
Before you start
You are signed in as an Administrator or Editor. You have alignment with whoever sets the brand's content strategy — pillar topics, audience, voice.
You have a list of 12 to 24 post ideas for the next quarter, even if rough. The calendar starts thin and fills in as the team writes. You have an email list integration set up if newsletter cross-post is part of the plan.
Where to find it
| Surface | Admin path | Owner |
|---|---|---|
| Categories | Sidebar → Blog → Categories | Marketing lead |
| Posts | Sidebar → Blog → All Posts | Writers |
| Scheduled queue | Sidebar → Blog → All Posts → Filter: Scheduled | Marketing lead |
| Media library | Sidebar → Media | Writers + designers |
| Email integration | Sidebar → Forms → Integrations | Marketing lead |
90-day topic grid — reference shape
The grid is the planning tool. The Blog admin is the execution tool. This is the shape of a standard 90-day grid for a five-category blog running one post per week:
| Week | Category | Topic (placeholder) | Status | Writer |
|---|---|---|---|---|
| Week 1 | How-to | Setting up [feature] for the first time | Scheduled | Ada |
| Week 2 | Customer stories | How [customer] reached [outcome] | Draft | Grace |
| Week 3 | Product | [Feature] shipped — what it means | Scheduled | Alan |
| Week 4 | Industry | [Topic] is shifting — here is what to watch | Idea | Ada |
| Week 5 | How-to | Advanced [workflow] in 5 steps | Scheduled | Grace |
| Week 6 | Customer stories | [Customer] 6-month check-in | Draft | Alan |
| Week 7 | Resources | The [topic] toolkit — 8 links | Idea | — |
| Week 8 | Product | [Feature] — 3 months in | Scheduled | Ada |
| Week 9 | Industry | What [trend] means for [audience] | Idea | — |
| Week 10 | How-to | [Workflow] for teams of 3 or fewer | Scheduled | Grace |
| Week 11 | Customer stories | [Customer] joins the [product] team | Idea | — |
| Week 12 | Product | Quarter recap and what is next | Draft | Alan |
| Week 13 | Resources | Year's best: the [topic] reading list | Idea | — |
The Idea column holds the topic backlog. Fill it from the topic grid meeting at the start of the quarter, not from a blank page on Monday morning.
Steps
1. Lock the category structure
Navigate to Blog → Categories. The categories are the spine of the calendar. Three to five is the sweet spot — fewer and the calendar feels generic, more and the writer cannot remember what belongs where.
Pick category names that match the brand's content pillars. Examples that work:
- For a SaaS marketing blog — Product, How-to, Customer stories, Industry context.
- For an agency blog — Case studies, Process, Field notes, Resources.
- For a creator blog — Tutorials, Behind the scenes, Tools, Roundups.
Avoid generic categories like "News" or "Updates" — they collect everything and lose meaning. Create the categories now; renaming them later breaks slugs and links.
2. Sketch the 90-day topic grid
In a spreadsheet (or a doc — the format is not the point), draw a grid: 12 to 14 rows for weeks, columns for category. Fill in one post topic per week.
Two rules of thumb:
- Rotate categories so the same one does not land two weeks running. Variety holds attention.
- Tie at least one post per month to a product event — a launch, a season, a planned campaign. Those posts pull the most reader interest.
The grid is the plan. The Blog admin is the execution surface. Do not try to plan inside the Blog admin — the admin shows one post at a time and hides the shape of the quarter.
3. Set up the draft pipeline
Each post moves through five states inside SGEN:
| State | What it means | Who owns it |
|---|---|---|
| Idea | A title and a one-line angle. No body yet. | Marketing lead |
| Draft | Body written. Image picked. Tags set. | Writer |
| Review | Body edited. Voice checked. Links verified. | Reviewer |
| Scheduled | Publish date set. Queue position confirmed. | Marketing lead |
| Published | Live on the blog. | Auto |
SGEN's built-in post statuses cover Draft, Scheduled, and Published. For Idea and Review, use a tag prefix on the post — idea- and review-. Filter the All Posts view by tag to see what is at each stage.
4. Create the first 12 scheduled posts
Navigate to Blog → + Add New. For each of the next 12 weeks, create a post:
- Title — placeholder from the grid is fine.
- Category — pick from step 1.
- Status — Draft for now; will flip to Scheduled in step 6.
- Publish date — set to the planned go-live, even if the body is empty.
The point is to populate the calendar with placeholders. Real bodies arrive as the writer works through the queue. The presence of 12 scheduled placeholders prevents the "what should I write next?" stall.
5. Write the first three posts in full
The first three posts are the calendar's proof of concept. If those land cleanly, the system holds. If they slip, fix the cause before adding more.
Per post, target output:
- Headline — 6 to 12 words, specific.
- Lead paragraph — 2 to 4 sentences, no filler.
- Body — 600 to 1,500 words, depending on category. How-to runs long, field notes run short.
- Hero image — 1200 × 630 px, WebP, compressed.
- Excerpt — 1 to 2 sentences, used by social cross-post and the blog index.
- Tags — 3 to 7, drawn from a controlled vocabulary the team agrees on.
Save as Draft. Run through the review state. Once the reviewer signs off, move to step 6.
6. Move posts to Scheduled status
In the post edit screen, change Status from Draft to Scheduled. Confirm the publish date is the one from the grid.
The Scheduled queue is the calendar's front line. Filter All Posts by Status = Scheduled and sort by publish date ascending. The team sees the next two weeks at a glance.
Two discipline rules:
- The Scheduled queue should always hold at least 4 posts forward. Below 4 is the early-warning sign that the calendar is slipping.
- Posts in Scheduled state cannot be edited casually. Edits go through the same review path as drafts — change the status back to Draft, edit, then re-schedule.
7. Set up the social cross-post
Each post needs a social variant that goes out within the hour of publish. Per channel:
- LinkedIn — 4 to 8 sentences. One architectural specific. Link to the post.
- X — 1 to 3 sentences. News-format if relevant. Link to the post.
- Newsletter — a one-line teaser plus the post link, included in the weekly send.
In SGEN, the post excerpt is the source of truth — it appears in the open-graph preview and the social-card render. Write it once; it carries across channels.
Schedule the social posts at the same time as the blog publish. If the blog publishes at 09:00, the social posts go out between 09:00 and 09:15.
8. Set the weekly check-in
Block 30 minutes every Monday for a calendar check-in. Three questions:
- Did last week's scheduled post publish? Check the Published list.
- How many posts are in the Scheduled queue 4 weeks forward? Below 4 is a warning.
- What is the topic for two weeks from now? If the slot is empty, draft a placeholder today.
The check-in is the single most important piece of this recipe. The calendar survives because someone checks it weekly. Skip the check-in for two weeks and the queue empties.
What success looks like
After setup, week four:
- Three posts have published on schedule.
- The Scheduled queue holds 8 to 12 posts dated forward 30 to 90 days.
- Each published post has a matching set of social posts that went out within an hour of publish.
- The category landing pages show a clean rotation across the 3 to 5 pillars.
- The blog index
/blog/shows the published posts in reverse-chronological order with hero images, excerpts, and category tags. - The Monday check-in is a 30-minute meeting with no surprises.
What to do if it does not work
A scheduled post did not publish on its date. The post is still in Draft status, or the publish date was in the past at the moment it was set to Scheduled. Open the post, confirm Status = Scheduled and the date is forward of now, and re-save.
The category landing page shows the wrong posts. A post is tagged in two categories and the landing page is pulling from both. SGEN posts can sit in multiple categories, but for the calendar's discipline, pick one primary category per post.
The Scheduled queue drops below 4 posts forward. The team is writing slower than the calendar planned. Either tighten the publish cadence (weekly to bi-weekly) or move one of the next month's planned posts to a placeholder and write it on a tighter timeline.
The social cross-post is pulling the wrong image. The open-graph image on the post is not set, so social platforms fall back to whatever they find on the page. Open the post, add an open-graph image (or confirm the hero image is being used as the OG fallback), and re-share.
Two posts in the same category landed in the same week. The category-rotation rule was broken. Re-order the Scheduled queue so the two posts are at least three weeks apart. The blog index will still show both, but the category landing page rotation reads cleanly.
A reviewer holds a post for too long. The Review state is collecting drafts. Set a 48-hour rule — drafts in Review state for more than two days move back to Draft with a note. The reviewer either reviews in time or the post stays in the writer's hands.
Examples
Brand blog with a small team. Writer plus reviewer. Four categories: Product, How-to, Customer stories, Industry. Cadence is one post per week. The 90-day calendar holds 12 to 13 posts. Monday check-in catches the slip; Friday is the publish day.
Multi-author blog. Five writers, each owning a category. Cadence is two posts per week, rotating categories so each one publishes every other week. The Scheduled queue holds 16 to 18 posts forward. The Monday check-in includes a category-level look at who is ahead and who is behind.
Content-led marketing program. Blog is the top of the funnel. One post per week ties to a product event. The other posts rotate through the pillars. The 90-day calendar maps to the quarterly campaign plan, with launch posts pre-dated against the launch calendar.
Agency blog tied to client work. Four categories: Case studies, Process, Field notes, Resources. Cadence is bi-weekly. Case studies pull from the most recent client launches; field notes come from the team's working week. The calendar prevents a case-study post landing the same week as a competing field note.
Creator blog with one author. One writer, no reviewer. Three categories: Tutorials, Tools, Roundups. Cadence is one post every 10 days. The 90-day calendar holds 9 posts. The check-in is a 15-minute self-review every Monday.
Variations
Bi-weekly cadence. One post every two weeks instead of weekly. The Scheduled queue holds 6 to 7 posts forward for 90 days. The Monday check-in becomes a bi-weekly check-in but the structure is identical. Bi-weekly works for teams where the writer also does other work — the lower pressure means posts are more finished when they ship.
Category-owned calendars. Each writer owns a category and manages their own sub-queue. The marketing lead owns the overall calendar view and the cross-category rotation. Writers manage their own Draft-to-Scheduled pipeline; the marketing lead approves the schedule once per week. This approach scales to five-plus writers without a bottleneck at the marketing lead.
Campaign-aligned quarter. The 90-day grid maps to the quarterly campaign plan. Three or four posts per quarter tie directly to campaign launches or product events. The remaining posts fill in with evergreen content. The campaign-aligned posts are planned and scheduled six to eight weeks in advance; the evergreen posts are planned four weeks in advance. This prevents a launch week where the blog has no post.
Video-first calendar. The primary format is video (YouTube or embedded on the site). The written recap is a secondary artifact — 400 to 600 words, published alongside the video. The calendar grid has a video-shoot column alongside the written-post column. The Scheduled queue holds the video publish date; the written recap is always drafted the same day the video is recorded.
Anti-patterns
Planning inside the Blog admin. The Blog admin shows one post at a time. Planning in it hides the shape of the quarter — which categories are stacking up, which weeks are empty. Use a spreadsheet for the 90-day grid and the Blog admin for execution only.
Setting posts to Scheduled with an empty body. A post can be set to Scheduled with no body, which means it publishes an empty post on its date. Set the publish date early; leave the status as Draft until the body is reviewed and approved.
Too many categories. More than five categories fragments the calendar. Each additional category reduces the discipline that keeps the calendar coherent. If a topic does not fit one of the three to five core categories, it either belongs under an existing category or it should be a tag.
Skipping the Monday check-in. Two missed check-ins in a row means the queue drops below four posts and the calendar starts slipping. Block the 30 minutes on the calendar as a recurring meeting, not a task.
Related recipes
- Author profile system — for multi-author calendars, the author system keeps bylines clean and category ownership clear
- Product launch playbook — coordinate launch-week blog posts with the rest of the launch surface
- Case study publishing workflow — case studies are a natural calendar pillar; this recipe covers the full interview-to-publish flow
Related reading
Last updated: 2026-05-25
