Product Hunt [Only $0.80💰] Scraper ·Launches, Reviews & Emails avatar

Product Hunt [Only $0.80💰] Scraper ·Launches, Reviews & Emails

Pricing

from $0.80 / 1,000 results

Go to Apify Store
Product Hunt [Only $0.80💰] Scraper ·Launches, Reviews & Emails

Product Hunt [Only $0.80💰] Scraper ·Launches, Reviews & Emails

[Only $0.80💰] Product Hunt scraper — leaderboards (daily–yearly), topics, collections, products & makers, any URL auto-classified. 50+ fields plus optional detailed reviews, comments & contact emails harvested per site. Pure HTTP, JSON/CSV.

Pricing

from $0.80 / 1,000 results

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

32

Total users

28

Monthly active users

a day ago

Last modified

Share

Product Hunt Scraper — Launches, Reviews, Comments & Contact Emails

Turn any Product Hunt URL into a clean, structured dataset. Start from daily/weekly/monthly/yearly leaderboards, topics, collections, individual products, or maker profiles — all auto-classified from one input.

Get 50+ fields per product including votes, rank, comments, and a media gallery — plus optional detailed reviews, discussion threads + comments, contact emails harvested from each product's own website, and makers + hunter via the Product Hunt API. Pure HTTP, no browser.

Why Use This Scraper?

  • âś… Every Product Hunt entry point in one input — paste leaderboards, topics, collections, products, and maker profiles together; each is auto-classified
  • âś… Rankings built in — vote counts, daily/weekly/monthly rank, comment counts, and the featured timestamp on every leaderboard-sourced row
  • âś… Optional detailed reviews — full review text, per-dimension ratings, and selected pros/cons per product
  • âś… Optional discussion threads + comments — launch discussions with author and comment counts (full comment bodies with a token)
  • âś… Contact emails harvested from each product's own website (mailto + plain-text, junk-filtered, deduped per site)
  • âś… Optional makers + hunter via your own free Product Hunt API token — data not available in the page HTML
  • âś… JSON or CSV output, ready for spreadsheets and CRMs

Overview

The Product Hunt Scraper is built for founders, marketers, VCs, and researchers who need Product Hunt data in a spreadsheet instead of a browser tab.

The output is primarily product-shaped rows. Even when you start from a leaderboard, topic, or collection URL, the resulting dataset is a stream of product rows (rowType: "product") — not separate leaderboard or collection rows. The exception is a direct maker profile URL (/@username), which emits a single maker row (rowType: "maker").

The parser reads Product Hunt's server-rendered Apollo cache (the same data the page UI uses) rather than scraping rendered HTML, so it stays resilient to PH's frequent visual redesigns. URLs are auto-classified by shape — you just paste them, you don't tag them.

Supported Inputs

URL types

URL typePatternExample
Homepageproducthunt.com/https://www.producthunt.com/
Daily leaderboard/leaderboard/daily/YYYY/M/Dhttps://www.producthunt.com/leaderboard/daily/2026/5/22
Weekly leaderboard/leaderboard/weekly/YYYY/WWhttps://www.producthunt.com/leaderboard/weekly/2026/20
Monthly leaderboard/leaderboard/monthly/YYYY/Mhttps://www.producthunt.com/leaderboard/monthly/2026/5
Yearly leaderboard/leaderboard/yearly/YYYYhttps://www.producthunt.com/leaderboard/yearly/2025
Topic page/topics/{slug}https://www.producthunt.com/topics/artificial-intelligence
Collection/collections/{slug}https://www.producthunt.com/collections/best-ai-tools
Collections index/collectionshttps://www.producthunt.com/collections
Product detail/products/{slug} or /posts/{slug}https://www.producthunt.com/products/bolt-new
Maker profile/@{username}https://www.producthunt.com/@ericsimons40

Homepage and listing URLs (leaderboards, topics, collections) fan out to product rows and stop once maxItems is reached. The homepage walks recent daily leaderboards (newest first).

Copy-pasteable startUrls

