Chamber of Commerce Member Directory & Business Leads Scraper
Pricing
$0.004 / member row
Chamber of Commerce Member Directory & Business Leads Scraper
Export every member of a Chamber of Commerce directory — business, phone, address, website, socials — and optionally the contact email crawled from each member's own site.
Pricing
$0.004 / member row
Rating
0.0
(0)
Developer
ScrapeBench
Maintained by CommunityActor stats
0
Bookmarked
48
Total users
2
Monthly active users
13 days ago
Last modified
Categories
Share
Pain points
- Chamber directories are paginated, one-business-at-a-time pages with no export.
- Building a local B2B lead list means copy-pasting hundreds of member pages by hand.
- Chamber directories rarely list a member email — the one field outreach actually needs is usually missing.
- The raw pages aren't structured for a CRM, outreach tool, or market analysis.
What we solve
- Pull every member of a chamber (or every chamber in a county) in one run.
- Clean, structured rows: business, phone, address, website, categories, socials, reps.
- Optional email enrichment — crawl each member's own website for a real contact email.
- Pay per result; empty and email-less runs don't over-charge.
Summary
Turn a Chamber of Commerce member directory into a structured B2B lead list. One run returns every member — business name, phone, address, website, categories, social links, and listed representatives — straight from the live directory. Flip on contact enrichment and the actor crawls each member's own website for a real email, flagging franchise/corporate addresses so you know what's the local business. Ready for lead generation, CRM import, or local market research.
Who it's for
- B2B sales and lead-gen teams targeting local businesses
- Agencies running local outreach campaigns
- Suppliers, SaaS, and insurers building local prospect lists
- Market researchers profiling a city or county's business base
How to use
Set the input, run the actor, and collect results from the run's dataset (export to JSON/CSV/Excel, or pull via the Apify API). Example input:
{"cities": ["Concord"],"state": "CA","enrichContacts": true,"maxResults": 25}
See Inputs below for every available field.
What you get
One row per record:
| Field | Description |
|---|---|
business_name | Member business name |
chamber_name | Source chamber of commerce |
phone | Business phone |
address | Street address |
city | Business city |
zip_code | ZIP code |
website | Business website |
categories | Chamber category labels |
facebook | Facebook URL |
linkedin | LinkedIn URL |
instagram | Instagram URL |
twitter | Twitter/X URL |
contact_reps | Listed representatives (name, title) |
emails | Emails crawled from the member's website (when enrichContacts is on): {email, source_url, type, confidence} |
email_domain_matches_website | False = franchise/corporate email, not the local business |
enrichment_status | found |
source_url | Chamber member detail page |
Sample:
{"business_name": "A2Z Media Group, LLC","chamber_name": "Concord Chamber of Commerce","phone": "(415) 404-6407","address": "1350 Arnold Dr., Suite 201","city": "Martinez","zip_code": "94553","website": "http://a2zmediagroup.com","categories": ["Marketing/Advertising"],"facebook": "https://www.facebook.com/A2ZMediaGroup/","linkedin": "https://www.linkedin.com/company/a2z-media-group/","contact_reps": [{"name": "Zuleyka Jinks","title": "Owner/Partner"}],"emails": [{"email": "info@a2zmediagroup.com","source_url": "http://a2zmediagroup.com/contact","type": "generic","confidence": "high"}],"email_domain_matches_website": true,"enrichment_status": "found","source_url": "https://business.concordchamber.com/list/member/a2z-media-group-llc-12179"}
Inputs
| Field | Required | Type | Default | Description |
|---|---|---|---|---|
listChambers | no | boolean | false | If true, skip scraping and return the list of chambers this actor can scrape (city, county, chamber name, directory URL). Free — not charged. Use it to see which cities are available, then run again (or loop) with a 'county' or 'cities'. Optionally narrow the list with 'state'/'county'. |
county | no | string | "Contra Costa" | Select every indexed chamber in this county, e.g. 'Contra Costa'. Combine with 'state' to disambiguate. Leave empty if using 'cities' or 'directoryUrls'. |
counties | no | array | ["Contra Costa", "Alameda"] | Select every indexed chamber across several counties in ONE run, e.g. 'Contra Costa' and 'Alameda'. Combined with 'County' if you fill both. Turn on Discovery Mode to see which counties are indexed. |
cities | no | array | [] | Select indexed chambers in these cities, e.g. ['Concord', 'Danville']. Case-insensitive. |
state | no | string | "CA" | Two-letter state code to scope 'county'/'cities' matching, e.g. 'CA'. |
categories | no | array | [] | Keep only members whose chamber category contains any of these terms (case-insensitive substring), e.g. ['insurance', 'marketing']. Empty = all members. |
enrichContacts | no | boolean | false | If true, crawl each member's own website for a contact email (adds the emails / enrichment fields). Off by default — the directory scrape is fast and cheap on its own. Charged only for members where a real email is found. |
maxResults | no | integer | — | Cap on member rows returned across the WHOLE run (all selected chambers combined) — a directory sweep can be large, so this is a spend control. Leave empty to return every member of every selected chamber. |
directoryUrls | no | array | [] | Escape hatch for a GrowthZone/ChamberMaster chamber not yet in the registry. Give the base directory URL, e.g. 'https://business.concordchamber.com'. |
proxyConfiguration | no | object | {"useApifyProxy": false} | Optional. Chamber directories are reachable directly; enable a proxy only if runs return no data because the IP is blocked. |
Pricing (Pay Per Event)
You pay per result (member-row) — no charge for empty runs. Example: 500 chamber members at $0.004/result ≈ $2.00.
One charge per member row; empty runs are free. Contact enrichment (enrichContacts) is included in the per-member price — no extra charge. Illustrative — final per-result prices are set at publish time. Apify platform compute is billed separately per your plan.
Use cases
- Local B2B lead lists — every chamber member in a county, with contact email.
- Agency outreach — pull a chamber, enrich for emails, export to a CRM.
- Market research — profile a local economy by category and geography.
- List enrichment — add website, socials, and email to businesses you already track.
Why this actor
- Bulk export — whole chambers, or several counties at once, not one page at a time.
- The email chambers don't publish — crawled from each member's own site, franchise-flagged.
- Clean, CRM-ready rows straight from the live directory. Pay per result.
Limitations & updates
Covers Chamber of Commerce directories on the GrowthZone/ChamberMaster platform. Email enrichment is best-effort from each member's public website — it finds an address only when the business publishes one, so expect a meaningful share of members to come back without one; social profiles are captured as columns but not crawled for emails.
FAQ
What does one run return?
Every member of the selected chamber(s) — business, phone, address, website, categories, social links, and listed reps. With enrichContacts on, each member's website is crawled for a contact email.
How do I pick which chambers to scrape?
Run with listChambers: true (free) to list the available cities/chambers, then run with a county (all chambers in it) or cities. Advanced: pass a directory URL directly via directoryUrls.
Where do the emails come from?
Chambers don't publish member emails, so the actor crawls each member's own website (homepage + contact/about/team pages) and extracts the contact address, flagging franchise/corporate ones.
How am I charged?
Pay-per-result: one charge per member row, plus a second charge only for members where enrichment finds a real email. Empty and email-less runs don't over-charge.
Which directories are supported?
Chambers on the GrowthZone / ChamberMaster / MicroNet platform (the most common). Seeded with Contra Costa County, CA; more are added over time.
Which actor to choose
Pairs with the standalone contact finder:
- Chamber of Commerce Member Directory & Business Leads Scraper (this actor) — You want a bulk local B2B lead list — every member of a chamber, optionally enriched with emails.
- Business Email, Phone & Contact Details Scraper — You already have a list of business websites (from anywhere) and want their contact details — email, phone, social links and address.
Guides & use cases
Written up on scrapebench.dev — the bench that runs and verifies this actor against the live source every night:
- How-to: How to run Chamber of Commerce Member Directory & Business Leads Scraper
- Use case: All Contra Costa County chamber members
- Use case: Concord Chamber members with contact emails
More actors, coverage and nightly verification results: scrapebench.dev