ConsumerAffairs Reviews Scraper
Pricing
from $4.39 / 1,000 reviews
ConsumerAffairs Reviews Scraper
Scrape ConsumerAffairs reviews for any company: rating, full text, author, location, date, topics, verified badge, and company replies, plus company rating, review count, and profile. Export JSON, CSV, Excel.
Pricing
from $4.39 / 1,000 reviews
Rating
0.0
(0)
Developer
ParseBird
Maintained by CommunityActor stats
1
Bookmarked
3
Total users
2
Monthly active users
3 days ago
Last modified
Categories
Share
ConsumerAffairs Reviews Scraper
Scrape ConsumerAffairs reviews for any company — star rating, full review text, author, location, date, topics, verified badge, and the company's reply — plus each company's overall rating, total review count, and profile. Export to JSON, CSV, or Excel, or use the API.
| Paste ConsumerAffairs company URLs, sort by recent, top, helpful, or oldest, filter by star rating or date, and get every review with full text and company responses — handled behind ConsumerAffairs' PerimeterX bot protection with residential proxies. |
Copy to your AI assistant
Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.
Use the Apify Actor "parsebird/consumeraffairs-scraper" to scrape customer reviews and company profiles from ConsumerAffairs.com. Call it with the ApifyClient: from apify_client import ApifyClient; client = ApifyClient("<APIFY_TOKEN>"); run = client.actor("parsebird/consumeraffairs-scraper").call(run_input={"companyUrls": ["https://www.consumeraffairs.com/insurance/geico.htm", "auto_warranty/carshield"], "maxReviewsPerCompany": 200, "sortBy": "recent"}); reviews = client.dataset(run["defaultDatasetId"]).list_items().items. Key inputs: companyUrls (array of strings, required, full ConsumerAffairs company URLs or paths like "insurance/geico"), maxReviewsPerCompany (integer, default 100, 0 = all), sortBy ("recent" | "top_reviews" | "most_helpful" | "oldest", default "recent"), ratingFilter (array of "1"-"5"), reviewsNewerThan (date "YYYY-MM-DD"), includeCompanyProfile (boolean, default true), maxPagesPerCompany (integer, default 50), maxRequestsPerCrawl (integer, default 1000), proxy (object, default Apify RESIDENTIAL US). Review fields (default dataset): type, companyName, companySlug, companyUrl, category, reviewId, rating, reviewText, authorName, authorLocation, authorImageUrl, publishedDate, publishedDateText, topics, complaintCategory, verified, verifiedLabel, resolutionStatus, companyReply, companyReplyBy, companyReplyDate, companyReplyDateText, reviewUrl, pageNumber, sortBy, scrapedAt. Company profile fields ("companies" dataset of the run): companyName, companySlug, companyUrl, category, categoryUrl, overallRating, totalReviews, ratingDistribution, accredited, logoUrl, popularMentions, companyType, yearFounded, address, city, state, postalCode, country, website, socialMedia. Full API docs: https://apify.com/parsebird/consumeraffairs-scraper/api — get a token at https://console.apify.com/settings/integrations
What is ConsumerAffairs Reviews Scraper?
ConsumerAffairs is a US consumer review platform with more than 3 million consumer reviews of insurers, home warranty providers, auto warranty companies, lenders, retailers, and other businesses. ConsumerAffairs Reviews Scraper turns those review pages into structured data: one row per review, plus one profile per company.
The easiest way to try it: paste a company page such as https://www.consumeraffairs.com/insurance/geico.htm into Company URLs and click Start. ConsumerAffairs has no public reviews API, so this Actor works as a ConsumerAffairs API alternative.
What can ConsumerAffairs Reviews Scraper do?
- 🔗 Scrape any company — paste full URLs (
https://www.consumeraffairs.com/insurance/geico.htm) or short paths (insurance/geico,auto_warranty/carshield) - 📝 Full review text — the complete review, not the truncated preview, with paragraph breaks kept
- 💬 Company replies — the response text, who replied, the reply date, and the resolution status label
- ⭐ Sort and filter like the website — most recent, top reviews, most helpful, or oldest; any combination of 1–5 star ratings
- 📅 Date cut-off for monitoring — collect only reviews newer than a date; with "Most recent" sorting the Actor stops paging once it reaches older reviews
- 🏢 Company profiles — overall rating, total reviews, star breakdown, accreditation, popular mentions, address, website, and social links
- 🛡️ Bot protection handled — ConsumerAffairs uses PerimeterX; the Actor uses residential proxies and switches IP automatically when one is blocked
- ⏱️ Scheduling, API, and integrations — run on a schedule, call it from the Apify API, and send results to Google Sheets, Slack, Make, or Zapier with integrations
What data can you extract from ConsumerAffairs?
Reviews (default dataset):
| Field | Description |
|---|---|
rating | Star rating 1–5 (null when ConsumerAffairs shows no stars, mostly on older reviews) |
reviewText | Full review text |
authorName / authorLocation | Reviewer name and city, state |
publishedDate / publishedDateText | Review date as YYYY-MM-DD and as shown on the site |
topics / complaintCategory | Topic tags such as Customer Service, Billing, Price (list and comma-separated text) |
verified / verifiedLabel | Whether the review carries a verified badge, e.g. "Verified purchase" |
resolutionStatus | Resolution label when shown, e.g. "Resolution In Progress" |
companyReply / companyReplyBy / companyReplyDate | The company's response, its heading, and its date |
reviewId / reviewUrl | ConsumerAffairs review ID and the company page link with the review's anchor |
companyName / companySlug / companyUrl / category | The company the review belongs to |
Company profiles (companies dataset):
| Field | Description |
|---|---|
overallRating / totalReviews | Average star rating and total review count |
ratingDistribution | Number of reviews for each star rating |
accredited | Whether the company is ConsumerAffairs accredited |
popularMentions | Topics ConsumerAffairs highlights for the company |
category / categoryUrl | ConsumerAffairs category |
companyType / yearFounded | Company type and founding year, when listed |
address / city / state / postalCode / country | Company address, when listed |
website / socialMedia / logoUrl | Website, social profiles, and logo |
How to scrape ConsumerAffairs reviews
- Open ConsumerAffairs Reviews Scraper in Apify Console and click Try for free (an Apify account is required).
- Find the company on consumeraffairs.com and copy the page address, e.g.
https://www.consumeraffairs.com/insurance/geico.htm. - Paste one or more addresses into Company URLs.
- Set Max reviews per company (
0for all), and optionally a sort order, star ratings, or a Reviews newer than date. - Click Start.
- Download reviews from the Output tab in JSON, CSV, Excel, HTML, or XML. Company profiles are in the run's
companiesdataset (Storage tab).
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
companyUrls | string[] | Yes | — | ConsumerAffairs company URLs or paths, e.g. insurance/geico or https://www.consumeraffairs.com/auto_warranty/carshield.html |
maxReviewsPerCompany | integer | No | 100 | Maximum reviews per company. 0 = all reviews |
sortBy | string | No | recent | recent, top_reviews, most_helpful, or oldest |
ratingFilter | string[] | No | all | Star ratings to keep, e.g. ["1", "2"] |
reviewsNewerThan | string | No | — | Keep only reviews published on or after this date (YYYY-MM-DD) |
includeCompanyProfile | boolean | No | true | Save one profile per company to the companies dataset |
maxPagesPerCompany | integer | No | 50 | Safety cap on review pages per company (1–500) |
maxRequestsPerCrawl | integer | No | 1000 | Safety cap on page requests for the whole run, including retries |
debugSaveHtml | boolean | No | false | Save raw page HTML to the key-value store for debugging |
proxy | object | No | Apify RESIDENTIAL (US) | Proxy settings. Residential proxies are recommended; datacenter IPs are blocked by PerimeterX |
Example inputs
The 100 most recent reviews for two companies:
{"companyUrls": ["https://www.consumeraffairs.com/insurance/geico.htm","auto_warranty/carshield"],"maxReviewsPerCompany": 100}
Every 1- and 2-star review for American Home Shield:
{"companyUrls": ["insurance/am_home"],"ratingFilter": ["1", "2"],"maxReviewsPerCompany": 0,"maxPagesPerCompany": 500}
Weekly monitoring of new reviews (schedule this run):
{"companyUrls": ["insurance/geico", "homeowners/choice_home_warranty"],"sortBy": "recent","reviewsNewerThan": "2026-10-01","maxReviewsPerCompany": 0}
Output example
Review:
{"type": "review","companyName": "CarShield","companySlug": "auto_warranty/carshield","companyUrl": "https://www.consumeraffairs.com/auto_warranty/carshield.html","category": "Extended Auto Warranties","reviewId": "14064982","rating": 5,"reviewText": "Enrolling with CarShield was easy. The initial price was good, but it's still a hardship this day and age to pay that price every month. But it will take care of parts in the car that break down. That's the biggest benefit of having that financial backup. Get it. It's worth the sacrifice.","authorName": "Ciello","authorLocation": "Miami, FL","authorImageUrl": null,"publishedDate": "2026-10-01","publishedDateText": "Oct. 1, 2026","topics": ["Price", "Maintenance", "Staff", "Rates"],"complaintCategory": "Price, Maintenance, Staff, Rates","verified": true,"verifiedLabel": "Verified purchase","resolutionStatus": null,"companyReply": "Thank you for the recommendation, Ciello! We’re happy that signing up was easy and that your coverage gives you added reassurance. We also hear your concerns about the monthly cost, and you’re welcome to contact us to review any options available for your budget.","companyReplyBy": "Response from CarShield","companyReplyDate": "2026-10-02","companyReplyDateText": "Oct. 2, 2026","reviewUrl": "https://www.consumeraffairs.com/auto_warranty/carshield.html#review-14064982","pageNumber": 1,"sortBy": "recent","scrapedAt": "2026-10-11T05:11:32.490Z"}
Company profile:
{"type": "company","companyName": "CarShield","companySlug": "auto_warranty/carshield","companyUrl": "https://www.consumeraffairs.com/auto_warranty/carshield.html","category": "Extended Auto Warranties","categoryUrl": "https://www.consumeraffairs.com/auto_warranty/","overallRating": 4.07,"totalReviews": 10637,"ratingDistribution": { "5": 7698, "4": 760, "3": 451, "2": 271, "1": 1457 },"accredited": true,"logoUrl": "https://cdn-mediahub.consumeraffairs.com/carshield_high_png_14rwqlp/o/130/x.webp","popularMentions": ["Staff", "Customer Service", "Coverage", "Tech", "Price", "Punctuality & Speed"],"companyType": "Private","yearFounded": 2005,"address": "333 Mid Rivers Mall Dr","city": "Saint Peters","state": "MO","postalCode": "63376","country": "United States","website": "https://carshield.com","socialMedia": {"facebook": "https://www.facebook.com/carshield","twitter": "https://twitter.com/carshield","linkedin": "https://www.linkedin.com/company/carshield","youtube": "https://www.youtube.com/channel/UCj_zlCEXStYHykMV6WfUZ5Q"},"scrapedAt": "2026-10-11T05:11:31.154Z"}
Use ConsumerAffairs Reviews Scraper through the API
Python (apify-client):
from apify_client import ApifyClientclient = ApifyClient("<APIFY_TOKEN>")run = client.actor("parsebird/consumeraffairs-scraper").call(run_input={"companyUrls": ["insurance/geico", "auto_warranty/carshield"],"maxReviewsPerCompany": 200,"sortBy": "recent",})for review in client.dataset(run["defaultDatasetId"]).iterate_items():print(review["companyName"], review["rating"], review["publishedDate"], review["reviewText"][:80])
JavaScript (apify-client):
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<APIFY_TOKEN>' });const run = await client.actor('parsebird/consumeraffairs-scraper').call({companyUrls: ['insurance/geico', 'auto_warranty/carshield'],maxReviewsPerCompany: 200,sortBy: 'recent',});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach((r) => console.log(r.companyName, r.rating, r.publishedDate));
See the API tab for endpoints and more examples.
Use cases
- Reputation monitoring — track new reviews and ratings for your company or competitors on a schedule
- Customer experience research — find recurring complaints by topic (billing, claims, customer service)
- Competitor benchmarking — compare ratings, rating breakdowns, and reply rates across companies in a category
- Sentiment analysis and AI — feed full review text into NLP models, LLMs, or dashboards
- Response tracking — measure how often and how fast companies reply to reviews
- Market and due-diligence research — review histories for insurers, warranty providers, lenders, and other consumer businesses
How it works
- For each company, the Actor loads the ConsumerAffairs company page and reads the profile: rating, review count, breakdown, and company information.
- It loads the company's review list page by page with your sort order and star filter, exactly as the website does, and stops at the last page.
- Each review is parsed into a row with its full text and company reply, and saved as soon as its page is processed.
- Requests go through residential proxies. When PerimeterX blocks an IP, the Actor switches to a new one and retries.
How much does it cost to scrape ConsumerAffairs reviews?
ConsumerAffairs Reviews Scraper uses pay-per-event pricing: you pay for each review and each company profile saved. Compute and residential proxy costs are included in the event price.
| Event | Free | Bronze | Silver | Gold |
|---|---|---|---|---|
| Review scraped (per 1,000) | $4.99 | $4.79 | $4.59 | $4.39 |
| Company profile scraped (per 1,000) | $1.99 | $1.79 | $1.59 | $1.39 |
For example, 1,000 reviews from one company cost about $5.00 on the Free plan ($4.99 for reviews plus $0.002 for the profile). Apify accounts include monthly platform usage credits, and you can set a maximum spend per run — the Actor stops when the limit is reached.
Is it legal to scrape ConsumerAffairs?
Scraping publicly available data, such as reviews anyone can read without logging in, is generally legal in the US and many other jurisdictions. This Actor only collects data from public ConsumerAffairs pages and does not log in. Reviews include reviewer names and locations, which can be personal data: process it lawfully (for example under GDPR or CCPA) and review ConsumerAffairs' terms before use. Read more in Apify's guide: Is web scraping legal?
Other review scrapers
- Trustpilot Reviews Scraper — company reviews from Trustpilot
- BBB Scraper — Better Business Bureau profiles, ratings, and complaints
- Capterra Review Scraper — software reviews from Capterra
- Clutch.co Reviews Scraper — B2B service provider reviews
- Facebook Page Reviews Scraper — reviews and recommendations from Facebook pages
FAQ
Do I need a ConsumerAffairs account or API key? No. The Actor reads public ConsumerAffairs pages. You only need an Apify account.
How do I find a company's URL?
Search for the company on consumeraffairs.com and copy the address of its review page, e.g. https://www.consumeraffairs.com/insurance/geico.htm. You can also paste just the path (insurance/geico); the .html or .htm ending is optional.
Can I scrape all reviews of a company?
Yes. Set maxReviewsPerCompany to 0 and raise maxPagesPerCompany if needed. Later pages hold up to 150 reviews each. In our tests, all 5,585 listed GEICO reviews were collected in about 2 minutes.
Why do some reviews have rating: null?
ConsumerAffairs doesn't display a star rating on some reviews, mostly older ones. The Actor returns what the page shows rather than guessing.
Why is there no review title?
ConsumerAffairs reviews don't have titles — only the review text. Use topics for a quick summary of what a review is about.
Why aren't dates always in perfect order?
ConsumerAffairs sorts by when a review was created, while the displayed date can differ by a few days. The Actor keeps the site's order. With reviewsNewerThan, it only stops after a whole page has no newer reviews, so these small differences don't cause missed reviews.
Where are the company profiles?
In the run's companies dataset (Storage tab in Console), so review and company rows each get a clean table. Every review row also includes companyName, companyUrl, and category. Set includeCompanyProfile to false to skip profiles.
Why does the Actor use residential proxies? ConsumerAffairs is protected by PerimeterX, which blocks datacenter IPs. Residential IPs work, and the Actor switches IPs automatically when one gets blocked. The proxy cost is included in the price.
Can I schedule runs and get alerts for new reviews?
Yes. Schedule the Actor with sortBy: "recent" and reviewsNewerThan, then connect integrations like Slack, Google Sheets, or Zapier.
Can I use it with AI agents? Yes. Copy the AI assistant block above into ChatGPT, Claude, or Cursor, or connect the Actor through the Apify MCP server.
Found a bug or need a new field? Open an issue on the Actor's Issues tab — feedback is welcome.