Software Reviews Scraper
Pricing
from $0.84 / 1,000 review scrapeds
Software Reviews Scraper
Scrape B2B software reviews from Capterra, Software Advice and GetApp into one schema: pros, cons, five sub-ratings, reviewer job title, industry and company size, vendor replies and incentive flags. Export data, run via API, schedule runs, or integrate with other tools or AI workflows.
Pricing
from $0.84 / 1,000 review scrapeds
Rating
0.0
(0)
Developer
Matvey
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 hours ago
Last modified
Categories
Share
Scrape B2B software reviews from Capterra, Software Advice, GetApp and TrustRadius and get every source back in the same fields. Pros and cons as separate columns, five sub-ratings, reviewer job title, industry and company size, vendor replies, incentive flags and the exact publication date. No login, no cookies, no API key.
What is Software Reviews Scraper?
Software Reviews Scraper is a software review API for four review sites: Capterra, Software Advice, GetApp and TrustRadius. Give it a product name or a product page, and it returns one row per review plus one summary row per product.
Most review scrapers cover a single site and invent their own field names, so comparing a product across two sites means writing a translation layer first. This Actor normalises everything: a review from Capterra and a review from Software Advice arrive with identical keys, so overallRating means the same thing wherever the row came from.
| What you give it | What you get back |
|---|---|
A product name, such as Slack | The matching product on each site you pick, with its reviews |
| A Capterra product URL | Every review, newest first, with pros, cons and sub-ratings |
| A Software Advice product URL | The same fields, same names |
| Several products at once | One dataset you can group by product and by site |
| A rating or date filter | Only the reviews you asked for |
Which review sites are supported?
| Site | Reviews available | Rating scale | Notes |
|---|---|---|---|
| Capterra | Full history, 25 per page | 1-5 | Richest source: sub-ratings, alternatives considered, switching reasons |
| Software Advice | Full history, 25 per page | 1-5 | Adds usage frequency and length of use |
| TrustRadius | Full history, 10 per page | 1-10 | Longest review text, plus reviewer company, department and years of experience |
| GetApp | The review showcase the page publishes (about 6) | 1-5 | Product ratings and totals are complete |
Capterra, Software Advice and GetApp run on one review database, so a review carries the same reviewId wherever it appears โ useful for de-duplicating across those three. TrustRadius is a separate site with its own reviewers.
Ratings on two different scales
TrustRadius rates out of 10 while the other three rate out of 5. Both numbers are returned: overallRating keeps the site's own scale, ratingScale says which scale that is, and normalizedRating converts everything to 1-5 so a sort or an average across sites means something. Rating filters work on the normalized value, so maxRating: 3 returns the same band of unhappy customers on every site.
What data can Software Reviews Scraper extract?
| Field | Type | Example |
|---|---|---|
source | string | capterra |
sourceLabel | string | Capterra |
productName | string | Slack |
productUrl | string | https://www.capterra.com/p/135003/Slack/reviews/ |
productRating | number | 4.4642 |
productReviewCount | integer | 11145 |
reviewId | string | Capterra___7189737 |
title | string | Slack: Essential for Desk Based Workforces |
publishedAt | string | 2026-07-25 |
overallRating | number | 5 |
easeOfUseRating | number | 5 |
functionalityRating | number | 5 |
valueForMoneyRating | number | 4 |
customerSupportRating | number | 5 |
recommendationScore | number | 10 |
pros | string | Slack is the best way for a desk based workforce to communicateโฆ |
cons | string | Occasionally there will be a bugโฆ |
comments | string | I love Slack and could not run my business without itโฆ |
adviceToOthers | string | Start with fewer channels than you think you need. |
reviewerName | string | Richard M. |
reviewerJobTitle | string | Founder |
reviewerIndustry | string | Marketing and Advertising |
reviewerCompanySize | string | Self-employed |
reviewerCompanySizeCode | string | C |
reviewerCompany | string | SDLC Corp |
reviewerDepartment | string | Information Technology |
reviewerYearsExperience | integer | 4 |
ratingScale | integer | 10 |
normalizedRating | number | 4.5 |
reviewUrl | string | https://www.trustradius.com/reviews/slack-2026-08-05-00-29-43 |
reviewerVerified | boolean | true |
timeUsed | string | Less than 2 years |
usageFrequency | string | Daily |
incentivized | boolean | false |
incentiveType | string | NominalGift |
vendorResponse | string | Thanks for the detailed feedbackโฆ |
reasonsForChoosing | string | Price and integrations |
alternativeProducts | array | ["Microsoft Teams", "Discord"] |
switchedFrom | array | ["Skype"] |
ratingBreakdown | object | {"5": 17379, "4": 5725, "3": 911} (product rows) |
status / errorCode / errorMessage | string | ok, or why a URL failed |
scrapedAt | string | 2026-09-05T04:20:11+00:00 |
A note on company size
Capterra publishes a readable range such as 11-50 employees, which lands in reviewerCompanySize. Software Advice and GetApp publish a single letter (A to I) instead, and neither site publishes what those letters mean. Rather than guess, the Actor passes the letter through in reviewerCompanySizeCode and leaves reviewerCompanySize empty. Nothing is invented.
How much does it cost to scrape software reviews?
Pay-per-event pricing, so the bill follows the rows you keep.
| Event | Price | When it is charged |
|---|---|---|
| Review scraped | $0.0012 | Per review written to the dataset |
| Product scraped | $0.003 | Per product summary row |
Failed URLs are never charged. A dead link, a page that does not exist, or a site that refuses the request comes back as an error row at no cost.
| Job | Cost |
|---|---|
| 1,000 reviews for one product | $1.20 |
| 10,000 reviews across 10 products | $12.03 |
| 200 recent reviews for 25 competitors | $6.08 |
| Product ratings only, 100 products | $0.30 |
Comparable single-site review Actors charge between $0.90 and $5.49 per 1,000 reviews. This one sits near the bottom of that range while covering three sites in one schema. There are no proxy costs: pages are fetched over plain HTTPS.
The Apify Free plan includes $5 of monthly usage, which is about 4,000 reviews before you pay anything.
How to scrape Capterra reviews
- Click Try for free and sign in to Apify.
- Paste one or more product URLs into Product review URLs. A plain product link works; the reviews path is added for you.
- Set Max reviews per product. Reviews come newest first, so 200 gives you the most recent 200.
- Optionally set a rating or date filter โ
maxRating: 3collects complaints only. - Press Start, then open the Output tab or export as JSON, CSV or Excel.
โฌ๏ธ Input

