Reddit Scraper
Pricing
from $0.60 / 1,000 posts
Reddit Scraper
Extract posts, comments, user profiles, and search results from Reddit. Pure HTTP, no API key required.
Reddit Scraper
Pricing
from $0.60 / 1,000 posts
Extract posts, comments, user profiles, and search results from Reddit. Pure HTTP, no API key required.
Reddit URLs to scrape. Accepts subreddit listings (https://www.reddit.com/r/technology/), individual posts (https://www.reddit.com/r/x/comments/abc123/...), user profiles (https://www.reddit.com/user/spez/), and search URLs (https://www.reddit.com/search/?q=...). Shortcut forms 'r/technology' and bare 'technology' are accepted as subreddit names.
Optional. Search Reddit for this query. Combine with 'searchSubreddit' to limit search to a single subreddit. Either 'urls' or 'searchQuery' must be provided.
When 'searchQuery' is set, restrict search to this subreddit (without the r/ prefix).
Listing sort order. 'relevance' applies to search only.
Time window. Applies to sort=top and sort=relevance.
Maximum number of posts to scrape per source (subreddit, user, search). Set to 0 for unlimited (capped by Reddit's ~1000-item-per-listing ceiling).
Also scrape comments for each post. Increases run time and cost. Required for 'jsonl-finetune' and 'rag-markdown' output formats to have content to bundle.
Maximum comments to scrape per post. Hard-capped at 1000 to bound proxy/compute cost.
Maximum reply nesting depth (1 = top-level comments only).
Only keep posts whose title or body contains at least one of these terms (case-insensitive). Leave empty to keep all posts. Filtered posts are not charged.
default = standard JSON. jsonl-finetune = OpenAI chat-format records for LLM SFT. rag-markdown = self-contained markdown documents for vector-DB ingestion. AI formats bundle comments into the post record at no extra charge.
Number of retry attempts for failed requests (429, 5xx, network errors).
Apify proxy. RESIDENTIAL is the default — Reddit aggressively blocks datacenter IP ranges in 2026, so DATACENTER will likely fail on sustained runs. Override only if you understand the trade-off.
{ "useApifyProxy": true, "apifyProxyGroups": [ "RESIDENTIAL" ]}