Capterra Reviews Scraper - Pros, Cons & Ratings avatar

Capterra Reviews Scraper - Pros, Cons & Ratings

Pricing

from $2.00 / 1,000 actor run starteds

Go to Apify Store
Capterra Reviews Scraper - Pros, Cons & Ratings

Capterra Reviews Scraper - Pros, Cons & Ratings

Capterra reviews scraper that exports every review as a row: overall and five dimension ratings, a 0-10 recommendation score, separate pros and cons, incentive flag, vendor replies, and the reviewer's company size, industry, job title and tenure. Up to 2,500 reviews per product, pay per review.

Pricing

from $2.00 / 1,000 actor run starteds

Rating

0.0

(0)

Developer

SR

SR

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

24 days ago

Last modified

Share

Capterra Reviews Scraper

The Capterra Reviews Scraper exports the reviews behind any Capterra software listing as structured data: one row per review, with the overall rating, five dimension scores, pros, cons, the reviewer's role, company size and tenure, and the vendor's reply. Paste one or more product pages and get up to 2,500 reviews per product, ready for a spreadsheet, a BI tool or a sentiment model.

Capterra's star rating is a single number standing in for thousands of individual opinions. This Actor gives you the opinions: who wrote each one, what they liked, what they did not, how long they had used the product, how big their company was, and whether they were offered anything in return for writing it.

What the Capterra Reviews Scraper gives you per review

Every row carries the whole review, not a summary of it.

Scores. The overall star rating, plus all five of Capterra's individual dimension scores: ease of use, customer support, functionality, value for money, and the reviewer's 0-10 answer to how likely they are to recommend the product. That last one is on Capterra's own 0-10 scale and stays there rather than being squeezed into five stars, because it answers a different question from the rating.

The text, in the fields the reviewer filled in. Capterra asks for pros and cons separately and this Actor keeps them separate, so you get pros and cons as their own columns rather than one blob you have to split later. On top of those: the review title, the reviewer's overall comments, any advice they left for other buyers, why they chose this product, and why they switched away from a previous one. Where a reviewer named the products they weighed against this one, or the product they moved off, those come through as lists.

Who wrote it. Job title, industry, company size band, and how long they had been using the product when they wrote. Whether Capterra validated them, and by what method. Whether they posted anonymously.

The incentive disclosure. Capterra records, per review, whether the reviewer was offered something in exchange, such as a gift card. That flag is in every row, with Capterra's own wording of the disclosure alongside it, so you can weight incentivised reviews differently or drop them entirely.

The vendor's reply. Where the software vendor publicly answered a review, the reply and its date are in the row. Some vendors answer almost every review and some answer none, which is itself worth knowing about a vendor.

Where the review came from. Capterra publishes reviews gathered on its sibling directories next to its own. Every row states which one it came from, so a mixed set never looks like a single-source one.

Every row is checked against the product you asked for

This is the part worth reading first, because it is not a detail.

A Capterra product address looks like /p/135003/Slack/, and it reads as though the name identifies the product. It does not. Capterra resolves on the number alone and ignores everything after it, so /p/135003/Notion/ returns Slack, as a completely normal page, under the name you typed. Product numbers are not guessable either: 189442 is not a company anyone would guess, and a single mistyped digit lands on a real, different product rather than on an error.

So a scraper that trusts the address it was given can hand you one company's reviews filed under another company's name, and nothing in the output would look wrong.

This Actor reads the product identity back off the page and checks it against the number that was requested, on every page, not just the first. If they disagree, nothing from that page is kept and the run reports it. Every row then carries product_id, product_name and product_slug exactly as the page reported them, so the attribution is on the row itself and you can verify it without trusting us. Where the name you asked for and the name Capterra returned are different, the run summary says so explicitly.

The same care applies to the reviews themselves. A Capterra reviews page also carries the product's recommended alternatives, each with its own name, id and rating summary sitting in the same data. Reviews are read only from the one record that both carries reviews and matches the requested id.

How to use the Capterra Reviews Scraper

  1. Open a product on Capterra and copy its address, for example https://www.capterra.com/p/135003/Slack/. The reviews page address (/p/135003/Slack/reviews/) works too, and so does an id and slug pair like 135003/Slack.
  2. Paste one or more of them into Capterra products, one per line.
  3. Set how many reviews you want per product and, if you like, a sort order and filters.
  4. Start the run. Reviews appear in the dataset as they are collected; export them as JSON, CSV, Excel or through the Apify API.

Input

Only products is required. Everything else is optional and has the default shown.

