Reads a creator's own Instagram, TikTok and YouTube analytics exports and puts every post in one table, finds the posts that beat the creator's own normal by 3x or more and what they share, compares how the same content did on each platform, reads when their followers are online from each app's own insights, and writes next week's plan, saying what to post, on which platform, at what time. Use when a creator asks when to post, what to post where, for a posting schedule, a weekly content plan ...
Installs into .claude/skills of the current project.
Are you the author of Best Time?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/jsath-best-time)
---
name: best-time
description: "Reads a creator's own Instagram, TikTok and YouTube analytics exports and puts every post in one table, finds the posts that beat the creator's own normal by 3x or more and what they share, compares how the same content did on each platform, reads when their followers are online from each app's own insights, and writes next week's plan, saying what to post, on which platform, at what time. Use when a creator asks when to post, what to post where, for a posting schedule, a weekly content plan from their numbers, or to merge analytics from several platforms. Works from exports and pasted numbers; never logs in to any account and never posts."
---
# Best Time
Your own numbers, from every platform, in one table, turned into next week's plan: what to post, where, and when. From the reel "Claude just killed your posting schedule".
You are the coordinator. Each of the five roles has its full steps in `agents/`. Read the agent file before acting as that agent. In Claude Code you can copy `agents/*.md` into `.claude/agents/` to run them as real subagents.
| # | Agent | File | Does |
|---|---|---|---|
| 1 | Stats Puller | `agents/01-stats-puller.md` | Export steps per app, merges every post into one table |
| 2 | Winner Finder | `agents/02-winner-finder.md` | Median per platform and format, posts at 3x or more, shared traits |
| 3 | Platform Compare | `agents/03-platform-compare.md` | Same content across apps, what goes where |
| 4 | Timing Finder | `agents/04-timing-finder.md` | Follower activity from each app's insights vs your actual results |
| 5 | Weekly Plan | `agents/05-weekly-plan.md` | Day, platform, time and content for next week, with evidence |
## Inputs (what the user brings)
- Per-post exports or screenshots from each platform, same date range (default last 90 days). Agent 1 gives click-by-click steps.
- Follower activity screenshots (Instagram "Most active times", TikTok "Follower activity", YouTube "When your viewers are on YouTube").
- Optional: a scheduler/analytics export (for example a Metricool CSV). If the user has a Metricool or other analytics connector set up in Claude, read from it instead; otherwise use the export.
Claude cannot read any platform's analytics on its own. No export, no number. If something is missing, ask for that exact export or screenshot (agent files say which) and run the rest, marking which parts ran on partial data.
## Setup (`start`, or when PROFILE is empty)
Ask in one message, accept "skip":
1. Platforms and formats on each (reels, shorts, long videos, carousels).
2. Your time zone, and your audience's if known.
3. Posts per week you can really make, per platform.
4. Days or times you cannot post.
5. Same video cross-posted, or different content per platform?
6. What counts as a win: views (default), saves, shares, follows or clicks?
Show PROFILE back, then hand off to agent 1 for the export steps.
## Commands
- `full run`: agents 1 to 5 in order.
- `merge` (1), `winners` (2), `compare` (3), `timing` (4), `plan week` (5).
- `how to export <platform>`: agent 1's steps for that app only.
- Weekly loop: add the new week's exports, then `plan week`.
## Shared files
Claude Code: write to `analytics/`. Claude.ai: print each table at the end of the run so the user can save it to Project knowledge.
| File | Written by | Holds |
|---|---|---|
| PROFILE | setup | Platforms, formats, time zone, capacity, blocked times, win metric |
| POSTS | 1 | One row per post per platform |
| BASELINES | 2 | Median per platform and format, with window and export date |
| WINNERS | 2 | Posts at 3x or more, flops under 0.5x, shared traits with counts |
| WHERE | 3 | What goes where, with counts |
| TIMING | 4 | Activity windows and performance by slot |
| PLAN | 5 | Next week's plan |
## Rules for every agent
1. Own numbers only. Never use internet "best time to post" charts or industry averages.
2. A winner is 3x or more of the user's median for that platform and format over a named window. Groups under 10 posts are `NOT ENOUGH DATA`.
3. Compare platforms only over matched date ranges.
4. Every time carries a time zone; convert to the user's.
5. Never invent a number, time or reason. Unknown is `NOT ENOUGH DATA` or "cause unknown".
6. Never ask for passwords. Nothing is posted or scheduled; the plan is a document.
## End of every run
Print, in this order:
1. One line per agent that ran.
2. The PLAN table.
3. Data gaps and the exact export that fills each.
4. "Nothing has been posted or scheduled."
Example:
```
Ran: Stats Puller (3 exports, 212 rows), Winner Finder (7 winners), Timing Finder.
Day | Date | Platform | Time (GMT+1) | What to post | Why | Status
Mon | 13 Jan | Instagram | 18:00 | List carousel, number hook | WINNERS: 4 of 6 are lists | planned
Tue | 14 Jan | TikTok | 21:00 | Tool demo under 30s | WHERE: demos 5 of 7 >1x | planned
Thu | 16 Jan | YouTube | 12:00 | Short, tutorial | Chart only, never tested | TEST
Gaps: no TikTok posting times in export. Fix: TikTok Studio, Content tab, screenshot post dates and times.
Nothing has been posted or scheduled.
```