Reddit Profile Scraper avatar

Reddit Profile Scraper

Pricing

from $0.0225 / result

Go to Apify Store
Reddit Profile Scraper

Reddit Profile Scraper

Reddit profile scraper that turns a username, u/ handle, or profile URL into a 26-field profile with up to 1,000 posts and 10,000 comments in one run. Covers karma, account age, status flags, moderated communities, and trophies. From $0.0225 per profile.

Pricing

from $0.0225 / result

Rating

5.0

(3)

Developer

AgentX

AgentX

Maintained by Community

Actor stats

2

Bookmarked

11

Total users

1

Monthly active users

7 days ago

Last modified

Share

Reddit Profile Scraper is a reddit profile scraper that turns one public username into a 33-field profile with karma, account state, moderated communities, trophies, stored media, and requested post and comment history. It is built for research and enrichment workflows that already know which account to inspect.

Apify Users Apify Runs price capability API + MCP ready

  • Three explicit required inputs accept a username, u/ handle, or full profile URL and independently control post and comment depth.
  • 33 top-level Dataset fields cover identity, karma, account flags, profile media, trophies, moderated communities, activity, and provenance.
  • Nested activity keeps source context including post polls, media facts, duplicate URLs, and a comment's external link when it differs from the Reddit thread.
  • One account produces one profile row while optional posts and comments are charged only when they are included.

The smallest useful FREE-tier run sets both activity caps to 0; one Actor Start plus one profile Result costs at most $0.04000.

Why Choose Reddit Profile Scraper

Known-account lookup. Provide one public Reddit identity and receive one joinable row instead of manually copying profile facts from several screens.

Activity depth under your control. max_posts and max_comments are independent, accept 0, and have no configured upper limit; asking above the available history returns everything Reddit serves.

Source-state distinctions preserved. Missing values are omitted, explicit false and zero remain meaningful, and a suspended account can still produce a reduced profile row.

Rich nested context. Posts can include flair, engagement, crosspost context, stored media, poll options, and duplicate URLs; comments can include parent-post context, external links, and inline images.

Stable provenance. Every row ends with processor and an ISO processed_at timestamp for attribution and snapshot comparisons.

Quick Start Guide

Configure

Open the Actor input and enter spez, u/spez, or https://www.reddit.com/user/spez/. All three forms resolve to the same public account. Set each activity cap to the amount your workflow needs.

Run

Start with one post and one comment:

{
"username": "spez",
"max_posts": 1,
"max_comments": 1
}

Collect

Open the default Dataset after the run succeeds. Export JSON or JSONL when nested posts, comments, trophies, moderated communities, polls, or media arrays matter; use CSV or Excel for flatter profile analysis.

Input Parameters

Reddit Profile Scraper has three required inputs in schema order, with no hidden filters or credential fields.

ParameterTypeRequiredDescriptionExample
usernamestringYesPublic account as a username, u/ handle, or profile URLspez
max_postsinteger, minimum 0YesMaximum submissions to request; 0 skips posts1
max_commentsinteger, minimum 0YesMaximum comments to request; 0 skips comments1

The caps are request maximums, not promises about source inventory. A quiet, new, deleted, or restricted account may expose less activity. Neither input has a configured maximum: an oversized request ends when Reddit's listing ends rather than failing solely because the requested number is large.

Output Data Schema

One Dataset row represents one Reddit user profile; the public contract has 33 top-level fields.

GroupFields
Identityid, name, username, url, about, created_at
Profile presentationavatar, avatar_size, banner, banner_size, profile_color, snoovatar
Verification and karmaverified, verified_email, post_karma, comment_karma, awardee_karma, awarder_karma, total_karma
Audience and statefollower_count, accept_followers, is_premium, is_employee, is_moderator, is_suspended, over_18, robots_hidden
Collectionstrophies, moderated, posts, comments
Provenanceprocessor, processed_at

This abbreviated example truncates every nested collection; real rows may contain many more fields inside posts, comments, trophies, and communities:

{
"id": "1w72",
"username": "spez",
"url": "https://www.reddit.com/user/spez/",
"post_karma": 184005,
"comment_karma": 756202,
"total_karma": 940207,
"is_employee": true,
"trophies": [{"name": "15-Year Club"}],
"moderated": [{"name": "r/announcements", "subscribers": 302603085}],
"posts": [{"id": "1u7hraf", "title": "21 years of Reddit", "score": 840}],
"comments": [{"id": "os0o1vi", "score": 95, "is_root": false}],
"processor": "https://apify.com/username/actor_name",
"processed_at": "2026-08-12T10:44:55+00:00"
}

Unavailable source facts are omitted rather than invented. A suspended account may have username, total_karma, and is_suspended while ordinary presentation fields are absent.

Integration Examples

Use agentx/reddit-profile-scraper as the Actor name form in API, SDK, Task, and Scheduler workflows.

Actor ID

bb0YV0rZPcvyB4fX8

The stable name form is agentx/reddit-profile-scraper.

HTTP

curl -X POST "https://api.apify.com/v2/acts/agentx~reddit-profile-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"username":"spez","max_posts":1,"max_comments":1}'