FieldInputWhat it does
productsCapterra productsProduct page addresses, reviews page addresses or id/slug pairs
maxReviewsPerProductReviews per productStop after this many reviews for each product (default 100)
maxProductsMaximum productsCap on how many products the run covers (default 10)
sortBySort reviews byasServed (default), mostRecent, oldest, highestRated, lowestRated, mostRecommended
minRating / maxRatingMinimum / maximum overall ratingKeep only reviews in a star range, 1 to 5
companySizesReviewer company sizeself-employed, 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+
timeUsedProductHow long the reviewer used itfree-trial, less-than-6-months, 6-12-months, 1-2-years, 2-years-plus
sourceSitesReview sourcecapterra, getapp, softwareadvice
excludeIncentivizedDrop incentivized reviewsLeave out reviews written for a reward (default off)
requireProsAndConsOnly reviews with both pros and consDrop the one-liners (default off)
writtenAfter / writtenBeforeWritten on or after / beforeDate range, as YYYY-MM-DD
searchTextText containsKeep only reviews mentioning a word or phrase
maxPagesPerProductMaximum pages per productPage ceiling, for when a narrow filter would otherwise read everything (default 100)
requestDelaySecondsDelay between page requestsPacing, in seconds (default 2)
retriesAttempts per pageRetries for a page that came back incomplete (default 3)

Example input:

{
"products": [
"https://www.capterra.com/p/135003/Slack/",
"https://www.capterra.com/p/211559/Trello/"
],
"maxReviewsPerProduct": 100,
"sortBy": "mostRecent",
"excludeIncentivized": true
}

About the filters and the sorting

These are applied to the reviews after they are collected, not asked of Capterra.

That is a deliberate choice and worth explaining, because Capterra's review pages do have a sort and filter panel, and its controls do write parameters into the address bar. Requested directly, the site accepts every one of those parameters and returns exactly the same reviews it would have returned without them. We checked each one against a baseline confirmed identical across three consecutive requests: sorting, star rating, company size, reviewer role and length of use all came back with the same twenty-five reviews, indistinguishable from a parameter name we invented on the spot. Passing them through would have produced an Actor whose filter inputs did nothing at all, which is worse than not offering them.

So the filtering happens here, on fields that are present in the row you receive and that you can check for yourself. Two of Capterra's own facets, reviewer role and frequency of use, are not offered at all, because the review data carries no such field and there would be nothing honest to filter on.

One consequence worth knowing: a reviewer who did not state their company size or tenure cannot satisfy a filter on it, so those rows drop out when you set one. The run summary reports how many rows your filters removed, so the effect is visible rather than silent.

Output

One dataset item per review. This is a real row from a run on Slack, unedited:

{
"product_id": "135003",
"product_name": "Slack",
"product_slug": "Slack",
"product_url": "https://www.capterra.com/p/135003/Slack/",
"review_id": "Capterra___7189737",
"title": "Slack: Essential for Desk Based Workforces",
"written_on": "July 25, 2026",
"written_on_date": "2026-07-25",
"overall_rating": 5,
"ease_of_use_rating": 5,
"customer_support_rating": 5,
"functionality_rating": 5,
"value_for_money_rating": 5,
"recommendation_score_0_10": 10,
"pros": "Slack is the best way for a desk based workforce to communicate. Hands down. \n\nNothing beats the speed, customizability, and ease of using Slack. As a small business owner, the first thing I did was set up my email, and second was a Slack account. \n\nIt's also so affordable for small businesses to use, and the freemium plan is also fantastic on its own. \n\nI recently had an issue with billing and their customer support fixed it in mere hours.",
"cons": "Honestly, nothing. \n\nOccassionally there will be a bug or issue, like when you had to hard refresh to get rid of phantom notifications, but that is once in a blue moon.",
"overall_comments": "I love Slack and could not run my business without it. Nothing beats the speed, ease, and easy way to communicate and meet with team members around the world.",
"advice_to_others": null,
"reasons_chosen": null,
"reasons_switched": null,
"alternatives_considered": null,
"switched_from": null,
"incentive": "NoIncentive",
"is_incentivized": false,
"incentive_code": "NO",
"incentive_note": "No Incentive Offered: This review was submitted organically.",
"source_site": "Capterra",
"reviewer_name": "Richard M.",
"reviewer_job_title": "Founder",
"reviewer_industry": "Marketing and Advertising",
"reviewer_company_size": "Self-employed",
"reviewer_company_size_band": "self-employed",
"reviewer_time_used": "2+ years",
"reviewer_time_used_band": "2-years-plus",
"reviewer_is_anonymous": false,
"reviewer_linkedin_verified": true,
"reviewer_is_validated": true,
"reviewer_validations": [
"LinkedIn",
"ProofOfLink"
],
"vendor_response": null,
"vendor_response_date": null,
"vendor_responded": false,
"source_page": 1,
"position": 1
}

Fields that a reviewer left empty are null, so every row has the same columns. Lists such as alternatives_considered, switched_from and reviewer_validations are JSON arrays.

The key-value store holds a run summary (summary), with per-product figures: the name Capterra resolved, how many reviews it holds in total, pages fetched, rows returned, rows removed by your filters, duplicates blocked, and why the crawl stopped for that product. Anything that could not be read lands in errors with a code.

Use cases for Capterra review data

  • Competitor research. Pull the reviews of the three or four products you lose deals to and read their cons side by side. The complaints that repeat are your positioning.
  • Voice of the customer. Export your own product's reviews with mostRecent sorting and feed pros and cons into a sentiment or topic model, split by company size or industry.
  • Product and roadmap input. Filter on requireProsAndCons and a searchText such as "integration" or "reporting" to find what buyers ask for in their own words.
  • Vendor due diligence. Before buying software, check how the vendor answers its critics: vendor_responded and vendor_response show who replies and how.
  • Review quality analysis. Weight or drop incentivized reviews with is_incentivized, and compare Capterra, GetApp and Software Advice reviews with source_site.
  • Market and investment research. Track rating dimensions over time across a category, using written_on_date and the five scores.

