Product Hunt Scraper – Launches, Upvotes & Makers
Pricing
from $0.50 / 1,000 product launches
Product Hunt Scraper – Launches, Upvotes & Makers
Extract Product Hunt launches as JSON or CSV: name, tagline, topics, makers, website, upvotes, ranks and top comments. Daily, weekly and monthly leaderboards, topic feeds with no token, and a monitor mode that returns only new launches. From $0.50 per 1,000 results.
Pricing
from $0.50 / 1,000 product launches
Rating
0.0
(0)
Developer
Phantom Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 minutes ago
Last modified
Categories
Share
Product Hunt Scraper & API: Launches, Leaderboards, Topics
Get Product Hunt launches as clean JSON, CSV or Excel. Pull the latest launches by topic with no token, and get daily, weekly and monthly leaderboards with upvotes, ranks, makers, media and comments. It costs $0.50 per 1,000 results, which is lower than the free-plan per-result price of every other Product Hunt Actor we compared in the Apify Store on 2 Nov 2026.
This Product Hunt scraper reads only official Product Hunt channels: the public Atom feed and the official Product Hunt API v2. It runs no headless browser, does not fight Cloudflare and does not depend on fragile HTML selectors. Runs take seconds and use 256 MB of memory. Scrapers that parse Product Hunt's web pages commonly break when a bot challenge appears, and this design avoids that whole class of failure.
What does Product Hunt Scraper do?
| Mode | What you get | Token needed? |
|---|---|---|
| Latest launches | The newest featured launches on Product Hunt, about 50 per feed | No |
| Launches by topic | The latest launches for any topic, such as artificial-intelligence, developer-tools, saas or marketing. Launches found in several topics are merged into one record. | No (latest only). With a token you get full topic history and date ranges. |
| Leaderboard | Daily, weekly or monthly leaderboards for any date range, with rank, upvotes, comments, topics, makers, hunter, media and website | Your free Product Hunt API token |
| Product URLs | Full details for specific launches, from producthunt.com/posts/... or /products/... URLs | Your free Product Hunt API token |
Monitoring mode (onlyNew). Schedule the Actor (hourly, daily) and it returns only launches you have not seen before. You pay only for new results. You can wire it to Slack, email, Google Sheets or Zapier/Make through Apify integrations to get instant alerts for new AI tools or new competitors.
Who is it for?
- VCs and angel investors: track every new startup launch in your thesis area, and spot traction early through upvotes and rank.
- Growth and marketing teams: monitor competitors and category trends, and build launch-day benchmarks.
- SaaS founders: research the market before you launch and find who launched in your niche.
- Lead generation and sales: build lists of fresh startups, their makers and their websites.
- Newsletter and media publishers: produce "top launches of the day/week" content automatically.
- Researchers and analysts: build datasets of product launches over time.
How to use it
- Click Try for free.
- Choose a mode. Latest launches works with no setup.
- Optionally add topics, keywords, a date range or a max results limit.
- Click Start, then download the results as JSON, CSV, Excel or HTML, or fetch them through the Apify API.
Optional: your Product Hunt API token (for leaderboards, votes and ranks)
Product Hunt gives developers a free token. Go to producthunt.com/v2/oauth/applications, create an application, copy the Developer Token and paste it into the Product Hunt API developer token field. It is stored as a secret input.
Product Hunt's API terms state that, by default, the API must not be used for commercial purposes without their permission (contact hello@producthunt.com). Make sure your use complies. The token-free modes use Product Hunt's public feed.
Input examples
Latest AI and developer tool launches, only the new ones since the last run:
{"mode": "topic","topics": ["artificial-intelligence", "developer-tools"],"onlyNew": true,"maxItems": 200}
Yesterday's daily leaderboard, top 20 with makers and the top 5 comments each:
{"mode": "leaderboard","period": "daily","maxItemsPerPeriod": 20,"includeMakers": true,"includeComments": true,"maxCommentsPerProduct": 5,"productHuntApiToken": "YOUR_TOKEN"}
October 2026 weekly leaderboards, launches with at least 200 upvotes mentioning "agent":
{"mode": "leaderboard","period": "weekly","dateFrom": "2026-10-01","dateTo": "2026-10-31","minVotes": 200,"keywords": ["agent"],"productHuntApiToken": "YOUR_TOKEN"}
Specific launches:
{"mode": "products","productUrls": ["https://www.producthunt.com/posts/notion-ai", "raycast"],"productHuntApiToken": "YOUR_TOKEN"}
Output
Every record has the same columns, so CSV and Excel exports stay tidy. Fields a source cannot provide are null or [].
Real example from the token-free topic mode (2 Nov 2026):
{"source": "feed","postId": "1299009","name": "Hyperresearch","tagline": "Durable, verified agentic search","url": "https://www.producthunt.com/products/hyperresearch","slug": "hyperresearch","productHuntShortUrl": "https://www.producthunt.com/r/p/1299009","feedPosition": 3,"topics": ["artificial-intelligence", "developer-tools"],"hunter": { "name": "Jordan Gibbs" },"createdAt": "2026-10-30T22:54:03Z","updatedAt": "2026-11-02T12:48:21Z","scrapedAt": "2026-11-02T13:01:48Z"}
Leaderboard record (API mode, structure):
{"source": "api","postId": "1300992","name": "Example App","tagline": "One-line pitch","description": "Longer description…","url": "https://www.producthunt.com/posts/example-app","website": "https://…","votesCount": 512,"commentsCount": 64,"reviewsRating": 4.8,"rank": 1,"rankPeriod": "daily","rankDate": "2026-11-01","topics": ["artificial-intelligence", "productivity"],"topicNames": ["Artificial Intelligence", "Productivity"],"hunter": { "name": "…", "username": "…", "headline": "…", "twitterUsername": "…", "profileUrl": "…" },"makers": [{ "name": "…", "username": "…", "headline": "Founder", "twitterUsername": "…", "websiteUrl": "…" }],"thumbnailUrl": "https://ph-files.imgix.net/…","media": [{ "type": "image", "url": "https://ph-files.imgix.net/…", "videoUrl": null }],"comments": [{ "body": "Congrats on the launch!", "votesCount": 12, "author": "…", "createdAt": "…" }],"createdAt": "2026-11-01T07:01:00Z","featuredAt": "2026-11-01T07:01:00Z"}
| Field | Description |
|---|---|
name, tagline, description | Product name, one-line pitch and longer description (description is API only) |
url, slug, productHuntShortUrl | Product Hunt page, slug and short link (the short link redirects to the product website) |
website | Product website as returned by the API |
votesCount, commentsCount, reviewsRating | Engagement (API) |
rank, rankPeriod, rankDate | Position in the daily, weekly or monthly leaderboard (API) |
feedPosition | Position in the public feed (token-free modes) |
topics, topicNames | Topic slugs and names |
hunter, makers | People behind the launch, when Product Hunt exposes them |
thumbnailUrl, media | Logo, gallery images and videos (API) |
comments | Top comments, optional add-on (API) |
createdAt, featuredAt, updatedAt, scrapedAt | Timestamps in UTC |
Pricing
Pay per event: no subscription, no monthly rental.
| Event | Price |
|---|---|
| Product launch saved | $0.0005 ($0.50 per 1,000) |
| Top comments add-on (only if enabled and the launch has comments) | $0.0005 per launch |
| Actor start | $0.001 per run |
Filtered-out launches (keywords, minimum votes) and launches skipped by monitoring mode are not charged. 100 launches cost about $0.05. You can cap spending per run with Apify's maximum cost per run setting.
FAQ
Is there a Product Hunt API? Yes, Product Hunt has an official GraphQL API (v2). This Actor wraps it: it handles pagination, rate limits (429 retries), Pacific-time day boundaries, rank calculation and clean flat output. It also adds a token-free mode based on Product Hunt's public feed.
Why don't I get upvotes without a token? The public feed only includes the name, tagline, link, poster and date. Upvotes, ranks, makers and media come from the official API, which needs your free developer token.
Is it legal to scrape Product Hunt? This Actor does not crawl Product Hunt's web pages. It reads the public Atom feed, which Product Hunt publishes for feed readers, and, if you choose, the official API with your own token. You are responsible for how you use the data and for complying with Product Hunt's terms, including the API's commercial-use rules. Personal data such as maker names is included only when Product Hunt makes it public, and it is subject to GDPR and similar laws.
Does it get emails? No. It does not guess or harvest email addresses.
What about pricing plans of the products (free / paid)? Product Hunt does not expose product pricing in its feed or API, so this Actor does not output it.
Which timezone are leaderboard days in? US Pacific time, the same as Product Hunt. Daylight-saving changes are handled.
How fresh is the data? Live. Every run reads Product Hunt at that moment.
Limits
- Token-free modes return the launches currently in Product Hunt's feeds, about 50 per feed and topic. For history, date ranges, upvotes and ranks, use a token.
- An unknown topic slug falls back to the general feed. The Actor detects this, warns you and skips those results so they are not charged.
- Leaderboard rank is the launch's position in Product Hunt's own
RANKINGorder for that period, as returned by the API. - Some maker and hunter profiles are hidden by Product Hunt's API (
[REDACTED]). Those entries are dropped rather than returned empty. - Product Hunt's API applies fair-use rate limits. Very large date ranges may take a while because the Actor waits and retries instead of failing.
Use it from code (API)
Every Apify Actor is also an API. Replace <YOUR_API_TOKEN> with the token from your Apify account (Settings, API & Integrations).
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });const run = await client.actor('phantom-x64/producthunt-scraper').call({"mode": "topic","topics": ["artificial-intelligence"],"maxItems": 20});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient('<YOUR_API_TOKEN>')run = client.actor('phantom-x64/producthunt-scraper').call(run_input={"mode": "topic","topics": ["artificial-intelligence"],"maxItems": 20})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
You can also start it from Make, Zapier, n8n or Google Sheets with the Apify integrations, schedule it, or call it as a tool from an AI agent through the Apify MCP server.
Support
Found a bug or need a field? Open an issue in the Issues tab. Fixes usually ship within days.