Substack Posts Scraper
Pricing
from $5.00 / 1,000 post scrapeds
Substack Posts Scraper
Scrape Substack newsletter posts from any publication on a subdomain or custom domain. Returns full post text, engagement, tags and paywall status.
Substack Posts Scraper
Pricing
from $5.00 / 1,000 post scrapeds
Scrape Substack newsletter posts from any publication on a subdomain or custom domain. Returns full post text, engagement, tags and paywall status.
One or more Substack publication URLs. Accepts publication roots (e.g. 'https://platformer.substack.com' or custom domain 'https://www.lennysnewsletter.com') and single post URLs ('https://.../p/some-post'). Each publication is paginated up to maxPosts. NOT a keyword search input — this actor scrapes by publication URL.
Hard cap on the number of posts scraped and billed per publication. Each post counts as one billable result. Defaults to 50. Set lower for cheap test runs.
When true (default), fetches each post's detail page to capture the complete article HTML. Public posts return full HTML; paid posts return metadata + paywall signal only. Adds one HTTP request per post.
When true (default), includes a plain-text version of the article body (derived from the HTML). Public posts return full text; paid posts return the teaser only. Disable to reduce payload size.
Optional ISO 8601 date or datetime. Only posts published on or after this date are returned, e.g. '2026-01-01' or '2026-06-01T00:00:00Z'. Leave empty for no lower bound.
Optional ISO 8601 date or datetime. Only posts published on or before this date are returned. Leave empty for no upper bound.
Filter posts by paywall audience. 'all' (default) returns every post; 'free' returns only free posts; 'paid' returns only paid/paywalled posts (metadata + teaser).