Reddit Profile Scraper (Bulk & Massive) | No Login | No Cookie avatar

Reddit Profile Scraper (Bulk & Massive) | No Login | No Cookie

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Reddit Profile Scraper (Bulk & Massive) | No Login | No Cookie

Reddit Profile Scraper (Bulk & Massive) | No Login | No Cookie

Ultra-fast, lightweight bulk Reddit profile scraper. Extracts karma breakdown, bio, recent posts, comments, and top subreddit affinity analytics without browser overhead.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

REXREUS D.O

REXREUS D.O

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

9 days ago

Last modified

Categories

Share

Reddit Profile Scraper (Bulk & Massive)

Reddit Profile Scraper Banner

Ultra-fast, lightweight bulk scraper for Reddit profiles, karma analytics, and community affinity.

Pure HTTP micro-scraper · TypeScript · Automatic anti-bot challenge bypass · Zero browser overhead

Quick Start Apify Node.js Memory Production Ready


💡 Why this Actor?

FeatureWhat you get
Zero Browser OverheadOperates on pure HTTP requests (Crawlee + got-scraping). Uses only 128MB–256MB RAM with zero Puppeteer/Playwright crashes.
Bulk & Massive IngestionExtract 10 to 10,000+ accounts in a single run via arrays, URLs, or multiline text block.
Automated Anti-Bot BypassIn-engine pure HTTP challenge solver bypasses Reddit's JavaScript verification and secures persistent session cookies.
Subreddit Affinity EngineAggregates the top 5 communities where the user is active, total posts, and earned karma. Perfect for audience and influencer discovery!
Karma Breakdown & Account AgeGranular data: post karma, comment karma, awardee karma, awarder karma, and exact account age in days.
Timeline Activity SnapshotOptional extraction of recent submissions and comments with upvote count, upvote ratios, and permalinks.
Single-Row Unified DatasetClean, 1-row-per-profile output optimized for direct CSV/Excel export, Google Sheets, Make, Zapier, and n8n pipelines.
Resilient Proxy & Session PoolingAutomatic session retirement and IP rotation upon encountering HTTP 429 or 403 status codes.

⚡ Quick start

Apify Console

  1. Open the Actor in Apify Console and click Start.
  2. Paste target usernames or Reddit profile URLs into the Target Usernames or Bulk Textarea field.
  3. Click Save & Start.
  4. Monitor live progress; results stream directly into Storage → Dataset.
  5. Export to CSV, Excel, or JSON with one click.

🔄 How it works

┌─────────────────┐ ┌─────────────────────┐ ┌──────────────────────┐
│ Input Target │ ──► │ Input Normalizer │ ──► │ Pure HTTP Reddit │
│ Usernames/URLs │ │ (Dedupe & Sanitize) │ │ Client (JS Solver) │
└─────────────────┘ └─────────────────────┘ └──────────┬───────────┘
┌─────────────────┐ ┌─────────────────────┐ ┌──────────────────────┐
│ Apify Dataset │ ◄── │ Flattened Profile │ ◄── │ Affinity Analytics │
│ (CSV/JSON/XLSX) │ │ Record Generator │ │ (Top Communities) │
└─────────────────┘ └─────────────────────┘ └──────────────────────┘

📥 Input

Basic Input Example

{
"usernames": ["spez", "https://reddit.com/user/kn0thing"]
}

Full Bulk Input Example

