Reddit Scraper & Search API: Posts, Users, Subreddits avatar

Reddit Scraper & Search API: Posts, Users, Subreddits

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Reddit Scraper & Search API: Posts, Users, Subreddits

Reddit Scraper & Search API: Posts, Users, Subreddits

Search Reddit and scrape posts, subreddits and users from searches, subreddits or URLs. Filter by date, keywords, score and flair, get only new posts on schedules, and add comments, author activity and subreddit info.

Pricing

from $3.00 / 1,000 results

Rating

5.0

(3)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

25

Bookmarked

1.6K

Total users

121

Monthly active users

0.025 hours

Issues response

4 days ago

Last modified

Share

ParseForge

Reddit Scraper & Search API: Posts, Users, Subreddits & Monitoring

Search Reddit and scrape posts, subreddits, and users from any search, subreddit, user, or post URL: 500 posts from five subreddits came back in under 5 seconds of scraping in our last test run. Every post carries its score, comments, upvote ratio, full body text, and computed virality and engagement signals. No login, no Reddit API key, no OAuth app. Export to CSV, JSON, Excel, or XML.

The official Reddit API needs an app registration and OAuth, rate-limits you, and bills high-volume use. This Actor reads Reddit's public feeds and search directly, filters every post by date, keywords, score, flair, and more, and hands back one fixed schema you can load anywhere.

Who uses itWhat they scrape Reddit for
Brand and social teamsReddit monitoring: new mentions of a brand, product, or competitor, run on a schedule
Growth marketersReddit lead generation: threads where people ask for a recommendation or name a rival
Market researchersWhich topics, products, and communities a niche is discussing this week
Data scientistsReddit datasets with body text for sentiment, topic, and RAG models
Community managersReddit user search and subreddit search to find the right communities and voices

What it does

The Actor takes subreddits, search terms, and Reddit URLs (subreddit, search, user, or single post), alone or together, and returns one flat row per result.

  • ๐Ÿงพ Core fields: title, author, subreddit, score, upvote ratio, comment count, and posting time.
  • ๐Ÿ“ Full body: selfText as plain text and selfTextHtml as rendered HTML.
  • ๐Ÿšฉ Flags: NSFW, spoiler, stickied, locked, archived, video, gallery, crosspost.
  • ๐Ÿ“Š Computed signals: virality score, engagement rate, controversy score, estimated views, post age, posting day and hour, and content type.
  • ๐Ÿ”Ž Reddit search beyond posts: the same search terms can return communities (subreddit search) and users (Reddit user search) as their own rows.
  • โž• Optional add-ons, each off by default: comments with nested replies, author profile, the author's recent activity, subreddit info, crossposts, and image downloads.

What you can do with Reddit data

๐Ÿ“ก Run Reddit monitoring on a schedule.

Search your brand and product names every hour with postedAfter set to one day and onlyNewSinceLastRun on. Each run returns, and bills, only the posts it has not delivered before.

๐ŸŽฏ Find leads and feedback.

Search problem phrases and product categories, keep posts that contain your keywords, drop the ones that mention a word you do not want, and read the threads where people ask for a recommendation.

๐Ÿงญ Map communities and voices.

Turn on subreddit search and Reddit user search to list the communities and accounts around a topic, with subscribers, karma, and creation dates.

๐Ÿ“š Build Reddit datasets and analytics.

Collect thousands of posts with their body text, comments, and computed scores across subreddits and keywords for sentiment, topic, and trend analysis.

Why choose this scraper

What you get
One run, every sourceSubreddits, search terms, and subreddit, search, user, or post URLs together, all in the same schema.
Filters that cut noiseDate range, keywords to include or exclude, score, comments, upvote share, flairs, content type, domains, and authors. Only matching posts are written and billed.
Only new posts on schedulesonlyNewSinceLastRun remembers what earlier runs of the same input delivered and skips it.
Signals already computedVirality, engagement, controversy, estimated views, and post age on every row, ready to sort.
Bring your existing inputInputs written for other Reddit scrapers (searches, subredditUrls, maxPostCount, listing, timeFilter) work as they are.
Pay only for what you turn onComments, profiles, subreddit info, crossposts, and images are separate add-ons, off by default.

How it compares

