Reddit User Comments · Apify
Reddit User Comments avatar

Reddit User Comments

Pricing

$0.005 / actor start

Go to Apify Store
Reddit User Comments

Reddit User Comments

👤 Reddit User Comments | What a user actually says, and where they say it Give it Reddit usernames and get every comment as a row — text, score, the post it belongs to, and when it was written.

Pricing

$0.005 / actor start

Rating

0.0

(0)

Developer

wang wei

wang wei

Maintained by Community

Actor stats

0

Bookmarked

26

Total users

8

Monthly active users

5 days ago

Last modified

Categories

Features

Limited permissions

Share

👤 Reddit User Comments

What a Reddit user actually says — and where they say it.

✨ What you get

One dataset row per comment:

FieldWhat it is
text / hasTextcomment body; hasText: false marks a removed or empty comment
scoreupvotes on that comment
postId / postTitlethe post it was written under — chain into the post-comments Actor for the full thread
subredditnull on this data source (Reddit does not return it here) rather than a guess
createdAtwhen it was written
username / sort / positionwhose comment it is, the sort used, and its position

The run summary reports, per user: comments collected, how many had text, how many distinct posts and active days they span, median and total score, and the account's karma if available — plus top keywords across the run.

💼 Use cases

  • Deciding whether an account is a real participant or a burst account — read distinctPosts and activeDays next to commentsCollected. Twenty comments on one post in one day is a burst; the same volume spread over many posts and many days is someone who actually holds a place in the community, and only one of those two is worth contacting.
  • Reading a user's best-known contributions instead of their latest — sort: TOP returns the comments the community rewarded, which is the argument to make in a pitch. NEW tells you whether they are still active at all; run both and the gap between them is the profile.
  • Pulling the threads a user showed up in — postId and postTitle ride along on every row, so a user's comment history doubles as a map of the discussions they care about. Chain those ids into the Reddit Post Comments Actor to recover the full exchange around any single remark.
  • Sizing an outreach list — up to 30 usernames per run with per-user counts, karma where available and top keywords across the run, so you can qualify a batch of candidates on behaviour before you spend a single DM.

✅ Who this is for

  • Community managers trying to tell a genuinely active participant from a drive-by, who need distinctPosts and activeDays rather than a follower count to make that call.
  • User-research leads building a picture of how one person talks about a category across many threads, and who need their words rather than a summary of them.
  • Reddit outreach and partnership teams prospecting people who already contribute in the space, using TOP-sorted comments as evidence of what the user is known for.
  • Analysts qualifying accounts at scale — up to 30 users per run, with karma and keyword signals in the summary, is enough to cut a long candidate list down before anyone spends time on it.

❌ Who this is NOT for

  • Anything that needs the subreddit on each comment — subreddit is null on this data source because Reddit does not return it here, and this Actor does not guess it back out of the post id. So you cannot ask "which communities does this person post in" from these rows alone: take the postId values and look them up with the subreddit posts Actor.
  • Grouping a user's comments by community — a direct consequence of the above, and the one that quietly ruins a "which subreddits is this person active in" report. Chaining to another Actor is the fix, not a workaround you can skip.
  • Deleted, suspended or simply quiet accounts — these return an empty response with no error, so "no comments returned" does not mean you mistyped the username. The reason is listed in warnings; there is no data to recover for them here.
  • Reading hasText: false rows as content — it marks a removed or empty comment. Those rows are structural placeholders, so keyword and sentiment work over them measures nothing.
  • Treating one account's comment history as a market view — this is a single person's activity, on one platform, before purchase. It is not review data and not a sentiment score for anything; and one prolific commenter is not a sample of the buyers you care about.

🚀 Quick start

  1. Open the Actor and press Start (defaults to u/spez).
  2. Add usernames — spez, u/spez or a profile URL all work.
  3. Read distinctPosts and activeDays in the summary: that is how you tell a niche participant from a community organiser.

📥 Input parameters

ParameterTypeDefaultWhat it does
usernameslistspezUsers to pull, one per line, up to 30 per run.
sortselectNEWNEW for current activity, TOP for their best-known contributions, HOT, CONTROVERSIAL.
maxCommentsPerUsernumber50Cap per user (1–200). Cost scales linearly with the number of users.

📤 Output

  • Dataset — one row per comment (or a notice when nothing was collected)
  • SUMMARY — per-user activity stats, karma, top keywords, warnings

⚙️ How it works

  1. Each input is reduced to a username.
  2. Comments are paged with Reddit's own cursor and de-duplicated by comment id.
  3. The comment body is read from Reddit's content object (plain-text preview first, rendered HTML as a fallback).
  4. The user's post count and active days are computed from the collected rows rather than trusted from a profile field that may not exist.

💰 Billing

Billed per run. A single apify-actor-start charge applies when the run begins, at the price shown on this Actor's page. A run that returns 300 rows costs the same as one that returns 3. There is no daily run cap.

Free plan limit. One run collects 5 users over 2 pages, 50 comments each. That is a hard ceiling on the upstream cost, so it cannot be raised from the input form. A capped run still succeeds: it writes a notice row to the dataset, sets appliedLimits.capped: true in SUMMARY, and logs why. Any paid Apify plan lifts the cap to 30 users over 4 pages.

❓ FAQ

Why is subreddit empty? This data source returns the post id and title but not the subreddit. Rather than guessing from the post id, the field stays null. If you need the subreddit, take the postId values and look them up with the subreddit posts Actor.

The run says "no comments returned" for a user — is the account wrong? Not necessarily. Deleted, suspended or quiet accounts return an empty response with no error, and the reason is listed in warnings.

How do I judge whether a user is worth targeting? Look at distinctPosts and activeDays next to commentsCollected. Many comments on one post in one day is a burst; comments spread over many posts and days is a genuinely active participant.

Can I get the full thread a comment belongs to? Yes — feed the postId values to the Reddit Post Comments Actor.

📚 Resources

  • Reddit public comment data (no login required)
  • Apify free plan: monthly credit covers usage, no separate daily cap