{
"startUrls": [
"https://www.producthunt.com/leaderboard/daily/2026/5/22",
"https://www.producthunt.com/leaderboard/weekly/2026/20",
"https://www.producthunt.com/topics/artificial-intelligence",
"https://www.producthunt.com/collections/best-ai-tools",
"https://www.producthunt.com/products/bolt-new",
"https://www.producthunt.com/@ericsimons40"
]
}

startUrls accepts both plain strings ("https://…") and request objects ({ "url": "https://…" }) — mix freely.

Unsupported inputs

  • ❌ Keyword search (/search?q=…) — Product Hunt loads search results client-side after page load, so they aren't available to an HTML-based scraper
  • ❌ Content behind a Product Hunt login (private/draft launches, account settings)
  • ❌ Hosts outside producthunt.com

Use Cases

AudienceUse case
Founders & indie makersTrack competitor launches, benchmark votes/rank, study winning taglines, reviews, and media
Marketing & growth teamsBuild outreach lists from new launches with contact emails attached
VCs & scoutsSource deals from daily/weekly leaderboards; filter by funding, YC alumni, traction, review sentiment
Sales / lead-genTurn leaderboards + collections into a ready-to-import prospect list
Researchers & analystsBulk-export launches, reviews, and discussions across topics and time periods
AgenciesDeliver client-ready Product Hunt datasets without writing a scraper

How It Works

How It Works

  1. Input — paste any mix of Product Hunt URLs (homepage, leaderboards, topics, collections, products, makers)
  2. Auto-classify & fan out — each URL is routed to the right handler; listing URLs expand to their products
  3. Fetch — pages are retrieved over HTTP with a real Chrome TLS fingerprint (passes Cloudflare without a browser)
  4. Parse & enrich — the Apollo cache is read for 50+ fields, votes/rank/comments, and the media gallery; optionally add reviews, discussion threads/comments, contact emails from each product's site, and makers/hunter
  5. Output — one product row per launch (or one maker row per /@username), as JSON or CSV

Input Configuration

FieldTypeRequiredNotes
startUrlsarray<string | { url }>yesAny mix of supported Product Hunt URLs. Auto-classified.
enrichMakerEmailsbooleannoDefault true. For each product, fetch its websiteUrl and harvest emails (junk-filtered, capped at 10/site, deduped per URL). Each unique email found is billed as a small add-on (see Store pricing). Disable for pure PH metadata (~30% faster).
scrapeReviewsbooleannoDefault false. Attach detailed reviews per product (one extra request each).
maxReviewsintegernoDefault 50. PH server-renders ~10, so higher values rarely add more.
scrapeCommentsbooleannoDefault false. Attach the launch's discussion threads (one extra request each). Full comment bodies require an API token.
maxCommentsintegernoDefault 20. Cap on comment bodies fetched per launch via the API.
apiTokenstring (secret)noYour own Product Hunt developer token. Unlocks makersEnriched + hunter, and comment bodies when scrapeComments is on. Blank = skip.
maxItemsintegernoHard cap on total dataset rows. Default 2000. Free-tier runs are capped at 100.
maxConcurrencyintegernoDetail pages fetched in parallel. Default 8 (6–10 is the sweet spot).
minConcurrencyintegernoMinimum parallelism. Default 1.
maxRequestRetriesintegernoPer-URL retry budget. Soft-blocks/thin bodies auto-retried with a fresh session. Default 5.
proxyobjectnoDefaults to Apify Proxy. Supply your own residential pool for geo-locked output or heavy runs.

Common scenarios

1. A day's launches with contact emails

{
"startUrls": ["https://www.producthunt.com/leaderboard/daily/2026/5/22"],
"enrichMakerEmails": true
}

2. Launches with reviews and discussion threads

{
"startUrls": ["https://www.producthunt.com/products/bolt-new"],
"scrapeReviews": true,
"scrapeComments": true
}

3. Full enrichment — emails + makers + hunter + comment bodies

{
"startUrls": ["https://www.producthunt.com/leaderboard/weekly/2026/20"],
"enrichMakerEmails": true,
"scrapeComments": true,
"apiToken": "YOUR_PRODUCT_HUNT_DEVELOPER_TOKEN"
}

To get a token: log in to Product Hunt → producthunt.com/v2/oauth/applications → Add an application → Create Token. Paste it into apiToken. It's used only for your runs.

Output Overview

