Reddit User Profile avatar

Reddit User Profile

Pricing

from $0.069 / profile

Go to Apify Store
Reddit User Profile

Reddit User Profile

Reddit user profile scraper returning 27 structured fields per username — karma breakdown, account age, status flags, moderated communities, trophies, and multireddits — plus optional post and comment samples with full metadata. $0.045 per profile.

Pricing

from $0.069 / profile

Rating

5.0

(1)

Developer

TrueFetch

TrueFetch

Maintained by Community

Actor stats

4

Bookmarked

334

Total users

12

Monthly active users

6 days ago

Last modified

Share

Reddit User Profile is a Reddit user profile scraper that returns one normalized dataset record — karma, account age, status flags, moderated communities, trophies, multireddits, and bounded post and comment samples — built for developers and data teams that need reproducible profile snapshots.

  • Three required inputs, all visible before the run starts — a username and two caps.
  • 27 documented dataset fields per profile, each stamped with a UTC processing timestamp.
  • Post and comment collection is capped at 0–1,000 and 0–10,000, deduplicated by item id.
  • The username input accepts a plain name, a u/ handle, or a profile URL, all resolving to one account.

Run a one-result test · View API

A profile-only first test — both caps set to 0 — is billed as one start event plus one result event, at most $0.05500 on the FREE tier.

What does Reddit User Profile do?

Reddit User Profile takes one known username and writes a single structured record to the default dataset, gathering what is otherwise spread over several Reddit surfaces: identity fields (canonical username, display name, bio, avatar, banner, creation time), karma split into total, post, and comment figures, status flags, the communities the account moderates with subscriber counts, trophies, public multireddits, and — when requested — samples of its submissions and comments with scores, subreddit context, and parent-post references.

Just as important is what it does not do. The Actor does not search for usernames, monitor accounts continuously, read private or deleted content, take any write action on Reddit, or compute reputation scores. It reports what Reddit publicly exposes at run time, so two runs with the same input can legitimately differ. Reddit User Profile is an independent tool and is not affiliated with or endorsed by Reddit.

How do I run Reddit User Profile?

  1. Open Reddit User Profile and enter the account — a plain username, u/ handle, or profile URL.
  2. Set max_posts and max_comments. Every collected item is billed as its own event, so start small.
  3. Start the run and wait for it to finish; a single profile normally completes well within the run timeout.
  4. Open the default dataset and export the record as JSON, JSONL, CSV, Excel, or XML.

The smallest useful runnable input mirrors the schema prefill — two posts and two comments for Reddit's automation account:

{
"username": "AutoModerator",
"max_posts": 2,
"max_comments": 2
}

Result limits apply per run and per billed event: one profile event for the record itself, plus one post event and one comment event for each activity item included.

What data does Reddit User Profile return?

Every successful run produces one dataset item with 27 documented fields.

GroupFieldsNotes
Provenanceprocessor, processed_atWhich Actor produced the record and when (UTC)
Identityid, username, profile_url, display_name, about, avatar, banner, created_atSource-provided identifiers and presentation
Karmatotal_karma, post_karma, comment_karmaReddit's separate reputation counters
Status flagsis_verified, email_verified, is_premium, is_employee, is_moderator, is_suspended, is_nsfw, accepts_followers, robots_hiddenBooleans that may be null when Reddit omits them
Collectionstrophies, moderated, multiredditsArrays of objects with their own documented sub-fields
Activityposts, commentsBounded by the two caps; each item carries scores and context

An abbreviated, purely illustrative record for the shared AutoModerator scenario:

{
"id": "6l4z3",
"username": "AutoModerator",
"profile_url": "https://www.reddit.com/user/AutoModerator/",
"created_at": "2012-01-05T05:24:28+00:00",
"total_karma": 40728,
"post_karma": 20353,
"comment_karma": 18227,
"is_verified": true,
"email_verified": true,
"is_moderator": true,
"trophies": [
{ "name": "14-Year Club" }
],
"moderated": [],
"multireddits": [],
"posts": [
{ "id": "1v5268a", "subreddit": "AutoModerator", "score": 1 },
{ "id": "1v0x9k2", "subreddit": "AutoModerator", "score": 2 }
],
"comments": [
{ "id": "ozfh8hv", "score": 1, "is_root": true },
{ "id": "oz2m1qd", "score": 3, "is_root": true }
]
}