{"searchTerms": ["Slack", "Asana"],"searchSites": ["capterra", "trustradius"],"maxReviews": 200,"includeProductRow": true}
Searching by product name
Put product names in ๐ Product names and skip the URL hunt. Each name is looked up on
every site in Sites to search, and the best match is scraped โ so Slack returns the
Slack reviews from Capterra and from TrustRadius in one dataset, ready to compare.
Matching prefers products whose name carries the words you typed, then the one with the
most reviews, which keeps integrations and add-ons from stealing the slot: Zoom resolves
to Zoom Workplace and its 14,000 reviews, not to a small app called ZooM. Every row that
came from a search carries the searchTerm it was found by.
Raise Products per name above 1 to pull the closest alternatives alongside the product itself โ a quick way to build a category comparison from a single keyword.
GetApp has no search page of its own and its URLs need a category that no other site
publishes, so GetApp is reachable by URL only. A name that matches nothing on a site comes
back as an error row naming the site and the term; the other sites still run.
Choosing products
Any product page on the four sites works. These are all valid:
https://www.capterra.com/p/135003/Slack/https://www.capterra.com/p/135003/Slack/reviews/https://www.softwareadvice.com/project-management/slack-profile/reviews/https://www.getapp.com/collaboration-software/a/slack/reviews/https://www.trustradius.com/products/slack/reviews
Sorting what comes back
Sort reviews by orders the rows: newest, oldest, highest or lowest rating, or the order
the site itself published them. It sorts what the run collected โ the sites offer no sort
of their own โ so to control which reviews are collected, use the rating and date filters
below. Asking for maxRating: 2 finds every one- and two-star review by paging until it
has them, which is what a "lowest rating first" sort is usually a proxy for.
Collecting only the reviews you need
minRating and maxRating filter on the overall star rating. publishedAfter and publishedBefore take YYYY-MM-DD dates. Filters are applied while paging, so a run set to 300 complaints keeps reading until it has found 300 or the site runs out of reviews.
Proxies
Not required. The Actor reaches all three sites directly, which is why the price carries no proxy surcharge. The proxy field exists only as a fallback if a site starts refusing your particular runs.
โฌ๏ธ Output