Each dataset item is one of two shapes, set by rowType:

  • product — emitted for every product (from leaderboards, topics, collections, the homepage, or direct product URLs). Carries the full 50+ field schema, plus reviews[], discussionThreads[], and comments[] when enabled.
  • maker — emitted only for a direct /@username URL. Profile + the maker's launched products.

Notes on when fields are populated:

  • Votes, rank, comments count, featuredAt are present on rows discovered via a leaderboard/topic/collection. They're null on a direct /products/{slug} URL (no ranking context).
  • reviews[] appears only with scrapeReviews; discussionThreads[] only with scrapeComments; comments[] (bodies) only when a token is available.
  • makersEnriched + hunter require an apiToken. harvestedEmails requires enrichMakerEmails and a site that exposes an email.

Output is nested JSON by default; the Apify Console "Export" tab flattens it to CSV.

Output Samples

Product row — leaderboard-discovered, with reviews + threads

{
"rowType": "product",
"slug": "bolt-new",
"name": "bolt.new",
"tagline": "Prompt, run, edit & deploy full-stack web apps",
"websiteUrl": "https://bolt.new",
"votesCount": 661, "dailyRank": 1, "weeklyRank": 1, "commentsCount": 75,
"featuredAt": "2026-05-15T00:01:00-07:00",
"reviewsCount": 44, "reviewsRating": 4.7, "followersCount": 30226,
"wasInYCombinator": false,
"harvestedEmails": ["hello@stackblitz.com"],
"reviews": [
{
"id": "535045", "overallRating": 4, "easeOfUseRating": 4, "valueForMoneyRating": 4,
"overallExperience": null,
"positiveFeedback": "bolt.new runs the whole thing in the browser, so you go from prompt to a running app with no local setup…",
"negativeFeedback": null,
"selectedPros": ["Fast prototyping", "No setup"], "selectedCons": ["Token usage"],
"votesCount": 3, "createdAt": "2026-05-20T10:11:00-07:00",
"reviewer": { "name": "Jane D.", "username": "janed", "isVerified": true }
}
/* … up to ~10 reviews … */
],
"discussionThreads": [
{
"id": "717330", "title": "AMA w/ CEO of Bolt — from $0 to $20M",
"descriptionPreview": "Live Feb 28th, 9am PT — drop your questions!",
"commentsCount": 28, "isPinned": false, "createdAt": "2026-02-26T08:00:00-08:00",
"author": { "username": "ericsimons40", "name": "Eric Simons" }
}
],
"comments": [
/* present only with an API token: { id, body, createdAt, votesCount, url, author } */
],
"scrapedAt": "2026-06-14T11:42:00.000Z"
/* plus githubUrl/twitterUrl/etc., media[], categories[], proConTags[], makersEnriched[],
hunter, business fields, latestLaunch, searchContext, and `raw` (full Apollo block) */
}

Maker row — direct /@username

{
"rowType": "maker",
"sourceUrl": "https://www.producthunt.com/@ericsimons40",
"username": "ericsimons40",
"name": "Eric Simons",
"headline": "CEO @StackBlitz",
"twitterUsername": "ericsimons40",
"productsCount": 8,
"followersCount": 1944,
"products": [ { "id": "599447", "name": "bolt.new" } ],
"scrapedAt": "2026-06-14T11:42:00.000Z"
}

Key Output Fields

  • rowType, productId, slug, name, tagline, description, sourceUrl, canonicalUrl
  • websiteUrl, githubUrl, iosUrl, androidUrl, twitterUrl, linkedinUrl, facebookUrl, instagramUrl

Ranking, engagement & media

  • votesCount, launchDayScore, dailyRank, weeklyRank, monthlyRank, commentsCount, featuredAt
  • reviewsCount, reviewsRating, followersCount
  • media[] — mediaType (image/video), imageUuid, width, height, videoId

Business, categories & sentiment

  • employeeSize, fundingAmount, wasInYCombinator, isTopProduct, isNoLongerOnline
  • categories[], latestLaunch, firstPost, alternatives[], proConTags[]

