$npx -y skills add ScrapeCreators/social-media-research-skills --skill outlier-post-finderUse when the user wants to find posts, videos, reels, shorts, tweets, or social content that overperformed versus a creator, brand, or competitor baseline. Finds outliers, explains why they worked, extracts hooks and formats, and produces a practical swipe file.
| 1 | # Outlier Post Finder |
| 2 | |
| 3 | ## Overview |
| 4 | |
| 5 | Find social posts that beat an account's normal performance. The goal is not just to sort by views. The goal is to identify posts that performed unusually well for that creator or brand, then explain the repeatable patterns. |
| 6 | |
| 7 | Use ScrapeCreators as the data layer. Pull recent public posts, normalize engagement metrics, calculate each account's baseline, and produce an outlier report with source URLs and practical takeaways. |
| 8 | |
| 9 | ## When to Use |
| 10 | |
| 11 | Use this skill when the user asks to: |
| 12 | |
| 13 | - find outlier posts, viral posts, top posts, best reels, best shorts, best TikToks, or best tweets |
| 14 | - analyze why a creator's content is working |
| 15 | - find competitor posts worth copying or learning from |
| 16 | - build a swipe file from high-performing social posts |
| 17 | - compare performance across a creator's recent posts |
| 18 | |
| 19 | Do not use this for raw endpoint lookup only. Use `scrapecreators-api` for direct API routing. |
| 20 | |
| 21 | ## Data Sources |
| 22 | |
| 23 | Prefer the platform-specific feed endpoint, then enrich individual posts only when needed. |
| 24 | |
| 25 | | Platform | Feed endpoint | Detail/enrichment endpoint | |
| 26 | |---|---|---| |
| 27 | | TikTok | `/v3/tiktok/profile/videos` | `/v2/tiktok/video`, `/v1/tiktok/video/transcript` | |
| 28 | | Instagram posts | `/v2/instagram/user/posts` | `/v1/instagram/post`, `/v2/instagram/media/transcript` | |
| 29 | | Instagram reels | `/v1/instagram/user/reels` | `/v1/instagram/post`, `/v2/instagram/media/transcript` | |
| 30 | | YouTube videos | `/v1/youtube/channel-videos` | `/v1/youtube/video`, `/v1/youtube/video/transcript` | |
| 31 | | YouTube Shorts | `/v1/youtube/channel/shorts` | `/v1/youtube/video`, `/v1/youtube/video/transcript` | |
| 32 | | Facebook | `/v1/facebook/profile/posts`, `/v1/facebook/profile/reels` | `/v1/facebook/post`, `/v1/facebook/post/transcript` | |
| 33 | | LinkedIn | `/v1/linkedin/company/posts` | `/v1/linkedin/post`, `/v1/linkedin/post/transcript` | |
| 34 | | X/Twitter | `/v1/twitter/user-tweets` | `/v1/twitter/tweet`, `/v1/twitter/tweet/transcript` | |
| 35 | | Threads | `/v1/threads/user/posts` | `/v1/threads/post` | |
| 36 | | Bluesky | `/v1/bluesky/user/posts` | `/v1/bluesky/post` | |
| 37 | |
| 38 | Before calling an endpoint, fetch its docs or per-endpoint OpenAPI spec if parameter names or response fields are uncertain. |
| 39 | |
| 40 | ## Workflow |
| 41 | |
| 42 | 1. **Clarify scope only if needed** |
| 43 | - Platform(s) |
| 44 | - Handles or URLs |
| 45 | - Time/post count window |
| 46 | - Whether to include transcript/comment analysis |
| 47 | |
| 48 | 2. **Fetch recent posts** |
| 49 | - Pull at least 20 posts when available. More is better for baseline confidence. |
| 50 | - Paginate if the endpoint supports cursors and the user wants a larger window. |
| 51 | - Keep source URLs for citations. |
| 52 | |
| 53 | 3. **Normalize metrics** |
| 54 | - Capture whatever exists: views, plays, likes, comments, shares, reposts, saves. |
| 55 | - Build a combined engagement score only after preserving raw metrics. |
| 56 | - For video-first platforms, views/play count is usually the primary metric. |
| 57 | - For text-first platforms, likes + replies/comments + reposts/shares is usually better. |
| 58 | |
| 59 | 4. **Calculate the account baseline** |
| 60 | - Use median instead of mean so one viral post does not distort the baseline. |
| 61 | - Calculate per-platform and per-account baselines separately. |
| 62 | - If mixed formats exist, split by format when possible: reel vs carousel, short vs long video, text vs video. |
| 63 | |
| 64 | 5. **Score outliers** |
| 65 | - `view_lift = post_views / median_views` |
| 66 | - `engagement_lift = post_engagement / median_engagement` |
| 67 | - Label posts as: |
| 68 | - **Huge outlier:** 5x+ baseline |
| 69 | - **Strong outlier:** 2x-5x baseline |
| 70 | - **Mild outlier:** 1.5x-2x baseline |
| 71 | - If sample size is under 10 posts, call confidence low. |
| 72 | |
| 73 | 6. **Enrich the winners** |
| 74 | - Fetch post details for top outliers. |
| 75 | - Fetch transcripts for video posts when useful. |
| 76 | - Optionally fetch comments to understand audience reaction. |
| 77 | |
| 78 | 7. **Explain why they worked** |
| 79 | Look for: |
| 80 | - hook style |
| 81 | - topic/category |
| 82 | - format |
| 83 | - emotional trigger |
| 84 | - novelty/timeliness |
| 85 | - creator proof or authority |
| 86 | - controversy or debate |
| 87 | - comments showing confusion, desire, or buying intent |
| 88 | |
| 89 | ## Output Format |
| 90 | |
| 91 | ```markdown |
| 92 | # Outlier Posts Report: {creator_or_brand} |
| 93 | |
| 94 | ## Summary |
| 95 | - Sample: {n} posts from {platforms} |
| 96 | - Window: {window} |
| 97 | - Baseline: median {primary_metric} = {value} |
| 98 | - Confidence: High/Medium/Low |
| 99 | |
| 100 | ## Biggest Outl |