Product Hunt Reviews Scraper

What launch-day users
actually said.

Give it a Product Hunt product URL - or just the slug - and its review section comes back as a table: who wrote it, the rating, the date, the full review text, and a permalink to that individual review. Eight columns, one row per review, sorted the way you choose.

one-time 500 free rows$0.002 per row afterone row per reviewCSV · JSON · Excel
How it works

A slug is enough
to start.

One required field and two dials. You do not even need the full URL.

  1. STEP 1Sign in to the platform.
  2. STEP 2Open the Product Hunt Reviews Scraper.
  3. STEP 3Paste a producthunt.com product URL or just its slug, one per line - or upload a CSV, XLSX, TXT or Parquet file.
  4. STEP 4Set a limit per query, or leave it at 0 to take every review on the product.
  5. STEP 5Pick a sort: Best, Most Recent, Most Positive or Most Negative.
  6. STEP 6Click Get Data and download as CSV, JSON or Excel.

The limit is per query, not per run: five products with a limit of a hundred is a hundred reviews from each, not a hundred altogether.

Why teams use it

Sorted your way,
not the page's.

Four sorts, including the useful ones

Most Negative is the option a review page never gives you willingly, and it is the one worth running first - the complaints are where the product roadmap is. Most Recent answers a different question entirely: whether the criticism is current or already fixed.

Every row is citable

url is not the product page - it is a permalink to that one review. So a row you paste into a ticket, a deck or a research note carries its own evidence, and anyone can open it and check that it says what you said it says.

Dated, so it can be a trend

The date column carried a real calendar date in every row we measured rather than a relative phrase, which is what makes a review set sortable and comparable over time. Check it on your own first run - our sample is one product - but if it holds, the export is usable as a time series rather than a snapshot.

Data dictionary

Eight columns,
and one that never filled.

The names are the service's own declared list and match the header row of every export we hold. The behaviour below was measured on fifteen distinct reviews of a single product - that sample is named again wherever it matters.

query
What you submitted for this row - the product URL or slug - echoed back on every row it produced. Group by it the moment a file covers more than one product.
product
The product, as its Product Hunt slug rather than its display name. In our sample this was the short identifier from the URL, not the marketing name.
author
The reviewer's display name. Across the fifteen distinct reviews we hold, each had a different author.
rating
The star rating - as a string, not a number. It arrived as '5' rather than 5, so cast before you average. We saw the values 2, 3, 4 and 5; we never saw a 1, which is a fact about our sample rather than about the scale.
date
When the review was posted. In all sixty-seven rows we hold it was an ISO-style calendar date - 2025-03-16 - and never a relative phrase, ranging from March 2025 to July 2026. Confirm it on your own run before you build a parser on it: fifteen reviews of one product is a narrow basis for a format claim.
review
The review text. In our sample it ran from about a hundred to under seven hundred characters - full paragraphs rather than one-liners.
sentiment
All sixty-seven were blank. It is documented because it is in the schema, not because we have watched it work - do not plan a workflow around it without checking your own export first.
url
A permalink to the individual review, in the form …/reviews?review=<id> - not a link to the product page. This is what makes a single row independently checkable.

Where these numbers come from, and how far they go. We hold seven run exports for this service: six returned data and one came back empty. But the six populated runs all targeted the same product, and between them they contain sixty-seven rows that resolve to just fifteen distinct reviews - each one recurring up to six times because the product was scraped repeatedly. So every measured statement above rests on fifteen reviews of one product, and that is why it is repeated rather than tucked into a footnote. The column names are on firmer ground: they are the service's declared list and they match the header row of all seven workbooks, including the empty one. The JSON export also carries a ninth field the spreadsheet does not - position, the order the reviews came back in - so take the JSON if the sort order matters to you. Run the free tier on a product you care about and check sentiment and date against your own file before you build on either.

Common workflows

Three jobs people
run this for.

All of them start from a product slug you can read off the URL bar.

Competitive

Read the negative reviews first

Sort by Most Negative and you have, in one file, the specific things people dislike about a competing product - in their words, with dates and permalinks. That is a more honest feature gap analysis than any comparison page either company would write.

Product · Strategy
Positioning

Find the phrases customers actually use

Most Positive gives you the language people reach for when they like something. Reviews average a paragraph rather than a sentence here, so there is enough text to mine for the words your own landing page should probably be using.

Marketing
Diligence

Check whether the criticism is current

A two-year-old complaint about a missing feature means nothing if the feature shipped last spring. Because every row carries a real date and its own permalink, Most Recent against Most Negative tells you whether a problem is history or still live.

Research · Investment
Pricing

Pay per review row,
nothing else.

No subscription, no minimum, no per-seat licence. Your first 500 rows are on us - after that it is pay-as-you-go.

Free tier

500 free rows - $0

For every new account, one time. No credit card. All scrapers unlocked. A single product's review section is usually well inside that, so the free tier covers a real first run - which is exactly what this page keeps telling you to do.

$0 forever
Pay-as-you-go

$0.002 per row, after the free tier

Roughly $2 per 1,000 reviews, the same flat rate as every other scraper on the platform. The limit is per query, so a shortlist of ten competitors with a limit of fifty is five hundred rows - worth doing the arithmetic before you press go.

Most popular
Enterprise

Custom - whole categories, on a schedule

