BizBuySell Scraper — Business for Sale Listings
Pricing
from $10.00 / 1,000 bizbuysell listing scrapeds
BizBuySell Scraper — Business for Sale Listings
Scrape public BizBuySell business-for-sale listings with asking price, cash flow, revenue, EBITDA, location, category, descriptions, images, and operational details.
Pricing
from $10.00 / 1,000 bizbuysell listing scrapeds
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Collect structured, public business-for-sale listings from BizBuySell. The Actor turns search, category, location, and individual listing pages into normalized deal records for acquisition sourcing, market mapping, comparable research, and AI-agent workflows.
Each dataset item can include the listing title and ID, location, category, asking price, cash flow, EBITDA, gross revenue, real-estate terms, established year, employees, inventory, FF&E, description, detailed public facts, images, and canonical source URL.
Why use this Actor?
BizBuySell pages are browser-rendered and frequently reject generic automated HTTP clients. This Actor uses a Camoufox/Firefox browser profile, bounded concurrency, coherent sessions, and the proxy route selected in the input. It extracts public JSON-LD and visible listing content, deduplicates by listing ID, validates every record before storage, and preserves truthful diagnostics when access is blocked or a query is empty. Owner proxy credentials remain encrypted Actor secrets and are never logged or written to output.
It never logs in, submits an inquiry, reveals paid BizBuySell Edge data, solves a CAPTCHA, or accesses seller/account pages.
Input
| Field | Default | Description |
|---|---|---|
startUrls | All businesses | Public search, location, category, or business-opportunity URLs. |
maxResults | 10 | Strict cap from 1 to 500 on stored and billed listings. |
scrapeDetails | true | Open each public detail page for richer financial and operational fields. |
includeImages | true | Include public listing image URLs. |
maxConcurrency | 2 | Browser concurrency from 1 to 5. |
proxyConfiguration | US residential | Apify or custom proxy configuration. |
Example search input:
{"startUrls": [{ "url": "https://www.bizbuysell.com/florida-businesses-for-sale/" }],"maxResults": 25,"scrapeDetails": true,"includeImages": true,"maxConcurrency": 2,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "US"}}
You can also supply one or more direct public listing URLs. The Actor rejects account, seller, broker, inquiry, and membership URLs before crawling.
Output
One default-dataset item represents one unique public listing:
{"listingUrl": "https://www.bizbuysell.com/business-opportunity/example-auto-repair-shop/2526238/","sourceSearchUrl": "https://www.bizbuysell.com/florida-businesses-for-sale/","listingId": "2526238","title": "Established Auto Repair & Service Shop","location": "Jacksonville, FL","city": "Jacksonville","state": "FL","category": "Auto Repair and Service Shops","askingPrice": 870000,"cashFlow": 290000,"ebitda": null,"grossRevenue": 1335000,"realEstatePrice": 550000,"realEstateIncluded": false,"establishedYear": 1960,"employees": "5 Full-time","inventory": null,"ffe": "$150,000 Included in asking price","businessDescription": "A long-established automotive repair business.","detailedInformation": {"Facilities": "Multiple service bays","Reason for Selling": "Owner retiring"},"imageUrls": ["https://images.bizbuysell.com/shared/listings/example-W768.webp"],"scrapedAt": "2026-09-04T12:00:00.000Z"}
Undisclosed or unavailable fields are null, not invented. The OUTPUT key-value record separately reports DATA, EMPTY, BLOCKED, or REJECTED, plus request failures, warnings, delivered records, and confirmed billing events.
Pay Per Event pricing
| Event | Price |
|---|---|
| Actor start | $0.00005 per GB of run memory (minimum one event) |
| Valid listing stored | $0.01 per listing ($10 per 1,000) |
The primary listing-scraped event is charged only after a unique, schema-valid result is written. A 25-result run therefore has at most $0.25 in listing events, plus the memory-based actor-start event. At scale, 1,000 stored listings cost $10 in listing events. maxResults is enforced across every supplied URL, duplicate ID, retry, and resume.
Reliability and limitations
- BizBuySell can change its markup or access policy. The Actor retries failures a bounded number of times, retires challenged sessions, preserves partial valid results, and writes actionable warnings to
OUTPUT. - Detail enrichment is best effort. If a search card is public but its detail page is unavailable or no longer exposes usable fields, the Actor stores the validated search-card record and reports the fallback in
OUTPUTinstead of hanging or losing the result. - A successful container with zero records is not presented as a successful data scrape. Expected no-match searches return
EMPTY; systemic Akamai, verification, or rate-limit responses returnBLOCKEDwith zero listing charges. - Search pages currently expose a finite result window. For broad collection, provide focused category/location URLs or multiple public search URLs; all results are deduplicated globally.
- Public listing statements are supplied by sellers or representatives and are not independently verified by BizBuySell or this Actor. Treat financial figures as leads for due diligence, not investment advice.
- Accessing a public page does not automatically grant every reuse. You are responsible for following BizBuySell terms, applicable laws, rate limits, and any required permissions. Do not use the Actor for spam, prohibited profiling, credit/eligibility decisions, or attempts to identify confidential sellers.
AI agent usage
For a compact agent call, set scrapeDetails and includeImages to false, then request a small maxResults. For diligence-oriented screening, enable detail pages and inspect askingPrice, cashFlow, grossRevenue, detailedInformation, and sourceSearchUrl. Always read the OUTPUT summary so an empty or blocked run is not mistaken for a market with no opportunities.