Reddit Scraper: Lead Finder, Brand Monitor, Mentions & Alerts avatar

Reddit Scraper: Lead Finder, Brand Monitor, Mentions & Alerts

Pricing

from $1.20 / 1,000 result saveds

Go to Apify Store
Reddit Scraper: Lead Finder, Brand Monitor, Mentions & Alerts

Reddit Scraper: Lead Finder, Brand Monitor, Mentions & Alerts

Find leads and track brand mentions on Reddit. Monitor buying-intent phrases like "is there a tool", competitor names and keywords, flag real buyers with an AI label, and get new posts in Slack or Notion on a daily schedule. Social listening with no Reddit API key, from $1.50 per 1,000 results.

Pricing

from $1.20 / 1,000 result saveds

Rating

4.9

(22)

Developer

Harsh Maur

Harsh Maur

Maintained by Community

Actor stats

122

Bookmarked

3.8K

Total users

450

Monthly active users

9.9 hours

Issues response

6 hours ago

Last modified

Share

Find people on Reddit who are asking for a product like yours, track every mention of your brand and your competitors, and get the results in Slack or Notion each morning. No Reddit account or API key. From $1.50 per 1,000 results, no monthly fee.

Try on Apify Input Schema API Docs

Find leads • Brand and competitor monitoring • Daily schedule • Slack and Notion • Output • Pricing • FAQ


Who this Reddit lead finder is for

SaaS founders, growth marketers and agencies who already know their buyers hang out on Reddit, but don't have time to read it every day.

People post questions like these every day:

  • "Is there a tool that does X?"
  • "Looking for an alternative to [your competitor]"
  • "Can anyone recommend a [your category]?"
  • "I would pay for something that…"

Each of these is a warm lead, and the first useful reply usually wins. Reading Reddit by hand misses most of them. Running the same search by hand every morning wastes an hour.

This Actor does three jobs:

  1. Reddit lead generation: searches for buying-intent phrases and lets an AI label mark the posts where someone wants a product.
  2. Reddit brand monitoring: collects every new post (and, if you want, every comment) that names your brand or a competitor, with sentiment.
  3. Daily delivery: runs on a schedule and sends new threads to a Slack channel or a Notion database.

You set it up once. After that, the leads come to you.


How to find leads on Reddit

Reddit lead generation works best as a small daily habit: a handful of short buying-intent phrases, posts from the last day only, and one AI question that removes the noise.

Step 1: Pick short buying-intent phrases

Reddit matches your words almost literally. A phrase of two to four words finds posts. A long sentence that describes your product ("software that helps agencies track client invoices") usually returns nothing, because nobody writes those exact words.

Good starting phrases for Reddit buying intent:

PatternExamples
Asking for a toolis there a tool, is there an app, looking for software
Asking for a recommendationrecommend a CRM, best invoicing app
Switching awayalternative to Pipedrive, switching from Trello
Ready to spendwould pay for, worth paying for

Mix generic phrases with your category name. is there a tool on its own matches every topic on Reddit; invoicing tool only matches your market.

Quotes ("would pay for") force an exact phrase. They cut noise, but they also return fewer posts, so start without them and add quotes only to phrases that bring back junk.

{
"searchTerms": [
"invoicing tool",
"alternative to FreshBooks",
"recommend invoicing software",
"would pay for invoicing",
"QuickBooks alternative"
],
"searchPosts": true,
"searchComments": false,
"crawlCommentsPerPost": false,
"searchSort": "new",
"postedAfter": "1 day",
"maxPostsCount": 30,
"customLabels": {
"wants_software": "true only if the author wants to find, buy or switch to a software product; false for job posts, hiring a person, news, and authors advertising their own product"
}
}

What each setting does:

  • searchTerms: one search per phrase. Free Apify plans search the first 40 phrases of a run.
  • searchPosts: true, searchComments: false: posts only. Most buying questions are written as posts, and comment search returns far more rows.
  • crawlCommentsPerPost: false: skips the reply threads. The Console form starts with both comment limits at 0, but an API call or old task that leaves these fields out collects comments, so set them in every saved input.
  • postedAfter: "1 day": limits results to posts written in the day before each run, so a daily run never shows the same thread twice.
  • maxPostsCount: 30: a ceiling per phrase that protects your budget on a busy day.
  • customLabels: your own yes/no question for the AI, answered on every post.

Step 3: Keep only real buyers with one custom label

Open the dataset and filter on customLabels.wants_software = true. That is your lead list.

