Reddit Comments and Replies Scraper avatar

Reddit Comments and Replies Scraper

Pricing

$14.99/month + usage

Go to Apify Store
Reddit Comments and Replies Scraper

Reddit Comments and Replies Scraper

Use Reddit Comments Scraper to gather Reddit comment data at scale. Capture comment threads, upvotes, authors, and posting time to analyze discussions, audience sentiment, and community engagement patterns.

Pricing

$14.99/month + usage

Rating

0.0

(0)

Developer

Scrapio

Scrapio

Maintained by Community

Actor stats

0

Bookmarked

11

Total users

1

Monthly active users

18 days ago

Last modified

Share

Reddit Comment Scraper Plus πŸ”΄πŸ’¬

Scrape Reddit comments and replies at scale from any post, subreddit or user, with real timestamps, the parent post record, full thread metadata (OP flag, awards, flair, distinguished, depth), powerful filters, derived analytics and optional AI enrichment (sentiment, emotion, topics, language, toxicity).

Built on Reddit's public JSON API (no login) β€” Reddit comment scraper, Reddit comments export, Reddit thread scraper, Reddit data extraction, Reddit sentiment analysis, Reddit market research, Reddit API alternative.

Features

  • βœ… Comments + threaded replies β€” every reply is labelled type="reply", isReply=true, linked to its parent via parentId, and interleaved right after its parent comment.
  • βœ… Real creation dates β€” createdAt emitted as ISO-8601 (the base scraper left this empty).
  • βœ… Post/submission record β€” one type="post" row per post with title, selftext, score, upvoteRatio, numComments, author and date.
  • βœ… Rich harvested metadata β€” isSubmitter (OP), distinguished, stickied, authorFlair, authorFullname, controversiality, depth, gilded, awardCount, locked, archived, subreddit, bodyHtml, edited/editedAt.
  • βœ… Filters β€” include/exclude keywords, minimum score, oldest date (absolute or relative), exclude deleted/removed, exclude AutoModerator, only-OP.
  • βœ… Derived analytics β€” ageHours, replyCount, isTopLevel, wordCount, engagementScore (score Γ· age).
  • βœ… Discovery β€” paste a subreddit or user URL to auto-discover and scrape its recent posts.
  • βœ… Per-run replies dataset β€” reply rows are mirrored to a separate replies-<runId> dataset.
  • βœ… Optional AI enrichment β€” sentiment, emotion, topics, language, toxicityScore via Anthropic / OpenAI / Google / xAI / DeepSeek / Perplexity / Mistral (auto-detected from the model name). Off by default.
  • βœ… Proxy honored β€” your proxy selection is used exactly (residential recommended for Reddit).

Input

FieldTypeDefaultDescription
startUrlsarrayβ€”Post, subreddit or user URLs (also bare post IDs / redd.it links).
sortOrderenumtopbest Β· top Β· new Β· controversial Β· old Β· qa Β· hot.
maxCommentsinteger50Max top-level comments per post (0 = unlimited).
includeRepliesbooleantrueCollect nested replies.
maxRepliesPerCommentinteger10Max reply rows per top-level comment (0 = unlimited).
includePostbooleantrueEmit the post/submission record.
maxPostsinteger10Posts to auto-discover from a subreddit/user URL.
keywords / excludeKeywordsarrayβ€”Keep / drop comments by text (case-insensitive).
minScoreinteger0Minimum comment score (upvotes).
oldestDatedateβ€”Keep comments on/after this date (absolute or relative, e.g. 7 days).
excludeDeletedbooleanfalseSkip [deleted]/[removed].
excludeAutoModbooleanfalseSkip AutoModerator.
onlyOPbooleanfalseKeep only the original poster's comments.
aiEnhancement / aiModel / aiApiKeyβ€”offOptional LLM enrichment.
proxyConfigurationobjectresidentialProxy settings (honored exactly).

Example

{
"startUrls": [{ "url": "https://www.reddit.com/r/ChatGPT/comments/1epeshq/these_are_all_ai/" }],
"sortOrder": "top",
"maxComments": 50,
"includeReplies": true,
"maxRepliesPerComment": 10,
"includePost": true,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Output

Each row is a post, comment or reply (see the type column). Key fields:

type Β· isReply Β· isTopLevel Β· subreddit Β· title Β· commentId Β· postId Β· parentId Β· author Β· authorFullname Β· authorFlair Β· isSubmitter Β· distinguished Β· stickied Β· createdAt Β· edited Β· editedAt Β· upvotes Β· upvoteRatio (post) Β· numComments (post) Β· controversiality Β· depth Β· gilded Β· awardCount Β· locked Β· archived Β· contentText Β· bodyHtml Β· permalink Β· userUrl Β· url Β· ageHours Β· replyCount Β· wordCount Β· engagementScore Β· sentiment Β· emotion Β· language Β· topics Β· toxicityScore Β· scrapedAt.

Reply rows are additionally mirrored to a per-run replies-<runId> dataset.

How to use

  1. Open the Actor in the Apify Console.
  2. Paste one or more Reddit URLs into Reddit URLs.
  3. Adjust comment/reply limits, filters and (optionally) AI enrichment.
  4. Keep the residential proxy for reliable Reddit access.
  5. Run, then view results in the Output table or export to JSON/CSV/Excel.

Notes & compliance

  • Uses only publicly available Reddit content; no login, no private data.
  • Reddit rate-limits datacenter IPs on its JSON endpoints β€” residential proxy is recommended.
  • Genuinely unavailable values are emitted as null, never faked.
  • You are responsible for complying with Reddit's Terms of Service and applicable data/privacy laws.