Capterra Reviews Scraper – Ratings, Pros & Cons avatar

Capterra Reviews Scraper – Ratings, Pros & Cons

Pricing

from $0.53 / 1,000 reviews

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

Capterra Reviews Scraper – Ratings, Pros & Cons

Scrape Capterra software reviews by product URL, name or category: ratings, pros and cons, comments, vendor reply, reviewer job title, country, industry and company size. Goes past 10,000 reviews per product. Filter by stars, company size, country and dates; monitor new reviews. JSON, CSV or Excel.

Pricing

from $0.53 / 1,000 reviews

Rating

0.0

(0)

Developer

Nice Dev

Nice Dev

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

10 minutes ago

Last modified

Share

🏢 What is Capterra Reviews Scraper?

Capterra Reviews Scraper extracts software reviews from Capterra: overall rating, the 4 sub-ratings, pros, cons, comments, reasons for choosing or switching, vendor reply, reviewer job title, country, industry and company size, for any product, by URL, by name or by category. The same reviews are shown on Software Advice and GetApp: paste a link from any of the three. It works as a Capterra API alternative: run it on a schedule, call it from your code, or plug it into Make, Zapier or n8n.

Paste a product link (https://www.capterra.com/p/135003/Slack/) or type a product name, click Start, and download the reviews in JSON, CSV or Excel. No login, nothing to set up, and it is fast: about 100 reviews in 10 seconds, 1,000 in about 5 minutes (measured on Apify), from $0.53 per 1,000 reviews. Products with more than 10,000 reviews are read in pieces, so the older reviews are reached too (see Known limitations).

📋 What data can you extract from Capterra?

One item per review, 43 fields:

CategoryWhat you get
⭐ Ratingsoverall rating 1-5, ease of use, customer support, functionality, value for money, likelihood to recommend 0-10
📝 Review texttitle, pros, cons, overall comment, why they chose the software, why they switched, how often they use it
👤 Reviewername (first name and initial), job title, country, industry, company size, how long they used the software, validated reviewer or not
🏷️ Review originCapterra, GetApp or Software Advice, gift or incentive offered or not, how the review was collected
💬 Vendor replythe software vendor's answer and its date
🕒 Dates and historythe day it was written, the earlier versions of a review its author edited
📦 Productname, ids, links, number of reviews; with Product details: average rating, stars breakdown, average sub-ratings, share of reviewers who recommend, category, logo, alternatives, starting price

Every field, with an example, is listed in the Output section below.

The reviewer's job title, country and likelihood to recommend come from the Capterra UK review pages and are filled when Reviewer job title, country and recommendation is on (default). Turn it off for a faster run: those 3 fields are then null (with the reviewer country filter they are always filled: that filter reads the Capterra UK pages themselves).

✅ Why use Capterra Reviews Scraper?

  • 📚 Past 10,000 reviews: a product with more reviews than one list can hold is read in pieces (by stars, company size, time used) to reach the older ones; Known limitations names the rare reviews left out.
  • 🧾 The full review: sub-ratings, pros, cons, overall comment, reasons for choosing and switching, vendor reply and the earlier versions of an edited review — in the same layout as capterra.com.
  • 👤 Who wrote it: industry, company size and time used, plus job title and country when the review is found on Capterra UK (see Known limitations).
  • 🎯 Type the product, not a URL: by name, by link (Capterra in English and German, Software Advice, GetApp) or by category, several products in one run, each read once.
  • 🔔 Monitoring built in: tick Only new reviews, schedule the Actor, and each run returns (and charges) only what it has never delivered before.
  • 🔎 Filters: stars, company size, time used, reviewer country, dates, keywords, reviewer industry, verified reviewers, incentivized reviews, reviews with a vendor reply.
  • 🔌 API, scheduling, monitoring, integrations (Make, Zapier, n8n, Google Sheets…), proxy rotation and JSON/CSV/Excel export via the Apify platform.

🚀 How to scrape Capterra reviews

  1. Create a free Apify account.
  2. Open Capterra Reviews Scraper and paste a product link into Product or category URLs (e.g. https://www.capterra.com/p/135003/Slack/).
  3. Or type a Product name (e.g. Slack), or several in More product names.
  4. Set Max reviews (100 by default, 0 = no limit) — and Max reviews per product when you read several products — then click Start.
  5. Download the dataset in JSON, CSV, Excel or via API.

💰 How much does it cost to scrape Capterra reviews?

This Actor uses pay per event pricing: you pay for the reviews you get, plus a small fee per run start. Higher Apify plans pay less.

WhatFreeBronzeSilverGold
⭐ Review saved (one row)$0.77 per 1,000$0.71$0.62$0.53
🚀 Run start$0.01 per run$0.01$0.01$0.01
📦 Product details (option, off by default), once per product$0.89 per 1,000 products$0.88$0.87$0.86
🔎 Filter check: a review read and dropped by a filter of the Actor$0.05 per 1,000$0.045$0.04$0.035

Examples:

  • 1,000 reviews of one product on the Gold plan: $0.53 + $0.01 = $0.54 ($0.78 on the Free plan).
  • The same with Product details: + $0.00086 for the product, still $0.54: the product figures are added to every review for less than a tenth of a cent.
  • A daily monitor (Only new reviews) that finds 20 new reviews a day on the Free plan: about $0.025 a day, $0.76 a month.

Reviews the site filters itself (stars, company size, time used, reviewer country) are never read, so never charged. The other filters (dates, keywords, reviewer industry, verified reviewers, incentivized reviews, vendor reply) are applied by the Actor on every review it reads: a review you keep costs its normal price, a review a filter drops costs only the filter check — filtering never costs more than taking everything. A review Only new reviews already delivered costs nothing. Platform usage (compute, proxy) is included in the price.

⚙️ Input

{
"query": "Slack",
"maxItems": 200
}

Several products by name, only recent 4 and 5 star reviews, only the ones not delivered before:

{
"searchQueries": ["Salesforce Sales Cloud", "HubSpot CRM"],
"maxItemsPerQuery": 500,
"starRatings": ["5", "4"],
"postedAfter": "30 days",
"onlyNew": true,
"stateKey": "crm-watch"
}

Or with your own URLs, a product and a category:

{
"startUrls": [
{ "url": "https://www.capterra.com/p/135003/Slack/" },
{ "url": "https://www.capterra.co.uk/directory/30021/crm/software" }
],
"maxProductsPerCategory": 5,
"maxItemsPerQuery": 300
}

Reviews from small companies, with the job title and the country of the reviewer:

{
"query": "Asana",
"companySizes": ["A", "B"],
"includeReviewerDetails": true,
"sortBy": "highest_rating",
"maxItems": 100
}
FieldNotes
startUrlsProduct pages of Capterra (capterra.com, .co.uk, .ca, .com.au, .in, .com.de), Software Advice or GetApp (https://www.softwareadvice.com/product/154669-slack/), and Capterra category pages of those sites (https://www.capterra.com/directory/30021/crm/software; the first Max products per category products are read).
query, searchQueriesProduct name as shown on Capterra (Salesforce Sales Cloud); searchQueries adds more products (max 100). The best match of the site's own search is used and named in the log.
maxProductsPerCategoryProducts read for each category URL, in the site's order (10).
maxItemsStop after this many reviews for the whole run (0 = unlimited).
maxItemsPerQueryCap for EACH product, so the first one cannot use up the whole budget (0 = all its reviews).
sortByThe order reviews are read and saved: most_recent, most_helpful, highest_rating or lowest_rating.
includeReviewerDetailsJob title, country and likelihood to recommend of the reviewer (default on).
includeProductDetailsProduct rating, stars breakdown, sub-ratings, category, logo and alternatives on every review of the product, charged once per product.
starRatingsOnly these overall ratings, filtered by the site: 5, 4, 3, 2, 1. Empty = all.
companySizesOnly reviewers from companies of these sizes, filtered by the site: A (self-employed), B (2-10 employees) to I (10,000+ employees). Empty = all.
timeUsedOnly reviewers who used the software this long, filtered by the site: FreeTrial, LessThan6Months, LessThan12Months, LessThan2Years, MoreThan2Years. Empty = all.
reviewerCountriesReviewer country, 2-letter codes (gb, us): read from Capterra UK, which does not give the reasons for choosing or switching, the vendor reply, the usage frequency or earlier versions.
postedAfter, postedBeforeDate range of the day the review was written (its latest version, for an edited review): 2026-09-01, or a period before now (7 days, 2 weeks, 1 month, 24 hours).
keywords, excludeKeywordsKeep only / drop the reviews whose title, pros, cons or comments contain one of these words (case and accents ignored).
reviewerIndustriesKeep only the reviews whose reviewer industry contains one of these words (Retail, Hospital).
verifiedOnly, excludeIncentivized, withResponseOnlyOnly validated reviewers, drop reviews written for a gift or incentive, keep only the reviews the vendor answered.
onlyNew, stateKey, resetStateMonitoring: only the reviews never delivered under this memory key (crm-watch); resetState forgets the memory.
AdvancedproxyConfiguration (Apify proxy by default, included in the price; the residential proxy is not available), maxConcurrency, maxRequestsPerMinute, minRequestIntervalMs, maxRequestRetries, debugLog.

📦 Output

A review (shortened: the product details, empty without Product details, are not shown):

{
"id": "Capterra___7220603",
"reviewId": "Capterra___7220603",
"url": "https://www.capterra.com/p/61368/Salesforce/reviews/",
"reviewUrl": "https://www.capterra.co.uk/software/61368/salesforce?review=Capterra___7220603",
"sourceSite": "Capterra",
"title": "great centralised sales crm, Highly recommend (abundance of tools and features is great)",
"writtenOn": "2026-09-28T09:19:14.000Z",
"overallRating": 5,
"easeOfUseRating": 4,
"customerSupportRating": 5,
"functionalityRating": 5,
"valueForMoneyRating": 4,
"recommendationRating": 8,
"prosText": "Very useful features, top of the sales CRM softwares for a reason.",
"consText": "Some parts did feel quite difficult to set up.",
"generalComments": "I am happy, I used it to build out my outreach and sales infrastructure.",
"chosenReasons": null,
"switchingReasons": null,
"frequencyOfUse": "Weekly",
"incentivized": "NoIncentive",
"reviewSource": { "code": "NoIncentive", "tooltip": "This review was submitted organically." },
"anonymityOn": false,
"reviewer": {
"fullName": "Arran D.",
"jobTitle": "Director",
"country": "UK",
"industry": "Retail",
"companySize": "2-10 employees",
"companySizeCode": "B",
"timeUsedProduct": "6-12 months",
"timeUsedCode": "LessThan12Months",
"isValidated": true,
"profilePicUrl": null,
"anonymityOn": false
},
"vendorResponse": null,
"previousVersions": [],
"productName": "Salesforce Sales Cloud",
"productId": "61368",
"productUrl": "https://www.capterra.com/p/61368/Salesforce/",
"productReviewCount": 18811,
"sourceInput": "https://www.capterra.com/p/61368/Salesforce",
"scrapedAt": "2026-10-06T01:24:37.832Z"
}

You can download the dataset in various formats such as JSON, HTML, CSV or Excel.

All 43 fields

FieldsWhat you get
id, reviewId, globalReviewIdCapterra___7220603 (the same id on Capterra, Software Advice and GetApp; the prefix is the site the review was written on)
url, reviewUrl, sourceSitethe product's reviews page, the link to this review on Capterra UK, Capterra / GetApp / SoftwareAdvice
title, writtenOnthe title, 2026-09-28T09:19:14.000Z: the date of the latest version of the review, what the date filters read (the day alone, 2026-09-28, with the reviewer country filter)
overallRating, easeOfUseRating, customerSupportRating, functionalityRating, valueForMoneyRating1 to 5 (the 4 sub-ratings are null when the reviewer gave none)
recommendationRatinglikelihood to recommend, 0 to 10 (with Reviewer job title, country and recommendation)
prosText, consText, generalCommentsthe review text
chosenReasons, switchingReasons, frequencyOfUsewhy they chose or switched, Daily / Weekly / Monthly / Other
incentivized, reviewSourceNoIncentive, NominalGift…; the code and the text of how the review was collected
anonymityOn, reviewerwhether the reviewer is anonymous; name, job title, country, industry, company size and its code, time used and its code, validated or not
vendorResponse, previousVersionsthe vendor's reply with its date; the earlier versions of the review (title, date, ratings, texts)
productName, productId, productSlug, productUrl, softwareAdviceIdthe product, its Capterra id and its Software Advice id
productReviewCountall the reviews of the product, filters not applied
productRating, productRatingBreakdown, productSubRatings, productRecommendPercentwith Product details: average rating, reviews per star, average sub-ratings, average likelihood to recommend (out of 100: 70.9 = 7.09 / 10)
productStartingPrice, productPriceCurrency, productCategory, productLogoUrl, productAlternativeswith Product details: lowest price shown, category, logo, the top alternatives
sourceInput, scrapedAtthe link or name you gave that led to the product, ISO timestamp

💡 Tips

How to get more results

Set maxItems to 0 and leave maxItemsPerQuery at 0: every review of every product is read. A product with more than 10,000 reviews is read in pieces — by stars, then by company size, then by time used — and the pieces are put together, each review once.

How to reduce costs

The price is per review, so the levers are maxItems, maxItemsPerQuery, the filters made by the site (starRatings, companySizes, timeUsed: the reviews they leave out are never read), and onlyNew for recurring runs (you never pay twice for the same review). Leave includeProductDetails off unless you need the product figures: it is charged once per product.

Several products in one run

Paste several links into startUrls, or fill searchQueries: the Actor reads each product once, even if it is reached by a link, a name and a category. Set maxItemsPerQuery to give every product its own cap: without it the first products can use up the whole maxItems budget. A category link adds its first maxProductsPerCategory products.

Monitoring: only the new reviews

Tick Only new reviews (onlyNew) and schedule the Actor. The first run returns everything; each later run skips the reviews already delivered: they are not saved and not charged. The memory lives in a named key-value store of your account (capterra-reviews-scraper-seen, up to 150,000 reviews per key) and is only updated with reviews that really reached the dataset, so a failed run never hides anything. Give each schedule its own stateKey (two schedules sharing a key would hide each other's reviews), and tick resetState once to start over. With the Most recent order a product stops being read at its first review you already have (with the reviewer country filter, whose pages put edited reviews back on top, the reviews you have are skipped one by one instead). A review keeps its id when its author edits it, so it is not delivered again. A review that does not pass a time-dependent filter yet (a relative "posted before" date) is checked again on the next run.

Filter by date

postedAfter and postedBefore take a date (2026-09-01, the whole day is included) or a period before now (7 days, 2 weeks, 1 month; via the API also 24 hours or a full ISO date-time). The filter reads writtenOn. Filtered-out reviews are not saved and do not count in maxItems (each review dropped costs the filter fee, see Pricing); the run summary tells how many were filtered. With the Most recent order, a product stops being read at the first review that is too old.

🔌 Integrations and API

Call the Actor via the Apify API, the JavaScript or Python clients, or connect it with integrations and webhooks (Make, Zapier, n8n, Google Sheets, Slack, Airtable…). The dataset can be fetched as JSON or CSV from any tool.

🤖 Use with AI agents (MCP)

AI agents (Claude, ChatGPT, Cursor…) can find and run this Actor through the Apify MCP server, billed to their Apify account like any run. It returns one item per Capterra review. Actor id: nice_dev/capterra-reviews-scraper; MCP server with this Actor only: https://mcp.apify.com/?tools=fetch-actor-details,nice_dev/capterra-reviews-scraper.

Smallest input, for a cheap first call:

{
"query": "Slack",
"maxItems": 10
}

Key output fields: title, overallRating, writtenOn, prosText, consText, generalComments, reviewer and productName.

Cost: $0.77 per 1,000 reviews on the Free plan ($0.53 on Gold), plus $0.01 per run start; Product details adds $0.89 per 1,000 products. Cap each call with maxItems and, through the API, with the run option maxTotalChargeUsd.

❓ FAQ

The Actor only reads what Capterra, Software Advice and GetApp show publicly to any anonymous visitor. It logs in to nothing. Reviews can contain personal data (a reviewer's name, job title, country), which is protected by GDPR: do not store it without a legitimate reason. You are responsible for using the data in compliance with the sites' Terms of Use and applicable law. This Actor is not affiliated with Capterra, Software Advice or GetApp.

Does it need a login or a proxy?

No login. The proxy is included in the price: leave the default setting (the residential proxy is not available). A request the site turns away is retried at once on a new proxy session, up to 10 times on top of the retries (without a proxy, after a pause of 5 seconds, doubled at each retry up to 150 seconds).

Is the data safe to open in Excel or to show on a web page?

Titles and review texts are the reviewers' own words, copied as they are. A text can begin with -, +, = or @: Excel and Google Sheets may read such a cell of a CSV file as a formula or as a number. The Actor leaves the text as it is, so that the JSON and the API give the real value: when you open a CSV, import these columns as text. On a web page, escape every field like any text written by a stranger.

Known limitations

  • A review that has no company size and no time used, beyond the 10,000 most recent of its star rating on a product with more than 10,000 reviews of that rating, cannot be reached by the pieces the Actor reads (the run log says when a product is read in pieces).
  • With the reviewer country filter (reviewerCountries), the reasons for choosing / switching, the vendor reply, the usage frequency and the earlier versions are null: the pages that filter reads do not give them.
  • The job title, country and recommendation are read from the Capterra UK pages: a review that is not found there goes out with those 3 fields null, and the run log counts them.
  • The job title, country and recommendation need the Capterra id of the product: give its Capterra URL (a name, a Software Advice or a GetApp URL does not carry it; the log says so). The reviewer country filter needs it too. With the Most helpful order those 3 fields are left empty (the two sites do not give that order alike).
  • With Highest rating or Lowest rating and the reviewer details on, each star is read in turn, newest first inside a star.
  • Under a cap (maxItems, maxItemsPerQuery), two cases read several lists side by side and keep the reviews of each as they come, not strictly the newest of the whole product: a product with more than 10,000 reviews and a cap above 10,000 (read in pieces), and the reviewer country filter with several countries or several values of a filter (Capterra UK takes one value at a time).
  • onlyNew remembers review ids, not their content.
  • Two runs sharing the same stateKey at the same time may both return the same new review.

A run that reaches its timeout stops itself about 45 seconds before it: no new page is asked, what it read is saved and, with onlyNew, remembered, and the run ends Succeeded with "Stopped before the run's timeout". Resurrect it to go on from there, or give the next run a longer timeout (Run options). At about 200 reviews a minute (1,000 in 4.5 minutes, measured on Apify), the default hour holds several thousand reviews.

A run the platform stops without warning (out of memory)

  • Resurrect it: it goes on from where it stood at most a minute before the stop. What it had read since is read again, and the reviews already saved are skipped: none is delivered or charged twice, and maxItems still counts them.
  • With onlyNew, the memory is saved after each write (at most once every 2 seconds): resurrect the stopped run and the reviews it had saved meanwhile join the memory; leave it stopped for good, and the next run may return the reviews of its last 2 seconds once more.

Something doesn't work?

The last line of the log counts the reviews saved, filtered out, and the requests that failed after every retry. Those requests are listed, with the reason, in the FAILED_REQUESTS record of the run's key-value store. A run that saved nothing and had failed requests fails, and its last message gives the cause (a link to a product that does not exist says so, instead of "run it again"). A product name the site does not know, or a link that gives no product, is named in the log.

If Capterra changes its pages, you are told instead of paying for blank rows. If the first 20 reviews read all lack their overall rating, the day they were written or their title (a review written on GetApp, often a rating alone, is not counted for the title), or if the Capterra UK pages show reviews none of which can be read, the run saves nothing more, stops and fails, and its last message names the missing field: at most those first reviews are charged. A run of fewer reviews (a scheduled onlyNew run that finds a few new ones, a small Max reviews) is checked at its end, from 5 reviews: its reviews are already saved, and the run fails with the missing field instead of ending green.

🛟 Support

Open an issue in the Issues tab with a link to your run: the run log and the FAILED_REQUESTS record of the key-value store show exactly which URLs failed and why.