Why a custom label instead of the ready-made wantsHelp checkbox? wantsHelp is true for anyone who wants help of any kind, and that includes people hiring a freelancer and posts sharing news. In our own test on 14 October 2026 (three CRM searches, one day of posts, 35 posts in total), wantsHelp marked 14 posts and many of them were job ads. A wants_software label marked 7, and 5 of those were people actually choosing a tool.

Write your label instruction the same way: say what counts as true, then list the look-alikes that should be false.

Other checkboxes that help qualify a lead, each adding a field under aiFlags:

  • willingToPay: the author names a budget or says they would pay.
  • isOwner: the author runs a business (a decision maker, not an employee).
  • painPoint: the problem in under 15 words, ready to quote in your reply.

AI labels need a paid Apify plan. On the Free plan the run still works and returns posts, without the AI fields.

Step 4: Searching comments too (optional)

Turning on searchComments finds buyers who ask inside other people's threads. In the same test, posts plus comments saved 380 rows instead of 35, so the run cost about ten times more. Start with posts only. Add comments later for one or two phrases that matter most, and cap them with maxCommentsCount.


Reddit brand monitoring and competitor mentions

The same search finds Reddit mentions of a name. Put your brand and your competitors in searchTerms, keep the date window at one day, and turn on AI analysis for Reddit sentiment.

{
"searchTerms": ["YourBrand", "CompetitorOne", "CompetitorTwo"],
"searchPosts": true,
"searchComments": true,
"maxCommentsCount": 50,
"crawlCommentsPerPost": false,
"searchSort": "new",
"postedAfter": "1 day",
"commentedAfter": "1 day",
"maxPostsCount": 50,
"aiAnalysis": true,
"hasPain": true,
"competitor": true
}

Here comments are worth it: many brand mentions sit in replies ("we moved to CompetitorOne last year and…"). maxCommentsCount caps the comment rows per name, and commentedAfter drops older comments.

What you get on each result:

  • searchTerm: which name the result was found for, so you can split your brand from each competitor.
  • sentimentLabel and sentimentScore: positive, negative, neutral, mixed or uncertain, with a score from -1 to 1.
  • intent: for example complaint, praise, comparison or purchase_intent.
  • aiFlags.hasPain and aiFlags.competitor: whether the author describes a problem, and which product they name.
  • entities: the brands and products the text mentions.

Reddit competitor monitoring ideas

  • Unhappy competitor users. Filter on searchTerm = CompetitorOne and aiFlags.hasPain = true. These people are already shopping.
  • Head-to-head threads. Filter on intent = comparison to see how Reddit ranks you against others.
  • Your own support issues. Filter your brand name on sentimentLabel = negative and answer before the thread grows.

Monitor one community only

To watch a niche instead of all of Reddit, set withinCommunity to one subreddit name, for example SaaS or r/smallbusiness. Each phrase is then searched inside that subreddit only.

Brand names that are common words (an app called "Notion" or "Linear") match a lot of unrelated posts. Add a word that only appears with your product (Linear app, Notion template), or filter on relevanceScore, an AI score from 0 to 1 for how well each result matches its search term.


Schedule a daily Reddit monitor

A Reddit keyword monitor is the same search, run every day. Two ways to set it up in Apify:

  1. From a run: finish one run with the input you want, then open Actions → Schedule and pick a time.
  2. From a saved task: save the input as a task in Apify Console, then go to Schedules → Create new and add that task. A task keeps the input fixed, so you can run several monitors side by side (one for leads, one per competitor).

Keep postedAfter relative so the window moves with each run:

SchedulepostedAftercommentedAfter
Every day1 day1 day
Twice a day12 hours12 hours
Every Monday7 days7 days

The relative value is counted back from the moment the run starts. When postedAfter is set, the search runs newest-first and the searchTime dropdown is ignored, so you don't need to touch it.

A fixed date (2026-10-01) works too, for a one-off export of a past period.


Send Reddit mentions to Slack or Notion

Reddit to Slack and Reddit to Notion work without code through the mcpConnector input. Your app login stays in your Apify account; this Actor only gets the connector's ID.

Set it up

  1. In Apify Console, open Settings → API & Integrations → MCP connectors and connect Slack or Notion. You can also create the connector straight from the input field.
  2. In this Actor's input, pick the connector in Send results to an app (MCP connector) (mcpConnector).
  3. Set mcpTarget to where the messages should go: a Slack channel ID (open the channel details in Slack to copy it) or a Notion database ID.
  4. Optional: change the message with mcpMessage.