Capterra Reviews Scraper compared with other options

This ActorCopying by handGeneric web scraper
Pros and cons as separate columnsYesManualUsually one text blob
Five dimension scores and 0-10 recommendationYesManualOften only the stars
Product identity checked on every pageYesYou notice, or notNo
Duplicates past Capterra's page limit blockedYesn/aNo
Incentive disclosure and review source per rowYesManualRarely
Pay per review, no subscriptionYesYour timeUsually a monthly plan

Capterra itself offers no public reviews API for buyers or analysts, so a scraper is the practical way to get its reviews as data. If you need the product profile rather than the reviews behind it, including the rating dimensions, review counts, starting price and pricing model as one row per product, use the Capterra Scraper Actor (s-r/capterra-scraper) instead.

Limits, and how this Actor handles them

2,500 reviews per product, and it really is per product. Capterra publishes at most 100 pages of 25 reviews for any product, however many it holds. Slack has over 24,000 reviews and the site will show you 2,500 of them. That is the site's ceiling, not this Actor's, and asking for more cannot produce more.

The part worth stating plainly, because it decides whether this Actor is useful for more than one product at a time: the 2,500 is not a budget your run spends. It is a property of each product. Two large products in a single run each returned the full 2,500, the second one in a session that had already collected 5,000 reviews, with no slowdown and no errors. A separate run starting cold was served the identical reviews at pages 1, 50 and 100. So ten products in one run means 25,000 reviews, not 2,500 shared between them.

Past the ceiling Capterra does something worth guarding against: ask for page 101 and it answers with page 1 again, as a perfectly normal response carrying twenty-five genuine reviews and the correct product. Its own "more pages available" flag keeps saying yes well past the end, so it cannot be used to decide when to stop. A crawler that followed either signal would append silent duplicates to the end of every large product. This Actor tracks the reviews it has already collected and refuses to return any of them twice, and the run summary reports how many duplicates were blocked.

A product with very few reviews has no reviews page. Capterra redirects the review address for those products to the product profile, which answers normally and contains no reviews. That case is reported as an error with its own code rather than as a product with nothing to say, because a scraper that reported "no reviews" for a product with three would be giving you a confident wrong answer.

A product id that does not exist is reported as an error too, rather than as an empty result.

The number in the URL is what identifies a product. Capterra resolves on it and ignores the name after it, so /p/135003/Notion/ returns Slack. Every row states the product name the page actually reported, and the run summary flags any product whose name did not match the one you asked for.

Speed and reliability

Collection keeps the original page order and pauses between pages according to requestDelaySeconds. Large requests continue automatically in smaller batches. Use maxReviewsPerProduct, maxProducts, and maxPagesPerProduct to set the amount of work before starting. Filters can require several pages to find enough matches.

If a product cannot be read, other products are still collected. Reviews already read are retained, and errors plus the per-product summary explain any missing results. Sorting is stable across all products, and position reflects the final dataset order. Dates are the dates printed by Capterra; no publication times are inferred.

Pricing

Each delivered review costs $0.0011, so 1,000 reviews cost $1.10. A run returning no reviews incurs no review charge. The run-start event in the price configuration is not charged by this Actor, preserving the existing billing behavior. There is no additional charge for filters, sorting, reviewer details, incentive disclosures, or vendor replies.

Free-plan users receive at most 10 reviews per run, across all requested products, and the Actor stops requesting further products when that allowance is filled. The run summary reports freeTierCapped when the allowance is reached. Paying users retain their requested per-product volume, up to Capterra's published limit.

FAQ

Is there a Capterra reviews API?

Capterra does not publish a reviews API for buyers or analysts. This Actor works as one: start it through the Apify API with a JSON input and read the dataset back as JSON or CSV, or call it from Make, Zapier, n8n or your own code.

How many reviews can I scrape per product?

Up to 2,500, which is what Capterra publishes for any product (100 pages of 25). The limit applies to each product separately, so ten large products in one run can return 25,000 reviews.

Can I scrape reviews from several products in one run?

Yes. Paste as many product pages as you like and set maxProducts to cover them. Every row carries product_id and product_name, so the products stay apart in one dataset.

Does it include GetApp and Software Advice reviews?

Capterra shows reviews collected on its sibling directories next to its own. Every row says where it came from in source_site, and sourceSites restricts the run to one or more of them.

Why did a product return an error instead of reviews?

Either the product id does not exist, or the product has so few reviews that Capterra publishes no reviews page for it. Both are reported in errors with their own code, rather than as an empty result that would look like "no reviews".

Can I export Capterra reviews to CSV or Excel?

Yes. The dataset downloads as CSV, Excel, JSON, XML or HTML from the run page or the API. The built-in "Overview" and "Scores" views give you a ready-made table.