Reddit Scraper
Scrape Reddit posts and comments from any subreddit or user profile. Sort by top/hot/new, filter by score, get clean text. No key or login needed.
How it works
- 1Open it on Apify
Hit Run on Apify — it opens the tool in the cloud, no install.
- 2Set the inputs
Adjust
sources,subreddits,users(sensible defaults are pre-filled). - 3Click Run
The tool runs on Apify’s cloud and collects the data for you.
- 4Export the results
Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.
Inputs
| Field | What it does | Type |
|---|---|---|
sources | Any mix of subreddits and Reddit user profiles. Accepts: 'askreddit', 'r/tifu', 'u/GallowBoob', 'user/spez', or a full reddit.com URL. Works for ANY subreddit or profile — not limited to AITA. | array |
subreddits | Optional alternative to 'sources' — plain subreddit names. Merged with 'sources'. | array |
users | Optional — Reddit usernames to scrape submissions from (without u/). Merged with 'sources'. | array |
method | rss = no key/login needed (recommended, default). oauth = use Reddit app creds below (adds score/comments). json = legacy anonymous API (often blocked). | string |
sort | top, hot (trending), new (latest), rising, or controversial. | string |
time | Time window for 'top' and 'controversial' sorts (ignored for hot/new/rising). E.g. top of all time, top this year, top this week. | string |
maxPostsPerSubreddit | How many qualifying stories to return per subreddit. | integer |
minScore | Skip posts below this upvote count. | integer |
minWords | Skip stories shorter than this (too thin for a short). | integer |
maxWords | Skip stories longer than this (won't fit a 30–90s short). | integer |
minHookScore | Filter out weak openers. 0 = keep all. | integer |
requireStory | Keep only self/text-post stories (skip link/image posts) and apply the word-count fit. Off by default = return ALL posts. Turn on for faceless story videos. | boolean |
includeNsfw | Include posts marked over-18. Off by default. | boolean |
cleanText | Strip markdown/links/edit-stamps and produce TTS-ready sentences. Turn off for raw text. | boolean |
rawMode | Output the complete raw Reddit post object instead of the shaped record. | boolean |
dedupeAcrossRuns | Remember post IDs between runs so you never get the same story twice. | boolean |
commentLimit | Fetch up to this many top comments per post (0 = none). Reliable when you add Reddit app credentials below; anonymous Reddit usually blocks comment access. | integer |
redditClientId | Optional. The default RSS method needs no login. Add a free 'script' app's client ID (reddit.com/prefs/apps) only if you want upvote score + comment counts (not exposed via RSS). | string |
redditClientSecret | The secret for your Reddit app (reddit.com/prefs/apps). | string |
What you get
A structured dataset — each result includes fields like:
authorcreatedUtcfetchedAtfitsShortflairhookScoreidisStorynarrationnumCommentsover18postTypereadTimeSecondsscoreExport every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.
20 ready-to-run use cases
Reddit Q&A Dataset for LLM Fine-Tuning & RAG
Harvest upvoted question-and-answer threads from r/askscience, r/AskHistorians and ELI5, cleaned into a Reddit Q&A dataset for LLM fine-tuning and RAG.
Reddit Relationship Stories for Faceless Videos
Faceless video creators get top weekly r/relationship_advice, r/MaliciousCompliance and r/pettyrevenge stories, hook-scored and length-trimmed for scripts.
r/nosleep Horror Stories for Narration Channels
Top r/nosleep and short scary stories, hook-scored and length-filtered, ready for horror and creepypasta narration channels on YouTube and TikTok.
WSB Ticker Mentions & Sentiment Tracker
A daily feed of hot r/wallstreetbets, r/stocks and r/options posts and comments, surfacing the most-mentioned tickers and retail sentiment for traders.
Crypto Subreddit Coin Sentiment & Hype Tracker
Daily hot posts across r/CryptoCurrency, r/solana and r/ethfinance reveal coin mentions, sentiment shifts and early hype so you spot the move first.
Spot Emerging Trends Early in Niche Subreddits
Rising threads in fast-moving subs like r/LocalLLaMA and r/Biohackers, tracked daily so analysts and marketers catch emerging trends before mainstream search.
Top Posts of All Time From Any Subreddit
The all-time top posts of any subreddit, exported as a clean dataset for discourse analysis, data journalism and content benchmarking. Researcher-ready.
r/AskReddit Stories for TikTok & Shorts Clips
Top weekly r/AskReddit, r/tifu and r/confession story answers, hook-scored and clip-trimmed for fast-paced TikTok and YouTube Shorts content.
Reddit Job & Gig Post Monitor (r/forhire, hiring)
Recruiters and freelancers catch every new gig and job post across r/forhire, r/hiring and r/freelance, de-duplicated daily, to reach out first.
Reddit Buyer-Intent Leads in r/SaaS & r/marketing
Fresh r/SaaS, r/marketing and r/Entrepreneur threads where people ask which tool or agency to use, compiled into a daily buyer-intent lead list.
Reddit Brand & Competitor Mention Monitoring
Social listening for Reddit: track every new post mentioning your brand or competitors across tech subs, daily, to catch reputation issues early.
Mine r/SaaS for Complaints & Feature Gaps
Upvoted r/SaaS and product-community threads full of complaints, feature requests and wishlist replies about a tool, sourced to feed your product roadmap.
Reddit 'Alternatives To X' Competitive Intel
Which rival wins the deal and why? Surface 'alternatives to [product]' threads across SaaS and software subs to learn exactly why buyers switch.
Reddit Content Ideas & SEO Questions by Niche
Pull the top upvoted questions from any niche subreddit, mapped to content gaps and blog ideas your audience is actually asking about right now. For SEO teams.
Reddit Product Recommendations Before You Buy
Recommendation threads from r/BuyItForLife, r/HeadphoneAdvice and r/SkincareAddiction, ranked to show the products Reddit actually recommends in a niche.
Supplement Sentiment in r/Supplements & Nootropics
Experience posts and discussion from r/Supplements, r/Nootropics and r/Biohackers, mined to track sentiment on ingredients and supplement brands.
Scrape r/AITA Stories for Faceless YouTube Videos
Self-post AITA stories sized for a 30-90s short, cleaned and TTS-ready. Word-count filtered so nothing overruns the voiceover on faceless YouTube videos.
Top Weekly r/wallstreetbets Posts Scraper
The highest-voted r/wallstreetbets posts from the past week, showing which tickers and plays the sub is hyping right now. For traders watching WSB.
Scrape a Reddit User's Posts by Username
A single Reddit account's submissions, newest first, pulled from any u/ username or profile URL. Account-level post history for research and OSINT.
r/AskReddit Top Threads Plus Comments Scraper
The day's top r/AskReddit questions with their top comments, fetched via Reddit app credentials for full thread data. Posts and replies together.
Reddit Scraper
Pulls posts from any subreddit or user profile without an API key or login. Point it at a list of sources, pick a sort and time window, and you get back full post data including the body text (selftext), with optional cleaned, TTS-ready narration. Built for people batching Reddit content: short-form video scripts, research datasets, content monitoring.
How it works
Reddit hard-blocks the anonymous .json API but still serves Atom RSS feeds from separate infrastructure that isn't rate-limited the same way, so the default rss method reads those feeds and parses them into structured records. RSS doesn't expose upvote scores or comments, so if you need those, add free Reddit "script" app credentials and the actor switches to the authenticated OAuth endpoint for that data.
Input
Nothing is strictly required. If you pass no sources, the actor falls back to its prefilled examples. The fields you'll actually touch:
| Field | Required | Notes |
|---|---|---|
sources | no | Array of subreddits and/or user profiles. Accepts tifu, r/tifu, u/spez, user/spez, or a full reddit.com URL. Mixed lists are fine. |
sort | no | One of top, hot, new, rising, controversial. Defaults to top. |
time | no | Time window for top and controversial: hour, day, week, month, year, all. Ignored for the other sorts. Defaults to day. |
maxPostsPerSubreddit | no | How many posts to return per source. Defaults to 10, max 100. |
method | no | rss (default, no login), oauth (uses the creds below, adds scores/comments), or json (legacy anonymous API, usually blocked). |
cleanText | no | Strips markdown, links, and edit stamps to produce narration sentences. On by default. Turn it off for raw text. |
requireStory | no | Keep only text posts and apply the word-count fit. Off by default, which returns all post types. |
commentLimit | no | Top comments to fetch per post. Needs Reddit app creds to be reliable; anonymous comment access is usually blocked. Defaults to 0. |
redditClientId / redditClientSecret | no | Free "script" app credentials from reddit.com/prefs/apps. Only needed for comments and upvote scores. |
minScore, minWords, maxWords, minHookScore, includeNsfw, dedupeAcrossRuns | no | Filters and run-to-run dedupe. Sensible defaults; leave them alone unless you're filtering for short-form fit. |
proxyConfiguration | no | Residential proxy is recommended at volume. The RSS feeds work from most IPs, so it's not mandatory for small runs. |
Output
Each post is one dataset item. Alongside the metadata you get selftext (the full post body) and, when cleanText is on, a narration field plus ttsSegments split into sentences ready to hand to a text-to-speech step.
Key fields: id, subreddit, title, url, author, score, numComments, createdUtc, over18, selftext, postType, narration, ttsSegments, wordCount, readTimeSeconds, hookScore, fitsShort. When commentLimit is set, a comments array (author, body, score, depth) and fetchedCommentCount are added. Set rawMode if you'd rather have the unshaped Reddit post object.
Example
{
"sources": ["r/tifu", "r/AskReddit", "u/GallowBoob"],
"sort": "top",
"time": "week",
"maxPostsPerSubreddit": 25,
"cleanText": true
}
Pricing
$0.50 per 1000 posts, pay per result, no subscription. Steps that use an AI model expect your own OpenAI key.
Notes
Scores and comments are not in the RSS feed. If you need them, create a free script app at reddit.com/prefs/apps and pass redditClientId and redditClientSecret. Anonymous comment fetching is mostly blocked by Reddit and will usually come back empty.