Substack Scraper: Posts, Likes, Comments & Full Text
Pricing
Pay per event
Substack Scraper: Posts, Likes, Comments & Full Text
Scrape any Substack newsletter: every post with date, likes, comments, restacks, paywall status, authors and tags, plus the full text of free posts. Search inside a publication, stop at a date, or monitor new posts. $0.50 per 1,000 posts.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Ishema Hugues
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
Substack Scraper: posts, likes, comments and full text
Scrape any Substack newsletter: on substack.com or a custom domain. Every post comes with:
- title, subtitle, date, URL, authors, tags and section;
- likes, comments and restacks;
- paywall status (free vs paid), post type (newsletter, podcast, thread) and word count;
- cover image and podcast audio URL;
- optionally the full text (HTML and plain text) of free posts.
Why this one:
- $0.50 per 1,000 posts. No start fee, no monthly rent. Full text is an optional $0.0005 per free post. Paywalled posts are never charged for text.
- Any publication format:
astralcodexten,@astralcodexten,https://www.lennysnewsletter.comor any post URL. - Search inside a publication (
searchQuery) and stop at a date (dateFrom), so you don't pay for older posts. - Monitoring mode (
onlyNewPosts): schedule it and each run returns only new posts. - Reliable paging: Substack's archive silently skips posts with large page sizes, so the Actor pages 12 at a time. That's the size that returns every post.
Use cases
- Competitor and creator research: which topics get the most likes and comments, how often they publish, what share is paywalled.
- Newsletter monitoring: new posts from a list of newsletters into Slack, Sheets or a feed reader.
- AI and RAG pipelines: clean full text of free posts with dates and authors.
- Media and market research: track how a newsletter's engagement changes over time.
Ready-made tasks (one click to run)
- Compare Substack newsletters: likes, comments, paywall
- Get new posts from Substack newsletters (monitoring)
- Export a Substack newsletter's posts with full text
Input
| Field | What it does |
|---|---|
publications | Names, handles or URLs (custom domains work). |
maxPostsPerPublication | Newest first. Default 50. |
searchQuery | Optional. Only posts matching this text. |
dateFrom | Optional YYYY-MM-DD. Paging stops here. |
includeContent | Full text of free posts (contentHtml, contentText). |
onlyNewPosts | Monitoring: skip posts seen in earlier runs. |
{"publications": ["astralcodexten", "https://www.lennysnewsletter.com"],"maxPostsPerPublication": 40}
Output
One row per post (a real result from 2026-10-04):
{"publication": "www.lennysnewsletter.com","postId": 216168140,"title": "Advanced evals: How to find (and fix) hidden AI failures in your product","subtitle": "Why you should never skip error discovery","url": "https://www.lennysnewsletter.com/p/advanced-evals-how-to-find-and-fix","postDate": "2026-09-22T12:45:14.998Z","audience": "only_paid","isPaid": true,"type": "newsletter","wordcount": 3807,"reactionCount": 344,"commentCount": 4,"restacks": 20,"authors": ["Hamel Husain", "Shreya Shankar"],"tags": ["AI"],"coverImage": "https://substackcdn.com/image/fetch/…png","language": "en","slug": "advanced-evals-how-to-find-and-fix"}
With includeContent, free posts also get contentHtml and contentText.
The status message summarises each publication (real run):
Saved 80 posts from 2 publication(s). astralcodexten.substack.com: 40 posts (2026-08-03 to 2026-10-02), 3 paywalled;top "The Foothills Of Bay Area House Party" (1164 likes, 132 comments). www.lennysnewsletter.com: 40 posts (2025-11-04 to 2026-09-29), 32 paywalled; …
Pricing (pay per event)
| Event | Price |
|---|---|
Post saved (post) | $0.0005 ($0.50 per 1,000) |
Full text of a free post (post-content) | $0.0005 |
Failed publications are never charged. Set a maximum cost per run and the Actor stops cleanly.
Notes
- Only public data: the Actor reads Substack's public archive and post endpoints, without login. Paid posts show metadata and Substack's public preview only.
reactionCountis the post's like count as Substack shows it.- Comment threads and subscriber counts aren't included.
More from the same developer
- Google News Scraper: articles with real publisher URLs, any country, new-article monitoring.
- Telegram Channel Scraper: posts, views and reactions from public channels, no login.
- Google Trends Scraper: interest over time for unlimited keywords, breakouts and Trending Now.
- Google Ads Transparency Scraper: every ad a competitor runs on Google, with ad text and landing pages.