GoodFirms Scraper avatar

GoodFirms Scraper

Pricing

from $3.50 / 1,000 companies

Go to Apify Store
GoodFirms Scraper

GoodFirms Scraper

[๐Ÿ’ฐ $3.50 / 1K] Extract company profiles and verified client reviews from GoodFirms โ€” software developers, IT services, marketing agencies, and design firms. Get ratings, hourly rates, team size, location, services, plus full reviews with sub-ratings. Great for B2B lead generation.

Pricing

from $3.50 / 1,000 companies

Rating

0.0

(0)

Developer

SolidCode

SolidCode

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Pull B2B company profiles and their full client-review history from GoodFirms at scale โ€” hourly-rate band, team size, founding year, HQ location, services offered, and every published review with its Overall, Quality, Schedule, and Communication scores. Companies and reviews come back as separate, ready-to-join rows. Built for B2B lead-generation teams, competitive-intelligence analysts, and agencies vetting vendors who need structured software-vendor data and real client feedback without trawling directory pages one at a time.

Why This Scraper?

  • Full client-review history, not just the latest review โ€” collect every published review on a company profile (up to 1,000 per company), where latest-review-only tools throw the rest of the feedback away.
  • Four-dimension scoring on every review โ€” Overall, Quality, Schedule, and Communication ratings (0โ€“5), decoded from GoodFirms' star bars into clean numbers you can average, sort, and benchmark.
  • Reviewer identity on every review โ€” reviewer name, job role, and company, so each review doubles as a qualified B2B contact tied to a real project.
  • Project context per review โ€” the service provided, project cost band, project status, and client industry when the reviewer published them.
  • Full firmographics on every company โ€” hourly-rate band, team-size band, founding year, HQ city and country, plus the complete list of services offered.
  • Company and review split into two clean record types โ€” company rows and review rows in one run, linked by companyName and profileUrl, ready to join straight into a CRM, BI tool, or warehouse.
  • 14 service categories โ€” from Software Development, Artificial Intelligence, and Cloud Computing to SEO, Social Media Marketing, Branding, and UI/UX design.
  • 19-country headquarters filtering โ€” narrow any directory to firms based in the US, UK, India, Germany, UAE, Singapore, and 13 more markets.
  • Precise URL targeting โ€” paste any GoodFirms category listing, country-scoped listing, or company-profile URL and the actor scrapes exactly that, honoring the filters already baked into the link.

Use Cases

Lead Generation

  • Build lists of software and marketing agencies with contact email, phone, and website
  • Turn reviewer name, role, and company into qualified B2B contacts who recently bought services
  • Prioritize outreach by rating, review volume, and hourly-rate band

Competitive & Market Research

  • Track what real clients praise and criticize about a competitor across its full review history
  • Monitor a rival's overall rating and review count over time
  • Size a category by how many firms and reviews exist per service and country

Vendor Due Diligence & Sourcing

  • Shortlist development or design partners by rating, team size, and founding year
  • Read every client review โ€” not just the highlight reel โ€” before signing a vendor
  • Compare Quality, Schedule, and Communication scores side by side across a candidate list

Agency Benchmarking

  • Benchmark your own firm's rating and review breakdown against category peers
  • Spot which services and price bands correlate with the highest client scores
  • Track project cost bands and industries served across a competitive set

Analytics & Data Platforms

  • Feed a structured company-and-review dataset into a BI dashboard or data warehouse
  • Run sentiment analysis on full review text at scale
  • Keep an internal vendor-comparison database current with fresh reviews

Getting Started

Simple โ€” one category

Scrape the top companies in a single service category with their reviews.

{
"category": "software-development"
}

Filtered โ€” category, country, and review cap

Narrow to firms headquartered in one country and cap reviews per company.

{
"category": "mobile-app-development",
"country": "in",
"includeReviews": true,
"maxReviewsPerCompany": 25,
"maxResults": 50
}

Advanced โ€” exact URLs with deep review history

Target specific company profiles and a category listing, and pull up to 100 reviews each.

{
"startUrls": [
"https://www.goodfirms.co/company/openxcell",
"https://www.goodfirms.co/directory/marketing-services/top-digital-marketing-companies"
],
"maxReviewsPerCompany": 100,
"maxResults": 200
}

Company-only โ€” fast and cheap

Turn reviews off for a quick census of company profiles and firmographics.

{
"category": "it-services",
"includeReviews": false,
"maxResults": 100
}