All four scrapers below read public Reddit posts. This one adds computed ranking signals on every row, a schedule-friendly "only new" mode, and keyword filters, and it costs less per result than the most-used Reddit scraper on Apify. The comparison uses each rival's public input options and Store price on September 17, 2026.

FeatureParseForgetrudax/reddit-scraper-liteharshmaur/reddit-scraperfatihtahta/reddit-scraper-search-fast
Computed virality, engagement, and controversy scoresYesNoReddit's raw controversy flagNo
Skips posts delivered by earlier runsYesNoNoNo, you deduplicate
Keyword filtersInclude and excludeNoNoInclude only
Date range filterYesFrom date onlyYesYes
Subreddit search and user searchBothBothSubreddits onlyNo
CommentsYes, with repliesYesYes, with repliesYes
Price per 1,000 results$3.38$4.00$2.00$1.49

What a Reddit post looks like

One unedited row from a verified run on September 17, 2026:

{
"id": "1wis938",
"parsedId": "1wis938",
"title": "How do you run a small business with your significant other?",
"author": "Wandering_mind743",
"authorId": "t2_2hrklzmhxy",
"subreddit": "smallbusiness",
"subredditId": "t5_2qr34",
"score": 14,
"upvoteRatio": 0.94,
"numComments": 23,
"createdUtc": "2026-09-17T12:11:24.000Z",
"createdAt": "2026-09-17T12:11:24.000Z",
"selfText": "My girlfriend and I run a small business together (she handles design, I take care of tech/marketing). Overall, it's going well, but we find ourselves talking about business all the time. Over dinners and weekends we keep discussing customer issues, logistics, inventory etc. If you are in the same boat, how do you separate work from personal life? Do you have some strict boundaries or rules?",
"selfTextHtml": "<div class=\"md\"><p>My girlfriend and I run a small business together (she handles design, I take care of tech/marketing). Overall, it's going well, but we find ourselves talking about business all the time. Over dinners and weekends we keep discussing customer issues, logistics, inventory etc. If you are in the same boat, how do you separate work from personal life? Do you have some strict boundaries or rules?</p>\n</div>",
"url": "https://www.reddit.com/r/smallbusiness/comments/1wis938/how_do_you_run_a_small_business_with_your/",
"permalink": "https://www.reddit.com/r/smallbusiness/comments/1wis938/how_do_you_run_a_small_business_with_your/",
"isVideo": false,
"isGallery": false,
"isSelf": true,
"isOriginalContent": false,
"isCrosspost": false,
"thumbnail": "self",
"thumbnailWidth": null,
"thumbnailHeight": null,
"domain": "self.smallbusiness",
"linkFlairText": null,
"over18": false,
"spoiler": false,
"stickied": false,
"locked": false,
"archived": false,
"awards": 0,
"contentCategories": null,
"distinguished": null,
"scrapedAt": "2026-09-17T15:24:13.287Z",
"viralityScore": 5.9,
"engagementRate": 164.3,
"controversyScore": 9.9,
"estimatedViews": 15,
"postAgeHours": 3.2,
"postedDay": "Thursday",
"postedHour": 12,
"contentType": "text",
"status": "active",
"imageUrl": null
}

Link posts carry an external url and domain instead of body text. Community and user rows carry "type": "community" or "type": "user" with their own fields: name, URL, subscribers or karma, and creation date.

Configure the run

Mix subreddits, search terms, and Reddit URLs in one run. Filters run as each post is read, so only matches reach your dataset, and a URL's own sort and time window (/top/?t=month) are respected. The Input tab lists every option.

Monitor a brand every hour and get only new mentions from the last day, with their comment threads:

{ "searchQueries": ["acme crm"], "sort": "new", "postedAfter": "1 day", "excludeAuthors": ["AutoModerator"], "onlyNewSinceLastRun": true, "includeComments": true, "commentDepth": 2 }

Grab the week's top posts from two subreddits, keeping only posts with real traction:

{ "subreddits": ["programming", "datascience"], "sort": "top", "time": "week", "minScore": 100, "minComments": 25, "maxItems": 200 }

Run a subreddit search and a Reddit user search for a topic:

{ "searchQueries": ["crm"], "searchTypes": ["communities", "users"] }

Pricing

Pay-per-event: $0.00338 per result, dropping to $0.003 at higher volume, plus a run-start fee of $0.054 per GB of memory (the run uses 4 GB, so $0.22 per run). You pay only for rows written to your dataset.

