Request a tool
All toolsAutomationsGuidesMCP serverRequest a toolPlatformsCategories
Skool Community Finder icon

Skool Community Finder

Search Skool for communities by keyword, category, price or language. One row each: url, name, members, price. No links needed, no login.

71 runs on Apify $0.0028 per community found ($2.8 / 1,000)
Run this in the cloudRun on Apify →

Developer & Research Tools

How it works

  1. 1
    Open it on Apify

    Hit Run on Apify — it opens the tool in the cloud, no install.

  2. 2
    Set the inputs

    Adjust searchTerms, category, price (sensible defaults are pre-filled).

  3. 3
    Click Run

    The tool runs on Apify’s cloud and collects the data for you.

  4. 4
    Export the results

    Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.

Pricing

$0.0028 per community found = $2.8 per 1,000

You are charged forWhenPrice
Community foundOne Skool community matched and returned, with its member count, price and category. Sample and diagnostic rows are free, and a search that matches nothing costs nothing.$0.0028

Pay-per-event pricing: you are billed per result, not per subscription. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-09-20, and they are what you are actually charged.

Inputs

FieldWhat it doesType
searchTermsWhat to search Skool for. One term per line, up to 20. Each term is searched on its own and the results are merged, so a community that matches two terms is returned once and billed once. Matching is close to a plain text match on the community name, slug and description rather than anything clever, so 'ai automation' and 'automation' give quite different lists. Leave this empty to browse a category instead.array
categorySkool's own nine categories. Picking one is a real split, not a nudge: the nine category listings share no communities at all. Leave on Any to search across everything.string
priceFree, paid, or communities running a free trial. Free and paid are checked against every row before it is billed — a paid community coming back from a free search is dropped and not charged. Free trial is passed through as Skool answers it, because the listing carries no trial marker to check against.string
communityTypeSkool's discovery page shows private communities by default, and public ones are a separate list it never mixes in. Pick Public to search that second list. Checked against every row before it is billed.string
languageThe language the community runs in, as Skool tags it. The listing carries no language field on the row, so this is Skool's own answer passed through rather than something checked here.string
sortByOnly applies when you are browsing without search terms. Skool ignores the order while a search is running, so if you set both, this is dropped and the run says so rather than pretending it did something.string
minMembersOnly return communities with at least this many members. Leave it empty for no minimum. Skool's search has no member filter, so the run reads its results and keeps the communities that pass, and the ones below aren't charged. A high minimum can return fewer communities than you asked for: with a minimum set, a run reads at most ten times Maximum communities, never fewer than 1,000 and never more than 5,000.integer
maxItemsHow many communities to return, across all search terms. You are billed per community returned, so this is your cost ceiling. Skool itself stops at 1,000 results for any single search, so going past that needs more than one search term.integer

What you get

A structured dataset — each result includes fields like:

communityUrlnameslugdescriptionmemberCountisPaidpriceLabelpriceAmountpriceIntervalisPubliccategorylanguagematchedTermcreatedAt

Export every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.

Related tools in Developer & Research Tools

Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.

GitHub Scraper iconDeveloper & Research Tools

GitHub Scraper

Search GitHub repos and users: stars, forks, language, topics, licence, plus user bio, company and followers. No token needed. $0.90 per 1,000 rows.

18 use cases

Stack Overflow / Stack Exchange Scraper iconDeveloper & Research Tools

Stack Overflow / Stack Exchange Scraper

Search Stack Overflow and Stack Exchange by keyword or tag. Score, answer count, views, reputation and body text. $2 per 1,000 questions.

2 use cases

Package Registry Scraper (npm + PyPI) iconDeveloper & Research Tools

Package Registry Scraper (npm + PyPI)

Get npm and PyPI package metadata as JSON. Version, license, author, repo, keywords and npm monthly downloads. $2 per 1,000 packages.

2 use cases

arXiv Scraper iconDeveloper & Research Tools

arXiv Scraper

Search arXiv papers by title, author, abstract or category. Get full abstracts, authors, categories, DOI, dates and PDF links. $2 per 1,000 papers.

2 use cases

OpenAlex Scholarly Works Scraper iconDeveloper & Research Tools

OpenAlex Scholarly Works Scraper

Search 250M+ OpenAlex papers with no API key. Get titles, authors, venue, year, citations, DOI, OA links and full abstracts. $2.00 per 1,000 papers.

2 use cases

Crossref Scholarly Works Scraper iconDeveloper & Research Tools

Crossref Scholarly Works Scraper

Search 150M+ papers on Crossref: DOI, title, authors, journal, publisher, date, citations and abstract. No API key. $1.00 per 1,000 works.

2 use cases

See all Developer & Research Tools →

Skool Community Finder: search Skool for communities by keyword, category or price

Give it a keyword, or pick a category, price, language or private/public, and it returns the Skool communities that match, one row each: the link, name, member count, price, description, whether it's public and when it was created. No links needed, which is the whole point of it. Skool hands out at most 1,000 results for any one search, and no setting gets past that, so a bigger sweep needs several keywords or a pass through the categories.