Input Reference

What to Scrape

Pick any combination of URLs and guided filters. Leave everything blank to scrape the top software development companies.

ParameterTypeDefaultDescription
startUrlsarray[]GoodFirms URLs โ€” category listings, country-scoped listings, or individual company profiles (/company/<slug>). Filters already in the URL are used as-is; the most precise way to target exactly what you want.

Filters

ParameterTypeDefaultDescription
categorystring"software-development"Service category to list. 14 options, from Software Development and AI to SEO and Branding. Ignored when you provide URLs.
countrystring"all"Restrict results to firms headquartered in one of 19 countries, or all for the global listing. Some category/country pairs have no dedicated page โ€” the global category listing is used instead.

Reviews

ParameterTypeDefaultDescription
includeReviewsbooleantrueCollect each company's client reviews (overall and sub-ratings, reviewer details, project metadata, date) as separate rows. Turn off for faster, cheaper company-only runs.
maxReviewsPerCompanyinteger10Cap on reviews captured per company. 0 captures every available review, up to a safety ceiling of 1,000 per company. Ignored when reviews are off.

Limits

ParameterTypeDefaultDescription
maxResultsinteger20Cap on total companies collected across all URLs and filters. 0 = no cap (an internal upper limit still applies). Collection stops requesting new listing pages once the cap is reached.

Output

Results come back as two record types in one dataset. Each row carries a recordType field: company rows are the firm profiles, and review rows are individual client reviews linked back to their company by companyName and profileUrl. Use the Companies and Reviews dataset views to see each on its own.

Company (recordType: "company")

{
"recordType": "company",
"name": "OpenXcell",
"profileUrl": "https://www.goodfirms.co/company/openxcell",
"website": "https://www.openxcell.com",
"logo": "https://www.goodfirms.co/uploads/logo/openxcell-logo.png",
"rating": 4.9,
"reviewCount": 76,
"hourlyRate": "$25 - $49 / hr",
"teamSize": "250 - 999",
"foundedYear": "2009",
"description": "OpenXcell is a leading software development company delivering mobile, web, and AI solutions.",
"services": ["Mobile App Development", "Software Development", "Web Development"],
"location": "Milpitas, US",
"address": {
"country": "US",
"region": "California",
"city": "Milpitas",
"postalCode": "95035",
"street": "1968 S Coast Hwy"
},
"offices": [
{"country": "IN", "city": "Ahmedabad", "phone": "+91 79 4004 1994", "email": "sales@openxcell.com"}
],
"phone": "+1 (408) 677-1489",
"email": "sales@openxcell.com",
"socialLinks": {
"linkedin": "https://www.linkedin.com/company/openxcell",
"facebook": "https://www.facebook.com/OpenXcellInc",
"twitter": "https://twitter.com/OpenXcellInc"
},
"sourceUrl": "https://www.goodfirms.co/company/openxcell",
"scrapedAt": "2026-07-16T09:31:00Z"
}

Core & Ratings

FieldTypeDescription
recordTypestringAlways "company" for these rows
namestringCompany display name
profileUrlstringGoodFirms profile URL (join key for reviews)
websitestringCompany's official website
logostringCompany logo image URL
descriptionstringCompany description / tagline
ratingnumberOverall GoodFirms rating (0โ€“5)
reviewCountintegerTotal reviews GoodFirms reports for the company

Firmographics

FieldTypeDescription
hourlyRatestringHourly-rate band (e.g. "$25 - $49 / hr")
teamSizestringEmployee-count band (e.g. "250 - 999")
foundedYearstringYear the company was founded
servicesarrayService focus areas the company offers

Location & Contact

FieldTypeDescription
locationstringHQ summary (city, country)
addressobjectHeadquarters country, region, city, postalCode, street
officesarrayAdditional office locations with city, phone, and email when listed
phonestringPrimary contact phone
emailstringPrimary contact email
socialLinksobjectlinkedin, facebook, twitter, instagram profile links when present
sourceUrlstringThe URL this company was scraped from
scrapedAtstringISO-8601 collection timestamp

Review (recordType: "review")

Present only when includeReviews is on. Each review is its own row.