Example: daily leads to a Slack channel

Add these fields to the lead search above:

{
"mcpConnector": "<your Slack connector>",
"mcpTarget": "C07ABCDE123",
"mcpMode": "perPost",
"mcpMessage": "Buyer: {{customLabels.wants_software}} | {{communityName}}\n**{{title}}**\n{{postUrl}}",
"mcpMaxItems": 50
}

mcpMessage accepts any post field in {{double braces}}, including nested ones such as {{customLabels.wants_software}} or {{aiFlags.painPoint}}. Putting the label at the start of the message lets you scan the channel and open only the buyers.

How delivery works

  • After the crawl. Messages are sent once the search finishes, from the saved results, so they include the AI fields.
  • Posts are sent, not search comments. Each message is one post. Comments found by comment search stay in the dataset. If crawlCommentsPerPost is on, mcpComments can add each post's top replies (bundle) or send them as their own messages (separate); the default ignore sends posts only.
  • One message per post or one digest. mcpMode: "perPost" sends a message for each post, up to mcpMaxItems (default 50). mcpMode: "summary" sends one digest with the run's post titles and links.
  • A delivery problem never fails the run. If the connector is down or rejects a message, the run still finishes, every result stays in the dataset, and the problem is written to the run log.
  • No connector, no delivery. Leave mcpConnector empty and the Actor only saves results.

For Notion, mcpArguments lets you map fields to your database columns, for example {"properties": {"Title": {"title": [{"text": {"content": "{{title}}"}}]}, "Link": {"url": "{{postUrl}}"}}}.


Reddit lead data output example

One post from the lead search, with the wants_software label and one AI flag. Values are shortened.

{
"dataType": "post",
"id": "t3_1g7xk2p",
"parsedId": "1g7xk2p",
"searchTerm": "alternative to FreshBooks",
"title": "Alternative to FreshBooks for a 3-person agency?",
"body": "Our FreshBooks plan went up again. We send about 40 invoices a month...",
"authorName": "agency_ops_kim",
"communityName": "r/smallbusiness",
"postUrl": "https://www.reddit.com/r/smallbusiness/comments/1g7xk2p/alternative_to_freshbooks_for_a_3person_agency/",
"createdAt": "2026-10-16T21:04:37.000Z",
"crawledAt": "2026-10-17T07:00:12.000Z",
"score": 12,
"upVotes": 12,
"commentsCount": 9,
"flair": "Question",
"removalStatus": "active",
"sentimentLabel": "negative",
"sentimentScore": -0.4,
"intent": "seeking_recommendation",
"emotion": "frustration",
"entities": ["FreshBooks"],
"relevanceScore": 0.93,
"contentCategory": "Business & Startups",
"aiFlags": {
"willingToPay": true
},
"customLabels": {
"wants_software": true
}
}

Fields used most for leads and monitoring:

FieldWhat it tells you
dataTypepost or comment; filter on it when you search both
searchTermThe phrase or brand name that found the result
title, bodyWhat the author wrote
postUrlLink to the post (comments carry url)
communityNameThe subreddit, with the r/ prefix
createdAtWhen the post was written (UTC); comments use commentCreatedAt
customLabelsAnswers to your own AI questions, by label name
aiFlagsAnswers to the ticked AI checkboxes
intent, sentimentLabelWhy the author posted and how they feel
relevanceScoreHow closely the result matches its search term, 0 to 1
removalStatusWhether the post is still live, or was removed and by whom

Every result has many more fields (media, flair, author details, engagement numbers). The full list is on the Output tab. Download results as JSON, CSV or Excel, or read them through the Apify API.


How much does Reddit lead generation cost?

You pay per event. There is no subscription, and a month with no runs costs nothing.

EventPrice
Actor start$0.01 per GB of memory (default 512 MB run: $0.01)
Result saved (post or comment)$0.0015 on the Free plan; $0.0014, $0.0013 or $0.0012 on paid plans
AI analyzed result$0.0005 per result, only when AI analysis, an AI checkbox or a custom label is on
AI custom label$0.0001 per label per result

A custom label or AI checkbox always includes the full AI analysis, so a labeled result costs the analyzed-result fee plus $0.0001 for each label.

Worked example: a daily lead monitor

Five buying-intent phrases, posts only, about 20 new posts per phrase per day, one wants_software label, run daily for 30 days. AI labels need a paid plan, so this uses the $0.0014 paid-plan result price.