Two traps before the first run. Skool's default listing shows only private communities, and the public ones are a separate list it never mixes in, so set Private or public to Public to see them. And sorting does nothing while you're searching: the run drops the order and writes a free SORT_IGNORED row saying so, which the form's own starting values trigger.

InputKeywords, or a category, price, language and private/public filter, plus a minimum member count
OutputOne row per community
Ceiling1,000 per search, 20 keywords and 5,000 rows per run
Account neededNone
Price$2.80 per 1,000 communities, flat on every plan

🔍 What Skool Community Finder does

It runs your search against Skool's own discovery listing, the page anyone can browse, and turns each community on it into a row. It never opens the communities themselves. For the owner, rating and content counts, feed the communityUrl column into Skool Community Scraper.

Each keyword is searched on its own with the same filters and the results are merged, so a community two keywords both find comes back once and is billed once. With no keyword the run browses the filters by themselves. Matching is close to plain text on the name, link and description, so "ai automation" and "automation" give quite different lists.

Two filters leave a mark on every row: free or paid, and private or public. Rows are checked against both, and any that don't match are dropped without charge. Category, language and free trial leave nothing on the row to check, so for those you get Skool's answer as it comes.

A value Skool doesn't offer, such as a misspelled category sent through the API, stops the run before a single request. Skool answers a bad category with an empty page, which would otherwise look exactly like "nothing here".

📥 What you give it

{
  "searchTerms": ["ai automation"],
  "maxItems": 5
}
FieldIf you leave it emptyWhat it is
searchTermsthe filters are browsed on their ownUp to 20 keywords, one per line. The form arrives with ai automation.
categoryanyOne of Skool's nine: hobbies, music, money, spirituality, tech, health, sports, self_improvement or relationships.
priceanyfree, paid or free-trial.
communityTypeany, which Skool treats as privateprivate or public. Two separate lists that share no communities.
languageanyOne of the 48 languages Skool tags communities with, such as english or spanish.
sortBySkool's default ordertrending or top. Only works when browsing without keywords. The form arrives with trending.
minMembersno minimumKeep only communities with at least this many members. Skool has no member filter, so the run reads its results and keeps the ones that pass.
maxItems100Total communities, 1 to 5,000. This is your cost ceiling.
proxyConfigurationthe standard connectionLeave it as it is unless you need the run to go out through a particular network. Servers of your own are used exactly as given.

A high minMembers can return fewer communities than maxItems. With a minimum set, a run reads at most ten times maxItems communities, never fewer than 1,000 and never more than 5,000, then stops with what passed and says so in a free READ_LIMIT row.

📤 What you get back

A real row from a real run:

{
  "communityUrl": "https://www.skool.com/makerschool",
  "slug": "makerschool",
  "name": "Maker School: AI Automation",
  "description": "Get your first client for an AI automation business in 90 days or your money back. Daily AI coaching, AI templates, +$30K saved in tools. $184/mo.",
  "memberCount": 2560,
  "isPaid": true,
  "priceLabel": "$184/month",
  "priceAmount": 184,
  "priceCurrency": "USD",
  "priceInterval": "month",
  "monthlyPriceAmount": 184,
  "annualPriceAmount": 1546,
  "oneTimePriceAmount": null,
  "isPublic": false,
  "category": null,
  "language": null,
  "matchedTerm": "ai automation",
  "discoveryRank": null,
  "discoveryPage": 1,
  "logoUrl": "https://assets.skool.com/f/e256cd9ef1ac4dbe9197634db46e9e3b/7a0881d755cd45d69679b78d418b803a475d563a4bc4476ea3dfc1ad682b0551.jpg",
  "coverImageUrl": "https://assets.skool.com/f/e256cd9ef1ac4dbe9197634db46e9e3b/56cb44fa92ce4a2a950a286352392ff96e45d3d056e740e4a30c12dbb52faad4-md.jpg",
  "brandColor": "#0F0F0F",
  "groupId": "e256cd9ef1ac4dbe9197634db46e9e3b",
  "createdAt": "2024-09-05T20:09:16.650875Z",
  "updatedAt": "2026-09-30T00:56:33.888243Z",
  "scrapedAt": "2026-09-30T02:32:48.263Z"
}
FieldWhat it is
communityUrl, slugThe community's link, ready to paste into Skool Community Scraper, and the name at the end of it.
memberCountMembers as the listing showed them at that moment.
isPaid, priceLabel, priceAmount, priceCurrency, priceIntervalThe price on the listing. priceInterval is month, year or one_time. A free community has isPaid: false, priceLabel: "Free" and the rest null.
monthlyPriceAmount, annualPriceAmount, oneTimePriceAmountEach price the listing carries, split out.
isPublicFalse on the private list, true on the public one.
category, languageFilled in only when you filtered on them. The listing carries neither, so an unfiltered search leaves them null.
matchedTermThe keyword that found it. Null when browsing.
discoveryPage, discoveryRankThe page of Skool's listing it came from, 30 to a page. discoveryRank is Skool's own value and was null or 0 in our runs, so use the page for position.
logoUrl, coverImageUrl, brandColorThe community's images and its accent colour.
groupId, createdAt, updatedAtSkool's id for the community, and when it was created and last changed.

