Skool Community Lookup: stats & pricing API from $2/1k
Pricing
from $1.00 / 1,000 community profile founds
Skool Community Lookup: stats & pricing API from $2/1k
Skool community lookup by URL or slug: member count, price and billing interval, description, and owner name, straight from the community's own public about page. One row per community. Never charged for a miss.
Pricing
from $1.00 / 1,000 community profile founds
Rating
0.0
(0)
Developer
Adrian Voss
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
You give this actor a list of Skool community URLs, or bare slugs. For each one, it fetches the community's own public "about" page and returns its display name, description, member count, whether it's free to join, its price and billing interval if not, and the community owner's name — one flat row per community, read straight off the page Skool itself serves.
Who it's for
You're scouting the creator-community space before launching your own — checking how many members a competitor's Skool community actually has and what it charges — or you're a creator tool vendor building a lead list of paid community owners to pitch. Either way it's normally a dozen manual page visits; here it's a list in, a table out.
Why this one
- Reads the live page, not a cached estimate. Every run fetches the community's current "about" page — a member count or price that changed this week shows up on the next run.
- Price and billing interval, not just "paid or free."
priceTextgives the actual amount and cadence (e.g.$87/month), not just a yes/no flag. - Never charged for a miss. A slug that doesn't resolve to a real community still returns a row explaining why — and costs nothing.
- No proxy overhead. Skool's about pages are plain server-rendered HTML — no bot wall to work around, unlike two other lookups in this catalogue built the same day.
What you get
| Field | Type | Description |
|---|---|---|
query | text | The URL or slug you submitted, echoed back |
found | boolean | true if a real, public community was found |
status | text | OK on a match; NOT_FOUND or BLOCKED on a miss |
message | text | Plain-English reason for a miss — only present when found is false |
scrapedAt | ISO 8601 datetime | When the page was fetched |
slug | text | The community's Skool slug |
name | text | Community display name |
description | text | The community's own description, as shown on its about page |
memberCount | number | Total member count |
isFree | boolean | true if the community has no paid membership tier |
priceText | text | Price and billing interval, e.g. $87/month, or Free |
ownerName | text | The community owner's display name |
skoolUrl | link | The canonical skool.com community URL that was fetched |
Deselect any field in the Input tab's column picker to drop it from every row — query, found,
status, message, and scrapedAt always stay.
Price
Pay-per-event. A flat per-run fee covers session/proxy warmup; you're billed
per item only when data is actually found and returned — see
.actor/pay_per_event.json for exact prices. A miss is never charged.
1,000 community lookups: ~$2 if every community resolves, less for any misses, less again on a paid Apify plan. A miss — a bad slug, a private or deleted community, a blocked request — is never billed.
How to use
- In the Apify Console. Open the actor page and click Start — the
communitiesfield is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found. - Via the API. Call it directly with a POST request — no Console needed once you have an API token:
curl "https://api.apify.com/v2/acts/accountable_eel~skool-community-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"communities":["aiautomationsbyjack"]}'
- On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.
- Open the Input tab and paste your list of Skool community URLs or slugs into "Skool community URLs or slugs" — one per line.
- Leave "Try it first" on for your first run — it caps the run at 5 communities so you can check the output shape before spending on the full list.
- Optionally narrow "Which columns do you want?" to just the fields you need, or set "Only keep rows containing" / "Skip rows containing" to filter by keyword.
- Turn "Try it first" off and press Start to run the full list.
Input
{"communities": ["aiautomationsbyjack"]}
One community per line — a full skool.com community URL, or just the slug from it (the part after skool.com/). Accepted formats: https://www.skool.com/aiautomationsbyjack, aiautomationsbyjack.
Sample output
| query | found | status | slug | name | description | memberCount | isFree | priceText | ownerName | skoolUrl | scrapedAt |
|---|---|---|---|---|---|---|---|---|---|---|---|
| aiautomationsbyjack | true | OK | 1970-01-01T00:00:00.000Z |
A slug that doesn't resolve to a real, public community gets a row with found: false and a
status/message explaining why, and is never charged.
Use it from Clay, n8n, Make, or an AI agent
This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.
curl "https://api.apify.com/v2/acts/accountable_eel~skool-community-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"communities":["aiautomationsbyjack"]}'
n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~skool-community-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"communities":["aiautomationsbyjack"]} (swap in an expression from an earlier node for a real value).
Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~skool-community-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"communities":["{{community}}"]}, mapping the row's community into the communities array.
MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "Skool Community Lookup: Stats API from $2/1k" — the agent will find and run this actor.
Tips
- Paste the bare slug if you already have it — it's the part of the URL right after
skool.com/, before any/aboutor/classroomsuffix. isFreeandpriceTextare inferred from the community's paid-membership price field; a community with a $0 or missing price is treated as free. This wasn't verified live against an actual free community during this build — if you spot a free community reporting a nonzero price, that's worth a bug report.- A private community's about page is still typically public even if its content feed isn't — a
NOT_FOUNDresult usually means the slug is wrong or the community was deleted/renamed, not that it's private. - Run "Try it first" on a handful of communities you already know the member count for, to sanity-check the output before running a full list.
vs. alternatives
| What it costs | What you get | Trade-off | |
|---|---|---|---|
This actor (skool-community-lookup) | $0.002 per found row (FREE tier, less on paid tiers), plus a $0.00005 actor start, nothing for a miss | One row per community — member count, price/interval, description, and owner name, read live from the community's own about page | Only what the public about page shows; no member growth history and no classroom/course content |
| cristiantala/skool-all-in-one-api | Not publicly priced per row (n/d) | The closest existing Skool scraper on Apify Store, 68 users | Established incumbent — this actor is the same category of extraction, priced per row instead |
| Doing it yourself | Your time + parsing Skool's __NEXT_DATA__ JSON payload by hand for every community you check | The same data | Re-testing the JSON shape as Skool's frontend changes is the maintenance burden this actor absorbs |
Prices for third-party tools are their published list prices as of September 2026 and are not tracked here — check the vendor before relying on the comparison.
FAQ
Why is a row empty, or why does found say false?
Either the slug doesn't match a real, public Skool community (status: NOT_FOUND) or the request
was blocked (status: BLOCKED, rare on this target). Check the message column for the specific
reason. Neither is billed.
Am I charged for a miss?
No. Actor.charge() only fires when a real community profile is parsed. A bad slug or a blocked
request produces a row (unless you turn on "Hide rows with no result") and costs nothing.
Is this a live check or a stored database? Live. Every run fetches the community's current about page — there's no cached snapshot behind it. A member count or price that changed since your last run will show the new value.
Do I need to configure proxies? No. Skool's about pages are plain server-rendered HTML with no bot wall — this actor uses Apify's default proxy configuration out of the box.
Can an AI agent call this directly? Yes. It's registered on the Apify MCP server — an agent in Claude, Cursor, or another MCP client can find and run it by name ("Skool Community Lookup"), or you can call the REST endpoint shown above from any script or workflow tool.
Related actors
- Substack Publication Lookup — subscriber-facing stats for a Substack newsletter, the same "creator platform, one row per publication" shape.
- LinkedIn Company Lookup — firmographic and headcount data for a company's LinkedIn page.
- Clutch Agency Lookup — rating, reviews, and service mix for an agency's own Clutch.co profile.