Reddit Scraper — Posts, Comments & Sentiment Analysis avatar

Reddit Scraper — Posts, Comments & Sentiment Analysis

Pricing

from $2.00 / 1,000 result scrapeds

Go to Apify Store
Reddit Scraper — Posts, Comments & Sentiment Analysis

Reddit Scraper — Posts, Comments & Sentiment Analysis

Scrape Reddit posts, comments, user profiles, and search results. Built-in AFINN-165 sentiment analysis, nested comment threads, universal URL input. HTTP-only, no browser needed. 256MB memory. $2 per 1,000 results.

Pricing

from $2.00 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

dltik

dltik

Maintained by Community

Actor stats

3

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Reddit Scraper — Posts, Comments, Subreddits & Sentiment Analysis

Extract Reddit posts, comments, user profiles, and search results with built-in AFINN-165 sentiment analysis. HTTP-only, no browser needed. 256MB memory. $2 per 1,000 results. 50% cheaper than the market leader.

Paste any Reddit URL or search by keyword. Auto-detects subreddits, posts, users, and search queries.


What can this Reddit Scraper do?

  • Scrape subreddits — extract hot, new, top, rising, or controversial posts from any public subreddit
  • Extract comments — nested comment threads with depth tracking, author, score, and sentiment
  • Search Reddit — keyword search across all of Reddit with time and score filtering
  • Scrape user profiles — karma, account age, bio, recent posts
  • Sentiment analysis — built-in AFINN-165 scoring with negation detection (no external API)
  • Filter and sort — by score, time range, NSFW, sort order
  • Universal URL input — paste any Reddit URL, automatically detected and processed

Why this Reddit Scraper?

FeatureThis actortrudax ($4/1K)harshmaur ($2/1K)
Posts + comments + profilesYesYesYes
Sentiment analysisBuilt-in AFINN-165NoNo
Nested comment depthYesYesYes
Memory256MB2GB2GB
Browser neededNo (HTTP-only)YesYes
Price per 1,000$2$4$2
Success rate99%+91%98%

Quick start

Scrape a subreddit

{
"subreddits": ["technology", "programming"],
"maxResults": 50,
"sortBy": "hot"
}

Search Reddit for a topic

{
"searchTerms": "artificial intelligence",
"maxResults": 100,
"sortBy": "top",
"timeFilter": "month",
"enableSentiment": true
}

Scrape a post with all comments

{
"urls": ["https://reddit.com/r/AskReddit/comments/abc123/your_post_title/"],
"includeComments": true,
"commentsPerPost": 100,
"enableSentiment": true
}

Scrape a user profile + their posts

{
"urls": ["https://reddit.com/user/spez"],
"maxResults": 20
}

Bulk URL processing

{
"urls": [
"https://reddit.com/r/technology",
"https://reddit.com/r/AskReddit/comments/abc123/title/",
"https://reddit.com/user/example",
"https://reddit.com/search?q=startup"
],
"enableSentiment": true
}

Input parameters

ParameterTypeDefaultDescription
urlsarrayAny Reddit URLs (subreddit, post, user, search — auto-detected)
subredditsarraySubreddit names without r/ (e.g. ["technology", "askreddit"])
searchTermsstringSearch Reddit by keyword
maxResultsinteger50Max posts per source (1-1000)
includeCommentsbooleanfalseFetch comments for each post
commentsPerPostinteger20Max comments per post (1-500)
sortByenumhothot, new, top, rising, controversial
timeFilterenumweekhour, day, week, month, year, all
enableSentimentbooleanfalseAdd AFINN-165 sentiment scoring
minScoreinteger0Only include posts with this many upvotes or more
proxyConfigobjectResidentialProxy settings (residential proxy required)

What data do you get from Reddit?

Post output

{
"type": "post",
"id": "abc123",
"url": "https://www.reddit.com/r/technology/comments/abc123/title/",
"subreddit": "technology",
"title": "Post title here",
"body": "Full selftext content...",
"body_html": "<div>...<p>HTML version</p>...</div>",
"author": "username",
"author_fullname": "t2_abc123",
"score": 1234,
"upvote_ratio": 0.95,
"num_comments": 56,
"created_utc": "2026-03-31T10:00:00Z",
"permalink": "/r/technology/comments/abc123/title/",
"link_url": "https://example.com/article",
"domain": "example.com",
"is_self": false,
"is_video": false,
"is_nsfw": false,
"is_locked": false,
"is_stickied": false,
"flair": "Discussion",
"awards": 3,
"media_url": null,
"thumbnail": "https://...",
"sentiment_score": 2.3,
"sentiment_label": "positive"
}

Comment output

{
"type": "comment",
"id": "xyz789",
"post_id": "abc123",
"subreddit": "technology",
"body": "This is a great point!",
"author": "commenter",
"score": 45,
"created_utc": "2026-03-31T11:00:00Z",
"depth": 0,
"parent_id": "t3_abc123",
"is_op": false,
"is_stickied": false,
"awards": 0,
"controversiality": 0,
"sentiment_score": 3.0,
"sentiment_label": "positive"
}

User profile output