Results collectedApproximate cost
100$0.55
1,000$3.60
10,000$34.02

Optional add-ons, billed only when you turn them on:

Add-onPrice
Comments$1.80 per 1,000 posts with comments fetched
Author profile$3 per 1,000 authors
Image download$5 per 1,000 images
Author's recent activity, subreddit info, crosspostsNot charged yet

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Reddit Scraper.
  3. Enter subreddits, searchQueries, or startUrls, pick a sort and time, add any filters, and click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab, or schedule the run for ongoing Reddit monitoring.

Run it programmatically through the Apify API or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live Reddit search through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/reddit-posts-scraper"

Then prompt it in plain language:

  • "Search Reddit for posts about vector databases from the past week and summarize the top 20 by score."
  • "Find the subreddits and users that talk most about CRM software and list them with their subscribers and karma."
  • "Check Reddit every morning for new posts that mention our product and give me only the ones I have not seen."

Copy this into ChatGPT, Claude, or Cursor to start:

Use the Apify Actor "parseforge/reddit-posts-scraper" to search Reddit and collect posts, communities, and users. Input: { "subreddits": ["<name>"], "searchQueries": ["<keyword>"], "searchTypes": ["posts", "communities", "users"], "sort": "<hot|new|top|rising|relevance>", "postedAfter": "<7 days>", "maxItems": <n> }. Posts come back with title, author, subreddit, score, upvoteRatio, numComments, selfText, url, permalink, and createdAt. Call it with the ApifyClient and my APIFY_TOKEN.

Troubleshooting

Why am I getting no results?

The subreddit may be misspelled, private, or banned, and the run says so in its status. For sort: top or controversial, or with postedAfter, widen the time window: a narrow hour or day returns nothing for quiet terms.

Why fewer results than I asked for?

A feed holds a limited number of posts, and your filters remove more. Reddit search without a login also returns fewer posts per term than the website. Loosen the filters, widen time, or add more subreddits and search terms.

Why is a field empty?

Link posts have no selfText, text posts have no external domain, and linkFlairText is null when a post has no flair. That is the post's real state.

Why is the run slow?

Each page holds up to 100 posts, so large maxItems values read more pages, and comments add one read per post. If a run reaches its time limit it keeps what it collected and says so; raise the timeout or lower maxItems.

Why did my scheduled run return nothing new?

With onlyNewSinceLastRun on, posts delivered by earlier runs of the same input are skipped, and the run says "No new items since the last run". Change stateKey to start a fresh list.

FAQ

QuestionAnswer
Do I need a Reddit API key or app?No. It reads Reddit's public feeds and search, so there is no OAuth app, client secret, or token to manage.
How is this different from the Reddit API and its pricing?The official API needs OAuth, rate-limits you, and bills high-volume use. Here you pay per result, with virality and engagement already computed.
Can I search all of Reddit, or only subreddits?Both. searchQueries searches all of Reddit, searchInSubreddit scopes a search, and subreddits reads community feeds.
Does it do Reddit user search and subreddit search?Yes. Set searchTypes to communities, users, or both.
Can I use it for Reddit monitoring?Yes. Schedule it with postedAfter and onlyNewSinceLastRun, so every run returns only new posts.
Can I filter by date, keywords, score, or flair?Yes: date range, keywords to include or exclude, score and comment ranges, upvote share, flairs, content type, domains, and authors.
Does it scrape comments?Yes, as an add-on: turn on includeComments, set commentLimit, and use commentDepth for replies.
I use another Reddit scraper. Do I need to rewrite my input?Usually not. searches, subredditUrls, maxPostCount, listing, timeFilter, and the searchCommunities / searchUsers flags are read as they are.
How many results per run?Free plan: 10. Paid: up to 1,000,000, bounded by what the feeds, search, and filters return.
What are the virality and engagement scores?Signals computed from score, comments, upvote ratio, and age for ranking. They are estimates, not official Reddit metrics.
Is this an official Reddit product?No. It is unofficial and reads only public Reddit data.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Reddit, Inc. It collects only publicly available Reddit data. You are responsible for using the data in compliance with Reddit's terms and applicable laws, including GDPR, CCPA, and PIPL. Do not use it to identify, profile, or target individuals.