Product Hunt Scraper | Launch Leaderboards avatar

Product Hunt Scraper | Launch Leaderboards

Pricing

from $1.20 / 1,000 results

Go to Apify Store
Product Hunt Scraper | Launch Leaderboards

Product Hunt Scraper | Launch Leaderboards

Export Product Hunt daily, weekly or monthly launch leaderboards with product links, taglines, votes, comments and topics. Deduplicate launches across selected pages.

Pricing

from $1.20 / 1,000 results

Rating

0.0

(0)

Developer

Eli J

Eli J

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 hours ago

Last modified

Share

What you can export

Use this Product Hunt scraper for launch research and product discovery. Supply daily, weekly or monthly leaderboard dates to export launch names, taglines, post links, available product websites, displayed votes, comment counts and topics.

A launch found on multiple selected pages is exported once. Ranks and counts are source snapshots; featured leaderboards do not represent every Product Hunt launch.

Try the shipped prefill

Use the input form's example values for a first run. Prefills are examples, not API defaults; check the billing and limits before starting.

{
"dates": [
"2026-10-05"
],
"maxItems": 5
}

Input

FieldTypeDefaultWhat it does
datesarrayNone; prefill ["2026-10-05"]Dates in input order. Day: YYYY-MM-DD; week: YYYY-Www; month: YYYY-MM. Duplicate dates are read once.
periodstringdayday, week or month, applied to every date in this run. A week names the site's numbered week route directly.
maxItemsinteger100; prefill 5Maximum distinct launch rows across the run. 0 makes no requests and writes no rows.

For a weekly run use {"dates":["2026-W40"],"period":"week"}; for a monthly run use {"dates":["2026-09"],"period":"month"}. The week number is the site's route value; no calendar-to-week conversion is performed.

Omitting dates (including {}) or sending [] is refused before any run or charge. With other inputs valid, null dates succeeds with guidance and no rows; Actor Start still applies. Null maxItems uses 100. Omitted period uses day; an explicit null period is rejected by platform input validation. Invalid dates or input types fail before any source request.

Output

One row per launch post. This row was observed on October 5, 2026; counts are a snapshot:

{
"name": "FastRouter.ai",
"tagline": "Route requests to the right LLM for cost, latency & quality",
"postUrl": "https://www.producthunt.com/posts/fastrouter-ai-2",
"productWebsiteUrl": "https://fastrouter.ai/?utm_source=producthunt&utm_medium=referral&utm_campaign=ph-launch",
"launchDate": "2026-10-05T00:01:00-07:00",
"dailyRank": 1,
"votes": 256,
"comments": 49,
"topics": [
{
"name": "API",
"slug": "api-1"
},
{
"name": "Developer Tools",
"slug": "developer-tools"
},
{
"name": "Artificial Intelligence",
"slug": "artificial-intelligence"
}
],
"sourceUrl": "https://www.producthunt.com/leaderboard/daily/2026/10/5",
"scrapedAt": "2026-10-05T15:52:38Z"
}
ColumnMeaning
name, taglinePost text returned by Product Hunt.
postUrlPer-launch /posts/{slug} permalink; Product Hunt may redirect it to the product with a launch parameter.
productWebsiteUrlProduct's public website from its detail page; null when absent or that page cannot be read.
launchDateSource featuredAt timestamp with its original offset; not the post creation time.
dailyRankInteger rank on the launch's own day, including on weekly/monthly boards; null when absent. It is not the position on the requested weekly/monthly board.
votesSource latestScore, the vote number displayed by the site. Its relationship to raw votes is not established. Null when votes are hidden or absent.
commentsSource comment count, in comments; null when absent. No comment text is exported.
topicsTopic names and slugs returned for the post (the board requests up to three), or null when absent.
sourceUrlFirst selected leaderboard page that supplied this post, also for its continuation pages.
scrapedAtUTC time the launch was projected from the fetched response, before its optional website lookup.

Counts and ranks are snapshots and can change. Product Hunt decides which posts appear on its public featured leaderboards. This export does not promise every launch on the site. No maker profiles, user profiles, emails or comment text are included.

Billing and limits

Each delivered dataset row is one pay-per-event result. The Store's current Pricing section shows the applicable event rates. The platform's Actor Start event is separate, including on a run with dates: null. Errors are never dataset rows or charged result rows.

The collector stops fetching when maxItems is reached or Apify reports that the customer's maximum event charge was reached. Product website URLs come from Product Hunt's product pages. The collector reads those pages up to five at a time, and never for more rows than maxItems and the maximum event charge still allow. Rows are delivered one at a time, in the order the leaderboard lists them. Requests use Apify residential proxies in the US, configured automatically, with gzip compression. If a source response is blocked or unreadable, leaderboard and continuation requests are tried up to three times on fresh proxy sessions; product website lookups are tried up to twice. Valid empty leaderboards are not retried. Each HTTP request has a 30-second blocking-operation timeout. Large selections can exceed the platform's run timeout; use smaller batches if needed.

Empty results and support

Source failures are recorded in the run's ERRORS key-value record, never in the dataset. A missing product website keeps its launch with a null website. A failed website lookup additionally records a warning. An unavailable continuation can leave a partial dataset and a warning. A run with no rows fails only when every selected leaderboard failed; a valid empty leaderboard succeeds with guidance.

If a source page changes or is blocked, share the Apify run URL in this Actor's Issues tab. Product Hunt is the data source; this Actor is an independent export service.