🧾 Reading the output

Three kinds of row can land in the dataset.

RowHow to spot itCharged
A communitya communityUrl, and no _sample or _diagnostic flagyes
The sample row_sample: trueno
A diagnostic_diagnostic: true, with an errorCode and a details sentenceno

The sample row only appears when the input has no keyword and no filter at all. sortBy counts as a filter here, so a run with nothing but an order set browses Skool's default listing and bills what it finds. On a diagnostic row, read details: the short error line is generic on some codes.

errorCodeWhat it means
SORT_IGNOREDAn order and a keyword were set together. Skool ignores the order while searching, so it was left off.
FILTER_MISMATCHSkool returned communities that didn't match your price or private/public filter. They were dropped.
NO_RESULTSSkool has nothing for that search, or nothing it returned had minMembers members.
LIMIT_REACHEDmaxItems was reached, or more than 20 keywords came in and only the first 20 were used.
FEED_EXHAUSTEDA search reached the 1,000 results Skool hands out while maxItems asked for more. There may be more communities; split the search with a category, language, price or private/public filter to reach them.
READ_LIMITWith minMembers set, the run read as many communities as it reads for one and stopped with what passed.
UNKNOWN_CATEGORY, UNKNOWN_LANGUAGE, UNKNOWN_PRICE, UNKNOWN_TYPE, UNKNOWN_SORTA value Skool doesn't offer. The run stopped before searching, and details lists what exists.
BAD_INPUTminMembers wasn't a whole number of 1 or more. The run stopped before searching.
CATEGORY_MOVEDSkool changed a category's id. The run picked up the new one and carried on.
BLOCKEDSkool didn't return the listing this time. Worth running again.
TIME_BUDGET and the restRare. The details sentence says what happened.

▶️ How to run it

1. Open Skool Community Finder and click Try for free. 2. Type keywords into Search terms, or clear them and pick a Category to browse. 3. Narrow it with Price, Private or public and Language if you want. 4. Set Maximum communities. 5. Click Start, then download the dataset as JSON, CSV or Excel, or read it from the API.

💰 How much does it cost?

$2.80 per 1,000 communities, flat on every Apify plan.

You pay per community row. Sample and diagnostic rows are never charged, a community two keywords both find is billed once, and anything dropped for not matching your price or private/public filter, or for falling below minMembers, isn't charged at all.

💡 What people use it for

  • Listing the communities in a niche before deciding which to join, or which to compete with.
  • Mapping a whole category: browse it with no keyword and maxItems at 1,000.
  • Finding free communities to join, or paid ones to study, with price set.
  • Feeding the links into Skool Community Scraper to get owners, ratings and content counts.

🚧 What it does not do

  • Go past 1,000 results for one search. That's Skool's ceiling.
  • Open the communities. No owner, rating, reviews, or post and course counts. Skool Community Scraper reads those.
  • Collect people. No members, reviews, profiles or emails.
  • Tell you the category of an unfiltered result. The listing doesn't carry one.
  • Check the free-trial, category or language filters. They leave no mark on the row, so you get Skool's answer as it comes.
  • Sort search results. Skool ignores the order while searching. Browse instead.
  • See what only members see. It reads the public listing and nothing behind a login.

🧭 Which community scraper do you need?

If you wantUse
Skool communities you have no links for yetThis one
The full record for Skool communities you have links for: owner, rating, content countsSkool Community Scraper
Posts from a public Facebook groupFacebook Groups Scraper
Posts from a public Telegram channelTelegram Channel Scraper

❓ Questions people ask

Can I search Skool without an account? Yes. This reads the discovery listing Skool shows everyone. No login, no cookie, no key.

How do I get every community in a category? Pick the category, leave Search terms empty and set maxItems to 1,000. That's the whole category, as far as Skool will hand it over.

Why do I see different communities than on skool.com? Most likely you're comparing against the default view, which is the private list. Set communityType to public for the other one.

Can I get the owner or the rating? Not from this one. Run Skool Community Scraper over the communityUrl column.

Why did my run return nothing? Either Skool has nothing for that search, or nothing it found cleared your minMembers, and a free NO_RESULTS row says which. Or a value wasn't one Skool offers, and the row lists the ones that are.

Is this legal? It's a public listing, but a community's description can name real people, so keep what you need and take care republishing it. Apify's article on whether web scraping is legal is worth reading first.

🆘 If something breaks

Open the Issues tab on the actor page and send the input you used and the run ID. The diagnostic rows in the dataset usually name the reason already.