Read a Facebook Page and its audience from real data
Facebook Audience Insights

Read a Facebook Page and its audience from real data. Pull any Page's public stats (yours or a competitor's): followers, likes, categories, intro, websites.
--- name: fb-audience-insights description: "Read a Facebook Page and its audience from real data. Pull any Page's public stats (yours or a competitor's): followers, likes, categories, intro, websites. And pull the commenters on a public Page post, since Facebook hides the reactor and liker roster and shows counts only, so commenters are the signal. Powered by Apify, no login. Triggers on \"analyze my Page\", \"competitor Page stats\", \"who is commenting\", \"read the comments\", \"audience insights\". Not for writing Page posts (use fb-post-writer)." --- # Facebook Audience Insights Turn real Facebook data into a read on a Page and its audience: how big it is, what it is about, and who is actually engaging in the comments. This is the read layer, so the skill sees actual numbers instead of guessing. One honest limit: Facebook hides the roster of who **reacted** to (liked) a post. It shows reaction counts, never a reactor list. The engagement signal here is **commenters + Page stats**, which is where the real conversation lives anyway. This reads commenters, not likers, on purpose. ## When to use - "Analyze my Page / how is my Page doing" - "Pull the stats on this competitor Page" - "Who is commenting on this post" - "Read the comments on this Page post" - "Size up [a Page] before I pitch / benchmark against it"
Overview
Turn real Facebook data into a read on a Page and its audience: how big it is, what it is about, and who is actually engaging in the comments. This is the read layer, so the skill sees actual numbers instead of guessing.
What you get
- Page readthe Page's title, category, followers, likes, and intro, with a one-line take on positioning and size
- Commenter readwho commented on a post, recurring questions or themes, commenters worth a reply or a follow
- Competitor readthe same Page stats for a rival, so you can benchmark follower size, category, and how they describe themselves
- Action listwhat to write more of, whose comments to reply to, which Page angle to borrow
Manual install (npx, ZIP)
npx skills add sergebulaev/facebook-skills --skill fb-audience-insights -g -a claude-codemkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/sergebulaev/facebook-skills/tar.gz/cc47acac47a8 \
| tar -xz -C ~/.claude/skills --strip-components=4 facebook-skills-cc47acac47a8/.codex-marketplace/facebook-skills/skills/fb-audience-insightsNew-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/303484d18b137a6e1323/fb-audience-insights.zip" -OutFile "$env:TEMP\fb-audience-insights.zip"; Expand-Archive "$env:TEMP\fb-audience-insights.zip" -DestinationPath "$HOME\.claude\skills" -ForceConnects with Agent Alley MCP · agentalley.io/mcp
Files included
SKILL.md5.1 KB
Read the files here
sergebulaev/
Show the full text73 lines
Facebook Audience Insights
Turn real Facebook data into a read on a Page and its audience: how big it is, what it is about, and who is actually engaging in the comments. This is the read layer, so the skill sees actual numbers instead of guessing.
One honest limit: Facebook hides the roster of who reacted to (liked) a post. It shows reaction counts, never a reactor list. The engagement signal here is commenters + Page stats, which is where the real conversation lives anyway. This reads commenters, not likers, on purpose.
When to use
- "Analyze my Page / how is my Page doing"
- "Pull the stats on this competitor Page"
- "Who is commenting on this post"
- "Read the comments on this Page post"
- "Size up [a Page] before I pitch / benchmark against it"
Not for writing a Page post (use fb-post-writer) or drafting comment replies (use fb-engagement-drafter).
Setup (optional)
The read layer uses Apify (no login, no cookies). Get a free token at https://console.apify.com/account/integrations and set APIFY_TOKEN. No token? Paste the Page stats or the comments you already have and the skill runs the same analysis on them.
Input
- A Facebook Page URL (yours or a competitor's), or
- A public Page-post URL (or a bare
pfbidpost id) to read its commenters
Output
- Page read - the Page's title, category, followers, likes, and intro, with a one-line take on positioning and size
- Commenter read - who commented on a post, recurring questions or themes, commenters worth a reply or a follow
- Competitor read - the same Page stats for a rival, so you can benchmark follower size, category, and how they describe themselves
- Action list - what to write more of, whose comments to reply to, which Page angle to borrow
Steps
- Pull the data. For a Page:
lib.ApifyClient().fetch_page_stats(page_url). For a post's commenters:fetch_post_commenters(post_url, max_comments=25). Falls back to pasted data if no token. - Read the Page. Report followers, likes, category, and intro. Compare a competitor's numbers to the user's own Page to size the gap honestly (a bigger follower count is context, not destiny).
- Read the commenters. Cluster comments into questions, agreement, and pushback. Recurring questions are content ideas; commenters with substance are reply candidates. Sort by
reactionsandrepliesto surface the comments that themselves traveled. - Be honest about the wall. Facebook does not expose who reacted or liked. Never present a "top likers" list. If the user asks for likers, explain the platform limit and pivot to commenters.
- Build the action list. Write-more-of (angles the audience responds to), engage (specific commenters to reply to), borrow (a competitor Page's positioning move). Route drafts to
fb-post-writer/fb-engagement-drafter. - Deliver the report in the Output shape, with the raw Page stats and ranked comments attached.
What the read layer exposes
| Method | Returns |
|---|---|
fetch_page_stats(page_url) |
Page stats: title, page_name, page_id, followers, likes, categories, intro, websites, email, profile/cover photo urls |
fetch_post_commenters(post_url, max_comments) |
commenters on a post: author, author_id, message, reactions, replies, depth, is_reply (the engagement signal, since reactors/likers are hidden) |
Both are verified live against apify/facebook-pages-scraper and danek/facebook-comments-ppr.
Hard rules
Global voice rules: see root SKILL.md Voice rules. Additional skill-specific rules:
- Be honest that this reads commenters, not likers (Facebook hides the reactor roster). Never imply a full liker or reactor list exists.
- Compare against the user's own Page before calling a competitor "ahead" or "behind". Raw follower count without context misleads.
- Never invent a Page stat, a follower number, a comment, or a commenter name. If a Page or post returns nothing (private, comments off, share link that hides ids), say so and ask the user to paste.
- A theme is only a theme if it recurs across several comments, not one.
- Page stats are a public snapshot, not private Insights (no reach, no demographics). Do not present them as Meta Business Suite Insights.
Related skills
fb-post-writer- write more of what the read shows the audience responds tofb-engagement-drafter- reply to a commenter the read surfacedfb-hook-extractor- reverse-engineer a hook from a competitor's high-share postfb-content-planner- feed the winning angles into a weekly planfb-page-optimizer- borrow a competitor Page's positioning into your own Page setup
| 1 | |
| 2 | name fb-audience-insights |
| 3 | description "Read a Facebook Page and its audience from real data. Pull any Page's public stats (yours or a competitor's): followers, likes, categories, intro, websites. And pull the commenters on a public Page post, since Facebook hides the reactor and liker roster and shows counts only, so commenters are the signal. Powered by Apify, no login. Triggers on \"analyze my Page\", \"competitor Page stats\", \"who is commenting\", \"read the comments\", \"audience insights\". Not for writing Page posts (use fb-post-writer)." |
| 4 | |
| 5 | |
| 6 | # Facebook Audience Insights |
| 7 | |
| 8 | Turn real Facebook data into a read on a Page and its audience: how big it is, what it is about, and who is actually engaging in the comments. This is the read layer, so the skill sees actual numbers instead of guessing. |
| 9 | |
| 10 | One honest limit: Facebook hides the roster of who **reacted** to (liked) a post. It shows reaction counts, never a reactor list. The engagement signal here is **commenters + Page stats**, which is where the real conversation lives anyway. This reads commenters, not likers, on purpose. |
| 11 | |
| 12 | ## When to use |
| 13 | |
| 14 | "Analyze my Page / how is my Page doing" |
| 15 | "Pull the stats on this competitor Page" |
| 16 | "Who is commenting on this post" |
| 17 | "Read the comments on this Page post" |
| 18 | "Size up [a Page] before I pitch / benchmark against it" |
| 19 | |
| 20 | Not for writing a Page post (use `fb-post-writer`) or drafting comment replies (use `fb-engagement-drafter`). |
| 21 | |
| 22 | ## Setup (optional) |
| 23 | |
| 24 | The read layer uses **Apify** (no login, no cookies). Get a free token at `https://console.apify.com/account/integrations` and set `APIFY_TOKEN`. No token? Paste the Page stats or the comments you already have and the skill runs the same analysis on them. |
| 25 | |
| 26 | ## Input |
| 27 | |
| 28 | A Facebook Page URL (yours or a competitor's), or |
| 29 | A public Page-post URL (or a bare `pfbid` post id) to read its commenters |
| 30 | |
| 31 | ## Output |
| 32 | |
| 33 | **Page read** - the Page's title, category, followers, likes, and intro, with a one-line take on positioning and size |
| 34 | **Commenter read** - who commented on a post, recurring questions or themes, commenters worth a reply or a follow |
| 35 | **Competitor read** - the same Page stats for a rival, so you can benchmark follower size, category, and how they describe themselves |
| 36 | **Action list** - what to write more of, whose comments to reply to, which Page angle to borrow |
| 37 | |
| 38 | ## Steps |
| 39 | |
| 40 | **Pull the data.** For a Page: `lib.ApifyClient().fetch_page_stats(page_url)`. For a post's commenters: `fetch_post_commenters(post_url, max_comments=25)`. Falls back to pasted data if no token. |
| 41 | **Read the Page.** Report followers, likes, category, and intro. Compare a competitor's numbers to the user's own Page to size the gap honestly (a bigger follower count is context, not destiny). |
| 42 | **Read the commenters.** Cluster comments into questions, agreement, and pushback. Recurring questions are content ideas; commenters with substance are reply candidates. Sort by `reactions` and `replies` to surface the comments that themselves traveled. |
| 43 | **Be honest about the wall.** Facebook does not expose who reacted or liked. Never present a "top likers" list. If the user asks for likers, explain the platform limit and pivot to commenters. |
| 44 | **Build the action list.** Write-more-of (angles the audience responds to), engage (specific commenters to reply to), borrow (a competitor Page's positioning move). Route drafts to `fb-post-writer` / `fb-engagement-drafter`. |
| 45 | **Deliver the report** in the Output shape, with the raw Page stats and ranked comments attached. |
| 46 | |
| 47 | ## What the read layer exposes |
| 48 | |
| 49 | | Method | Returns | |
| 50 | |---|---| |
| 51 | | `fetch_page_stats(page_url)` | Page stats: title, page_name, page_id, followers, likes, categories, intro, websites, email, profile/cover photo urls | |
| 52 | | `fetch_post_commenters(post_url, max_comments)` | commenters on a post: author, author_id, message, reactions, replies, depth, is_reply (the engagement signal, since reactors/likers are hidden) | |
| 53 | |
| 54 | Both are verified live against `apify/facebook-pages-scraper` and `danek/facebook-comments-ppr`. |
| 55 | |
| 56 | ## Hard rules |
| 57 | |
| 58 | Global voice rules: see root `SKILL.md` Voice rules. Additional skill-specific rules: |
| 59 | |
| 60 | Be honest that this reads **commenters, not likers** (Facebook hides the reactor roster). Never imply a full liker or reactor list exists. |
| 61 | **Compare against the user's own Page** before calling a competitor "ahead" or "behind". Raw follower count without context misleads. |
| 62 | Never invent a Page stat, a follower number, a comment, or a commenter name. If a Page or post returns nothing (private, comments off, share link that hides ids), say so and ask the user to paste. |
| 63 | A theme is only a theme if it recurs across several comments, not one. |
| 64 | Page stats are a public snapshot, not private Insights (no reach, no demographics). Do not present them as Meta Business Suite Insights. |
| 65 | |
| 66 | ## Related skills |
| 67 | |
| 68 | `fb-post-writer` - write more of what the read shows the audience responds to |
| 69 | `fb-engagement-drafter` - reply to a commenter the read surfaced |
| 70 | `fb-hook-extractor` - reverse-engineer a hook from a competitor's high-share post |
| 71 | `fb-content-planner` - feed the winning angles into a weekly plan |
| 72 | `fb-page-optimizer` - borrow a competitor Page's positioning into your own Page setup |
| 73 |
Details
- Updated
- Sep 17, 2026
- License
- MIT
- Stars on the repo
- ★ 49
- Checked
- Source
- sergebulaev/facebook-skills ↗
- Creator
- sergebulaev · 77 listings
Similar skills
See all →
SkillEstimate the intrinsic value of a public company using DCFCompany valuation
SkillFind keywords a competitor ranks for that the user's siteCompetitor gap
SkillMine the highest-converting ad angles from customer reviewsAd angle miner
SkillAnalyze competitor content coverageCompetitor content intelligence
SkillCreates competitive battlecards for sales deal conversations
SkillRead your X audience and niche from real dataX audience insightsMore from sergebulaev
SkillBy density per paragraph, not per wordAI Tells — Complete Blacklist (V3, 2026-09)
SkillFifteen rules from the linkedin-humanizer packageAI-Tell Rules: Tier-Classified Reference
SkillPattern data from MagicPost LinkedIn analysisEmoji Patterns — AI vs. Human
SkillRead your Instagram niche and profile from real dataInstagram Audience Insights
SkillDraft an Instagram caption with the hook in the first 125Instagram Caption Writer
SkillPlan an Instagram carousel slide by slide, up to 10 slidesInstagram Carousel Planner