Gumroad Scraper & Products Monitor - New Products, Prices avatar

Gumroad Scraper & Products Monitor - New Products, Prices

Pricing

from $4.50 / 1,000 product returneds

Go to Apify Store
Gumroad Scraper & Products Monitor - New Products, Prices

Gumroad Scraper & Products Monitor - New Products, Prices

For creators tracking their niche on Gumroad: products of any Discover search, category or seller page - name, seller, price and currency, pay-what-you-want, rating average and count. Monitor mode returns only new products, price changes and products whose rating count grew.

Pricing

from $4.50 / 1,000 product returneds

Rating

0.0

(0)

Developer

NeverEmpty

NeverEmpty

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Get the products of any Gumroad Discover search, category or seller page: name, seller, price and currency, pay-what-you-want and subscription terms, rating average and rating count, product type and URL. One row per product.

Turn on monitor mode and each run returns only what changed since the last run: products that are new in the list you watch, price changes, and products whose rating count grew (the public sign that a product is selling) - each with the previous price and rating count. Unchanged products are not returned and not charged as rows.

Unofficial. Reads only the public lists Gumroad shows to every visitor (the Discover search and the seller's public page), after reading the robots.txt of each address. No login, no Gumroad account, no API key. Requests are spaced at least 1.5 seconds apart and go out without a proxy; a refused request or a bot check page is not retried or bypassed.

What you get

ColumnExample
source, searchQuery, category, seller, sortBy, positionsearch, notion template, null, null, newest, 1 - the list this row was read from and the product's place in it
productId, name, productUrlhpqcg, Headquarters Notion Productivity Template, https://productivesetups.gumroad.com/l/headquarters
sellerName, sellerUrl, sellerId, sellerVerifiedProductive Setups, https://productivesetups.gumroad.com, 3915531815605, false
price, currency, priceMinor79, AUD, 7900 - the price in the product's own currency, and the same amount in that currency's smallest unit as Gumroad gives it
isFree, isPayWhatYouWantfalse, false - with pay-what-you-want, price is the minimum ("$5+"); a minimum of 0 is a free product
recurrencemonthly, quarterly, yearly, or null for a one-time purchase
originalPricethe price before a discount, when Gumroad lists one; otherwise null
ratingAverage, ratingCount5, 200 - ratingAverage is null when there are no ratings yet
productType, isSalesLimited, quantityRemainingdigital / course / ebook / membership / bundle ..., false, null
descriptionthe short description Gumroad shows on the product card (cut off by Gumroad at about 100 characters)
changeType, changeTypes, previousPrice, previousRatingCount, ratingCountIncrease, previousRecordedAtmonitor mode only, see below
watchName, checkedAtthe watch name, when this run read the product

price is always in the product's own currency (the one the seller set), not converted. For JPY the amount has no decimals. For KRW, VND, IDR, COP and TWD price is null and only priceMinor is given, because the unit of that field was not verified for those currencies. A value Gumroad does not give is null, never 0.

Not included: sales counts (the lists do not carry them; Gumroad shows a sales count only on the product page of sellers who switch it on), thumbnails, e-mail addresses or any buyer data. Seller information is limited to the public display name and the public page address.

Input

FieldWhat it does
queriesWords to search on Gumroad Discover, one search per line
categoriesDiscover categories as the path in the page address: design, design/icons, software-development, business-and-money ... The path is checked against Gumroad's own category list before anything is requested
sellersSellers by name, name.gumroad.com or any URL on it. Every product shown on the seller's public page is read
sortBydefault, newest, hot_and_new, highest_rated, most_reviewed, price_asc, price_desc. If empty: Gumroad's default order, or newest in monitor mode. Seller pages keep the seller's own order
maxProductsPerSearchProducts per search, category or seller (1-5000, 100 if empty)
onlyChanges, watchName, resetMonitoringStateMonitor mode, see below
{ "queries": ["notion template"], "sellers": ["productivesetups"], "sortBy": "newest", "maxProductsPerSearch": 50 }

With no query, category or seller (and monitor mode off) the run returns the first 36 products of the example search "notion template".

Monitor mode: what counts as a change

Set onlyChanges to true and schedule the run (daily is typical). The Actor remembers, per watchName and per search, category or seller, the price and rating count of each product it has seen.

changeTypeMeaning
newThe product was not in the watched list at earlier runs. For a search or category this is the first maxProductsPerSearch products in the chosen order - with newest (the default in monitor mode) these are newly published products; with another order a product that climbs into the top of the list also counts as new. For a seller it is a product newly shown on the seller's page
price-changedprice differs from the remembered price in the same currency; previousPrice holds the old one
ratings-increasedratingCount is higher than remembered; previousRatingCount and ratingCountIncrease say by how much
  • The first run of a watch returns no product rows. It remembers the list as the starting point and adds one free row that says so.
  • A product can carry several changes at once: changeTypes lists all of them.
  • To keep a product that slides up after another one disappears from being reported as new, monitor mode reads up to 36 products beyond maxProductsPerSearch and remembers them silently.
  • Products that leave the list are not reported. A rating count that goes down is remembered without a row.
  • A change is remembered only after its row was delivered. If the run stops at its maximum charge, the rest is returned by the next run.
  • A run with nothing to return adds one free row with status: "no-change".
  • Do not run two schedules with the same watchName and the same search at the same moment; the remembered state is one record per watch and search.

Rows that explain instead of products

These rows are free. status says what happened and note says it in a sentence.

statusWhen
no-productsGumroad answered with an empty list: nothing matches the search, or the seller shows no products
no-such-categoryThe category path is not in Gumroad's category list (Gumroad would answer such a request with its whole catalogue, so it is not sent). The note lists the top-level categories
no-such-sellerThe seller address answered 404
robots-disallowedThe robots.txt of that address disallows the request, so it was not sent
blockedGumroad refused the request (403/429) or showed a bot check page. Not retried, not bypassed
redirectedThe seller address redirects elsewhere (for example to the seller's own domain). Redirects are not followed
unreadableThe answer could not be read, also after asking once more
baseline-recorded, no-changeMonitor mode: starting point remembered / nothing changed
budget-reachedThe run reached the maximum total charge you set
bad-inputThe input could not be used; nothing was requested

Pricing

Pay per event, no start fee, no monthly fee.

  • product-returned - one per product row. In monitor mode only changed products are rows.
  • search-checked - monitor mode only: one for each search, category or seller that was compared and had nothing to return. The first run of a watch (the starting point) is not charged.

Rows that explain why nothing was returned are free. The run never charges more than the maximum total charge you set for it.

Notes

  • The Actor asks Discover the way a visitor who is not logged in does and sends no option that asks for adult (NSFW) products. The lists carry no adult flag, so rows cannot be filtered by it.
  • Search results come 36 per request. Requests are spaced 1.5 seconds apart, so 1,000 products take about 45 seconds.
  • A seller page shows the products the seller placed in sections of the page; a product the seller keeps off the page is not listed there.
  • The rating count is the only public sales signal in these lists. It is not a sales count.

Thanks for using this Actor

We build these tools for people who run them every day, and we improve them from what users tell us.

  • Missing a field, or need another filter? Tell us in the Issues tab. If the data is there, we add it.
  • Found a bug or a wrong value? Post the run ID in the Issues tab. Wrong data is the thing we fix first.

If this Actor saved you time, a short review helps other people find it.