Reddit Scraper
Pricing
from $0.80 / 1,000 results
Reddit Scraper
Scrape Reddit posts, comments, and user profiles without API keys or login. Extract from any subreddit, keyword search, or post URL. No rate limits.
Pricing
from $0.80 / 1,000 results
Rating
5.0
(1)
Developer
Scrape Smith
Maintained by CommunityActor stats
8
Bookmarked
231
Total users
46
Monthly active users
20 days ago
Last modified
Categories
Features
Share
Reddit Scraper — Posts, Comments, Profiles and Search API
Collect public Reddit posts, discussion comments, user profiles and keyword search results in one dataset. Use Reddit URLs or search terms for community research, social listening and AI-assisted analysis.
Quick start
- Open an example below or enter your own public Reddit targets.
- Choose a per-target result limit and
maxItemsfor the whole run. - Run the Actor and export the dataset as JSON, CSV or Excel.
{"startUrls": [{"url": "https://www.reddit.com/r/Python/"}],"sort": "new","maxPostCount": 20,"maxItems": 20}
Example tasks
Copy a ready-to-use configuration and customize its targets or limits:
- Monitor new Python community discussions
- Research startup discussions on Reddit
- Compare Python and JavaScript discussions
- Export public Reddit profile summaries
- Collect an AskReddit discussion for analysis
- Find business advice in entrepreneur discussions
Inputs
| Input | Type | Purpose |
|---|---|---|
startUrls | array | Paste any Reddit URL — subreddit, post, user profile, or search page. The scraper auto-detects the type. |
searches | array | Search Reddit by keyword without needing a URL. Each keyword runs as a separate search. Leave empty if using Start URLs. |
searchCommunityName | string | Optional. If set, keyword searches will be scoped to this subreddit only (e.g. 'entrepreneur'). Only used when Searches is filled. |
sort | string | Sort order for subreddit posts. Hot = trending now. New = most recent. Top = highest voted. Rising = gaining traction. |
time | string | Filter results by time range. Most useful when Sort is set to Top. |
maxItems | integer | Maximum total dataset rows across all inputs, including any profile, community or original-post rows. |
maxPostCount | integer | Maximum number of posts to scrape from each subreddit, search query, or user. |
maxComments | integer | Maximum number of comments to scrape when visiting a post URL. Set to 0 to skip comments entirely. |
postDateLimit | string | Only scrape posts published after this date (YYYY-MM-DD). Automatically sets sort to New. |
commentDateLimit | string | Only scrape comments published after this date (YYYY-MM-DD). |
skipComments | boolean | For a post URL, return the post without collecting its comments. |
skipUserPosts | boolean | When enabled, only the user profile object is returned — their post history is not fetched. |
includeNSFW | boolean | When enabled, over-18 and NSFW posts are included in results. |
Output fields
Records are identified by dataType: post, comment, user or community, depending on the input.
| Record | Available fields |
|---|---|
| Posts | id, url, title, body, username, communityName, upVotes, numberOfComments, media and flair fields |
| Comments | id, url, body, username, parentId, postUrl, upVotes, depth |
| Profiles | username, url, bio, postKarma, commentKarma, totalKarma, available account flags |
| Timestamps | createdAt and scrapedAt, where applicable |
Optional fields depend on the record type and what Reddit makes public. Deleted authors, unavailable media and absent profile details can have empty values. Scores and comment counts are snapshots, not permanent totals.
API, MCP and AI workflows
Use the Actor through the Apify API or select it in the Apify MCP server. An AI agent can supply the same JSON inputs shown above, then use the returned dataset for summarization, classification or research. Sentiment analysis and summaries are downstream tasks; this Actor returns source data.
Connect datasets to n8n, Make, Zapier or your own Python and JavaScript workflows. Use Apify schedules for recurring runs and webhooks to trigger processing after completion. ChatGPT, Claude and LangChain workflows can consume the exported data through their configured integrations.
Limits and frequently asked questions
Do I need a Reddit account? No Reddit login or personal Reddit API key is required. Apify API calls require your own Apify token.
How many results can I collect? The free allowance is 100 dataset rows. Paid runs honor your input and platform result limits, with a 100,000-row dataset ceiling. Per-target limits do not override the total cap. Set your Apify run timeout and budget to suit the job.
Does a requested maximum guarantee that many rows? No. Public availability, source pagination, filtering, duplicate removal and deleted content can reduce the count. This is not a complete historical archive.
Are results unique? IDs are deduplicated across the inputs in a run. Separate new runs can return the same records; use their IDs when maintaining a historical database.
Can bulk runs continue while producing results? Yes. There is no fixed internal runtime, request-count or page-count cutoff. Requested result limits still apply. Repeated failures, unavailable data or pagination without progress stop collection while preserving confirmed results.
What does resume mean? Saved checkpoints support continuation of the same run. Starting a fresh run creates a new dataset and does not automatically resume an older run.
What is the price? Check the current Pricing tab on this Actor. Your plan, result allowance and run budget determine which limits apply.