Python

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("agentx/reddit-profile-scraper").call(
run_input={"username": "spez", "max_posts": 1, "max_comments": 1}
)
items = list(client.dataset(run["defaultDatasetId"]).iterate_items())

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('agentx/reddit-profile-scraper').call({
username: 'spez', max_posts: 1, max_comments: 1,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Make.com and n8n

Use Actor ID bb0YV0rZPcvyB4fX8, paste the three-field JSON input, wait for completion, then read the default Dataset. Keep the API token in the integration's credential store.

MCP

Connect to Apify's hosted MCP server and call agentx/reddit-profile-scraper with the same scenario. See the official Apify MCP guide for current client setup.

Pricing

At the FREE tier, Reddit Profile Scraper costs $0.03000 per profile Result plus $0.01000 per Actor Start; the smallest profile-only run totals $0.04000.

EventFREEBRONZESILVERGOLDPLATINUMDIAMOND
Actor Start$0.01000$0.01000$0.01000$0.01000$0.01000$0.01000
Result$0.03000$0.02700$0.02400$0.02250$0.02250$0.02250
Post$0.00500$0.00450$0.00400$0.00375$0.00375$0.00375
Comment$0.00100$0.00090$0.00080$0.00075$0.00075$0.00075

The Actor Start is charged when the run begins. The single Result covers the profile row; Post and Comment events cover activity items actually included. A FREE-tier run with one profile, one post, and one comment is at most $0.04600. Set a maximum total charge for exploratory runs and confirm current amounts on the pricing page, because prices can change.

Use Cases

  • Account enrichment — join created_at, karma counters, account state, and follower data to a lawful list of known Reddit usernames.
  • Moderator research — inspect moderated, community subscriber counts, trophies, and sampled activity before a human review.
  • Creator context — compare public topics, communities, scores, media, and poll participation across known authors.
  • Recurring snapshots — schedule the same input and use processed_at to compare profile and activity changes over time.
  • Content provenance — follow post_url, comment_url, external_url, crosspost fields, and duplicate URLs back to source context.

Alternatives

Manual browsing is appropriate for a one-off visual check when no export or repeatability is needed. It becomes inefficient when profiles must be joined, compared, scheduled, or retained with a collection timestamp.

Reddit's own developer offering is the right choice for authorized application features, write actions, or a first-party API integration. Reddit's Data API guidance explains its access and usage requirements. This Actor is designed for read-only public profile snapshots and does not claim official API affiliation.

Community- or search-first Actors are better when the username is not yet known. Choose something else for private data, deleted content recovery, identity verification, bulk usernames in one input, or automated decisions about people.

Limits and Troubleshooting

  • Fewer items than requested → the caps are maximums and Reddit controls available listing depth → retry with 1 to distinguish source availability from volume.
  • User not found → the account may be misspelled or deleted → verify the public profile URL, then retry the exact username.
  • Reduced row with is_suspended Reddit exposes a smaller payload for suspended accounts → treat absent fields as unavailable, not as false.
  • Zero shipped activity after collection → a maximum total charge can prevent optional billed items from being included → inspect event counts before raising the charge limit.
  • Nested arrays look flattened → tabular exports cannot preserve every nested object cleanly → use JSON or JSONL.
  • Temporary retrieval failure → public source availability varies → retry later with the smallest input before increasing the workload.

For a reproducible defect, open an Actor issue with the public run ID, exact input, and expected outcome. Never include an API token or unrelated personal data.

Trust and Reliability

The Actor runs on Apify and writes to the default Dataset through the documented pay-per-event contract. Its public schema lists 33 top-level fields, and every row carries processor and processed_at provenance. Source facts are normalized without guessing missing values; relationship flags tied to a requesting session are not presented as facts about the person.

Public scope. Use the Actor only for public account information and activity that Reddit exposes at run time.

Privacy. Collect the minimum data needed, define a lawful purpose, apply retention controls, and avoid high-impact automated decisions about individuals.

Platform terms. Review Reddit's current terms and developer access guidance for your use case. You are responsible for how collected data is used.

Frequently Asked Questions

Can I run a bulk reddit user lookup?

Yes, by launching one run per username through the API, Tasks, or an orchestrator. Each run intentionally accepts one identity and produces one profile row.

Does it support reddit karma and history export?

Yes. The row contains separate post, comment, awardee, awarder, and total karma fields plus requested posts and comments, exportable from the Dataset.

Is there a free Reddit profile API?

The smallest run still has pay-per-event charges. Use both activity caps at 0 and a maximum total charge to evaluate the 33-field profile contract at the lowest workload.

Can I schedule runs to monitor Reddit profiles over time?

Yes. Create an Apify Schedule with a fixed username and compare snapshots by processed_at; interpret changes as observations, not explanations.

Can I pass a full profile URL?

Yes. A username, u/ handle, and full profile URL normalize to the same account identifier.

Are posts and comments complete histories?

No. The arrays are bounded by the requested caps and by what Reddit exposes through its listings at run time.

Do I need Reddit credentials?

No credential field exists in the three-input schema. You need an Apify account or token to start the Actor.

Is karma an exact count of upvotes?

No. Reddit describes karma as an approximate reflection of votes. Treat it as a source-reported signal rather than audited engagement.

AgentX publishes 77 Actors — the three closest Reddit workflows first, then the full catalog by category.

Closest to this Actor:

Business and Market Intelligence

Jobs and Hiring

Social Media

Video, Transcripts and Downloads

E-Commerce and Retail

Classifieds and Automotive

Real Estate

Support and Community

Ask about Reddit profiles, activity depth, billing, and exports in the AgentX community on Telegram; for a reproducible bug, open an Issue with the run ID and exact input.

AgentX is an Arcyton brand — arcyton.com.

Last Updated: August 15, 2026