Reddit Comment Scraper | Threads & Replies
Pricing
from $6.00 / 1,000 comments
Reddit Comment Scraper | Threads & Replies
Extract Reddit comments, scores, authors, timestamps, permalinks, and nested reply paths. Fast HTTP-first collection with automatic browser fallback.
Pricing
from $6.00 / 1,000 comments
Rating
0.0
(0)
Developer
Newbs
Maintained by CommunityActor stats
2
Bookmarked
96
Total users
7
Monthly active users
9 hours ago
Last modified
Categories
Share
Scrape comments and nested replies from public Reddit posts without a Reddit API key or login. Get one clean dataset row per comment, including author, score, timestamp, permalink, parent ID, reply depth, and post context.
The Actor tries Reddit's structured HTTP response first and automatically uses a browser fallback when a thread needs it. This keeps common runs fast while preserving reliability on difficult pages.
What you can do
- Analyze product feedback, complaints, feature requests, and customer language.
- Export complete reply chains for sentiment analysis and topic classification.
- Build Reddit datasets for AI agents, RAG pipelines, and research.
- Monitor selected discussion threads from n8n, Make, Zapier, or Pipedream.
- Collect AMA questions and identify replies written by the original post author.
- Export results as JSON, CSV, Excel, XML, or RSS through Apify.
Quick start
- Add one or more direct Reddit post URLs.
- Keep Maximum Comments at 25 for your first run.
- Choose whether to include replies and how deep to follow them.
- Run the Actor and open the Comments dataset view.
Example input:
{"postUrls": ["https://www.reddit.com/r/AskReddit/comments/ovihp9/what_city_would_you_never_ever_ever_live_in/"],"maxComments": 25,"includeReplies": true,"maxCommentDepth": 20,"sortBy": "top","maxConcurrency": 2}
The Actor accepts standard reddit.com, old.reddit.com, and short redd.it post links. Subreddit listing pages and Reddit search pages are not supported.
Input
| Field | Default | Description |
|---|---|---|
postUrls | Required | Direct public Reddit post URLs |
maxComments | 25 | Maximum saved comments per post, including replies |
includeReplies | true | Include nested replies |
maxCommentDepth | 20 | Deepest reply level to save; 0 means top-level only |
sortBy | top | top, best, new, controversial, old, or qa |
maxConcurrency | 2 | Posts processed in parallel, from 1 to 4 |
proxy | Residential | Proxy used by both HTTP and browser collection |
mcpOutputConnectors | Empty | Optional Apify MCP destinations for a run summary |
maxComments applies to each post. For example, two URLs with maxComments: 25 can save up to 50 paid comment rows.
Output
Each dataset item is one comment or reply. The flat format works directly with spreadsheets, databases, BI tools, and AI workflows.
{"postUrl": "https://www.reddit.com/r/example/comments/abc123/example_post/","postId": "t3_abc123","postTitle": "Example post","postAuthor": "original_poster","postScore": 123,"postText": "Post body when available","postCreatedAt": "2026-07-20T08:00:00.000Z","subreddit": "example","commentId": "t1_def456","parentCommentId": "t3_abc123","commentAuthor": "commenter","commentText": "Example comment","commentScore": 42,"commentPermalink": "https://www.reddit.com/r/example/comments/abc123/example_post/def456/","commentTimestamp": "2026-07-20T09:00:00.000Z","commentDepth": 0,"commentPath": "0","parentPath": null,"isTopLevel": true,"isPostAuthor": false,"replyCount": 3,"scrapeSource": "reddit-json","scrapedAt": "2026-07-28T10:00:00.000Z"}
Reddit does not expose every field on every page. Fields such as score, permalink, or post body can be null when they are unavailable.
The Actor also writes an OUTPUT run summary with per-post status, row count, collection source, duration, and an explanation when a post returns no rows. This avoids silent empty runs.
Pricing
The Actor uses pay-per-event pricing:
- $0.006 per saved comment
- $0.00005 when the Actor starts
- Apify platform usage can also apply as shown in the Console pricing estimate
Estimated result charges:
| Saved comments | Result charge |
|---|---|
| 25 | $0.15 |
| 100 | $0.60 |
| 500 | $3.00 |
You are charged only for rows successfully saved under the comment event. The Actor respects the maximum run cost configured by the user and stops gracefully when that limit is reached.
Ready-to-run examples
- Analyze Reddit product feedback
- Find SaaS pain points on Reddit
- Export comments for sentiment analysis
- Analyze game launch feedback
- Collect Reddit AMA questions
- Research competitor discussions
- Extract customer complaints
- Build a Reddit dataset for AI
API
JavaScript:
const run = await apifyClient.actor("newbs/reddit-comment-scraper").call({postUrls: ["https://www.reddit.com/r/AskReddit/comments/ovihp9/what_city_would_you_never_ever_ever_live_in/"],maxComments: 25,includeReplies: true,maxCommentDepth: 20,sortBy: "top"});const { items } = await apifyClient.dataset(run.defaultDatasetId).listItems();
Synchronous HTTP API:
POST https://api.apify.com/v2/acts/newbs~reddit-comment-scraper/run-sync-get-dataset-items
Send the JSON input as the request body and authenticate with your Apify API token.
Automation and AI
Apify MCP
Select this Actor in Apify's hosted MCP server or use:
https://mcp.apify.com?tools=newbs/reddit-comment-scraper
The input, output, and dataset schemas let AI agents discover the tool and understand its result fields. Optional MCP output connectors can send a compact run summary and dataset link to an authenticated destination without exposing destination credentials to the Actor.
Use with n8n
Use the official Apify node and choose Run an Actor and Get Dataset:
- Set Actor ID to
newbs/reddit-comment-scraper. - Pass the same JSON input shown above.
- Send returned rows to Google Sheets, Slack, Notion, Airtable, a database, or an AI node.
The integrations/n8n-workflows directory also contains importable examples for clean export, pain-point scoring, thread metrics, AI research briefs, brand monitoring, and competitor research.
Reliability and limitations
- Public Reddit posts only; private, quarantined, age-gated, or removed content may be unavailable.
- Deleted and removed comment bodies are skipped.
- Reddit can hide additional comments behind continuation requests. The Actor uses a browser fallback when the fast response indicates more comments are available.
maxCommentDepthandmaxCommentsintentionally limit the saved result set.- Residential proxy traffic costs more than datacenter traffic but currently gives the best Reddit success rate.
Support
For a failed or empty source, first open the run's Run summary output. It identifies the affected URL and explains whether the post was empty, unavailable, blocked, or stopped by a spending limit.
If the problem persists, open an issue on the Actor page and include the run ID and a public example URL. Do not include API tokens or proxy credentials.
Changelog
July 2026
- Added HTTP-first collection that skips browser startup when possible.
- Kept automatic browser fallback for blocked or incomplete JSON responses.
- Added canonical support for reddit.com variants and redd.it links.
- Added comment score, permalink, parent ID, original-poster flag, post text, and collection source.
- Added maximum reply depth.
- Added a visible per-post run summary for empty and failed sources.
- Reduced the first-run default from 500 to 25 comments for clearer cost control.