Bbb Scraper | Contacts & Reviews | Better Business Bureau
Pricing
$3.99 / 1,000 results
Bbb Scraper | Contacts & Reviews | Better Business Bureau
Extract structured Better Business Bureau business profiles including emails, social medias, ratings, locations, reviews, complaints and more. Built for due diligence, reputation monitoring, lead enrichment, and production-grade analytics pipelines.
Pricing
$3.99 / 1,000 results
Rating
5.0
(1)
Developer

Fatih Tahta
Actor stats
1
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Bbb Scraper with Contacts & Reviews | Better Business Bureau
Slug: fatihtahta/better-business-bureau-scraper
Overview
Bbb Scraper with Contacts & Reviews collects structured Better Business Bureau business data, including company identity, contact details, location, classification, reputation metrics, and optional review or complaint records. It supports scraping BBB search pages, category pages, and individual business profile URLs so you can build consistent business datasets from one workflow. https://www.bbb.org is a widely used source for business credibility, customer feedback, and accreditation context, making it useful for due diligence and market intelligence. The actor automates repetitive collection tasks and returns analysis-ready JSON records in a consistent shape. This saves time for teams that need reliable, repeatable data refreshes without manual copy-paste work.
Why Use This Actor
- Market research and analytics teams: Track local or category-level business presence, reputation signals, and complaint/review volume for benchmarking and trend analysis.
- Product and content teams: Build location/category directories, comparison pages, and editorial datasets with standardized profile and reputation fields.
- Developers and data engineering teams: Feed BI dashboards, ETL pipelines, CRMs, and enrichment services with structured records that are easy to join and validate.
- Lead generation and enrichment teams: Expand prospect lists with business identity, contact points, website links, and BBB context for qualification.
- Monitoring and competitive tracking teams: Run recurring collections to detect profile changes, ratings movement, and shifts in review or complaint activity.
Input Parameters
Provide any combination of URLs, queries, and filters to control the scope and depth of collection.
| Parameter | Type | Description | Default |
|---|---|---|---|
startUrls | array<string> | One or more BBB URLs to collect from directly. You can mix search results pages, category pages, and individual business profile pages in the same run. | – |
getReviews | boolean | When true, collects customer reviews as separate records linked to each business. Allowed values: true, false. | false |
maxReviewsPerListing | integer | Maximum number of reviews to collect per business when review collection is enabled. Minimum: 1. | 50000 |
getComplaints | boolean | When true, collects complaint records as separate records linked to each business. Allowed values: true, false. | false |
maxComplaintsPerListing | integer | Maximum number of complaints to collect per business when complaint collection is enabled. Minimum: 1. | 50000 |
limit | integer | Maximum number of business records to collect per query/page input scope. Minimum: 10. | 50000 |
proxyConfiguration | object | Optional Apify proxy settings for run stability at larger scale. Default configuration uses Apify Proxy with group RESIDENTIAL. | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]} |
Example Input
{"startUrls": ["https://www.bbb.org/search?find_text=roofing&find_type=Category&page=1","https://www.bbb.org/us/tx/dallas/profile/roofing-contractors/priority-roofing-of-dallas-0875-90719612"],"getReviews": true,"maxReviewsPerListing": 50,"getComplaints": true,"maxComplaintsPerListing": 25,"limit": 1000,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Output
6.1 Output destination
The actor writes results to an Apify dataset as JSON records. And the dataset is designed for direct consumption by analytics tools, ETL pipelines, and downstream APIs without post-processing.
6.2 Record envelope (all items)
Every output item includes the following stable envelope fields:
- type (string, required)
- id (number, required)
- url (string, required)
Recommended idempotency key: record_type + ":" + id.
Use this key for deduplication and upserts when the same entity appears across multiple runs or input URLs.
6.3 Examples
Example: business (record_type = "business")
{"type": "business","id": 910002,"url": "https://www.bbb.org/us/ca/example-town/profile/general-contractor/atlas-urban-builders-1216-910002","record_type": "business","business": {"id": "910002","name": "Atlas Urban Builders Inc.","bbb_profile_id": "73710000_910002","slug": "atlas-urban-builders-1216-910002","years_in_business": 5,"entity_type": "Corporation"},"contact": {"phone": "(323) 555-0199","website": "https://www.atlas-urban-builders.example/","social_media": [{"url": "https://www.facebook.com/atlas.urban.builders","urlType": 703,"label": "Facebook","type": "facebook"},{"url": "https://www.instagram.com/atlas.urban.builders","urlType": 722,"label": "Instagram","type": "instagram"},{"url": "https://www.linkedin.com/company/atlas-urban-builders","urlType": 705,"label": "LinkedIn","type": "linkedin"},{"url": "https://www.twitter.com/atlasurbanbuild","urlType": 704,"label": "Twitter","type": "twitter"},{"url": "https://www.youtube.com/channel/UCEXAMPLE0002","urlType": 706,"label": "YouTube","type": "youtube"}]},"location": {"formatted_address": "3900 Canyon View Blvd PMB 181, Example Town, CA 91600-3709","address_line": "3900 Canyon View Blvd PMB 181","city": "Example Town","state": "CA","postal_code": "91600-3709","coordinates": "34.142044,-118.394341","distance": "2.9 mi","service_areas": ["Example Town, CA"]},"classification": {"trade": "General Contractor","categories": [{"name": "General Contractor","id": "10035-000"},{"name": "Construction Services","id": "10177-000"},{"name": "Home Builders","id": "10078-000"},{"name": "Accessory Dwelling Unit (ADU) Builder","url": "/us/ca/example-town/category/accessory-dwelling-unit-adu-builder"},{"name": "Architectural Designer","url": "/us/ca/example-town/category/architectural-designer"}],"bbb": {"bbb_id": "1216","bbb_name": "BBB of Sample Metro"}},"reputation": {"bbb_rating": "A+","rating_score": 100,"search_score": 16.11,"is_accredited": true,"review_summary": {"suppressReviews": false,"averageOfReviewStarRatings": 5,"displayReviewStarRating": true,"reviewsTotal": 7,"complaintsTotal": 0,"displayAverageOfReviewStarRatings": true,"submitReviewErrorMessage": "Unable to save review. Please try submitting the review again.","totalClosedComplaintsPastThreeYears": 0,"totalClosedComplaintsPastTwelveMonths": 0}},"dates": {"business_started": "2020-03-10T00:00:00","incorporated": "2019-08-20T00:00:00"},"links": {"request_a_quote": "https://www.bbb.org/sample-metro/quote/request-atlas-urban-builders-910002","leave_review": "https://www.bbb.org/us/ca/example-town/profile/general-contractor/atlas-urban-builders-1216-910002/leave-a-review","business_login": "https://www.bbb.org/sample-metro/login"},"crawl_context": {"record_url": "https://www.bbb.org/us/ca/example-town/profile/general-contractor/atlas-urban-builders-1216-910002","source_url": "https://www.bbb.org/search?find_country=USA&find_entity=10126-000&find_text=Roofing+Contractors&find_type=Category&page=1","seed": {"type": "url","value": "https://www.bbb.org/search?find_country=USA&find_entity=10126-000&find_text=Roofing%20Contractors&find_type=Category&page=1"},"scraped_time": "2026-03-01T19:01:07.873706+00:00"}}
Example: review (record_type = "review")
{"type": "review","id": 4656289,"url": "https://www.bbb.org/us/tx/example-city/profile/roofing-contractors/skyline-home-renewal-0875-910001/customer-reviews","record_type": "review","business": {"id": "910001","bbb_id": "0875","profile_url": "https://www.bbb.org/us/tx/example-city/profile/roofing-contractors/skyline-home-renewal-0875-910001","name": "Skyline Home Renewal LLC"},"review": {"id": "0875_910001_4656289","guid": "d3ca5eaf-67be-4fa2-ac77-15c5f8ef0878","author": "A Verified Customer","rating": 5,"text": "Great communication and the roof replacement was completed on schedule.","date": "2025-10-07"},"reviews_page": {"url": "https://www.bbb.org/us/tx/example-city/profile/roofing-contractors/skyline-home-renewal-0875-910001/customer-reviews","page": 1,"page_size": 10,"total_pages": 3,"num_found": 21,"sort": "recent"},"crawl_context": {"record_url": "https://www.bbb.org/us/tx/example-city/profile/roofing-contractors/skyline-home-renewal-0875-910001/customer-reviews","scraped_time": "2026-03-01T19:03:22.119000+00:00"}}
Example: complaint (record_type = "complaint")
{"type": "complaint","id": 23208715,"url": "https://www.bbb.org/us/ca/example-city/profile/solar-installation/aurora-energy-group-1216-100009999/complaints","record_type": "complaint","business": {"id": "100009999","bbb_id": "1216","profile_url": "https://www.bbb.org/us/ca/example-city/profile/solar-installation/aurora-energy-group-1216-100009999","name": "Aurora Energy Group"},"complaint": {"id": "1216_100009999_23208715","type": "Service or Repair Issues","status": "Resolved","date": "2025-04-15","responses": [{"id": "1216_100009999_23208715_0","type": "business","date": "2025-04-21"}]},"complaints_page": {"num_found": 2,"num_hidden": 1,"business_id": "100009999","bbb_id": "1216"}}
Field reference
Business fields (type = "business")
- type (string, required): Record type (
business). - id (number, required): Numeric business identifier.
- url (string, required): Canonical BBB business profile URL.
- business.id (string, required): Business identifier in BBB payload.
- business.name (string, required): Business display name.
- business.bbb_profile_id (string, optional): BBB profile reference.
- business.slug (string, optional): URL slug for the profile.
- business.years_in_business (number, optional): Reported years in operation.
- business.entity_type (string, optional): Legal/business entity type.
- contact.phone (string, optional): Public business phone.
- contact.email (string, optional): Public business email.
- contact.website (string, optional): Business website URL.
- contact.social_media (array