TrustRadius Reviews Scraper - Pros, Cons & TrustRadius Score avatar

TrustRadius Reviews Scraper - Pros, Cons & TrustRadius Score

Pricing

$2.99 / 1,000 reviews

Go to Apify Store
TrustRadius Reviews Scraper - Pros, Cons & TrustRadius Score

TrustRadius Reviews Scraper - Pros, Cons & TrustRadius Score

TrustRadius B2B software reviews by product URL or keyword: rating, pros, cons, use case and every public answer, reviewer role and company size (never names), plus TrustRadius Score, review count, vendor and category. No login or cookies. Partial results are marked, never shown as empty.

Pricing

$2.99 / 1,000 reviews

Rating

0.0

(0)

Developer

Lantern Lab

Lantern Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 hours ago

Last modified

Categories

Share

TrustRadius Reviews Scraper

A Lantern Lab Actor. Give it TrustRadius product URLs or product names and get the public B2B software reviews back: rating, title, pros, cons, use case and every other public answer, with the reviewer's job role, department, company size and industry. Each product also gets its TrustRadius Score, published review count, vendor and category. No TrustRadius login, no cookies, no browser.

Price: you pay per review collected. Product rows, status rows and the run summary are free, and so is a URL or search term that finds nothing.

Quick example

Input:

{
"productUrls": ["https://www.trustradius.com/products/slack/reviews"],
"searchQueries": ["hubspot crm"],
"maxReviewsPerProduct": 100,
"sort": "recent"
}

One review row (recordType: "review", shortened):

{
"recordType": "review",
"reviewId": "68dedb3b356a202e1e15e5a4",
"reviewUrl": "https://www.trustradius.com/reviews/slack-2025-10-02-15-06-12",
"productName": "Slack",
"rating": 10,
"title": "Slack review after 4 years",
"pros": "Corporate chat\nCorporate announcements\nTriggered communications",
"cons": "The reply feature: sometimes information get lost and people don't always know how to use it (discoverability problem)\n...",
"text": "- Corporate chat\n - Corporate communication \n- Corporation organization of key documents ...",
"reviewerJobType": "Manager",
"reviewerDepartment": "Product Management",
"companySize": "51-200 employees",
"companyIndustry": "Computer Software",
"yearsExperience": 4,
"publishedAt": "2025-10-16T13:33:57.302Z",
"partial": false,
"collectedAt": "2026-10-23T16:03:38.970Z"
}

One product row (recordType: "product", free):

{
"recordType": "product",
"name": "Slack",
"vendor": "Salesforce",
"category": "Collaboration",
"trScore": 9,
"reviewCount": 642,
"ratingsCount": 10272,
"url": "https://www.trustradius.com/products/slack/reviews",
"reviewsAvailable": 642,
"reviewsReturned": 100,
"partial": false,
"statusText": "Collected 100 review(s) of 642 published."
}

Limits

  • Public data only. The reviewer's name, company name, LinkedIn profile and photo are never collected, even where TrustRadius shows them.
  • Up to 10,000 reviews per product (TrustRadius' own paging limit; the largest product we measured, Miro, has about 6,400).
  • TrustRadius' firewall refuses a search term that looks like a script (for example <script>...). That term is marked partial with blocked, never reported as having no match. Accents, &, quotes and % work.
  • A brand name such as salesforce matches many of that vendor's products equally well. The Actor then takes the one with the most published reviews among the first five equal matches, which is not always the flagship. For a specific product, give its URL.
  • English-language TrustRadius only; it has no other language editions. A search term in another language usually matches nothing, and the run says so.
  • No vendor responses, screenshots, pricing tables or comparison pages.
  • No scheduling or monitoring built in; use Apify schedules.

What it does

  • Accepts product URLs (https://www.trustradius.com/products/<product>/reviews, with or without /reviews, or just the slug) and search terms. A search term collects its best match, or its best few with maxProductsPerQuery.
  • Returns pros, cons and the use-case answer as their own fields, plus sections: every public question the reviewer answered (ROI, alternatives considered, usability, ...) in page order.
  • Deduplicates across the whole run: a product reached by both a URL and a search term is collected once, and a review is written and charged once.
  • Keeps the source identifier (reviewId), the platform's publish and update times (publishedAt, updatedAt) and our collection time (collectedAt) as separate fields.
  • Says what happened to every input and product. A product with no reviews, a URL that is not a product, and a product that was cut short are different records and are never confused: a cut-short product is marked partial: true with the reason.
  • Gets past exit-IP refusals: TrustRadius' Cloudflare refuses some exit IPs outright, mostly datacenter ones. When that happens the run moves to a fresh Apify Proxy session (a new IP) and repeats the request, at most 5 times per request; RUN_SUMMARY.proxySessionRotations says how often. With the proxy turned off there is nothing to rotate, and a refusal is reported as blocked.
  • Caps itself: maxUpstreamRequests is a hard ceiling on requests to TrustRadius for the whole run, derived from your input when you leave it empty, so a run is never unbounded.

Input

FieldDefaultMeaning
productUrls—TrustRadius product URLs or slugs, one per line.
searchQueries—Product names or keywords, one per line. Give at least one URL or one term.
maxReviewsPerProduct100Upper bound on reviews per product. 0 collects only the product profile. Max 10,000.
maxProductsPerQuery1How many best-matching products each search term collects (max 25).
sortrecentrecent, positive (highest rated first) or critical (lowest rated first). Decides which reviews a limit keeps.
maxUpstreamRequestsderivedHard ceiling on requests to TrustRadius for the whole run.
proxyConfigurationApify residential, USThe proxy the requests go through. Residential is what this Actor is measured on; datacenter is cheaper but TrustRadius refuses a varying share of datacenter IPs.

Output

One row per review, recordType: "review", charged:

FieldMeaning
reviewId, reviewUrlTrustRadius' own review ID (the dedupe key) and the public review page.
productId, productName, productSlugThe product reviewed.
ratingOverall rating on TrustRadius' 1-10 scale.
titleThe review headline.
pros, consThe reviewer's Pros and Cons answers.
textThe "Use Cases and Deployment Scope" answer.
sectionsEvery public answer: {question, answer, comment}.
reviewerJobTitle, reviewerJobType, reviewerDepartmentThe reviewer's role, as published. Never the name.
companySize, companyIndustryThe reviewer's company profile, as published. Never the company name.
yearsExperienceYears the reviewer has used the product, when given.
publishedAt, updatedAtWhen TrustRadius published and last updated the review.
partial, partialReasonAlways false / null on a review row: the row exists because the review was collected.
collectedAtOur own collection time.

One row per product, recordType: "product", free: name, vendor, category, trScore (the headline "Score N out of 10"), reviewCount (published full reviews - what this Actor collects), ratingsCount (the headline "N Reviews and Ratings", which also counts rating-only submissions that have no text), likelihoodToRecommend and likelihoodToRecommendCount, url, then reviewsAvailable / reviewsRequested / reviewsReturned / duplicatesSkipped, and partial / partialReason (upstream_request_cap, charge_limit_reached, blocked, upstream_error, not_collected) with statusText.

One row per product URL or search term, recordType: "input_status", free: outcome is found, not_found (no such product, or no search match), invalid_url (not a TrustRadius product URL) or partial, with productSlugs and statusText.

The last row is recordType: "RUN_SUMMARY" — what the inputs resolved to, products and reviews collected and charged, products with no review, partial products by reason, requests sent by endpoint, and why collection stopped. The same object is also in the run's key-value store under RUN_SUMMARY.