Reddit Keyword Scraper avatar

Reddit Keyword Scraper

Pricing

from $2.00 / 1,000 post or comments

Go to Apify Store
Reddit Keyword Scraper

Reddit Keyword Scraper

Scrape Reddit posts and optional comments by keywords across Reddit or specific subreddits. Fast public JSON endpoints for pain-point mining, lead generation, and market research — an f5bot-style alternative with structured dataset output.

Pricing

from $2.00 / 1,000 post or comments

Rating

0.0

(0)

Developer

Harsh

Harsh

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

What does Reddit Keyword Scraper do?

Reddit Keyword Scraper finds Reddit posts (and optionally comments) that match your keywords, either site-wide or inside specific subreddits. It uses Reddit’s public JSON endpoints (search.json / r/{sub}/search.json) — no browser, no login — and writes clean, structured results to an Apify dataset.

Use it as an f5bot-style signal source for pain-point mining, outbound lead research, competitor mentions, and product discovery. Run it on the Apify platform for API access, scheduling, proxy rotation, integrations (Make, Zapier, n8n), and monitoring.

Why use Reddit Keyword Scraper?

  • Outbound & lead gen — Discover people actively complaining about tools, asking for alternatives, or hiring for problems you solve.
  • Market research — Track keyword conversations across SaaS, startup, and niche communities over time.
  • Product feedback — Capture authentic language for ads, landing pages, and feature prioritization.
  • Monitoring — Schedule runs for brand, competitor, or category keywords and pipe results into CRM / Slack / sheets.
  • Cheap high volume — Pay-per-event pricing at $0.002 per post or comment written to the dataset.

How to use Reddit Keyword Scraper

  1. Open the Actor in Apify Console or via API.
  2. Enter one or more keywords (required), e.g. looking for alternative, hate my CRM.
  3. Optionally restrict to subreddits (without r/), e.g. SaaS, startups.
  4. Choose sort (new, hot, or relevance) and max posts per keyword.
  5. Toggle include comments if you need full thread context (extra dataset items).
  6. Enable Apify Proxy for reliable volume (recommended).
  7. Click Start. Download results as JSON, CSV, Excel, or HTML from the dataset.

Input

Configure fields in the Input tab:

FieldTypeDescription
keywordsstring[]Required. Search phrases to match.
subredditsstring[]Optional. Limit to these subreddits; empty = all of Reddit.
sortenumnew (default), hot, or relevance.
maxPostsPerKeywordintegerCap unique posts per keyword (0 = unlimited). Default 50.
includeCommentsbooleanFetch comments for each post. Default false.
maxCommentsPerPostintegerCap flattened comments per post. Default 50.
maxConcurrencyintegerParallel requests (keep low). Default 2.
maxRequestRetriesintegerRetries on failure / rate limit. Default 5.
maxRequestsPerMinuteintegerGlobal rate limit. Default 30.
proxyConfigurationobjectApify Proxy editor; default uses Apify Proxy.

Example input:

{
"keywords": ["looking for alternative", "hate my CRM"],
"subreddits": ["SaaS", "startups"],
"sort": "new",
"maxPostsPerKeyword": 20,
"includeComments": false,
"proxyConfiguration": { "useApifyProxy": true }
}

Output

Each dataset item is either a post or a comment. You can download the dataset in JSON, HTML, CSV, or Excel.

Post example

{
"type": "post",
"id": "1abc234",
"title": "Looking for an alternative to HubSpot",
"selftext": "Our team is outgrowing free tools...",
"author": "founder_jane",
"subreddit": "SaaS",
"score": 42,
"numComments": 18,
"url": "https://www.reddit.com/r/SaaS/comments/1abc234/...",
"permalink": "https://www.reddit.com/r/SaaS/comments/1abc234/...",
"createdUtc": 1710000000,
"keyword": "looking for alternative",
"scrapedAt": "2026-07-18T12:00:00.000Z"
}

Comment example

{
"type": "comment",
"id": "cmt001",
"parentId": "1abc234",
"body": "We switched to Attio and love it for SMB.",
"author": "reply_alice",
"subreddit": "SaaS",
"score": 12,
"url": "https://www.reddit.com/r/SaaS/comments/1abc234/.../cmt001/",
"permalink": "https://www.reddit.com/r/SaaS/comments/1abc234/.../cmt001/",
"createdUtc": 1710000500,
"keyword": "looking for alternative",
"scrapedAt": "2026-07-18T12:00:05.000Z"
}

A run summary is also stored in the key-value store as OUTPUT (totals per keyword, request stats).

Data table

FieldDescription
typepost or comment
idReddit thing id
titlePost title (posts only)
selftextPost body (posts only)
bodyComment text (comments only)
parentIdParent post/comment id (comments)
authorReddit username
subredditSubreddit name
scoreUps minus downs (approx.)
numCommentsComment count on post
url / permalinkAbsolute links
createdUtcUnix timestamp
keywordKeyword that matched this item
scrapedAtISO scrape time

How much does it cost to scrape Reddit?

This Actor uses pay-per-event pricing:

  • $0.002 per dataset item (apify-default-dataset-item) — each post or comment
  • Tiny actor-start fee

Examples:

ScenarioItemsApprox. cost
100 posts, no comments100$0.20
50 posts + 20 comments each1,050$2.10
1,000 posts1,000$2.00

Apify Free plan includes monthly platform credits so you can try the Actor with little or no spend. Higher volumes benefit from Apify Proxy and reserved compute.

Tips

  • Prefer sort: "new" for outbound lead streams (fresh pain points).
  • Scope subreddits when you know your ICP communities — faster and less noise.
  • Keep maxConcurrency ≤ 3 and rely on maxRequestsPerMinute to reduce 429s.
  • Enable proxy for scheduled / multi-keyword production runs.
  • Turn on includeComments only when you need thread context — it multiplies cost and requests.
  • Deduping is by post id within a run; re-runs may re-collect the same posts.

FAQ, disclaimers, and support

Is scraping Reddit legal?
This Actor only uses public Reddit JSON pages the same way a browser would. You are responsible for complying with Reddit’s Terms of Service, applicable laws, and fair use / rate limits. Do not collect or misuse personal data.

Does it need a Reddit API key?
No. It primarily uses public Reddit .json endpoints (search.json / r/{sub}/search.json). When Reddit returns HTTP 403 (common without residential IPs), the Actor automatically falls back to the PullPush public archive API for the same keywords/subreddits so runs still return structured posts.

Why are some comments missing?
Reddit “load more comments” stubs are not expanded without authenticated API access. Nested replies present in the initial JSON tree are included up to maxCommentsPerPost.

Blocked or empty results?
Keep Apify Proxy + RESIDENTIAL enabled (default). The Actor also retries alternate Reddit hosts and PullPush automatically.

Custom solutions
Need monitoring webhooks, CRM push, or multi-platform social listening? Open an issue on the Actor’s Issues tab or contact the developer on Apify.

Built for high-volume social listening and lead generation workflows on Apify.