When Reddit does not expose a value for an account, the field stays null or empty instead of being filled with a substitute. A suspended account is the extreme case: Reddit then returns only the account name and a karma total, so most other fields are null while is_suspended reads true.

What inputs can I configure?

All three inputs are required by the public schema, in this order:

  1. username (string, required) — the account to look up. A plain username, a u/ handle, and a full reddit.com/user/... URL all resolve to the same account.
  2. max_posts (integer, required, 0–1,000) — how many of the user's submissions to include. 0 skips post collection entirely.
  3. max_comments (integer, required, 0–10,000) — how many of the user's comments to include. 0 skips comment collection.

There are no optional inputs, no hidden filters, and no credential fields. The caps bound what the run asks for; they do not force Reddit to expose that many items, because the platform's own listings stop near 1,000 submissions and roughly 10,000 comments even for highly active accounts.

What platforms and markets does Reddit User Profile cover?

Coverage is intentionally narrow: reddit.com user accounts, one per run. The Actor does not blend other social networks and has no country, language, or date-range dimension — Reddit profiles are global objects, returned in whatever language Reddit exposes.

Within Reddit, coverage follows the account's own visibility: public profile fields, trophies, moderated communities, multireddits, and listed activity. Content Reddit hides — deleted items, private communities, quarantined content — is outside what the Actor sees.

Why use Reddit User Profile?

Verified capabilityWhat it means for your workflow
One record per username with fixed field namesSnapshots are diffable across time and joinable across accounts
processed_at UTC stamp on every recordEvery downstream claim can be anchored to a collection time
Independent post and comment capsYou pay for exactly the activity depth a question needs
Deduplication by Reddit item idCounting and sampling are not skewed by repeated listing entries
Nulls preserved instead of substitutedAbsence of data stays distinguishable from false or zero
Suspended accounts still return a recordAccount-state checks do not silently drop rows

The main trade-off is scope: one username per run, with depth controlled by Reddit's own listings. If your pipeline starts from keywords or communities rather than known usernames, this Actor sits at the end of that pipeline, not the beginning.

Who is Reddit User Profile for?

  • Data engineers enriching an existing, lawfully held list of Reddit usernames with consistent profile columns.
  • Research and analytics teams comparing account age, karma distribution, and moderation footprint across a population of authors.
  • Trust and safety reviewers collecting a timestamped evidence snapshot for human review of a specific account.
  • Automation builders wiring a bounded, predictable profile step into schedules or downstream tools.

The reverse persona matters too: this Actor is the wrong choice if you need to discover accounts, read private data, act on Reddit, or make automated high-impact decisions about people. Profile fields are evidence for human judgment, not a verdict.

How can I use Reddit User Profile through the API or MCP?

The Actor ID is OFnTh9yMuUwXPZe4e, and the full name is truefetch/reddit-user-profile.

HTTP API

The synchronous endpoint runs the shared scenario and returns the dataset items in one call. Keep the token out of source control.

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

The live API page generates ready-to-paste examples for the Apify JavaScript and Python SDKs and documents the current OpenAPI surface.

MCP

Connect an MCP-capable client to Apify's hosted server:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com"
}
}
}

After authorizing, have the client fetch details for truefetch/reddit-user-profile to confirm the three-field schema, then call the Actor with the same JSON input as the HTTP example. Configuration and authentication options are documented in the Apify MCP guide.

How much does Reddit User Profile cost?

Pricing is per event. A start event is charged when the run begins (one per started gigabyte of memory, minimum one). The result record is billed once, and each post or comment actually included in the record is billed individually — so the two caps are also your cost controls. Prices can change; confirm on the pricing page before production use.