ItemCalculationCost per month
Starts30 runs × $0.01$0.30
Results3,000 posts × $0.0014$4.20
AI analysis3,000 × $0.0005$1.50
wants_software label3,000 × $0.0001$0.30
Total$6.30

The same monitor on the Free plan without AI labels: $0.30 + 3,000 × $0.0015 = $4.80 a month, which fits inside the $5 monthly credit that comes with a free Apify account.

Searching comments as well can multiply the result count by ten or more, so keep searchComments off for lead searches unless you need it.

Keep the cost under control

  • maxPostsCount caps posts per phrase; maxCommentsCount caps comment-search results per phrase.
  • crawlCommentsPerPost and searchComments are on when an input leaves them out. Set both to false in API calls and saved tasks when you only need posts.
  • A relative postedAfter (1 day) keeps a scheduled run from collecting old posts again.
  • Set a maximum charge in the run options. The run stops cleanly at that amount and keeps what it saved.

Collecting more than 100,000 results a month? Email harshmaur@gmail.com about volume pricing.


Use the Reddit monitor with AI agents, n8n, Make and Zapier

  • AI agents (MCP). Claude, ChatGPT, Cursor and other MCP clients can call this Actor as a tool through the Apify MCP server at https://mcp.apify.com/?tools=harshmaur/reddit-scraper-pro. Ask your agent "find Reddit posts from this week asking for an alternative to FreshBooks" and it fills in the input.
  • n8n, Make and Zapier. Apify has an integration for each. Run this Actor and read its dataset items in the next step, then route the results to your CRM, a sheet or email.
  • Templates to start from. These n8n and Make templates call the main Reddit Scraper. To run this listing, set the Actor to harshmaur/reddit-scraper-pro in the Apify step. In n8n: subreddit posts to Slack and keyword mentions to Slack and Gmail. In Make: daily keyword alerts and AI lead scoring.
  • Webhooks and API. Start runs and read datasets over the Apify API, or have Apify call your URL when a run finishes.

FAQ

Is it allowed to collect Reddit posts this way?

This Actor reads only public Reddit pages: no login and no private messages. Collecting public data is generally allowed, but you are responsible for following Reddit's terms and the privacy laws that apply to you, especially when you contact people. Apify explains the legal side in Is web scraping legal?.

Does it need a Reddit API key, app or login?

No. You don't need a Reddit account, a Reddit app, or an API access request. Reddit's changes to its API and RSS feeds do not affect this Actor.

How fresh are the results?

Each run reads Reddit at the moment it runs. With a daily schedule and postedAfter: "1 day", every morning's results cover the 24 hours before the run started. Run twice a day with 12 hours if you need to reply faster.

Why did my search return no results?

The usual causes:

  • The phrase is too long. Cut it to two to four words that a real person would type.
  • Too many quotes. An exact phrase in quotes, especially inside one subreddit (withinCommunity), can match nothing on a quiet day.
  • The window is too short. postedAfter: "1 day" on a niche phrase may have no new posts that day. Try 7 days once to check that the phrase finds anything at all.

Should I search posts or comments?

For leads, start with posts: most people asking for a tool start a thread, and posts-only runs cost about a tenth of posts-plus-comments runs. For brand monitoring, add comments with a maxCommentsCount cap, because many mentions are replies.

How do I stop a run from costing more than I expect?

Set maxPostsCount and maxCommentsCount, turn off crawlCommentsPerPost unless you need full threads, and set a maximum charge in the run options. See Keep the cost under control.

Does sentiment analysis work on the Free plan?

No. aiAnalysis, the AI checkboxes and customLabels need a paid Apify plan. On the Free plan they are ignored and not charged, and the run returns results without the AI fields.

Can Slack or Notion get only the leads, not every post?

Delivery sends every post the run finds, up to mcpMaxItems. Put {{customLabels.wants_software}} at the start of mcpMessage so each message shows whether it is a buyer, or filter the dataset on customLabels.wants_software = true before you work the list.


Other Reddit tools by the same developer

ActorUse it when you need
Reddit Comments ScraperThe full reply tree of threads you already have links for
Reddit Search ScraperPlain keyword search results without the monitoring setup
Reddit User ScraperPost and comment history of specific Reddit accounts
Subreddit ScraperA large archive of one community, beyond the usual listing limit

Built by Harsh Maur. Questions or a feature request? Email support.