{
"recordType": "review",
"companyName": "OpenXcell",
"profileUrl": "https://www.goodfirms.co/company/openxcell",
"title": "A reliable long-term development partner",
"body": "OpenXcell delivered our mobile app on schedule and communicated clearly throughout the engagement.",
"rating": 5,
"qualityRating": 5,
"scheduleRating": 4.8,
"communicationRating": 5,
"reviewerName": "Candice Claassen",
"reviewerRole": "Co-founder",
"reviewerCompany": "SixClicks",
"projectService": "Mobile App Development",
"projectStatus": "Completed",
"projectIndustry": "Information Technology",
"projectCost": "$10,001 to $50,000",
"reviewDate": "14 November, 2025",
"scrapedAt": "2026-07-16T09:31:00Z"
}

Review & Ratings

FieldTypeDescription
recordTypestringAlways "review" for these rows
companyNamestringLinks back to the parent company's name
profileUrlstringLinks back to the parent company's profileUrl
titlestringReview headline
bodystringFull review text
ratingnumberOverall star rating for this review (0โ€“5)
qualityRatingnumberQuality sub-rating (0โ€“5)
scheduleRatingnumberSchedule & timing sub-rating (0โ€“5)
communicationRatingnumberCommunication sub-rating (0โ€“5)
reviewDatestringDate the review was posted
scrapedAtstringISO-8601 collection timestamp

Reviewer & Project

FieldTypeDescription
reviewerNamestringReviewer's name
reviewerRolestringReviewer's job title / role
reviewerCompanystringReviewer's own company
projectServicestringThe service the reviewer's project used
projectStatusstringProject status (e.g. "Completed") when published
projectIndustrystringReviewer's industry when published
projectCoststringProject cost band when published

Tips for Best Results

  • Turn off includeReviews for a quick company census โ€” you get every firm's name, rating, hourly-rate band, team size, founding year, and contacts without paying for individual reviews.
  • Cap maxReviewsPerCompany on popular firms โ€” top agencies carry hundreds of reviews; set a cap (reviews are collected in the order GoodFirms lists them) to keep a run predictable, or set 0 to pull the full history.
  • Paste a company-profile URL for pinpoint targeting โ€” a /company/<slug> URL skips the directory and goes straight to the exact firm you want.
  • Country filtering only applies to four categories โ€” Software Development, Digital Marketing, Web Design, and Mobile App Development have dedicated country pages; for any other category the country is ignored and the global listing is used. Use startUrls if you need a country facet the dropdown can't reach.
  • Combine dropdown filters and startUrls in one run โ€” sweep a whole category and hit a specific watchlist of profiles at the same time.
  • Work each record type in its own tab โ€” the Companies and Reviews dataset views keep firm profiles and individual reviews cleanly separated for export.
  • Project cost, status, and industry are optional โ€” reviewers don't always publish them, so treat those review fields as nullable in your pipeline.

Pricing

From $3.50 per 1,000 companies (plus $0.50 per 1,000 reviews) at the Gold tier โ€” a transparent, results-based price for a fully structured company-and-review dataset. You are charged per company profile plus per review collected, so reviews are optional and far cheaper than the company row.

Price per event by discount tier

EventNo discountBronzeSilverGold
Company (per 1,000)$4.20$3.95$3.75$3.50
Review (per 1,000)$0.60$0.56$0.53$0.50

Example run cost (Gold tier)

ScenarioCompaniesReviewsApprox. total
Company-only census1000โ‰ˆ $0.35
Small lead pull100 ร— 20 reviews2,000โ‰ˆ $1.35
Category sweep1,000 ร— 25 reviews25,000โ‰ˆ $16.00
Large dataset10,000 ร— 20 reviews200,000โ‰ˆ $135.00

No compute or time-based charges โ€” you pay per result, plus a small fixed per-run start fee. A "result" is a company profile row or a review row. The four discount tiers โ€” No discount, Bronze, Silver, and Gold โ€” apply automatically through Apify's loyalty program, so larger and longer-term usage costs progressively less.

Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

  • Zapier / Make / n8n โ€” Workflow automation
  • Google Sheets โ€” Direct spreadsheet export
  • Slack / Email โ€” Notifications on new results
  • Webhooks โ€” Trigger custom APIs on run completion
  • Apify API โ€” Full programmatic access

This actor collects publicly available information from GoodFirms. Use it responsibly and in compliance with GoodFirms' terms of service and all applicable laws, including data-protection regulations such as the GDPR and CCPA. Personal data contained in reviews and reviewer profiles must be handled lawfully โ€” obtain a valid legal basis before processing, and respect the rights of the individuals concerned. You are responsible for how you use the collected data; do not use it for spam, harassment, or any unlawful purpose.