Product Hunt Scraper.
Any page, fully rendered.
Send any Product Hunt URL and get the fully rendered HTML back, through residential proxies with anti-bot handling built in.
Or pull structured JSON with the producthunt-leaderboard and producthunt-product scrapers.
Two Product Hunt scrapers, live.
The Crawling API, typed live. Watch the producthunt-leaderboard and producthunt-product scrapers each return structured JSON. Hover to pause and read.
One API, everything Product Hunt throws at you.
Product Hunt loads its launch feeds, upvotes and comments from GraphQL after the page paints, and guards the homepage and product pages hard. The Crawling API renders it in a real browser, reaches it through residential IPs, and hands you clean HTML or JSON.
Full JavaScript rendering
A real browser executes the page, so GraphQL-loaded launches, upvote counts, comments and media are all captured, not just the initial HTML.
140M residential IPs
Every request rotates a residential IP across 30 geographies, so you reach Product Hunt like a real local visitor.
Blocks handled for you
CAPTCHAs, bot walls and rate limits are cleared automatically. Nothing to solve, nothing to maintain.
HTML or JSON
Get the full rendered HTML, or add scraper=producthunt-leaderboard or producthunt-product to return leaderboards and launches as structured JSON.
Screenshots and async
The same call can capture a full-page screenshot, or run asynchronously with webhooks and cloud storage.
One API for every site
The Crawling API works on any URL, so the same token covers Product Hunt and everything else you crawl. See the live demo.
Every leaderboard field, as clean JSON.
Send a leaderboard URL with scraper=producthunt-leaderboard and the leaderboard comes back as typed JSON. Swap in producthunt-product to do the same for a single launch.
Leaderboard
period · string date · string url · string productCount · number
Products
products · array products[].name · string products[].tagline · string products[].slug · string
Ranking
products[].position · number products[].rank · number
Engagement
products[].upvotes · number products[].commentsCount · number products[].topics · array
Meta
products[].makerCount · number products[].thumbnail · string products[].isPromoted · boolean
From URL to data in one call.
Every Product Hunt request moves through the same path. You send a URL, we operate everything in between.
Send the URL
Pass any public Product Hunt URL with your token: the homepage feed, a product, a topic or a maker profile.
Rotate a proxy
A residential IP and geography that reach Product Hunt cleanly, drawn from 140M IPs across 30 regions.
Render the page
A real browser loads the page so GraphQL launch feeds, upvote counts and comments render before capture.
Clear anti-bot
Product Hunt's aggressive bot detection on the homepage and product pages is handled automatically. Nothing to solve, nothing to maintain.
Return HTML or JSON
The fully rendered HTML comes back, or typed JSON when you add producthunt-leaderboard or producthunt-product.
What teams build on Product Hunt data.
Launch tracking
Pull daily launches with upvotes, makers and comments to track what is shipping and how it lands.
Trend & topic monitoring
Watch topic and leaderboard pages to spot rising products, categories and narratives early.
Maker & product leads
Collect makers, products and profiles to build prospect lists and competitive maps.
Brand & competitor monitoring
Monitor how your product and competitors launch, rank and get discussed across the feed.
Market & product research
Mine launch copy, taglines and comment threads to inform positioning and roadmaps.
Any URL, one API
Crawl the homepage feed, posts, topics, leaderboards and maker profiles, plus any other site you need.
Good to know when scraping Product Hunt.
Rendered like a real browser
Product Hunt loads launches, upvotes and comments from GraphQL after paint; the Crawling API runs a real browser so they all render before capture.
HTML by default, JSON on request
You get the full rendered HTML. Add scraper=producthunt-leaderboard or scraper=producthunt-product for parsed, typed JSON, or parse the HTML yourself.
Public pages only
The Crawling API reads publicly visible pages, with no login, so you get what a logged-out visitor sees.
Reach Product Hunt from anywhere
Geotargeting across 30 regions and 140M residential IPs means consistent access without managing proxies.
Built to crawl Product Hunt at scale.
The Crawling API runs on the same network that serves 46,000+ paying customers and 70,000+ developers. No proxies to buy, no browsers to run, nothing to patch when Product Hunt changes.
One token, official SDKs for Python, Node and Ruby, and a 99.99% uptime network underneath.
Product Hunt scraping questions.
Start scraping Product Hunt.
Skip the proxies and blocks.
Free to begin with up to 20,000 requests. One token for the Crawling API and every scraper.