Capterra Reviews Scraper & API - Pros, Cons & Ratings avatar

Capterra Reviews Scraper & API - Pros, Cons & Ratings

Pricing

from $1.50 / 1,000 results

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

Capterra Reviews Scraper & API - Pros, Cons & Ratings

Capterra reviews scraper: get software reviews from Capterra, GetApp and Software Advice by product URL or name. One result = one review: rating, title, pros, cons, sub-ratings, reviewer industry, company size, date, vendor reply. Filter by stars, size, keyword, date. $1.50 per 1,000 reviews.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Giovanni Rich

Giovanni Rich

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

8 hours ago

Last modified

Share

Capterra reviews scraper and Capterra API alternative: extract B2B software reviews from Capterra, GetApp and Software Advice into JSON, CSV or Excel with star rating, title, pros and cons, overall comments, the four sub-ratings, reviewer industry, company size, time used, review date and vendor response. Paste a Capterra product URL or a product name, filter by stars, company size, time used or keyword, and get newest reviews first.

Capterra, GetApp and Software Advice are all owned by Gartner and share one review database. This actor reads it through Software Advice's public pages over plain HTTP, with no headless browser, so it's fast (about 25 reviews per request, 600 reviews in under 5 seconds in our tests). Every review keeps its original ID (Capterra___7209621), so you can match it against capterra.com.

What you get

  • The review: title, overall rating (1-5), pros, cons, overall comments, reasons for choosing the product and reasons for switching from a competitor.
  • Sub-ratings: ease of use, customer service, features, value for money.
  • The reviewer: first name and last initial (as shown on Capterra), industry, company size, verified flag, time used, usage frequency, and whether the review was incentivized.
  • Vendor response text and date, when the vendor replied.
  • Ready for sentiment analysis and LLMs: reviewText joins title, pros, cons and comments into one labelled text block, sentiment labels every review positive (4-5 stars), neutral (3) or negative (1-2), reviewWordCount lets you drop one-liners, and isEdited flags reviews the reviewer later updated.
  • Product summary on every row: product name, category and every category the product is listed in (productCategories), logo, overall rating, total reviews, 1-to-5-star breakdown, average sub-ratings, likelihood-to-recommend score and the product's alternatives page (productAlternativesUrl) for competitor lists.
  • The site's own pros and cons summary per product (3 + 3 short paragraphs) in RUN_SUMMARY, ready for a battlecard without reading a single review.
  • Filters that run on the site's side, so you only pay for what you want: star ratings, company size, time used, and a keyword search inside the review text.
  • Newest-first sorting with a date cutoff (reviewedAfter), so scheduled monitoring runs stop as soon as they reach reviews they've already seen.

Sample output

Real rows from test runs:

productNameratingtitledatereviewerIndustryreviewerCompanySize
Slack4Can’t work without2026-09-05Computer Software11-50 employees
monday.com AI Work Platform5Great time saver2026-09-20Marketing and Advertising201-500 employees
monday.com AI Work Platform2Solid feature set, but usability issues hold it back2026-09-19Hospital & Health Care1,001-5,000 employees

Use cases

  • Competitor research: what users like and hate about a competitor, straight from the pros and cons
  • Product and UX research: mine negative reviews (starRatings: ["1","2"]) for feature gaps
  • Sales battlecards: "reasons for switching" shows why buyers left a competitor
  • Review monitoring: a daily schedule with reviewedAfter picks up new reviews of your product
  • Sentiment analysis and LLM training sets, segmented by industry or company size
  • Win/loss and positioning: pull competitors' 1-2 star reviews from your target company size and turn the cons into messaging.
  • Voice-of-customer dashboards: append new reviews weekly to Google Sheets or Looker Studio via Make, n8n or Zapier.

Example inputs for common jobs

Copy one into the JSON tab of the input form.

Competitor complaints from mid-size companies since 2025

{
"products": ["https://www.capterra.com/p/19319/Jira/", "Asana"],
"maxReviewsPerProduct": 0,
"starRatings": ["1", "2"],
"companySizes": ["D", "E", "F"],
"reviewedAfter": "2025-01-01"
}