One row per review:
{"rowType": "review","source": "capterra","sourceLabel": "Capterra","productName": "Slack","reviewId": "Capterra___7189737","title": "Slack: Essential for Desk Based Workforces","publishedAt": "2026-07-25","overallRating": 5,"easeOfUseRating": 5,"functionalityRating": 5,"valueForMoneyRating": 5,"customerSupportRating": 5,"recommendationScore": 10,"pros": "Slack is the best way for a desk based workforce to communicate.","cons": "Occasionally there will be a bug or issue, but that is once in a blue moon.","reviewerName": "Richard M.","reviewerJobTitle": "Founder","reviewerIndustry": "Marketing and Advertising","reviewerCompanySize": "Self-employed","reviewerVerified": true,"incentivized": false,"status": "ok","scrapedAt": "2026-09-05T04:20:11+00:00"}
And one summary row per product:
{"rowType": "product","sourceLabel": "Software Advice","productName": "Slack","productRating": 4.6639,"productReviewCount": 24190,"ratingBreakdown": { "5": 17379, "4": 5725, "3": 911, "2": 127, "1": 48 },"ratings": { "overall": 4.6639, "easeOfUse": 4.6114, "customerSupport": 4.4286 }}
Why one schema matters
Run the same product on two sites and the rows line up column for column. Capterra rates Slack 4.46 across 11,145 reviews; Software Advice rates the same product 4.66 across 24,190. That gap is visible in one sort, without reconciling two field naming schemes first.
Error rows
errorCode | Meaning |
|---|---|
unsupported-site | The URL is not one of the three supported sites |
not-found | The product page does not exist |
blocked | The site refused the request; retry, or add a proxy |
http-error | The site answered with an unexpected status |
network-error | The site could not be reached |
Use cases for software review data
Competitor and win-loss research
Pull every review of your competitors, filter to maxRating: 3, and read what their customers complain about. reasonsForSwitching and switchedFrom name the products buyers left behind.
Product feedback and roadmap input
Collect your own reviews with publishedAfter set to the last quarter and group cons by reviewerIndustry or job title to see which segment is unhappy.
Feeding an LLM or a RAG pipeline
Every review arrives as clean text with a date and a rating, which is what a summarisation or sentiment prompt needs. Because pros and cons are separate fields, you can prompt each side independently instead of asking a model to split the text again.
Lead generation and sales research
reviewerJobTitle, reviewerIndustry and the products a reviewer switched away from describe a buying decision already made in public.
Market and category monitoring
Schedule a run weekly across a category, keep the product rows, and track how average ratings and review volumes move over time.
Integrations
- API:
POST https://api.apify.com/v2/acts/lergassy~software-reviews-scraper/runs - Python:
ApifyClient(token).actor('lergassy/software-reviews-scraper').call(run_input={'productUrls': [...]}) - JavaScript:
await client.actor('lergassy/software-reviews-scraper').call({ productUrls: [...] }) - n8n: use the Apify node and set a max total charge so a scheduled run cannot exceed your budget.
- Make, Zapier, Google Sheets, Airtable: map the dataset straight into a sheet or table.
- MCP: available through the Apify MCP server, so Claude, Cursor and other MCP clients can call it as a tool.
- Webhooks: fire a webhook when a run finishes and pass the dataset onward.
๐ค For AI agents and LLM apps
{ "productUrls": ["https://www.capterra.com/p/135003/Slack/reviews/"], "maxReviews": 50 }
- One row per review;
rowTypeseparatesreview,productanderrorrows. - Field names never change between sites, so a prompt written once works for all three.
prosandconsare separate strings โ no text splitting needed.incentivizedflags reviews written in exchange for a gift, which matters when weighing sentiment.- Failed URLs are returned as rows and are never charged, so agent retries stay cheap.
โ FAQ
Is it legal to scrape software reviews?
The Actor reads pages that are public and require no login, and it collects the review text and the reviewer details each site already publishes. How you may store and use that data depends on your jurisdiction and on the sites' terms, so review both before running at scale. This is not legal advice.
Do I need a proxy or an API key?
No. The three sites are reached directly, with no key, cookie or proxy.
How many reviews can I get for one product?
As many as the site publishes. Capterra and Software Advice page through their whole history 25 reviews at a time; popular products have tens of thousands. GetApp publishes only a short showcase, and the Actor says so in the run log rather than pretending otherwise.
Can I search by product name instead of hunting for URLs?
Yes. Put the names in Product names and pick the sites in Sites to search. Capterra, Software Advice and TrustRadius can all be searched; GetApp needs a product URL because it publishes no search page. Searching costs nothing extra โ you pay for the reviews and product rows you get back.
Does it scrape G2?
No. G2 sits behind a bot-protection service that this Actor deliberately does not try to defeat. Capterra, Software Advice, GetApp and TrustRadius cover the same buyers and are reachable cleanly.
How are TrustRadius scores out of 10 handled?
Both ways. overallRating keeps the 9-out-of-10 the site published, ratingScale records that it was a 10-point scale, and normalizedRating gives you 4.5 so the row lines up with a Capterra review.
Can I get only negative reviews?
Yes: set Maximum star rating to 2 or 3. The Actor keeps paging until it has collected the number you asked for.
Can I use it with the Apify API?
Yes, like any Apify Actor: start a run, then read the dataset.
Can I use it through an MCP server?
Yes, it is exposed through the Apify MCP server as a callable tool.
Why is company size sometimes a single letter?
Because that is what Software Advice and GetApp publish. See the note above โ the letter is passed through untouched rather than guessed at.
How fresh is the data?
Reviews are read live at run time, newest first, so a run reflects the site at that moment.
Your feedback
Missing a field, or a site you need covered? Open an issue on the Issues tab or leave a review โ issues are answered quickly, and requests shape what gets built next.
You might also like
| Actor | What it does |
|---|---|
| Document Text Extractor | PDF, Word, Excel and PowerPoint to Markdown, tables and RAG chunks |
| Email & Phone Verifier | Validate e-mail addresses and phone numbers, find contacts on a website |
| US Business Leads | New business registrations from US state and city registries |
| Agoda Reviews Scraper | Hotel reviews and ratings from Agoda and Booking.com |