Capterra Reviews Scraper - Five Scores per Review
Pricing
from $0.85 / 1,000 review scrapeds
Capterra Reviews Scraper - Five Scores per Review
Scrape Capterra reviews for any software product. Every review has five scores: overall, ease of use, customer service, features and value. All five come back. You also get pros, cons, the date and the reviewer's job title, industry and company size. Input a product URL or numeric id.
Pricing
from $0.85 / 1,000 review scrapeds
Rating
0.0
(0)
Developer
Dami's Studio
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
6 hours ago
Last modified
Categories
Share
Capterra Reviews Scraper: every review for a software product, no API key
Give it a Capterra product URL or just the numeric product id, and you get one row per review. All five scores, the pros and cons in the reviewer's own words, the date, and who wrote it: job title, industry, company size and how long they have used the product.
Capterra's own pagination stops at 2,500 reviews per product, and its default order is the only one available, so a product with 24,000 reviews cannot be read end to end by anyone.
| Input | Capterra product URLs, country URLs, or numeric product ids |
| Output | One row per review, plus an optional summary row per product |
| Ceiling | 2,500 reviews per product |
| Account needed | None, and no API key |
| Price | $0.85 per 1,000 reviews, flat on every plan |
🔍 What Capterra Reviews Scraper does
Only the product number matters. Paste the reviews URL from your address bar, a Capterra country URL
like capterra.co.uk/software/135003/slack, or the bare 135003. The actor works out the rest,
including the exact capitalisation Capterra insists on in the product slug.
Every review comes back with all five of Capterra's scores, not just the headline star: overall, ease of use, customer service, features and value for money, plus the 0 to 10 recommend score. The reviewer's profile comes with it, so you can cut the results by company size or industry later.
Switch on the summary row and each product also gets one extra, never-charged row: the average and its four sub-scores, how many reviews Capterra says exist in total, how many you collected, and the newest and oldest dates in your set.
📥 What you give it
{"productUrls": ["https://www.capterra.com/p/135003/Slack/reviews/", "217965"],"maxReviewsPerProduct": 300,"includeProductSummary": true}
| Field | Default | What it is |
|---|---|---|
productUrls | none, the box starts with the Slack product URL | One entry per product. A reviews URL, a Capterra country URL, or the numeric product id on its own. |
maxReviewsPerProduct | 100 when you leave it out, and the box starts at 100 | Cap on billable review rows for each product, 1 to 2,500. This is your budget control. |
includeProductSummary | on | One extra, never-charged row per product with the averages and totals. Set it to false to skip it. |
proxyConfiguration | none | Optional. Only touch it if the run has to leave through your own servers. |
Reviews for a product arrive when that product's walk finishes, not page by page. Ask for 2,500 from one product on a short run timeout and the run can end with nothing for it. Split a very large pull into several runs, or raise the timeout.
Products are read one after another. If Capterra will not serve the first product on a given run, the later ones in the same run are reported as skipped rather than attempted.
📤 What you get back
A real review row from a recent run, with the avatar URL trimmed:
{"productId": "135003","productName": "Slack","productUrl": "https://www.capterra.com/p/135003/Slack/reviews/","reviewId": "Capterra___7189737","reviewUrl": "https://www.capterra.com/p/135003/Slack/reviews/?review=Capterra___7189737","title": "Slack: Essential for Desk Based Workforces","publishedAt": "2026-07-25","publishedText": "July 25, 2026","overallRating": 5,"easeOfUse": 5,"customerService": 5,"features": 5,"valueForMoney": 5,"likelihoodToRecommend": 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...","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.","comments": "I love Slack and could not run my business without it...","alternativesConsidered": null,"switchedFrom": null,"reasonsForChoosing": null,"reasonsForSwitching": null,"reviewerName": "Richard M.","reviewerJobTitle": "Founder","reviewerIndustry": "Marketing and Advertising","companySize": "Self-employed","usedFor": "2+ years","verifiedLinkedInUser": true,"reviewerValidations": "LinkedIn, ProofOfLink","reviewerAvatar": "https://reviews.capterra.com/cdn/profile-images/linkedin/...","incentivized": false,"incentiveType": "NoIncentive","reviewerSource": "No Incentive Offered: This review was submitted organically.","sourceSite": "Capterra","globalReviewId": "Capterra___7189737","sourceDomain": "www.capterra.com","_charged": true}
| Field | What it is |
|---|---|
reviewId | Stable. Use it as your dedupe key across runs. |
overallRating and the four beside it | Capterra's full score set. likelihoodToRecommend is the 0 to 10 answer. |
pros, cons, comments | The reviewer's own text, kept as written including line breaks. |
alternativesConsidered, switchedFrom, reasonsForChoosing, reasonsForSwitching | Filled in only when the reviewer answered those questions, which most do not. null otherwise. |
reviewerName | null when the review was left anonymously. |
incentivized, incentiveType, reviewerSource | Whether the reviewer got something for writing it, in Capterra's own wording. |
sourceSite, globalReviewId | Capterra shares a review corpus with its sister sites, so a review can originate elsewhere and say so here. |
publishedAt | The ISO date. publishedText keeps Capterra's own wording. |
🧾 Reading the output
Four kinds of row can land in your dataset.
| Row | How to spot it | Charged |
|---|---|---|
| A review | A reviewId, and none of the flags below | yes |
| The product summary | _summary: true | no |
| The sample row | _sample: true | no |
| A diagnostic | _diagnostic: true and a reason | no |
Every row carries _charged. Treat it as the marker that tells a real review apart from the
summary, sample and diagnostic rows, and filter on the three flags rather than on that one field.
Run the actor with nothing filled in and you get the sample row on its own.
The reason on a diagnostic row names what went wrong:
| Reason | What it means |
|---|---|
unrecognised-product-reference | That entry is not a Capterra product URL or id. |
product-not-found | Capterra has no product with that number. |
blocked | Capterra would not serve a readable page for that product on this run. Try again. |
skipped | An earlier product in the same run could not be served, so this one was not attempted. |
no-new-reviews | Paging stopped because Capterra started repeating itself. |
page-limit-reached | The 2,500-review ceiling. Everything up to it was delivered. |
The summary row also carries stoppedBecause, with the same vocabulary plus
reached-requested-count and all-reviews-collected, so you can tell a finished walk from a capped
one at a glance.
▶️ How to run it
- Open Capterra Reviews Scraper and click Try for free.
- Paste one or more products into Capterra product URLs, one per line.
- Set Maximum reviews per product. Start around 100 to see the output shape.
- Leave Add a product summary row on unless you only want review rows, then click Start.
- Download the dataset as JSON, CSV or Excel, or read it from the Apify API.
💰 How much does it cost?
$0.85 per 1,000 reviews. Flat on every Apify plan, no volume tiers.
You pay per review row delivered. The summary row, the sample row and diagnostic rows carry no review charge, and a product that returns no reviews produces none either.
💡 What people use it for
- Reading what buyers in one company size band actually complain about, by filtering
companySizeand thencons. - Tracking a product's score month by month on a schedule, deduping on
reviewId. - Pulling
switchedFromandreasonsForSwitchingacross a category to see which products people leave and why. - Sorting the sub-scores against each other, because a product can rate well on features and badly on customer service and the headline average hides it.
🚧 What it does not do
- 2,500 reviews per product is the ceiling. That is Capterra's own pagination, not a setting here. Popular products have far more than that and nobody can read past it.
- Capterra's default order only. There is no way to ask for newest first, so on a large product you get whichever slice Capterra puts first rather than the most recent.
- No search by product name. You need the URL or the id. Find the product on Capterra once and keep the number.
- English reviews from the .com site. Paste a country URL and the product id is kept, but the reviews still come from the main site.
- No reviewer country. Capterra does not publish it on the review.
- The optional fields are usually empty.
alternativesConsideredand the three beside it depend on the reviewer having answered, and most skip them. - Rows are a snapshot. A review can be edited or removed later, and the run records what was on the page when it read it.
🧭 Which review scraper do you need?
| If you want | Use |
|---|---|
| Capterra reviews with all five sub-scores | This one |
| The same job on G2 | G2 Reviews Scraper |
| Agency and service-provider reviews | Clutch Agencies Scraper |
| Mobile app reviews on Android | Google Play Reviews Scraper |
| Mobile app reviews on iOS | App Store Scraper |
❓ Questions people ask
Where do I find the product id? Open the product on Capterra and read the number out of the URL:
capterra.com/p/135003/Slack/reviews/ is 135003. Paste either form.
Can I scrape several products in one run? Yes, one per line. Each gets its own cap and its own summary row.
Why did I get fewer reviews than I asked for? Either the product has fewer than that, or you hit
the 2,500 ceiling, or paging started repeating. The summary row's stoppedBecause says which.
Do I get the newest reviews? Only in the sense that Capterra's default order tends to surface recent ones early. There is no newest-first setting to ask for.
Can I run it on a schedule? Yes. Keep the cap modest, dedupe on reviewId, and compare
newestReview between runs.
Is scraping reviews legal? These are public reviews on public product pages. They carry personal data all the same, which GDPR and similar laws cover, so have a reason for collecting it. Apify's write-up on scraping and the law is a good starting point, and we are not lawyers.
🆘 If something breaks
Open the Issues tab on the actor page. Send the product URL or id and the run ID. The reason
on the diagnostic row usually names the problem on its own.