Why people switch (keyword search inside reviews)

{
"products": ["monday.com", "ClickUp"],
"maxReviewsPerProduct": 200,
"keyword": "switched"
}

Daily monitoring of your own product (schedule this)

{
"products": ["https://www.capterra.com/p/135003/Slack/"],
"maxReviewsPerProduct": 0,
"sortBy": "newest",
"reviewedAfter": "2026-10-01"
}

Best detailed reviews for a sales battlecard

{
"products": ["HubSpot CRM", "Pipedrive"],
"maxReviewsPerProduct": 50,
"sortBy": "recommended",
"starRatings": ["4", "5"]
}

Pricing

$1.50 per 1,000 results (pay per result; failed requests are never charged), plus Apify's $0.00005 start fee. Reviews skipped by your filters and products that aren't found cost nothing, and there's no monthly rental. For comparison on the free plan: zen-studio $1.99 + $0.005 start, lergassy $1.20, azzouzana $1.00 + $0.005 start, memo23 $0.90 + $0.01 start, epctex $3.50, dionysus_way $3.90. Unlike several of them, the sentiment label, word count, sub-ratings, reviewer details and the product summary are on every row at no extra event.

ReviewsCost
100$0.15
1,000$1.50
10,000$15.00

Apify's free plan ($5 of monthly credit) covers about 3,300 reviews a month.

FAQ

Is it legal to scrape Capterra reviews? The actor collects only publicly available reviews, with no login, and shows reviewers the way the site does (first name and last initial). You're responsible for using the data in line with the site's terms and privacy laws such as GDPR. This isn't legal advice; if you're unsure, check with a lawyer.

Does it need a login, a browser or cookies? No. It makes plain HTTPS requests to the same public review endpoint the website uses. capterra.com itself sits behind a Cloudflare challenge that needs a real browser; the same reviews (same IDs and text) are served from Software Advice without it.

How fast is it, and how many reviews can I get? About 25 reviews per request; 600 reviews took under 5 seconds in our tests. There's no hard cap: maxReviewsPerProduct: 0 returns every review that matches your filters. Coverage is the Software Advice catalog, so a few big vendors (Salesforce Sales Cloud, HubSpot CRM, Zendesk, Mailchimp) come back as "product not found" with close matches, free of charge.

Can I schedule it or use it via API? Yes. Schedule it daily with sortBy: "newest" and reviewedAfter set to yesterday's date; each run reads only a page or two, and reviewId is stable for deduplication. Start runs from the Apify API, the JavaScript/Python clients, Make, Zapier, n8n or the Apify MCP server.

Which proxy should I use? How does it avoid blocks? Start with the default Apify Proxy. A blocked response (HTTP 401, 403, 429 or a challenge page) retires that session and retries on a fresh IP, up to 6 retries by default (maxRequestRetries); if the block persists, the retry moves to the RESIDENTIAL and then UNBLOCKER proxy group on its own (when your account has them). Unknown products or a product that stays blocked never fail the run; RUN_SUMMARY says which inputs were not found or blocked.

Why did a product return fewer reviews than maxReviewsPerProduct? Fewer reviews matched your filters, or the product has fewer reviews. RUN_SUMMARY in the key-value store shows each product's matched count and stop reason.

