Substack Scraper - Posts, Engagement & Category Leaderboards avatar

Substack Scraper - Posts, Engagement & Category Leaderboards

Pricing

from $1.00 / 1,000 posts

Go to Apify Store
Substack Scraper - Posts, Engagement & Category Leaderboards

Substack Scraper - Posts, Engagement & Category Leaderboards

Scrape posts from any Substack with likes, comments, restacks, word count and free/paid flag, plus the top newsletters in any Substack category with subscriber tiers and paid status. No login.

Pricing

from $1.00 / 1,000 posts

Rating

0.0

(0)

Developer

Alexander Meggitt

Alexander Meggitt

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Substack Scraper: posts, engagement and category leaderboards

Two jobs in one actor:

  1. Posts from any Substack: give newsletter URLs or subdomains (custom domains work) and get every post with likes, comments, restacks, word count, free/paid, authors, tags, section, preview text and cover image. Filter by date and free/paid.
  2. Category leaderboards: pick Substack categories (Technology, Finance, Crypto, Politics… 32 in total) and get the ranked top newsletters with subscriber tier (e.g. "1.1M+"), paid-subscriber band ("Tens of thousands of paid subscribers"), bestseller tier, author, language, launch date and URL. Optionally pull each one's latest N posts.

Public JSON only: no login, no cookies, no proxies, and runs finish in 2–3 s for 35–60 rows.

Use cases

Newsletter sponsorship and partnership prospecting, creator and competitor tracking, content research (what topics get the most likes and comments), media monitoring, and building datasets of top newsletters per niche.

Input

FieldDescription
publicationsURLs or subdomains, e.g. https://blog.bytebytego.com, pragmaticengineer
maxPostsPerPublicationDefault 50
postedAfterYYYY-MM-DD
audienceall / free / paid
categoriesLeaderboards to pull (select list)
maxPublicationsPerCategoryDefault 50
postsFromCategoryPublicationsLatest N posts per leaderboard newsletter (0 = none)
maxResultsHard cap across the whole run

Output (real rows from test runs on Oct 31, 2026)

Post:

{
"record_type": "post",
"publication_url": "https://blog.bytebytego.com",
"publication_name": "ByteByteGo Newsletter",
"post_id": 222752055,
"title": "EP231: AI Terms You Need to Know",
"subtitle": "What else should be on the list?",
"url": "https://blog.bytebytego.com/p/ep231-ai-terms-you-need-to-know",
"post_date": "2026-10-31T15:31:08.160Z",
"type": "newsletter",
"audience": "free",
"authors": [
"ByteByteGo"
],
"likes": 185,
"comments": 3,
"restacks": 4,
"wordcount": 1084,
"section": null,
"tags": [],
"podcast_duration_sec": null,
"preview_text": "The all-in-one intelligent cloud (Sponsored)",
"scraped_at": "2026-11-01T06:02:24.783437+00:00"
}

Publication:

{
"record_type": "publication",
"category": "Top in Technology",
"category_rank": 2,
"publication_name": "The Pragmatic Engineer",
"url": "https://newsletter.pragmaticengineer.com",
"subdomain": "pragmaticengineer",
"author_name": "Gergely Orosz",
"description": "Big Tech and startups, from the inside. Highly relevant for software engineers, AI engineers and engineering leaders, useful for those working in tech.",
"language": "en",
"subscribers_tier": "1.1M+",
"subscribers_min": 1000000,
"ranking_detail": "Tens of thousands of paid subscribers",
"bestseller_tier": 10000,
"paid_enabled": true,
"first_post_date": "2021-08-30T11:24:02.082Z",
"scraped_at": "2026-11-01T06:02:42.372648+00:00"
}

Pricing (suggested)

Pay per event: post at $0.001 ($1.00/1K) and publication at $0.003 ($3.00/1K) (leaderboard rows are richer and rarer). No start fee. Benchmarks in Apify Store on Oct 31, 2026: the leading Substack actor charges about $1.15/1K posts plus $5/1K run starts (175 monthly users, no reviews yet), others charge $15/1K entities, and one is rated 2.6★. Matching on post price and leading on leaderboards and engagement fields is the angle.

Notes

Only publicly listed metadata and preview text are collected. Full paywalled content is never accessed.