Reviews (with scrapeReviews)

  • reviews[].overallRating, .easeOfUseRating, .reliabilityRating, .valueForMoneyRating, .customizationRating
  • reviews[].overallExperience, .positiveFeedback, .negativeFeedback, .selectedPros, .selectedCons, .votesCount, .reviewer

Discussion & comments (with scrapeComments)

  • discussionThreads[].title, .descriptionPreview, .commentsCount, .isPinned, .author
  • comments[].body, .votesCount, .url, .author (require an API token)

Enrichment (optional)

  • harvestedEmails[] (with enrichMakerEmails), makersEnriched[], hunter (with apiToken)

Discovery context

  • searchContext.discoveryUrl, .resultPosition, .leaderboardDate, .topicSlug, .collectionSlug

FAQ

Which Product Hunt URLs are supported?

Homepage, daily/weekly/monthly/yearly leaderboards, topics, collections (and the /collections index), product detail (/products/{slug} or /posts/{slug}), and maker profiles (/@username). Mix any of them in startUrls. Keyword search (/search) is not supported — PH loads those results client-side.

Do I get product rows or leaderboard/collection rows?

Product rows. Leaderboards, topics, collections, and the homepage all fan out to product rows (rowType: "product"). Only a direct /@username URL produces a maker row.

What do scrapeReviews and scrapeComments add?

scrapeReviews attaches a reviews[] array (full text, five ratings, pros/cons, reviewer) from each product's reviews page. scrapeComments attaches discussionThreads[] (title, preview, count, author). Each adds one HTTP request per product and is off by default.

Do I need a token for comments?

Only for comment bodies. The discussion-thread metadata (discussionThreads[]) is in the page HTML and works with no token. The actual comment text (comments[]) is loaded by Product Hunt over its API, so it's fetched only when a token is available (your apiToken, or an operator-configured fallback).

How do I get makers and the hunter?

Supply your own free Product Hunt developer token in apiToken (see Input Configuration). Makers + hunter are not in Product Hunt's server-rendered HTML, so they appear only when a token is provided.

Why are votesCount / dailyRank sometimes null?

Those come from a leaderboard/topic/collection's ranking data. A direct /products/{slug} URL has no ranking context, so they're null. Reach a product via a leaderboard to get them.

Some products have harvestedEmails: [] — why?

Email harvesting is best-effort. A site may not publish an email, may load it via JavaScript, or may obfuscate it. Realistic harvest rate is roughly 30–50% of product sites.

Can I scrape private or login-gated content?

No. The actor only reads publicly available pages. Anything behind a Product Hunt login is out of scope.

What about rate limits?

The scraper runs cleanly at maxConcurrency=8; lower it or add a residential proxy if you see soft-blocks. The optional apiToken enrichment (makers/hunter/comment bodies) is subject to Product Hunt's API limits (complexity-based, ~6250 units per 15 minutes) — large runs may enrich only part of the set, and the row is always emitted regardless.

Support

Found a bug, hit a soft-block we don't detect, or want another URL kind supported? Open an issue on the actor's Issues tab, or reach out via the memo23 profile on Apify.

Additional Services

Need a custom export shape, a new entry point, or scheduled monitoring? I build tailored scrapers and enrichment pipelines — get in touch via the memo23 profile.

Explore More Scrapers

If you track Product Hunt launches, founders, and prospects, these pair well:

Full portfolio: apify.com/memo23.


⚠️ Disclaimer

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

The scraper accesses only publicly available Product Hunt pages — no authenticated endpoints, private launches, or content behind the producthunt.com login wall. The optional API enrichment uses Product Hunt's official API with a token you supply under your own account. Users are responsible for ensuring their use complies with Product Hunt's Terms of Service, the Product Hunt API terms, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of their own organization. Harvested contact emails are personal data — process them responsibly, honor opt-outs, and seek legal advice before outbound marketing.


SEO Keywords

product hunt scraper, scrape product hunt, producthunt scraper, product hunt api, product hunt.com scraper, Apify product hunt, product hunt leaderboard scraper, product hunt topic scraper, product hunt collections scraper, product hunt reviews scraper, product hunt comments scraper, maker profile scraper, product launch scraper, product hunt maker emails, founder contact scraper, saas launch tracker, b2b lead generation data, vc deal sourcing, ai product tracker, startup launch intelligence