How to use the Capterra Reviews Scraper

  1. Enter products: paste Capterra product URLs (for example https://www.capterra.com/p/135003/Slack/), GetApp or Software Advice URLs, or product names like Asana. Optionally set filters and a max number of reviews per product.
  2. Click Start. A few hundred reviews usually take seconds, because no browser runs.
  3. Download the reviews as JSON, CSV, Excel or HTML from the Storage tab, or pull them straight into your app through the Apify API.

Input

FieldDefaultDescription
products-Capterra URL (https://www.capterra.com/p/135003/Slack/), GetApp URL, Software Advice URL, or a product name ("Asana"). One per line.
maxReviewsPerProduct100Reviews per product. 0 = every review matching your filters.
sortBynewestnewest or recommended (the site's default: most detailed reviews first)
starRatingsalle.g. ["1", "2"] for negative reviews only
companySizesallCodes A (self-employed), B (2-10), C (11-50), D (51-200), E (201-500), F (501-1,000), G (1,001-5,000), H (5,001-10,000), I (10,001+)
timeUsedallFreeTrial, LessThan6Months, LessThan12Months, LessThan2Years, MoreThan2Years
keyword-Only reviews that mention this word or phrase
reviewedAfter-YYYY-MM-DD. Skips older reviews. With newest sorting, the scraper stops early.
proxyConfigurationApify ProxySwitch to RESIDENTIAL if the log shows repeated blocks

Input example

Every 1- and 2-star review of Jira and Asana from mid-size companies since 2025:

{
"products": ["https://www.capterra.com/p/19319/Jira/", "Asana"],
"maxReviewsPerProduct": 0,
"sortBy": "newest",
"starRatings": ["1", "2"],
"companySizes": ["D", "E", "F"],
"reviewedAfter": "2025-01-01"
}

Output example

One dataset item per review. This one is from a real run (Slack, newest first):

{
"input": "https://www.capterra.com/p/135003/Slack/",
"productName": "Slack",
"reviewId": "Capterra___7209621",
"reviewSource": "Capterra",
"reviewSourceId": "7209621",
"title": "Can’t work without",
"rating": 4,
"pros": "Its ease of use and flexibility. The way you can open a new chat and a channel to share with others is the best",
"cons": "Just as a personal point of view, the UI is not as modern as other tools are made. Some changes could help improve.",
"overallComments": "I use Slack as a professional live chat tools. Not only using it with the colleagues, but also to communicate with external partners.",
"reasonsForChoosing": null,
"reasonsForSwitching": "Many features were under expensive plans",
"easeOfUseRating": 5,
"customerServiceRating": 3,
"featuresRating": 5,
"valueForMoneyRating": 4,
"date": "2026-09-05",
"dateTime": "2026-09-05T05:47:19Z",
"reviewerName": "Lorenzo F.",
"reviewerIndustry": "Computer Software",
"reviewerCompanySize": "11-50 employees",
"reviewerCompanySizeCode": "C",
"reviewerVerified": true,
"reviewerAnonymous": false,
"timeUsed": "More than 2 years",
"usageFrequency": "Daily",
"incentive": "Nominal gift (e.g. gift card)",
"vendorResponse": null,
"vendorResponseDate": null,
"reviewText": "Can’t work without
\nPros: Its ease of use and flexibility. ...
\nCons: Just as a personal point of view, the UI is not as modern as other tools are made. ...
\nOverall: I use Slack as a professional live chat tools. ...",
"sentiment": "positive",
"reviewWordCount": 42,
"isEdited": false,
"productId": "964a02e4-2901-4992-aea5-a6d200b696d4",
"productSeoId": "154669",
"productSlug": "slack",
"productUrl": "https://www.softwareadvice.com/remote-support/slack-profile/",
"productReviewsUrl": "https://www.softwareadvice.com/remote-support/slack-profile/reviews/",
"productLogo": "https://gdm-catalog-fmapi-prod.imgix.net/ProductLogo/91f64896-759a-41ae-8d14-d540f90c5870.png",
"productCategory": "Team Communication",
"productOverallRating": 4.66,
"productTotalReviews": 24209,
"productEaseOfUseRating": 4.61,
"productCustomerServiceRating": 4.43,
"productFeaturesRating": 4.56,
"productValueForMoneyRating": 4.55,
"productLikelihoodToRecommend": 8.6,
"productRatingBreakdown": { "1star": 48, "2star": 127, "3star": 912, "4star": 5731, "5star": 17391 },
"productCategories": ["Productivity", "Collaboration", "File Sharing", "Team Communication", "..."],
"productAlternativesUrl": "https://www.softwareadvice.com/remote-support/slack-profile/alternatives/",
"page": 1,
"scrapedAt": "2026-09-24T05:24:16.141Z"
}

The dataset has two ready-made views: Overview (product, rating, title, pros, cons, date, reviewer, industry, company size) and Ratings (all sub-ratings side by side).

Field fill rates (real test run: 600 reviews of Slack, Asana, Jira, Docusign, monday.com and QuickBooks Online)

FieldFill rate
reviewId, rating, title, pros, cons, date, reviewer name, industry, company size, time used, frequency, incentive100%
easeOfUseRating, featuresRating100%
customerServiceRating88% (some reviewers skip it)
valueForMoneyRating89%
overallComments81%
reasonsForSwitching10% (only reviewers who switched from another tool)
reasonsForChoosing5%
vendorResponseonly when the vendor replied (rare on large products)
all product summary fields100%
sentiment, reviewWordCount, productCategories, productAlternativesUrl10/10 in a 2026-10-29 local run (Slack)

Integrations

  • Google Sheets: download the run as CSV or Excel from the Output tab, or send every run to a sheet with Make, n8n or Zapier (below). Useful columns: productName, rating, date, title, pros, cons, reasonsForSwitching, reviewerIndustry, reviewerCompanySize.
  • Make: Apify app > "Run an Actor" (actor rel8ble/capterra-reviews-scraper, wait for finish on) > "Get Dataset Items" > Google Sheets, Airtable or your CRM.
  • n8n: Schedule Trigger > HTTP Request (POST https://api.apify.com/v2/acts/rel8ble~capterra-reviews-scraper/run-sync-get-dataset-items with header Authorization: Bearer <token> and your input as the JSON body) > Google Sheets "Append or update row" matched on reviewId. The official Apify node (@apify/n8n-nodes-apify) works too. A ready-to-import workflow is in the GitHub repo below.
  • Zapier: Apify app > "Run Actor" action, or the "Finished Actor Run" trigger on a scheduled run > "Fetch Dataset Items".
  • API: one call runs the actor and returns the data (?format=csv or json): curl -X POST "https://api.apify.com/v2/acts/rel8ble~capterra-reviews-scraper/run-sync-get-dataset-items?format=csv" -H "Authorization: Bearer <YOUR_APIFY_TOKEN>" -H "Content-Type: application/json" -d '<input JSON>' or use the official Python and JavaScript clients (apify-client).
  • Schedules and webhooks: run it daily or weekly from Apify Schedules, and get a webhook when a run finishes.
  • MCP for AI agents: the Apify MCP server (https://mcp.apify.com) lets Claude, ChatGPT, Cursor and other agents call this actor as a tool.

Limits (read before large runs)

  • Coverage is the Software Advice catalog. Most Capterra products are on it: Slack, Asana, Jira, monday.com, Notion, QuickBooks Online, Docusign, Canva, Shopify, Microsoft Teams and Google Workspace all worked in testing. A few big vendors aren't listed there, for example Salesforce Sales Cloud, HubSpot CRM, Zendesk and Mailchimp. Those products come back as "product not found" with a list of close matches, and you're not charged.
  • Product names are matched exactly, never guessed. "Salesforce" won't silently turn into "Salesforce Backup". If a name isn't found, the log and RUN_SUMMARY suggest the closest product URLs. URLs are always the most reliable input.
  • Reviewer job titles aren't included, because the source doesn't publish them. You get industry and company size instead.
  • Reviewer names are first name + last initial, the way Capterra displays them. Anonymous reviewers come back as "Anonymous".
  • Review sources: almost all reviews are Capterra-collected. Some older ones come from GetApp or Software Advice (reviewSource tells you which).

How it works (for developers)

Software Advice is a Next.js app. The first page of a product's reviews is embedded in the HTML as React Server Components "flight" data. Further pages, sorting and filters go through the site's getReviewsPaginated server action, which returns 25 reviews per call. The scraper reads the action ID from the site's own JavaScript at run time, so it keeps working after the site redeploys. If the action can't be found, it falls back to plain ?page=N URLs (recommended order only). The flight parser handles text rows with UTF-8 byte lengths and resolves $ref links, and every field is read defensively.

Run it locally:

npm install
npm test # parser tests on saved fixtures
APIFY_LOCAL_STORAGE_DIR=./storage node src/main.js # input in storage/key_value_stores/default/INPUT.json