Content Calendar
When to Use This Skill
Use this skill when the user needs to:
- Plan 30 days of content across one or more platforms
- Build a structured posting schedule mapped to content pillars and post types
- Create a Notion database to track content status from idea through published
- Generate starter Canva graphic templates for each content pillar
- Batch-plan content for Instagram, LinkedIn, X/Twitter, YouTube, TikTok, newsletter, or podcast
DO NOT use this skill for:
- Writing full-length blog posts or articles (use a content writing skill)
- Creating individual social media graphics on demand (use social-media-graphics)
- Managing an existing content calendar that already lives in Notion (the user should edit it directly)
- One-off post creation with no broader monthly plan
Content Pillar Framework
Every calendar is built on 3-5 content pillars. Pillars prevent random posting and make batching possible.
| Pillar Type |
Purpose |
Example (Fitness Coach) |
Example (SaaS Founder) |
| Education |
Teach your audience something actionable |
"3 exercises for desk workers" |
"How to reduce churn with onboarding emails" |
| Authority |
Showcase expertise, results, credentials |
"Client transformation: 12 weeks" |
"We hit $50K MRR — here's what worked" |
| Connection |
Build trust through personality and story |
"Why I became a trainer after burnout" |
"The worst bug I shipped and what it taught me" |
| Promotion |
Drive sales, signups, or conversions |
"Spots open for 1:1 coaching" |
"Try our free plan — no credit card needed" |
| Community |
Engage and involve the audience |
"What's your biggest gym struggle?" |
"Poll: What feature should we build next?" |
DEFAULT: 4 pillars — Education, Authority, Connection, Promotion. Add Community only if the user's strategy relies on audience engagement.
Common Posting Frequencies
| Schedule |
Posts/Week |
Best For |
Monthly Total |
| Light |
3 |
Solopreneurs with limited time, B2B LinkedIn-only |
12-13 |
| Standard |
5 |
Most creators, coaches, consultants |
21-22 |
| Active |
7 |
Full-time creators, brand accounts |
30 |
| Aggressive |
10-14 |
Multi-platform creators, agencies |
42-60 |
DEFAULT: 5 posts/week (Standard) — covers weekdays, leaves weekends free for batch creation.
Post Type Reference
| Post Type |
Platform Fit |
Engagement Level |
Production Effort |
| Carousel |
Instagram, LinkedIn |
High |
Medium |
| Reel/Short |
Instagram, TikTok, YouTube Shorts |
Very High |
High |
| Story |
Instagram, Facebook |
Medium |
Low |
| Text post |
X/Twitter, LinkedIn |
Medium |
Low |
| Link post |
LinkedIn, X/Twitter, Facebook |
Low |
Low |
| Thread |
X/Twitter |
High |
Medium |
| Image post |
Instagram, LinkedIn, Facebook |
Medium |
Medium |
| Newsletter |
Email |
High |
High |
| Long-form video |
YouTube |
Very High |
Very High |
Core Workflow
EVERY CALENDAR STARTS WITH CONTENT PILLARS — NEVER GENERATE POST IDEAS WITHOUT ESTABLISHING PILLARS FIRST.
Step 1: Understand
Gather these inputs from the user before generating anything:
- Business/niche — what they do and who they serve
- Content pillars — their 3-5 core topics (offer the framework table if they are unsure)
- Target platforms — which platforms they post on
- Posting frequency — how many posts per week (offer the frequency table if unsure)
- Audience — who they are trying to reach (demographics, pain points, goals)
- Upcoming events — product launches, sales, holidays, or milestones in the next 30 days
- Brand voice — tone descriptors (professional, casual, witty, motivational, direct)
If the user provides items 1-3, proceed with defaults for items 4-7. Ask only about missing critical details.
Brief template to present if the user gives a vague request:
I'll build your 30-day content calendar. Quick answers needed:
1. What's your business/niche?
2. What 3-5 topics do you post about? (I can help you pick)
3. Which platforms? (e.g., Instagram, LinkedIn, X/Twitter)
4. How many posts per week? (default: 5)
5. Who's your audience?
6. Any launches, sales, or events in the next 30 days?
7. Brand voice? (default: professional but approachable)
GATE: Do not proceed to Step 2 until you have at minimum: business/niche, platforms, and either user-provided or default-assigned content pillars.
Step 2: Generate
Build 30 days of content ideas mapped to pillars, platforms, post types, and dates.
Assign pillar distribution across the posting frequency:
For 5 posts/week with 4 pillars, the default split is:
- Education: 2x/week (40%)
- Authority: 1x/week (20%)
- Connection: 1x/week (20%)
- Promotion: 1x/week (20%)
Education always gets the highest share. Promotion never exceeds 25%.
Map post types to platforms — assign post types that match each platform's strengths:
- Instagram: carousel (2x), reel (1x), image (1x), story (bonus)
- LinkedIn: text post (2x), carousel (1x), link post (1x), image (1x)
- X/Twitter: text post (2x), thread (1x), link post (1x), image (1x)
Generate 30 days of post ideas with these fields per entry:
- Date (Day 1 through Day 30, starting from the user's preferred start date or next Monday)
- Platform
- Content Pillar
- Post Type (carousel, reel, story, text, link, thread, image, newsletter, video)
- Caption Idea (one sentence describing the post concept)
- Status (default: "Idea")
Weave in any upcoming events the user mentioned — place promotional posts 3 days before, day-of, and 1 day after each event.
Verify balance:
- Each pillar appears at least once per week
- No more than 2 promotional posts in a row
- Post types vary within each week (no 5 consecutive text posts)
- Platform coverage matches the user's list
Step 3: Present
Show the full calendar to the user for approval before creating anything in Notion or Canva.
- Present a summary table showing the first 7 days in detail:
## 30-Day Content Calendar Preview (Week 1)
| Day | Date | Platform | Pillar | Post Type | Caption Idea |
|-----|------|----------|--------|-----------|--------------|
| Mon | Mar 3 | Instagram | Education | Carousel | 5 morning habits that boosted my energy |
| Tue | Mar 4 | LinkedIn | Authority | Text post | How I helped a client lose 30 lbs in 12 weeks |
| Wed | Mar 5 | Instagram | Connection | Reel | Behind the scenes: my meal prep routine |
| Thu | Mar 6 | LinkedIn | Education | Carousel | The #1 mistake people make with protein intake |
| Fri | Mar 7 | Instagram | Promotion | Image | Spring coaching spots are open — link in bio |
Remaining 23 days follow the same pillar rotation and post type variety.
Total posts: 22 (5/week for 4 weeks + 2 bonus)
Pillar split: Education 40% | Authority 20% | Connection 20% | Promotion 20%
- Ask for approval:
Does this direction look right? I can:
- Swap any pillar assignments
- Change post types for specific days
- Add or remove platforms
- Adjust the posting frequency
Once approved, I'll create the full Notion database and Canva pillar templates.
GATE: Do not proceed to Step 4 until the user approves the calendar direction.
Step 4: Act
Create the Notion database and Canva starter templates.
4A: Create the Notion Database
Search for existing workspace context — call notion-search to check if the user has a content-related page or database already. If found, confirm whether to create the new database alongside it or independently.
Create the database — call notion-create-database with these properties:
| Property |
Type |
Purpose |
| Post Title |
Title |
The caption idea or working title |
| Date |
Date |
Scheduled publish date |
| Platform |
Select |
Instagram, LinkedIn, X/Twitter, YouTube, TikTok, Newsletter, Podcast |
| Pillar |
Select |
Education, Authority, Connection, Promotion, Community |
| Post Type |
Select |
Carousel, Reel, Story, Text Post, Link Post, Thread, Image, Newsletter, Video |
| Status |
Select |
Idea, Drafting, Ready, Scheduled, Published |
| Canva Link |
URL |
Link to the Canva graphic template for this post |
| Notes |
Rich text |
Additional context, hooks, references |
Database title: Content Calendar — [Month Year] (e.g., "Content Calendar — March 2026")
Populate the database — call notion-create-pages to add all 30 days of content as individual entries. Each page gets:
- Post Title set to the caption idea
- Date set to the scheduled date
- Platform, Pillar, Post Type, and Status filled from the generated calendar
- Status defaults to "Idea" for all entries
- Canva Link left empty (filled after Step 4B)
Confirm the database:
Notion database created: "Content Calendar — March 2026"
30 posts added across 4 weeks
Properties: Date, Platform, Pillar, Post Type, Status, Canva Link, Notes
All entries set to "Idea" status
Notion link: [database URL]
4B: Create Canva Starter Templates
Generate one starter graphic template per content pillar so the user has a branded starting point for each category of post.
Check for brand kit — call list-brand-kits to load the user's brand colors, fonts, and logo
Create a Canva folder — call create-folder with the name: Content Calendar — [Month Year]
Generate one template per pillar — for each of the user's content pillars, call generate-design with a prompt tailored to that pillar's purpose:
| Pillar |
Template Prompt Direction |
Dimensions |
| Education |
Clean layout with numbered list or tip format, room for 3-5 bullet points |
1080 x 1080 |
| Authority |
Bold headline with space for a metric or testimonial quote |
1080 x 1080 |
| Connection |
Casual, story-style layout with space for a personal photo or behind-the-scenes feel |
1080 x 1080 |
| Promotion |
Eye-catching CTA-focused design with urgency element and link/button placeholder |
1080 x 1080 |
| Community |
Question-centered design with engagement prompt and poll/response space |
1080 x 1080 |
Example generation prompt for an Education pillar template:
Social media post template, square 1080x1080.
Clean educational layout with a bold headline placeholder at top.
Space for 3-5 numbered tips or bullet points in the body.
Brand colors: [primary hex] background header, [secondary hex] accents.
Footer area with small logo placement and handle.
Modern, professional feel. Template style — text should look replaceable.
Get thumbnail for each template — call get-design-thumbnail for each generated design to verify quality
Move all templates to the folder — call move-item-to-folder for each template
Update Notion entries with Canva links — for posts matching each pillar, note the corresponding Canva template design link in the presentation to the user (bulk updating Notion page URLs is handled by informing the user which template maps to which pillar)
Deliver the complete package:
## Content Calendar Complete
### Notion Database
"Content Calendar — March 2026" — [Notion link]
- 22 posts across 30 days
- Platforms: Instagram, LinkedIn
- Pillars: Education (40%), Authority (20%), Connection (20%), Promotion (20%)
- All entries set to "Idea" — update status as you draft and schedule
### Canva Pillar Templates
Folder: "Content Calendar — March 2026" — [Canva folder]
Education template — dsg_edu123 [thumbnail]
Authority template — dsg_auth456 [thumbnail]
Connection template — dsg_conn789 [thumbnail]
Promotion template — dsg_promo012 [thumbnail]
Each template matches your brand kit. Duplicate a template in Canva
when creating a new post, then paste the design link into the
"Canva Link" property on the matching Notion entry.
### Suggested Workflow
1. Each week, open the Notion database and filter by the current week
2. Write captions and hooks for each post (update status to "Drafting")
3. Duplicate the matching Canva pillar template and customize the graphic
4. Paste the Canva link into the Notion entry
5. Schedule in your platform's scheduler (update status to "Scheduled")
6. After publishing, mark as "Published"
Example 1: Fitness Coach — Instagram + LinkedIn, 5 Posts/Week
User says: "I'm a fitness coach specializing in strength training for busy professionals. I post on Instagram and LinkedIn. I want 5 posts a week. I have a 6-week challenge launching on the 15th."
Step 1 — Understand:
- Business: Fitness coaching, strength training for busy professionals
- Pillars: Education (training tips), Authority (client results), Connection (personal story), Promotion (coaching offers)
- Platforms: Instagram, LinkedIn
- Frequency: 5/week (Standard)
- Audience: Professionals aged 28-45 with limited gym time
- Upcoming event: 6-week challenge launch on the 15th
- Voice: Motivational, direct, no fluff
Step 2 — Generate (Week 1 sample):
| Day |
Platform |
Pillar |
Post Type |
Caption Idea |
| Mon |
Instagram |
Education |
Carousel |
5 compound exercises that replace a 60-min gym session |
| Tue |
LinkedIn |
Authority |
Text post |
My client dropped 4% body fat in 8 weeks training 3x/week — here is exactly what we did |
| Wed |
Instagram |
Connection |
Reel |
What my 5 AM workout routine actually looks like (unfiltered) |
| Thu |
LinkedIn |
Education |
Carousel |
The minimum effective dose for strength: how little you can train and still grow |
| Fri |
Instagram |
Promotion |
Image |
6-week strength challenge starts the 15th — 12 spots left |
Step 3 — Present: Full 30-day table shown. Promotional posts cluster around the 12th, 15th, and 16th for the challenge launch. User approves with one swap: move Wednesday's reel to Thursday and Thursday's carousel to Wednesday.
Step 4 — Act:
- Notion database created: "Content Calendar — March 2026" with 22 posts
- Canva folder created: "Content Calendar — March 2026"
- 4 pillar templates generated (Education: numbered tips layout, Authority: bold stat + quote layout, Connection: casual behind-the-scenes layout, Promotion: CTA-heavy launch design)
- All templates moved to folder, thumbnails verified
Example 2: SaaS Founder — X/Twitter + LinkedIn, 3 Posts/Week
User says: "I run a SaaS tool for email deliverability. My audience is email marketers and startup founders. I want to post on X and LinkedIn, 3 times a week. Keep it professional but not boring."
Step 1 — Understand:
- Business: Email deliverability SaaS
- Pillars: Education (deliverability tips), Authority (product metrics and wins), Promotion (free trial, demos)
- Platforms: X/Twitter, LinkedIn
- Frequency: 3/week (Light)
- Audience: Email marketers, startup founders, growth teams
- Upcoming events: None mentioned
- Voice: Professional but not boring — confident, slightly witty
Step 2 — Generate (Week 1 sample):
| Day |
Platform |
Pillar |
Post Type |
Caption Idea |
| Mon |
X/Twitter |
Education |
Thread |
Your emails are landing in spam because of these 5 DNS mistakes — here is how to fix each one |
| Wed |
LinkedIn |
Authority |
Text post |
We scanned 2M emails last month and found 73% of deliverability issues come from 3 fixable problems |
| Fri |
X/Twitter |
Promotion |
Text post |
We built a free deliverability audit tool — paste your domain and get a score in 30 seconds |
Step 3 — Present: Full 30-day table shown. 13 posts total (3/week for 4 weeks + 1 bonus). Pillar split: Education 46%, Authority 31%, Promotion 23%. User approves as-is.
Step 4 — Act:
- Notion database created: "Content Calendar — March 2026" with 13 posts
- Canva folder created: "Content Calendar — March 2026"
- 3 pillar templates generated (Education: clean tip-style with code/technical feel, Authority: data-forward layout with large stat placeholder, Promotion: CTA-centered with product screenshot space)
- All templates moved to folder, thumbnails verified
Recovery and Troubleshooting
Notion Database Creation Fails
- Call
notion-search to verify workspace access — if no results return, the user may not have connected their Notion workspace
- Inform the user: "I cannot access your Notion workspace. Please make sure the Notion integration is connected."
- Fallback: Generate the full 30-day calendar as a markdown table and save it to a local file at the user's preferred path. The user can import it into Notion manually.
Notion Page Creation Fails Partway
- Note which entries were successfully created and which failed
- Retry the failed batch once (reduce batch size if the original was large)
- If retry fails, list the remaining entries as a markdown table and inform the user: "15 of 22 posts were added to Notion. Here are the remaining 7 — you can add them manually or I can retry."
Canva Design Generation Fails
- Simplify the template prompt — remove detailed layout instructions, keep to colors + style + purpose
- Retry once with the simplified prompt
- If 2 attempts fail for a pillar template: Skip that template and inform the user: "I could not generate the Authority template. The other 3 templates are ready. You can create the Authority template manually in Canva using these brand specs: [colors, fonts, dimensions]."
- If all template generation fails: Inform the user that Canva generation is unavailable. Deliver the Notion database without Canva links. Provide the template specs (dimensions, colors, layout descriptions) so they can create templates manually.
Brand Kit Not Found in Canva
- Inform the user: "No brand kit found in your Canva account."
- Ask for: primary color (hex), secondary color (hex), font preference (serif/sans-serif)
- Proceed with manual color and font values in the generation prompts
- Suggest: "Create a brand kit in Canva to speed up future template generation."
User Has No Content Pillars
- Present the Content Pillar Framework table from this skill
- Recommend the default 4 (Education, Authority, Connection, Promotion)
- Ask: "Which of these fit your business? Or tell me 3-5 topics you already post about and I will map them to pillars."
- Do not proceed without at least 3 defined pillars.
Calendar Feels Repetitive
If the user reviews the 30-day plan and says it feels repetitive:
- Check if any single post type appears more than 3 times in one week — swap one for a different type
- Vary the caption angles within the same pillar (problem-focused, story-focused, data-focused, how-to)
- Alternate platforms day by day instead of clustering the same platform on consecutive days
- Regenerate the flagged week(s) only — do not rebuild the entire calendar
Anti-Patterns
- DO NOT generate post ideas without establishing content pillars first — random ideas do not batch or compound
- DO NOT schedule more than 25% promotional content — audiences disengage when every post is a sales pitch
- DO NOT assign the same post type to the same platform 3+ days in a row — variety drives reach
- DO NOT create Canva templates before the user approves the calendar — templates depend on confirmed pillars
- DO NOT leave the Canva Link property empty without telling the user how to fill it — always explain the template-to-post workflow
- DO NOT assume posting days — ask the user or default to weekdays (Mon-Fri)
- DO NOT front-load promotional posts in week 1 — warm the audience with education and connection content first
1---2name: content-calendar3description: Generates a 30-day content calendar as a Notion database with posts mapped to content pillars, platforms, and dates, plus starter graphic templates in Canva for each content pillar. Use when a user needs to plan their content for the month, wants a structured posting schedule, or needs to batch-create content across multiple platforms.4---56# Content Calendar78## When to Use This Skill910Use this skill when the user needs to:11- Plan 30 days of content across one or more platforms12- Build a structured posting schedule mapped to content pillars and post types13- Create a Notion database to track content status from idea through published14- Generate starter Canva graphic templates for each content pillar15- Batch-plan content for Instagram, LinkedIn, X/Twitter, YouTube, TikTok, newsletter, or podcast1617**DO NOT** use this skill for:18- Writing full-length blog posts or articles (use a content writing skill)19- Creating individual social media graphics on demand (use social-media-graphics)20- Managing an existing content calendar that already lives in Notion (the user should edit it directly)21- One-off post creation with no broader monthly plan2223---2425## Content Pillar Framework2627Every calendar is built on 3-5 content pillars. Pillars prevent random posting and make batching possible.2829| Pillar Type | Purpose | Example (Fitness Coach) | Example (SaaS Founder) |30|-------------|---------|------------------------|----------------------|31| **Education** | Teach your audience something actionable | "3 exercises for desk workers" | "How to reduce churn with onboarding emails" |32| **Authority** | Showcase expertise, results, credentials | "Client transformation: 12 weeks" | "We hit $50K MRR — here's what worked" |33| **Connection** | Build trust through personality and story | "Why I became a trainer after burnout" | "The worst bug I shipped and what it taught me" |34| **Promotion** | Drive sales, signups, or conversions | "Spots open for 1:1 coaching" | "Try our free plan — no credit card needed" |35| **Community** | Engage and involve the audience | "What's your biggest gym struggle?" | "Poll: What feature should we build next?" |3637**DEFAULT: 4 pillars** — Education, Authority, Connection, Promotion. Add Community only if the user's strategy relies on audience engagement.3839---4041## Common Posting Frequencies4243| Schedule | Posts/Week | Best For | Monthly Total |44|----------|-----------|----------|---------------|45| Light | 3 | Solopreneurs with limited time, B2B LinkedIn-only | 12-13 |46| Standard | 5 | Most creators, coaches, consultants | 21-22 |47| Active | 7 | Full-time creators, brand accounts | 30 |48| Aggressive | 10-14 | Multi-platform creators, agencies | 42-60 |4950**DEFAULT: 5 posts/week (Standard)** — covers weekdays, leaves weekends free for batch creation.5152---5354## Post Type Reference5556| Post Type | Platform Fit | Engagement Level | Production Effort |57|-----------|-------------|-----------------|-------------------|58| Carousel | Instagram, LinkedIn | High | Medium |59| Reel/Short | Instagram, TikTok, YouTube Shorts | Very High | High |60| Story | Instagram, Facebook | Medium | Low |61| Text post | X/Twitter, LinkedIn | Medium | Low |62| Link post | LinkedIn, X/Twitter, Facebook | Low | Low |63| Thread | X/Twitter | High | Medium |64| Image post | Instagram, LinkedIn, Facebook | Medium | Medium |65| Newsletter | Email | High | High |66| Long-form video | YouTube | Very High | Very High |6768---6970## Core Workflow7172EVERY CALENDAR STARTS WITH CONTENT PILLARS — NEVER GENERATE POST IDEAS WITHOUT ESTABLISHING PILLARS FIRST.7374### Step 1: Understand7576Gather these inputs from the user before generating anything:77781. **Business/niche** — what they do and who they serve792. **Content pillars** — their 3-5 core topics (offer the framework table if they are unsure)803. **Target platforms** — which platforms they post on814. **Posting frequency** — how many posts per week (offer the frequency table if unsure)825. **Audience** — who they are trying to reach (demographics, pain points, goals)836. **Upcoming events** — product launches, sales, holidays, or milestones in the next 30 days847. **Brand voice** — tone descriptors (professional, casual, witty, motivational, direct)8586**If the user provides items 1-3, proceed with defaults for items 4-7.** Ask only about missing critical details.8788**Brief template to present if the user gives a vague request:**8990```91I'll build your 30-day content calendar. Quick answers needed:92931. What's your business/niche?942. What 3-5 topics do you post about? (I can help you pick)953. Which platforms? (e.g., Instagram, LinkedIn, X/Twitter)964. How many posts per week? (default: 5)975. Who's your audience?986. Any launches, sales, or events in the next 30 days?997. Brand voice? (default: professional but approachable)100```101102**GATE: Do not proceed to Step 2 until you have at minimum: business/niche, platforms, and either user-provided or default-assigned content pillars.**103104---105106### Step 2: Generate107108Build 30 days of content ideas mapped to pillars, platforms, post types, and dates.1091101. **Assign pillar distribution** across the posting frequency:111112 For 5 posts/week with 4 pillars, the default split is:113 - Education: 2x/week (40%)114 - Authority: 1x/week (20%)115 - Connection: 1x/week (20%)116 - Promotion: 1x/week (20%)117118 Education always gets the highest share. Promotion never exceeds 25%.1191202. **Map post types to platforms** — assign post types that match each platform's strengths:121 - Instagram: carousel (2x), reel (1x), image (1x), story (bonus)122 - LinkedIn: text post (2x), carousel (1x), link post (1x), image (1x)123 - X/Twitter: text post (2x), thread (1x), link post (1x), image (1x)1241253. **Generate 30 days of post ideas** with these fields per entry:126 - Date (Day 1 through Day 30, starting from the user's preferred start date or next Monday)127 - Platform128 - Content Pillar129 - Post Type (carousel, reel, story, text, link, thread, image, newsletter, video)130 - Caption Idea (one sentence describing the post concept)131 - Status (default: "Idea")1321334. **Weave in any upcoming events** the user mentioned — place promotional posts 3 days before, day-of, and 1 day after each event.1341355. **Verify balance:**136 - Each pillar appears at least once per week137 - No more than 2 promotional posts in a row138 - Post types vary within each week (no 5 consecutive text posts)139 - Platform coverage matches the user's list140141---142143### Step 3: Present144145Show the full calendar to the user for approval before creating anything in Notion or Canva.1461471. **Present a summary table** showing the first 7 days in detail:148149```150## 30-Day Content Calendar Preview (Week 1)151152| Day | Date | Platform | Pillar | Post Type | Caption Idea |153|-----|------|----------|--------|-----------|--------------|154| Mon | Mar 3 | Instagram | Education | Carousel | 5 morning habits that boosted my energy |155| Tue | Mar 4 | LinkedIn | Authority | Text post | How I helped a client lose 30 lbs in 12 weeks |156| Wed | Mar 5 | Instagram | Connection | Reel | Behind the scenes: my meal prep routine |157| Thu | Mar 6 | LinkedIn | Education | Carousel | The #1 mistake people make with protein intake |158| Fri | Mar 7 | Instagram | Promotion | Image | Spring coaching spots are open — link in bio |159160Remaining 23 days follow the same pillar rotation and post type variety.161Total posts: 22 (5/week for 4 weeks + 2 bonus)162Pillar split: Education 40% | Authority 20% | Connection 20% | Promotion 20%163```1641652. **Ask for approval:**166167```168Does this direction look right? I can:169- Swap any pillar assignments170- Change post types for specific days171- Add or remove platforms172- Adjust the posting frequency173174Once approved, I'll create the full Notion database and Canva pillar templates.175```176177**GATE: Do not proceed to Step 4 until the user approves the calendar direction.**178179---180181### Step 4: Act182183Create the Notion database and Canva starter templates.184185#### 4A: Create the Notion Database1861871. **Search for existing workspace context** — call `notion-search` to check if the user has a content-related page or database already. If found, confirm whether to create the new database alongside it or independently.1881892. **Create the database** — call `notion-create-database` with these properties:190191 | Property | Type | Purpose |192 |----------|------|---------|193 | **Post Title** | Title | The caption idea or working title |194 | **Date** | Date | Scheduled publish date |195 | **Platform** | Select | Instagram, LinkedIn, X/Twitter, YouTube, TikTok, Newsletter, Podcast |196 | **Pillar** | Select | Education, Authority, Connection, Promotion, Community |197 | **Post Type** | Select | Carousel, Reel, Story, Text Post, Link Post, Thread, Image, Newsletter, Video |198 | **Status** | Select | Idea, Drafting, Ready, Scheduled, Published |199 | **Canva Link** | URL | Link to the Canva graphic template for this post |200 | **Notes** | Rich text | Additional context, hooks, references |201202 Database title: `Content Calendar — [Month Year]` (e.g., "Content Calendar — March 2026")2032043. **Populate the database** — call `notion-create-pages` to add all 30 days of content as individual entries. Each page gets:205 - Post Title set to the caption idea206 - Date set to the scheduled date207 - Platform, Pillar, Post Type, and Status filled from the generated calendar208 - Status defaults to "Idea" for all entries209 - Canva Link left empty (filled after Step 4B)2102114. **Confirm the database:**212213```214Notion database created: "Content Calendar — March 2026"215216 30 posts added across 4 weeks217 Properties: Date, Platform, Pillar, Post Type, Status, Canva Link, Notes218 All entries set to "Idea" status219220 Notion link: [database URL]221```222223#### 4B: Create Canva Starter Templates224225Generate one starter graphic template per content pillar so the user has a branded starting point for each category of post.2262271. **Check for brand kit** — call `list-brand-kits` to load the user's brand colors, fonts, and logo2282292. **Create a Canva folder** — call `create-folder` with the name: `Content Calendar — [Month Year]`2302313. **Generate one template per pillar** — for each of the user's content pillars, call `generate-design` with a prompt tailored to that pillar's purpose:232233 | Pillar | Template Prompt Direction | Dimensions |234 |--------|--------------------------|------------|235 | Education | Clean layout with numbered list or tip format, room for 3-5 bullet points | 1080 x 1080 |236 | Authority | Bold headline with space for a metric or testimonial quote | 1080 x 1080 |237 | Connection | Casual, story-style layout with space for a personal photo or behind-the-scenes feel | 1080 x 1080 |238 | Promotion | Eye-catching CTA-focused design with urgency element and link/button placeholder | 1080 x 1080 |239 | Community | Question-centered design with engagement prompt and poll/response space | 1080 x 1080 |240241 Example generation prompt for an Education pillar template:242 ```243 Social media post template, square 1080x1080.244 Clean educational layout with a bold headline placeholder at top.245 Space for 3-5 numbered tips or bullet points in the body.246 Brand colors: [primary hex] background header, [secondary hex] accents.247 Footer area with small logo placement and handle.248 Modern, professional feel. Template style — text should look replaceable.249 ```2502514. **Get thumbnail for each template** — call `get-design-thumbnail` for each generated design to verify quality2522535. **Move all templates to the folder** — call `move-item-to-folder` for each template2542556. **Update Notion entries with Canva links** — for posts matching each pillar, note the corresponding Canva template design link in the presentation to the user (bulk updating Notion page URLs is handled by informing the user which template maps to which pillar)2562577. **Deliver the complete package:**258259```260## Content Calendar Complete261262### Notion Database263"Content Calendar — March 2026" — [Notion link]264- 22 posts across 30 days265- Platforms: Instagram, LinkedIn266- Pillars: Education (40%), Authority (20%), Connection (20%), Promotion (20%)267- All entries set to "Idea" — update status as you draft and schedule268269### Canva Pillar Templates270Folder: "Content Calendar — March 2026" — [Canva folder]271272 Education template — dsg_edu123 [thumbnail]273 Authority template — dsg_auth456 [thumbnail]274 Connection template — dsg_conn789 [thumbnail]275 Promotion template — dsg_promo012 [thumbnail]276277Each template matches your brand kit. Duplicate a template in Canva278when creating a new post, then paste the design link into the279"Canva Link" property on the matching Notion entry.280281### Suggested Workflow2821. Each week, open the Notion database and filter by the current week2832. Write captions and hooks for each post (update status to "Drafting")2843. Duplicate the matching Canva pillar template and customize the graphic2854. Paste the Canva link into the Notion entry2865. Schedule in your platform's scheduler (update status to "Scheduled")2876. After publishing, mark as "Published"288```289290---291292## Example 1: Fitness Coach — Instagram + LinkedIn, 5 Posts/Week293294**User says:** "I'm a fitness coach specializing in strength training for busy professionals. I post on Instagram and LinkedIn. I want 5 posts a week. I have a 6-week challenge launching on the 15th."295296**Step 1 — Understand:**297- Business: Fitness coaching, strength training for busy professionals298- Pillars: Education (training tips), Authority (client results), Connection (personal story), Promotion (coaching offers)299- Platforms: Instagram, LinkedIn300- Frequency: 5/week (Standard)301- Audience: Professionals aged 28-45 with limited gym time302- Upcoming event: 6-week challenge launch on the 15th303- Voice: Motivational, direct, no fluff304305**Step 2 — Generate (Week 1 sample):**306307| Day | Platform | Pillar | Post Type | Caption Idea |308|-----|----------|--------|-----------|--------------|309| Mon | Instagram | Education | Carousel | 5 compound exercises that replace a 60-min gym session |310| Tue | LinkedIn | Authority | Text post | My client dropped 4% body fat in 8 weeks training 3x/week — here is exactly what we did |311| Wed | Instagram | Connection | Reel | What my 5 AM workout routine actually looks like (unfiltered) |312| Thu | LinkedIn | Education | Carousel | The minimum effective dose for strength: how little you can train and still grow |313| Fri | Instagram | Promotion | Image | 6-week strength challenge starts the 15th — 12 spots left |314315**Step 3 — Present:** Full 30-day table shown. Promotional posts cluster around the 12th, 15th, and 16th for the challenge launch. User approves with one swap: move Wednesday's reel to Thursday and Thursday's carousel to Wednesday.316317**Step 4 — Act:**318- Notion database created: "Content Calendar — March 2026" with 22 posts319- Canva folder created: "Content Calendar — March 2026"320- 4 pillar templates generated (Education: numbered tips layout, Authority: bold stat + quote layout, Connection: casual behind-the-scenes layout, Promotion: CTA-heavy launch design)321- All templates moved to folder, thumbnails verified322323---324325## Example 2: SaaS Founder — X/Twitter + LinkedIn, 3 Posts/Week326327**User says:** "I run a SaaS tool for email deliverability. My audience is email marketers and startup founders. I want to post on X and LinkedIn, 3 times a week. Keep it professional but not boring."328329**Step 1 — Understand:**330- Business: Email deliverability SaaS331- Pillars: Education (deliverability tips), Authority (product metrics and wins), Promotion (free trial, demos)332- Platforms: X/Twitter, LinkedIn333- Frequency: 3/week (Light)334- Audience: Email marketers, startup founders, growth teams335- Upcoming events: None mentioned336- Voice: Professional but not boring — confident, slightly witty337338**Step 2 — Generate (Week 1 sample):**339340| Day | Platform | Pillar | Post Type | Caption Idea |341|-----|----------|--------|-----------|--------------|342| Mon | X/Twitter | Education | Thread | Your emails are landing in spam because of these 5 DNS mistakes — here is how to fix each one |343| Wed | LinkedIn | Authority | Text post | We scanned 2M emails last month and found 73% of deliverability issues come from 3 fixable problems |344| Fri | X/Twitter | Promotion | Text post | We built a free deliverability audit tool — paste your domain and get a score in 30 seconds |345346**Step 3 — Present:** Full 30-day table shown. 13 posts total (3/week for 4 weeks + 1 bonus). Pillar split: Education 46%, Authority 31%, Promotion 23%. User approves as-is.347348**Step 4 — Act:**349- Notion database created: "Content Calendar — March 2026" with 13 posts350- Canva folder created: "Content Calendar — March 2026"351- 3 pillar templates generated (Education: clean tip-style with code/technical feel, Authority: data-forward layout with large stat placeholder, Promotion: CTA-centered with product screenshot space)352- All templates moved to folder, thumbnails verified353354---355356## Recovery and Troubleshooting357358### Notion Database Creation Fails3593601. Call `notion-search` to verify workspace access — if no results return, the user may not have connected their Notion workspace3612. Inform the user: "I cannot access your Notion workspace. Please make sure the Notion integration is connected."3623. **Fallback:** Generate the full 30-day calendar as a markdown table and save it to a local file at the user's preferred path. The user can import it into Notion manually.363364### Notion Page Creation Fails Partway3653661. Note which entries were successfully created and which failed3672. Retry the failed batch once (reduce batch size if the original was large)3683. If retry fails, list the remaining entries as a markdown table and inform the user: "15 of 22 posts were added to Notion. Here are the remaining 7 — you can add them manually or I can retry."369370### Canva Design Generation Fails3713721. Simplify the template prompt — remove detailed layout instructions, keep to colors + style + purpose3732. Retry once with the simplified prompt3743. **If 2 attempts fail for a pillar template:** Skip that template and inform the user: "I could not generate the Authority template. The other 3 templates are ready. You can create the Authority template manually in Canva using these brand specs: [colors, fonts, dimensions]."3754. **If all template generation fails:** Inform the user that Canva generation is unavailable. Deliver the Notion database without Canva links. Provide the template specs (dimensions, colors, layout descriptions) so they can create templates manually.376377### Brand Kit Not Found in Canva3783791. Inform the user: "No brand kit found in your Canva account."3802. Ask for: primary color (hex), secondary color (hex), font preference (serif/sans-serif)3813. Proceed with manual color and font values in the generation prompts3824. Suggest: "Create a brand kit in Canva to speed up future template generation."383384### User Has No Content Pillars3853861. Present the Content Pillar Framework table from this skill3872. Recommend the default 4 (Education, Authority, Connection, Promotion)3883. Ask: "Which of these fit your business? Or tell me 3-5 topics you already post about and I will map them to pillars."3894. **Do not proceed without at least 3 defined pillars.**390391### Calendar Feels Repetitive392393If the user reviews the 30-day plan and says it feels repetitive:3941. Check if any single post type appears more than 3 times in one week — swap one for a different type3952. Vary the caption angles within the same pillar (problem-focused, story-focused, data-focused, how-to)3963. Alternate platforms day by day instead of clustering the same platform on consecutive days3974. Regenerate the flagged week(s) only — do not rebuild the entire calendar398399---400401## Anti-Patterns402403- **DO NOT** generate post ideas without establishing content pillars first — random ideas do not batch or compound404- **DO NOT** schedule more than 25% promotional content — audiences disengage when every post is a sales pitch405- **DO NOT** assign the same post type to the same platform 3+ days in a row — variety drives reach406- **DO NOT** create Canva templates before the user approves the calendar — templates depend on confirmed pillars407- **DO NOT** leave the Canva Link property empty without telling the user how to fill it — always explain the template-to-post workflow408- **DO NOT** assume posting days — ask the user or default to weekdays (Mon-Fri)409- **DO NOT** front-load promotional posts in week 1 — warm the audience with education and connection content first