{
"usernames": ["spez"],
"rawUsernames": "kn0thing\nu/kojima_san\nhttps://reddit.com/u/alex_claw",
"includeRecentPosts": true,
"maxPosts": 10,
"includeRecentComments": true,
"maxComments": 10,
"maxConcurrency": 5,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Field Specification

FieldTypeRequiredDefaultDescription
usernamesarrayNo["spez", "kn0thing"]Array of Reddit usernames or profile URLs.
rawUsernamesstringNo""Multiline textarea to paste hundreds of usernames/URLs (1 per line).
includeRecentPostsbooleanNotrueWhen enabled, fetches recent posts and computes post analytics.
maxPostsintegerNo10Maximum recent submissions to extract per user (1 to 50).
includeRecentCommentsbooleanNotrueWhen enabled, fetches recent comments and analyzes community engagement.
maxCommentsintegerNo10Maximum recent comments to extract per user (1 to 50).
maxConcurrencyintegerNo5Parallel profile extractions (1 to 50).
proxyConfigurationobjectNoRESIDENTIALApify Residential proxy recommended for high-volume runs.

📤 Output

Each scraped Reddit profile is formatted into a clean, unified record:

{
"username": "kn0thing",
"id": "1wh0",
"url": "https://www.reddit.com/user/kn0thing/",
"displayName": "Alexis Ohanian Sr.",
"bio": "Created Reddit, now doing my life's work building Seven Seven Six.",
"totalKarma": 354067,
"linkKarma": 151900,
"commentKarma": 202167,
"awardeeKarma": 0,
"awarderKarma": 0,
"accountAgeDays": 7760,
"createdAt": "2005-06-06T04:00:00.000Z",
"isGold": true,
"isMod": true,
"isVerified": true,
"hasVerifiedEmail": true,
"isNsfw": false,
"avatarUrl": "https://styles.redditmedia.com/t5_3jgyq/styles/profileIcon_xxxx.png",
"bannerUrl": "https://b.thumbs.redditmedia.com/xxxx.png",
"topSubreddits": "u_kn0thing, iama, blog, gta, maryland",
"topSubredditsDetailed": [
{ "subreddit": "u_kn0thing", "count": 3, "totalScore": 8664 },
{ "subreddit": "iama", "count": 3, "totalScore": 490 },
{ "subreddit": "blog", "count": 1, "totalScore": 115845 }
],
"averagePostScore": 24998.8,
"recentPostsCount": 5,
"recentCommentsCount": 5,
"recentPosts": [
{
"id": "5r43td",
"title": "An Open Letter to the Reddit Community",
"subreddit": "blog",
"score": 115845,
"upvoteRatio": 0.73,
"numComments": 30149,
"createdAt": "2017-01-30T22:34:49.000Z",
"permalink": "https://reddit.com/r/blog/comments/5r43td/an_open_letter_to_the_reddit_community/",
"url": "https://www.reddit.com/r/blog/comments/5r43td/an_open_letter_to_the_reddit_community/"
}
],
"recentComments": [
{
"id": "ox9viy9",
"subreddit": "GTA",
"postTitle": "What would you say Vice City does better than all the other GTA games?",
"bodyPreview": "Came here to say this",
"score": 5,
"createdAt": "2026-07-13T13:52:10.000Z",
"permalink": "https://reddit.com/r/GTA/comments/1uv84qa/what_would_you_say_vice_city_does_better_than_all/ox9viy9/"
}
],
"status": "ok",
"scrapedAt": "2026-09-04T22:19:00.151Z"
}

Dataset Fields Specification

FieldTypeDescription
usernameStringTarget username.
idStringReddit internal ID (t2_*).
urlStringDirect profile URL.
displayNameStringPublic display title or vanity name.
bioStringUser bio or public description.
totalKarmaNumberSum of all karma points.
linkKarmaNumberKarma from submitted links/posts.
commentKarmaNumberKarma from submitted comments.
accountAgeDaysNumberAge of the account in days.
createdAtStringISO 8601 UTC creation date.
isGoldBooleanWhether account has Reddit Premium.
isModBooleanWhether user moderates subreddits.
isVerifiedBooleanWhether profile is verified.
isNsfwBooleanWhether profile is flagged 18+.
avatarUrlStringURL to user's profile avatar image.
bannerUrlStringURL to user's profile banner image.
topSubredditsStringComma-separated top communities for easy CSV filtering.
topSubredditsDetailedArrayArray of objects with { subreddit, count, totalScore }.
averagePostScoreNumberAverage upvote score per recent post.
recentPostsArrayArray of recent submission previews.
recentCommentsArrayArray of recent comment previews.
statusString"ok", "not_found", or "error".

💰 Cost, Limits & Proxy

  • Memory: Configured at 256MB (can run on 128MB).
  • Concurrency: 5 to 20 parallel workers recommended.
  • Proxy Recommendation:
    • Apify Residential Proxies (RESIDENTIAL): Required for bulk/massive workloads (100+ profiles) to bypass Reddit's IP-level rate limits and IP blocking.
    • Datacenter Proxies: Suitable for small batches (1–20 profiles) when paired with lower concurrency.
  • Estimated Costs:
    • ~0.15 Compute Units (CU) per 1,000 scraped profiles (up to 20x cheaper than browser-based scrapers).

🍲 Recipes

Recipe 1: Quick Single Profile Audit

Audit an account for karma breakdown and community affinity:

{
"usernames": ["spez"],
"includeRecentPosts": true,
"maxPosts": 5,
"includeRecentComments": true,
"maxComments": 5
}

Recipe 2: Bulk Influencer & Lead Generation

Scrape 50+ prospective influencers via raw copy-paste:

{
"rawUsernames": "kn0thing\nspez\nkojima_san\nalex_claw",
"maxConcurrency": 10,
"includeRecentPosts": true,
"maxPosts": 10,
"includeRecentComments": false,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

🩺 Troubleshooting

SymptomCauseFix
status: "not_found"User was deleted, suspended, or shadowbanned by Reddit.Normal behavior. The Actor records status without failing the run.
STATUS_403_FORBIDDENTarget IP blocked by Reddit network security.Enable Apify Residential Proxies (RESIDENTIAL) in proxy configuration.
STATUS_429_RATE_LIMITEDHigh request frequency on a single proxy IP.Lower maxConcurrency or ensure Residential Proxy group is active.
0 targets foundEmpty input or malformed usernames.Check input formats; supply plain usernames (spez) or standard profile URLs.

❓ FAQ

1. Do I need a Reddit account or API credentials?

No. This scraper operates on public profile endpoints. No username, password, or Reddit Developer API credentials are required.

2. Does this use Puppeteer or Playwright?

No. It is a pure HTTP micro-scraper. It does not launch headless Chromium, saving gigabytes of memory and keeping compute costs near zero.

3. How does it handle private or 18+ (NSFW) profiles?

Public NSFW profiles are extracted normally with the isNsfw: true flag populated. Fully private or quarantined accounts return "status": "not_found" gracefully.

4. Can I export data directly to Excel or Google Sheets?

Yes. Because every profile is formatted as a single unified record with clean string summaries, exports to CSV and Excel work seamlessly without column corruption.

5. What happens if an account has no posts or comments?

The Actor handles empty activity arrays gracefully, setting post counts to 0 and leaving affinity empty while returning all core profile metadata.


  • This Actor extracts public data only.
  • Users are responsible for complying with Reddit's Terms of Service and local data privacy laws (e.g., GDPR).
  • Does not extract private direct messages, email addresses, or unverified private credentials.

🚀 Run It

Ready to scrape? Open Reddit Profile Scraper on Apify Console and click Start.