Gumroad Scraper — Products, Sellers, Reviews & Creator Emails avatar

Gumroad Scraper — Products, Sellers, Reviews & Creator Emails

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Gumroad Scraper — Products, Sellers, Reviews & Creator Emails

Gumroad Scraper — Products, Sellers, Reviews & Creator Emails

Gumroad scraper — products by keyword, tag, category, whole seller storefronts or product URLs. Price/rating/type filters, sales counts, rating histograms, written reviews, creator leads with contact emails, monitor mode for new & changed products. Pure HTTP, JSON or CSV out.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Gumroad Scraper

Gumroad Scraper

The fastest way to turn Gumroad into structured product, seller, and review data. Start from any Gumroad entry point — search keywords, tags, discover categories, whole seller storefronts, or direct product URLs — and get clean rows ready for market research, price tracking, and creator lead generation.

Pure HTTP on Gumroad's own JSON endpoints. No browser, no CAPTCHA solver.

Input you give itRows you get back
Search keywords (notion template, ai course)Product rows from the discover catalog
Tags & category paths (design, 3d/vrchat)Product rows from that niche
Seller storefront URLs (https://seller.gumroad.com)Every product of that creator, all sections, de-duplicated
Direct product URLs (…/l/permalink)Fully detailed product rows
includeSellerRecord / enrichEmails togglesOne creator record per unique seller — with contact emails where discoverable

Why Use This Scraper?

  • Five entry points in one actor — keyword search, tag browse, category browse, seller storefronts, and direct product URLs. Mix them in a single run.
  • Real filters, applied server-side — min/max price (USD), minimum rating, product types, file types. Filtered results are re-checked exactly before output, so a $20 floor means a $20 floor.
  • Whole storefronts, done right — profile sections are parsed from Gumroad's embedded JSON, paginated past the visible first 9 products, and de-duplicated across overlapping sections.
  • Sales counts & rating histograms — detail mode adds salesCount (when the seller shows it), the full 1–5★ rating breakdown, variants/tiers with per-option pricing, and membership billing cycles.
  • Written reviews inline — review text, star rating, reviewer name, and seller replies attached to each product row. No second actor to pay for.
  • Creator leads with contact emails — one record per unique seller with bio, external website, Twitter/X handle, and (opt-in) discovered contact emails plus payment-stack signals.
  • Monitor mode — schedule the same input and only get rows that are new or changed since the last run: price moves, fresh sales, new ratings.
  • Cheap by default — card mode returns 20+ fields per product with no extra requests; detail, reviews, and creator fetches are strictly opt-in.

Overview

This actor is built for anyone who needs structured data about the digital-product economy: which products sell, at what price, with what ratings, and who makes them.

Every dataset row has a type field:

  • type: "product" — one Gumroad product (the default row).
  • type: "creator" — one unique seller (only when includeSellerRecord or enrichEmails is on). Creator records do not count toward maxItems.

Products come from Gumroad's discover/search JSON API and product-page JSON — the same endpoints the site itself uses — which keeps rows complete and stable.

Supported Inputs

InputExampleNotes
Search keywordsnotion template, lightroom presetsSearches the whole discover catalog
Tagsnotion, photography, procreateSame catalog, tag-scoped
Category pathsdesign, 3d/vrchat, business-and-money, software-developmentUse the path as it appears in gumroad.com/discover URLs
Seller storefrontshttps://liindy.gumroad.comSubdomain and custom-domain Gumroad stores
Product URLshttps://seller.gumroad.com/l/permalink, https://gumroad.com/l/permalinkAlways fully detailed; filters don't apply to explicit URLs

Not supported: checkout/receipt pages, the logged-in library, affiliate dashboards, or any content behind login.

Use Cases

WhoWhat they pull
Indie hackers & creatorsPrice maps and best-seller lists for a niche before building their own product
Market researchersCategory-level demand signals: ratings volume, sales counts, price distribution
Lead-gen & agenciesCreator records with external websites, emails, and payment-stack signals
Competitor watchersMonitor mode diffs on a rival's storefront: new launches, price changes
Review analystsWritten review text at scale for sentiment and product-gap analysis

How It Works

How the Gumroad Scraper works

  1. Point it at Gumroad — any mix of keywords, tags, categories, storefront URLs, and product URLs.
  2. Server-side filtering — price window, minimum rating, and file types are pushed into Gumroad's own search API, so you don't pay for rows you'll throw away.
  3. Fetch & normalize — product cards are normalized into flat rows; detail mode adds the product-page JSON (sales count, histogram, variants, refund policy); review mode pages through written reviews.
  4. Storefront handling — seller pages are parsed from their embedded JSON; every section is paginated and products de-duplicated by ID.
  5. Emit — products (and optional creator records) land in the dataset as JSON, exportable as CSV/Excel/XML via the Apify API.

Input Configuration

All fields are optional — provide at least one of searchQueries, tags, categories, sellerUrls, or productUrls.

FieldTypeDefaultNotes
searchQueriesstring[]Keywords for the discover catalog
tagsstring[]Tag browse
categoriesstring[]Category paths (3d/vrchat)
sellerUrlsstring[]Storefront URLs — every product of those creators
productUrlsstring[]Direct product URLs (always detail-fetched)
sortenumfeaturedfeatured, most_reviewed, highest_rated, newest, hot_and_new, staff_picks, price_asc, price_desc
minPrice / maxPriceintegerPrice window in USD
minRatinginteger0–5; unrated products are excluded when set
nativeTypesenum[]alldigital, course, ebook, membership, bundle, podcast, audiobook, newsletter, physical, commission, call, coffee, ticket
fileTypesstring[]pdf, mp4, zip, epub, psd, blend, … (server-side)
freeOnlybooleanfalseFree or pay-what-you-want only
payWhatYouWantOnlybooleanfalseBuyer-sets-price only
sellerVerifiedOnlybooleanfalseVerified sellers only
scrapeDetailsbooleanfalseAdds sales count, full description, histogram, variants… (one extra request per product)
scrapeReviewsbooleanfalseAttaches written reviews (one request per ~20 reviews)
maxReviewsPerProductinteger20Review cap per product
includeSellerRecordbooleanfalseEmit one creator record per unique seller
enrichEmailsbooleanfalseCrawl creators' external sites for contact emails; implies includeSellerRecord
monitorModebooleanfalseOnly emit new/changed products vs the previous run
monitorKeystringdefaultMonitor memory namespace — one key per saved search
maxItemsinteger1000Cap on product rows (creator records excluded)
maxConcurrencyinteger6Parallelism for detail/review/creator fetches
proxyobjectOptional; set only if you hit rate limits

Example — filtered market research

{
"searchQueries": ["notion template"],
"minPrice": 20,
"maxPrice": 50,
"minRating": 4,
"sort": "most_reviewed",
"scrapeDetails": true,
"maxItems": 200
}

Example — whole storefront + creator lead

{
"sellerUrls": ["https://liindy.gumroad.com"],
"scrapeDetails": true,
"includeSellerRecord": true
}

Example — niche watchlist (schedule this)

{
"categories": ["3d/vrchat"],
"sort": "newest",
"monitorMode": true,
"monitorKey": "vrchat-newest",
"maxItems": 300
}

Output Overview

Product rows are flat JSON: identity (id, permalink, url), pricing (priceCents, priceUsd, currency, pay-what-you-want and recurrence flags), ratings (ratingCount, ratingAverage, and in detail mode the 1–5★ ratingPercentages histogram), the seller (name, ID, profile URL, verified flag), and content fields (description, thumbnailUrl, and in detail mode descriptionHtml, covers, attributes, refundPolicy).

Creator rows carry the seller's profile: bio, bio links, external website, Twitter/X handle, subdomain, verified state, product counts — plus contact fields when enrichEmails is on.

With monitorMode, every emitted row also carries monitorStatus (new or changed) and a changes array with field-level previous → current diffs.

Output Samples

type: "product" — from a filtered keyword search with scrapeDetails: true

{
"type": "product",
"id": "dvIiGQILR7jh2t4YAVxgPw==",
"permalink": "dvspii",
"name": "Your ADHD Mynd - Notion Template (2026)",
"url": "https://notionforadhd.gumroad.com/l/youradhdmynd",
"nativeType": "digital",
"priceCents": 4500,
"priceUsd": 45,
"currency": "usd",
"isPayWhatYouWant": false,
"ratingCount": 6,
"ratingAverage": 4.8,
"sellerName": "Braelyn | Mynd for ADHD",
"sellerId": "645378619833",
"sellerProfileUrl": "https://notionforadhd.gumroad.com/",
"sellerVerified": false,
"thumbnailUrl": "https://public-files.gumroad.com/6g2w9ygqknype6h6m60b402dokyh",
"description": "🧠 Your ADHD Mynd — A beautifully built Notion system designed to meet your brain where it's at…",
// — detail-mode fields —
"salesCount": 595,
"summary": "A beautiful multi-page Notion dashboard to manage all areas of your life.",
"priceFormatted": "$45",
"ratingPercentages": [0, 0, 0, 17, 83],
"isRecurringBilling": false,
"isTieredMembership": false,
"options": [],
"covers": [{ "url": "https://public-files.gumroad.com/5an7d0i3…", "type": "image", "filetype": "png" }],
"refundPolicy": { "title": "30-day money back guarantee" },
"scrapedAt": "2026-07-18T11:11:04.986Z"
}

type: "creator" — with enrichEmails: true

{
"type": "creator",
"id": "5544649096421",
"name": "Sébastien Dubois",
"bio": "Organize your thoughts, life & work⚡\nNew store: https://store.dsebastien.net",
"bioLinks": ["https://store.dsebastien.net"],
"externalWebsite": "https://store.dsebastien.net",
"twitterHandle": "dSebastien",
"subdomain": "developassion.gumroad.com",
"isVerified": false,
"profileUrl": "https://developassion.gumroad.com/",
"sectionsCount": 7,
"listedProducts": 12,
"productsSeenThisRun": 4,
// — enrichment fields (best-effort) —
"contactEmail": null,
"contactEmails": [],
"contactWebsite": "https://store.dsebastien.net",
"takesPayments": true,
"paymentProcessors": ["gumroad"],
"paymentConfidence": "high",
"scrapedAt": "2026-07-18T11:41:50.256Z"
}

Review objects — attached under reviews with scrapeReviews: true

"reviews": [
{
"id": "Jn0WLqSKcvewmBXo4BipTw==",
"rating": 5,
"message": "Excited to put this to use!",
"raterName": "Honour Indigo",
"response": null, // seller's public reply, when present
"video": null
}
]

Key Output Fields

Identity & pricingid, permalink, name, url, nativeType, priceCents, priceUsd, currency, isPayWhatYouWant, recurrence, durationInMonths, priceFormatted, suggestedPriceCents.

Ratings & tractionratingCount, ratingAverage, ratingPercentages (1–5★ histogram), salesCount (only when the seller displays it publicly), quantityRemaining, isSalesLimited.

SellersellerName, sellerId, sellerProfileUrl, sellerVerified; creator records add bio, bioLinks, externalWebsite, twitterHandle, subdomain, sectionsCount, listedProducts.

Contentdescription, descriptionHtml, summary, thumbnailUrl, covers, attributes, refundPolicy, options (variants/tiers), recurrences (membership billing), freeTrial.

Lead-gen (opt-in)contactEmail, contactEmails, contactWebsite, emailEnrichment, takesPayments, paymentProcessors, paymentConfidence.

Monitoring (opt-in)monitorStatus, changes (field-level diffs), plus createdAt / updatedAt timestamps from detail mode.

FAQ

Which URLs work as sellerUrls? Any Gumroad storefront: https://<name>.gumroad.com subdomains and custom-domain stores powered by Gumroad. The actor reads the store's embedded JSON, so themed stores work too.

Why is salesCount sometimes null? Gumroad only exposes the sales count when the seller has chosen to display it. That's a property of the listing, not a scraping gap.

Do price filters work with non-USD prices? Filters are evaluated in USD. Gumroad converts listings server-side; the actor re-checks the returned USD price so the window you set is the window you get.

How many reviews can I get per product? As many as exist, paged ~20 per request — set maxReviewsPerProduct. Only written reviews are available (Gumroad doesn't publish reviewer-only star votes individually).

Will I always get an email for every creator? No — email discovery is best-effort by design. It works when a creator links an external website (bio link or custom domain); creators with no web presence outside Gumroad yield contactEmail: null. The contact-email event is only charged when an email is actually found.

What exactly does monitor mode remember? A named key-value store (per monitorKey) keeps a snapshot of price, rating count/average, sales count, quantity and name per product. The next run emits only rows whose snapshot changed (with a field-level changes diff) or that are brand new.

Does it need a proxy? Usually no — Gumroad's public endpoints are lenient. The proxy input exists for high-volume runs that hit per-IP rate limits.

Can it scrape the files/downloads of a product? No. Only public listing data — never purchased content, downloads, or anything behind login.

Support

  • Issues tab — fastest way to report a broken field or request a feature; every issue gets a reply.
  • Emailmrmemo230@gmail.com

Additional Services

Need a custom export shape, a merged pipeline (e.g. Gumroad + Etsy for a full digital-product market view), scheduled delivery to your warehouse, or a niche-specific variant? Open an issue or email — custom builds and tailored data feeds are available.

Explore More Scrapers


⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Gumroad, Inc. or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.

The scraper accesses only publicly available product, storefront, and review pages — no authenticated endpoints, paid features, purchased content, or anything behind the gumroad.com login wall. Users are responsible for ensuring their use complies with Gumroad's Terms of Service, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of their own organization.


SEO Keywords

gumroad scraper, gumroad product scraper, gumroad data extraction, gumroad api alternative, gumroad seller scraper, gumroad storefront scraper, gumroad reviews scraper, gumroad creator emails, gumroad price tracker, gumroad market research, digital product research, digital product price monitoring, creator economy data, creator lead generation, notion template market data, vrchat asset market data, best selling gumroad products, gumroad sales count, gumroad json export, gumroad csv export, indie product analytics, web scraping gumroad, apify gumroad actor