Volume pricing, SLAs, dedicated workers and tailored onboarding for teams tracking a competitive set rather than a single product. Tell us your numbers and we will quote.

Talk to us
10% off your first paid run.Use code LIVESCRAPER10 at checkout.
Sign up
Pairs well with

The launch,
and everything after it.

Reviews are one signal. These are the others worth having next to them.

The legal bit

Is it legal to scrape
Product Hunt reviews?

Short answer: yes, when you only collect what is publicly visible on a product page - and that is all this service reads.

A product's review section is public. Anyone can open it without an account and read it, and collecting publicly visible information for product and competitive research is long-settled practice. As long as the data is publicly available and the process does not disrupt the service, there are no federal laws against it.

Reviews are written by people, though, and author is a display name. Publicly visible is not the same as free of obligation: if you store it, you are handling personal data, and the GDPR and similar regimes apply to you regardless of where you got it. Reading criticism to improve a product is an easy case; assembling a durable file on individual reviewers is not, and this service is not intended for it. Quoting a review in a deck is also a moment to think about attribution - the url column exists partly so you can point at the source rather than paraphrase someone.

Product Hunt's terms restrict automated access, so this remains a question of terms. We touch nothing behind a login, read only what an ordinary visitor sees, run no third-party trackers on the data layer, and your exports self-delete after 30 days.

livescraper.app · principles
Public product pages only
No logins, no paywalls
Reviewer names are personal data - handle them as such!
GDPR-aligned by default
Exports self-delete (30 days)
The same reviews any visitor sees on the product page.
Common questions

Things people ask before signing up.

The questions we hear most. Something else? Talk to us - humans write the answers, not bots.

What columns will the export contain?+
Eight: query, product, author, rating, date, review, sentiment and url. That is the service's own declared list and it matches the header row of every export we hold. The JSON carries a ninth field the spreadsheet does not - position, the order the reviews came back in.
Do I need the full URL, or is a slug enough?+
A slug is enough. The form accepts a producthunt.com product URL or just the slug, one per line, and you can upload a CSV, XLSX, TXT or Parquet file instead of pasting.
What are the sort options?+
Four: Best, Most Recent, Most Positive and Most Negative. Most Negative is usually the one worth running first, because a review page will not show you the complaints in order on its own.
Is the rating a number?+
No - it arrives as a string, so '5' rather than 5. Cast it before you average or sort numerically. In our sample the values were 2, 3, 4 and 5; we never saw a 1, but that is a fact about fifteen reviews of one product rather than a statement about the scale.
What is in the sentiment column?+
Nothing, in everything we have seen. It is declared in the column list and it was empty on all sixty-seven rows across every run we hold. We document it because it is part of the schema, not because we have watched it work - check your own export before planning around it.
Is the date a real date or a relative phrase?+
In every row we hold it was a real calendar date in ISO form, like 2025-03-16, never something like '2 years ago'. That said, our sample is fifteen distinct reviews of a single product, so confirm it against your own first run before you write a parser that depends on it.
Does it need a proxy?+
The service does not say one is required. It notes that Product Hunt renders reviews client-side behind Cloudflare and that a residential proxy helps - which is weaker than the wording on the services that genuinely require one - and the form itself carries no proxy warning. Six of the seven runs we hold returned data.
What does it cost?+
The first 500 rows on a new account are free and one-time; after that it is $0.002 per row - about $2 per 1,000 - pay-as-you-go with no subscription. Credits do not expire and there is no monthly reset.

Start with the
one-star reviews.

Paste a slug, sort by Most Negative, and read what people actually complained about. Your first 500 rows are free.

Activates instantly · no card required

Export Product Hunt reviews as rows

Product Hunt is where a lot of software gets its first honest audience, and its review sections are correspondingly candid - but they are built to be scrolled rather than analysed. You cannot sort them your own way across products, or line one competitor's criticism up against another's. This service turns a product's reviews into a table. Give it a producthunt.com URL or just the slug and each review comes back as a row: the author, the star rating, the date, the full review text, and a permalink to that individual review. Eight columns, one row per review.

Two controls shape the run. The limit is per query rather than per run, so ten products with a limit of fifty is five hundred rows rather than fifty - worth the arithmetic before you start, since billing is per row. The sort offers four options, and they are not decoration: Most Negative surfaces the complaints a product page will never volunteer in order, and Most Recent tells you whether those complaints are current or already fixed. Running the two together is most of the analysis.

The column that makes the export unusually useful is url. It is a permalink to the individual review rather than a link to the product, so any single row can be dropped into a ticket or a slide and independently verified by whoever reads it. Paired with a real date, that turns a review set from an impression into evidence.

Two things about the data are worth knowing before you build on it, and both come with their sample size attached. First, sentiment is declared in the column list and was empty on every row we have seen - all sixty-seven of them, across every run we hold. Second, everything else we can tell you was measured on a narrow basis: we hold seven runs, six of them populated, but all six targeted the same product, and their sixty-seven rows resolve to just fifteen distinct reviews. On that sample rating arrived as a string rather than a number, date was always an ISO calendar date rather than a relative phrase, and product held the slug rather than the display name. Those are real observations, not guesses - but fifteen reviews of one product is not a broad sample, and this page would rather say so than round it up into a promise. Run the free tier on a product you actually care about and check the file yourself; your first 500 rows cost nothing and need no credit card. See pricing for current rates.