EventFREEBRONZESILVERGOLDPLATINUMDIAMOND
Actor Start$0.01000$0.01000$0.01000$0.01000$0.01000$0.01000
Result$0.04500$0.04050$0.03600$0.03375$0.03375$0.03375
Post$0.00650$0.00585$0.00520$0.00488$0.00488$0.00488
Comment$0.00125$0.00113$0.00100$0.00094$0.00094$0.00094

Smallest useful FREE-tier test: set both caps to 0 and the run bills one start ($0.01000) plus one result ($0.04500) — $0.05500 total. Setting a maximum total charge on the run keeps any experiment inside a known budget.

How does Reddit User Profile compare with alternatives?

OptionBest fitTrade-off
Reddit User ProfileRepeatable, timestamped snapshots of known usernamesOne account per run; depth bounded by Reddit's listings
Manual profile browsingA one-off informal look at a single accountNot exportable, not comparable, not timestamped
Reddit's own developer platformInteractive apps, authorized data, write actionsYou build and maintain the integration and its policy compliance
Community- or search-first ActorsDiscovery starting from a subreddit or keywordReturns posts or community data, not one consolidated profile record

Choose Reddit User Profile when the username is already known and the deliverable is a structured record. Choose discovery-oriented tools to find authors first, and Reddit's own platform when you need capabilities beyond read-only public snapshots.

What are the limits and troubleshooting steps?

  • Fewer items than the cap — Reddit's listings stop near 1,000 submissions and 10,000 comments; quiet accounts return fewer. Re-run with a cap of 1: if one item returns, the gap is source availability.
  • "User not found" — verify spelling and try the profile URL form; deleted accounts stop resolving on reddit.com itself.
  • Mostly-null record with is_suspended: true — expected for suspended accounts; Reddit only discloses the name and a karma total.
  • Empty posts or comments despite a positive cap — confirm the account has publicly visible activity; some accounts only have activity in communities that are no longer public.
  • Flattened arrays in CSV exports — choose JSON or JSONL when the nested post, comment, trophy, or multireddit objects matter downstream.
  • Charge-limit message — the run hit its configured maximum total charge; compare billed event counts with your caps before raising it.

To report an issue, reproduce it with the smallest input that fails (ideally caps at 0), then file it in the issues tab with the public run ID, the exact input, and what you expected. Do not include your API token or unrelated personal data.

Frequently asked questions

How do I scrape Reddit user post and comment history?

Set max_posts and max_comments above zero and the run returns that user's recent posts and comments inside the same record, each carrying score, subreddit, and timestamp.

Is this a Reddit account age and karma checker?

Yes — as a Reddit account age and karma checker it returns the creation timestamp plus post and comment karma split separately, so maturity and contribution volume compare across usernames.

Can I look up several usernames in one run?

No. The schema takes exactly one username per run. Batch by launching one run per account — schedules, the API, or an orchestration tool can fan out a list.

Does a URL work as the username value?

Yes. AutoModerator, u/AutoModerator, and https://www.reddit.com/user/AutoModerator/ all resolve to the same account.

Why do null, false, and empty values all appear?

They mean different things. null means Reddit did not expose the value for this account; false is an explicit answer; an empty array means the collection exists and has no visible members. Preserve the distinction in downstream models.

Are the post and comment arrays complete histories?

No. They are samples bounded by your caps and by Reddit's own listing depth. Describe them as "up to N items available at run time" in any analysis.

How is karma calculated?

Reddit describes karma as an approximate reflection of votes rather than an exact count. Treat the three karma fields as platform-reported signals, not audited engagement metrics.

Do I need Reddit credentials to run it?

No. There is no credential input. You only need an Apify account or API token to start runs.

Can I schedule recurring snapshots?

Yes. Pair an Apify Schedule with a fixed input and use processed_at to order the snapshots. Interpret changes between snapshots as differences, not explanations.

  • Reddit Post Search — start from a keyword and get matching posts; use it to find authors before profiling them here.
  • Reddit Community Profile — profile a subreddit instead of a user, including community-level metadata.
  • Reddit Community Post — collect posts from a chosen community when the question is about content rather than one account.

Support

Start with the profile-only check, confirm the fields fit your pipeline, then scale the caps deliberately.

Run a one-result test · View API