skills/content-analytics/SKILL.md
Weekly performance analytics. Pulls metrics for published posts, tags top and bottom performers, updates the Topic Bank with success data, and generates an HTML dashboard email. Runs on Monday 9am cron or manual invocation. Use when the user says "content analytics," "weekly report," "how did posts perform," "check analytics," "tag top posts," or wants a performance review of recent social media content.
npx skillsauth add demtomi/social-media-agent-toolkit content-analyticsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You analyze the past week's social media performance, identify what worked and what did not, and feed learnings back into the Topic Bank so future ideation improves over time.
You do NOT write copy, generate images, schedule, or ideate.
Query the Notion Calendar for posts published in the past 7 days.
Calendar DB: YOUR_CALENDAR_DB_ID
Filter: Status = "Published" AND Publish Date >= {7 days ago}
Collect for each post:
If no published posts found, report "No published posts in the past 7 days" and stop.
Check GET /posts/{blotato_id} for any engagement metrics Blotato returns.
If platform APIs or Blotato do not return engagement data, generate a checklist for the user to fill in manually:
Post: [Title] | Platform: [Platform] | Date: [Date]
- Impressions: ___
- Likes: ___
- Comments: ___
- Saves: ___ (IG, TikTok only)
- Shares/Reposts: ___
- Video Views: ___ (video only)
- Video Completion Rate: ___ (video only)
- Profile Visits: ___
- Follower Change: ___
Generate one checklist per post. Save to a local file for easy copy-paste.
If the user provides metrics (manually or via a file), proceed to Step 3.
Engagement Rate formulas (platform-specific):
| Platform | Formula | |---|---| | LinkedIn | (likes + comments + reposts) / impressions | | Instagram (image) | (likes + comments + saves + shares) / reach | | Instagram (Reel) | (likes + comments + saves + shares) / views | | TikTok | (likes + comments + shares + saves) / views | | YouTube Shorts | (likes + comments) / views |
For each platform, calculate:
Within each platform, rank all published posts by engagement rate.
Top 3: Posts with highest engagement rate per platform Bottom 3: Posts with lowest engagement rate per platform
Update each post's properties:
For each Top and Bottom post, note:
Cross-reference top performers with the Topic Bank.
For topics that produced Top posts:
For topics that produced Bottom posts:
After updating scores, check for evergreen topics worth reusing:
Set Status back to "Ready to Write" if ALL of these are true:
Set Status to "Needs Refresh" if:
Set Status to "Retired" if:
Create an HTML email report with these sections:
When invoked manually:
Weekly (leading):
Monthly (lagging):
| Database | ID |
|---|---|
| Social Media Calendar | YOUR_CALENDAR_DB_ID |
| Topic Bank | YOUR_TOPIC_BANK_DB_ID |
content-ideation -- uses analytics feedback for topic scoring (runs Wed)content-writer -- writes copy (runs Thu 9am)content-designer -- generates images (runs Thu 3pm)content-distributor -- schedules posts (runs Fri)testing
Automated content writer. Takes topics from the Notion Topic Bank or Calendar and generates platform-specific copy for LinkedIn, Instagram, TikTok, and YouTube using parallel subagents. Handles slot assignment, conflict checking, and Notion status management. Runs on Thursday 9am cron or manual invocation. Use when the user says "write content," "draft posts," "content writer," "write this week's posts," or wants copy generated for social media calendar entries.
development
Scans trend sources via Perplexity API, generates topic ideas, scores them, and pushes to the Notion Topic Bank and Social Media Calendar. Runs on Wednesday 9am cron or manual invocation. Use when the user says "find topics," "content ideation," "what should I post about," "scan for trending topics," "fill the topic bank," or wants fresh content ideas for the week.
development
Schedules social media posts via Blotato API and verifies publishing. Processes posts at "Can Be Scheduled" status only. Handles post creation, status polling, and publish verification. Runs on Friday 9am cron or manual invocation. Use when the user says "schedule posts," "publish posts," "content distributor," "process scheduled," "verify published," or wants posts sent to Blotato for scheduling.
development
Generates images for approved social media posts using Gemini API, uploads to Blotato media hosting, stores URLs in Notion, and sets status to Ready. Processes posts at "Approved" status only. Runs on Thursday 3pm cron or manual invocation. Use when the user says "generate images," "process approved posts," "content designer," "create visuals," or wants images generated for approved calendar entries.