{
"type": "profile",
"username": "spez",
"display_name": "spez",
"bio": "CEO of Reddit",
"avatar_url": "https://...",
"karma_post": 12345,
"karma_comment": 67890,
"karma_total": 80235,
"created_utc": "2005-06-06T00:00:00Z",
"is_gold": true,
"is_mod": true,
"is_verified": true,
"profile_url": "https://www.reddit.com/user/spez"
}

Sentiment analysis

When enableSentiment: true, each post and comment gets:

FieldTypeDescription
sentiment_scorefloatAverage AFINN-165 score per word (-5 to +5)
sentiment_labelstringpositive (>0.5), negative (<-0.5), neutral
  • Built-in AFINN-165 lexicon (~300 words)
  • Negation detection: "not good" scores as negative
  • No external API calls — runs entirely locally
  • Works best for English text

How much does it cost to scrape Reddit?

$0.002 per result = $2 per 1,000 results. 50% cheaper than the market leader.

ScenarioResultsCostTime
1 subreddit, 50 hot posts50$0.10~5s
3 subreddits, 100 posts each300$0.60~30s
Search + 20 comments per post500$1.00~60s
Brand monitoring, 1000 posts1,000$2.00~120s

Compute cost is negligible at 256MB memory.


Use cases

  • Market research — analyze what Reddit users say about your industry, products, or competitors
  • Brand monitoring — track mentions of your brand across subreddits with sentiment scoring
  • Content research — find trending topics and popular content formats in your niche
  • Competitor analysis — monitor competitor mentions and user sentiment
  • Social listening — track conversations about keywords, products, or events
  • Lead generation — find users asking for recommendations in your product category
  • Academic research — collect Reddit data for social media studies
  • SEO research — discover what questions people ask on Reddit (for content creation)

API integration

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("dltik/reddit-scraper").call(run_input={
"subreddits": ["technology"],
"maxResults": 100,
"sortBy": "top",
"timeFilter": "week",
"enableSentiment": True,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
if item["type"] == "post":
print(f"[{item['sentiment_label']}] {item['title']} ({item['score']} pts)")

curl

curl -X POST "https://api.apify.com/v2/acts/dltik~reddit-scraper/runs" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searchTerms": "startup funding",
"maxResults": 50,
"enableSentiment": true
}'

Technical details

  • HTTP-only — uses Reddit's public .json API, no browser or Chromium needed
  • 256MB memory — lightest Reddit scraper on Apify (competitors use 2-4GB)
  • Cursor pagination — automatic after pagination for large result sets
  • Rate limiting — built-in 1s delay between requests per Reddit guidelines
  • Residential proxy — required because Reddit blocks datacenter IPs (included by default)
  • Nested comments — full thread structure with depth tracking
  • Error handling — per-URL error isolation, 429 retry with backoff, private/deleted detection

FAQ

Why do I need a proxy? Reddit blocks requests from datacenter IPs. Residential proxies (included by default via Apify) route requests through real residential IPs.

Can I scrape private subreddits? No. Only public subreddits and posts are accessible without authentication.

How many results can I get? Up to 1,000 per subreddit or search. Reddit's API limits listings to ~1,000 items. For more coverage, use multiple queries with different sort/time combinations.

Is the sentiment analysis accurate? AFINN-165 is a well-established lexicon-based approach. It captures overall sentiment direction and works best for English text. For production NLP, export the data and use a specialized tool.

How fast is it? ~5 seconds for 50 posts, ~60 seconds for 500 posts+comments. No browser startup overhead.

Can I use this with Make/Zapier/n8n? Yes. Use Apify's built-in integrations or webhooks to trigger workflows when a run completes.


Connect with Make, Zapier & n8n

This actor integrates with any automation platform via the Apify API.

Make (Integromat)

  1. Add an Apify module in your Make scenario
  2. Select Run Actor and choose this actor
  3. Configure the input (paste your JSON)
  4. Add a Get Dataset Items module to retrieve results
  5. Connect to Google Sheets, HubSpot, Slack, or any other app

Zapier

  1. Use the Apify integration on Zapier
  2. Set trigger: Actor Run Finished
  3. Action: Get Dataset Items
  4. Send results to your CRM, email tool, or spreadsheet

n8n

  1. Add an HTTP Request node to call the Apify API
  2. POST to https://api.apify.com/v2/acts/dltik~reddit-scraper/runs
  3. Wait for completion, then fetch dataset items
  4. Route results to any n8n node

Webhooks

Set up a webhook to get notified when a run finishes:

run = client.actor("dltik/reddit-scraper").call(
run_input={...},
webhooks=[{
"eventTypes": ["ACTOR.RUN.SUCCEEDED"],
"requestUrl": "https://your-webhook-url.com"
}]
)

Other scrapers by dltik

ActorWhat it doesPrice
Google Maps Email ExtractorExtract emails, phones, WhatsApp from Google Maps businesses$3/1K
Facebook Ads ScraperScrape Meta Ad Library — ad copy, creatives, CTA links$1/1K
TikTok ScraperScrape profiles, videos, hashtags, search, trending$1/1K
TikTok Video DownloaderDownload TikTok videos without watermark$5/1K
Trustpilot ScraperScrape reviews, ratings, company profiles with sentiment$0.50/1K