Reddit User Profile & Post History Crawler Pro
Pricing
from $0.49 / 1,000 results
Reddit User Profile & Post History Crawler Pro
Turn Reddit usernames or profile URLs into split karma, account-age and status-badge data, plus filterable post history with per-post awards, media and gilding, and optional trophies, mod subs and comments.
Pricing
from $0.49 / 1,000 results
Rating
0.0
(0)
Developer
Dataspryva
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Features
Share
Turn Reddit usernames or profile links into structured user records: split karma, account age, badges, bio and avatar, plus the user's posts or comments with media, awards, upvote ratio, trophies and moderated communities.
Runs on public pages without a Reddit account, login cookie, API key, or proxy setup.
Modes
| Mode | What it collects |
|---|---|
Posts (submitted) | The user's submitted posts, with optional recent comments. |
Overview (overview) | Posts and comments in one record. |
Comments (comments) | The user's recent comments only. |
| Gilded (legacy) | Reddit no longer exposes a gilded feed; accepted for saved tasks and treated as Posts with a warning. |
Every mode supports Hot, New, Top and Controversial ordering. Top and Controversial use the timeFilter window.
What each record contains
User fields
username,user_id,profile_urlpost_karma,comment_karma,total_karmaaccount_created(ISO 8601),account_age_yearsdescription,icon_imgcontributionsis_admin,is_employee,is_moderator,is_gold,verified,has_verified_email— only present when Reddit shows the badgeposts[],post_countfiltered_post_count— only when posts existed but every one was filtered outsection_empty— only when the chosen feed genuinely has no content for that usertrophies[],trophy_count— when Include trophy case is onmoderated_subreddits[],moderated_subreddit_count— when Include moderated communities is onmoderator_list_hidden— when the public moderator list is hiddenrecent_comments[],recent_comment_count,recent_comments_total_score— for Overview, Comments, or when Include recent comments is onposts_total_score— sum of kept post scores when non-zeroscraped_at
Post fields
post_id,post_name,title,author,author_fullnamesubreddit(bare name, e.g.aww),subreddit_prefixed(r/aww)score,num_comments,upvote_ratiopermalink,url,external_url,domain,post_type,post_hintcontent(self-text, up to 1,000 characters),content_htmlthumbnail_url,link_flaircreated_utc,created_at,post_age_seconds,title_word_countis_self,is_gallery,is_video,is_crosspost,is_stickied,is_locked,is_archived,is_nsfw,is_spoiler,is_original_content,is_promotedawards[],total_awards_received,gilded_count(when Reddit labels the award as a gild)media_metadata— type, thumbnail, gallery images, MP4/HLS video URLcrosspost_parent— original post id, subreddit and link
Comment fields
comment_id,comment_name,post_id,post_titleauthor,text,body_htmlscore,subreddit,subreddit_prefixedpermalink,created_utc,created_atis_edited,distinguished
A field the profile genuinely lacks is omitted, never emitted as null.
Input
| Field | Type | Default | Description |
|---|---|---|---|
usernames | array | – | Usernames, u/name handles, or full profile URLs. Legacy username is also accepted. |
section | select | submitted | Posts, Overview, Comments, or legacy Gilded. |
sort | select | new | New, Hot, Top, or Controversial. |
timeFilter | select | all | All time, year, month, week, day, or hour. Used by Top/Controversial. |
maxPosts | integer | 50 | Posts to collect per user (1–1000). |
maxComments | integer | 25 | Comments to collect per user (1–1000). |
includeComments | boolean | false | Also collect comments when the section is Posts. |
includeTrophies | boolean | false | Add the trophy case. |
includeModeratedSubreddits | boolean | false | Add the public moderated-community list. |
minPostScore | integer | – | Drop posts below this score. |
maxPostAgeDays | integer | – | Drop posts older than this many days. |
excludeNsfwPosts | boolean | false | Drop NSFW / not-brand-safe posts. |
minPostComments | integer | – | Drop posts with fewer comments. |
maxPostComments | integer | – | Drop posts with more comments. |
postType | select | all | Keep one type: text, link, image, video, gallery, crosspost, GIF, multi-media, or poll. |
includeKeywords | array | – | Keep posts matching these terms in title, body, flair, or subreddit. |
excludeKeywords | array | – | Drop posts matching any of these terms. |
keywordMatch | select | any | Include keywords may match any or all terms. |
excludeStickied | boolean | false | Drop pinned posts. |
Example: recent posts
{"usernames": ["spez", "https://www.reddit.com/user/Poem_for_your_sprog"],"section": "submitted","sort": "new","maxPosts": 25}
Example: top comments
{"usernames": ["spez"],"section": "comments","sort": "top","timeFilter": "year","maxComments": 50,"excludeNsfwPosts": true}
Example: filtered image posts
{"usernames": ["GallowBoob"],"section": "submitted","sort": "top","timeFilter": "month","maxPosts": 100,"postType": "image","minPostScore": 500,"excludeKeywords": ["giveaway"]}
Example: full profile
{"usernames": ["spez"],"section": "overview","maxPosts": 50,"maxComments": 50,"includeTrophies": true,"includeModeratedSubreddits": true,"excludeNsfwPosts": true}
Error records
Each unusable username emits one record with recordType: "error" and type: "reddit_profile_crawler_pro_error". The run continues with the remaining users.
reason | Meaning |
|---|---|
user_not_found | Reddit has no profile with that name. |
profile_private | The profile is private. |
profile_suspended | The account is suspended. |
blocked | Reddit blocked every anonymous route for this run. |
scrape_failed | The page raised an unexpected error. |
no_valid_usernames | The input contained no usable username. |
Use cases
- User research — posting cadence, top communities, karma split and account age.
- Trust and safety checks — combine age, status badges, verification and trophy history.
- Influence analysis — rank posts by score, comments, awards and upvote ratio.
- Community audits — export the public list of communities a user moderates.
- Dataset building — collect posts and comments with media and engagement metadata.
FAQ
Is this affiliated with Reddit?
No. This is an independent third-party actor that reads publicly available Reddit pages. It is not operated by or affiliated with Reddit.
Do I need a Reddit account, API key, or proxy?
No. The actor reads public pages anonymously. It handles Reddit's network challenges automatically and needs no credentials or proxy configuration from you.
Why is post_count lower than maxPosts?
The profile feed ran out of pages before reaching the limit, or the client-side filters removed posts. filtered_post_count appears when filters removed every post.
Why did a user return no comments?
The account may have no public comments, or Reddit's comments feed may be empty for that profile. section_empty flags the empty feed.
Why is section: "gilded" treated as Posts?
Reddit's current public profile UI no longer has a gilded-only feed. Saved tasks that send gilded keep working as Posts, and the status log explains the substitution.
Why are awarder/awardee karma fields often missing?
Reddit's current public profile header only shows post, comment and total karma for most accounts. Those fields appear only when the page carries them.
Are private or suspended profiles supported?
No. They emit an error record explaining the reason; no personal data is collected from them.
Data source
Public Reddit profile, posts and comments pages. The actor does not use Reddit's OAuth API, does not log in, and does not require cookies.
Legacy input compatibility
Old saved tasks keep working. The actor maps these keys in code:
username(string) →usernamessortBy→sortsection: "gilded"→submitted- old sort aliases
best/rising/relevance→hot/new/hot
Legacy keys are intentionally not shown in the input form, so the schema only contains fields the actor actually uses.