BizBuySell Scraper & Price Drop Alerts
Pricing
from $20.00 / 1,000 monitor runs
BizBuySell Scraper & Price Drop Alerts
[🔔 Price-drop alerts] Track BizBuySell businesses for sale and detect new listings, price drops and financial updates. Get asking price, cash flow, revenue and broker details where available. Save a search and schedule repeat checks.
Pricing
from $20.00 / 1,000 monitor runs
Rating
0.0
(0)
Developer
Fetch Finch
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
11 days ago
Last modified
Categories
Share
Track BizBuySell Businesses for Sale
BizBuySell Scraper & Price Drop Alerts
Find business-acquisition opportunities and see what changed since your last BizBuySell search.
This unofficial monitor turns a recurring BizBuySell search into a persistent alert feed. It detects new listings, asking-price changes, newly disclosed financials, and other listing updates, then returns structured JSON that can be sent to a spreadsheet, CRM, Slack, webhook, or data warehouse.
This Actor is not affiliated with, sponsored by, or endorsed by BizBuySell. It uses publicly available listing data, which may be incomplete, delayed, changed, or temporarily unavailable.
Try a ready-made example
California BizBuySell Deal Alerts
The example watches one California search, excludes franchises, enriches listing details, and emits new-listing and change events.
Quick start
- Enter one BizBuySell search URL.
- Choose a stable, unique
monitorKey(for example,california-hvac). - Run the Actor once, then schedule it daily or weekly with the same configuration.
- Use the dataset output or connect the run to your automation tool.
Example input:
{"startUrls": [{ "url": "https://www.bizbuysell.com/california-businesses-for-sale/" }],"monitorKey": "california-acquisitions","maxItems": 25,"maxPagesPerUrl": 1,"enrichDetails": true,"excludeFranchises": true,"firstRunBehavior": "emit_all_as_new","eventTypes": ["NEW_LISTING","PRICE_DROP","PRICE_INCREASE","FINANCIALS_CHANGED","LISTING_UPDATED"],"sourceMaxTotalChargeUsd": 1}
Use a different monitorKey for each state, geography, or materially different filter set. Do not run the same key concurrently.
What the Actor detects
| Event | Meaning |
|---|---|
NEW_LISTING | The listing was not in this monitor's saved history. |
PRICE_DROP / PRICE_INCREASE | The numeric asking price changed. |
FINANCIALS_CHANGED | Cash flow, revenue, or EBITDA changed or was newly disclosed. |
LISTING_UPDATED | Another tracked public field changed. |
NO_LONGER_IN_RESULTS | The listing was absent for the configured number of snapshots. This is not proof that it sold. |
UNCHANGED | Optional output for listings with no detected change. |
The first run can either emit current listings as NEW_LISTING events or quietly save a baseline with firstRunBehavior: "baseline_only". Later runs emit only selected event types. detectMissing is off by default because partial or re-sorted result windows can create false disappearance alerts.
Input options
| Input | Purpose |
|---|---|
startUrls | One BizBuySell state or national search URL. |
monitorKey | Persistent history key; keep it unchanged between scheduled runs. |
maxItems, maxPagesPerUrl | Control snapshot size, depth, runtime, and source cost. |
enrichDetails | Collect seller-disclosed financials, rent, inventory, employees, and other detail fields. |
includeBrokerContacts | Include publicly displayed broker fields when enrichment is enabled. |
minAskingPrice, maxAskingPrice | Apply an asking-price range. |
includeKeywords, excludeKeywords | Match terms against title, description, and location. |
minDealScore, minScoreConfidence | Emit only listings meeting a transparent screening threshold and evidence level. |
excludeFranchises | Exclude franchise opportunities; enabled by default. |
firstRunBehavior | Emit the first snapshot or save it as a quiet baseline. |
eventTypes, minPriceDropPercent | Choose event types and suppress small price drops. |
emitUnchanged | Include unchanged listings in the output. Off by default. |
detectMissing, missingAfterRuns | Opt in to consecutive-miss alerts for stable, complete searches. |
sourceMaxTotalChargeUsd | Maximum charge allowed for the upstream extraction run. |
Advanced replay/testing inputs include sourceDatasetId, which reads an existing Apify dataset instead of calling the default source. resetState, allowEmptySnapshot, and includeRawSource should normally remain off.
Output
Each emitted item includes the event, listing identity, title, URL, location, asking price, source timestamps, and change details. When available it also includes cash flow, gross revenue, EBITDA, inventory, rent, employees, broker fields, dealScore, and scoreConfidence.
Example:
{"eventType": "PRICE_DROP","monitorKey": "california-acquisitions","listingId": "2508641","title": "Profitable HVAC Company with Seller Financing","url": "https://www.bizbuysell.com/business-opportunity/profitable-hvac-company/2508641/","askingPriceNumeric": 675000,"previousAskingPriceNumeric": 750000,"priceChangePercent": -10,"cashFlowNumeric": 300000,"dealScore": 86,"scoreConfidence": 100,"changes": [{"field": "askingPriceNumeric","previous": 750000,"current": 675000,"percentChange": -10}]}
The OUTPUT key in the run's default key-value store contains a summary with source counts, rejected records, event counts, and saved-state counts. Source Actor/run/build/dataset identifiers and a source-schema fingerprint are included for provenance.
Deal score
dealScore is a transparent 0–100 screening heuristic based only on seller-disclosed data. It considers asking-price-to-cash-flow, asking-price-to-revenue, cash-flow margin, and visible seller-financing or real-estate signals. scoreConfidence shows how much evidence was available. Missing financial data is never invented, and the score is not a valuation, lending decision, or due-diligence substitute.
Pricing and a worked cost example
Your monitor charges are:
- Monitor run:
$0.02per snapshot - Change event:
$0.005per emitted event
The default source is BizBuySell Business Listings Scraper. It charges a one-time run-start event plus an item-processed event for each extracted listing. Source pricing varies by Apify pricing tier and can change; check the source Actor's pricing page for the current rates. Apify platform usage may also be charged depending on the pricing configuration and resources used.
For example, suppose you run one 25-listing monitor every day for 30 days and it emits 60 change events in total:
| Cost component | Calculation | Example |
|---|---|---|
| Monitor runs | 30 × $0.02 | $0.60 |
| Change events | 60 × $0.005 | $0.30 |
| Your monitor fees | $0.90 | |
| Upstream starts | 30 × source start fee | source-dependent |
| Upstream listings | 750 extracted items × source item fee | source-dependent |
| Platform usage | CPU, storage, transfer, and any configured proxy usage | usage-dependent |
As an illustration only, if the source page currently shows its Free-tier rates of $0.005 per start and $0.000054519 per extracted item, the upstream portion would be 30 × $0.005 + 750 × $0.000054519 = $0.1909. The combined monitor plus upstream example would therefore be about $1.09 before Apify platform usage. Source pricing tiers and platform usage can change, so treat this as a budgeting method rather than a quote.
The 750-item figure is an example (25 listings × 30 checks), not a guaranteed result count. A quiet baseline still calls the source and updates history; with firstRunBehavior: "baseline_only", the initial listings are saved without emitting or charging change-event records. Later changes are charged when they are emitted. Set a maximum cost per run and use maxItems/maxPagesPerUrl to control spend.
Reliability and limitations
- Saved history is retained across scheduled runs for each
monitorKey. - Empty or materially invalid source snapshots fail safely without overwriting good state.
- Duplicate source records are collapsed by listing ID.
- Temporary enrichment gaps preserve the last known value and identify it in
preservedFields. - Source availability depends on BizBuySell and the configured upstream extractor; there is no source SLA.
- Seller-provided financials may be incomplete, stale, rounded, or unaudited.
- A listing leaving the search results does not prove that it sold.
- Review BizBuySell's current terms, robots guidance, and applicable privacy, copyright, and anti-spam rules before use.
Integrations
Use Apify schedules, webhooks, Make, Zapier, n8n, Slack, email, Google Sheets, Airtable, or a CRM to consume the dataset and event feed. Use listingId as the stable upsert key.