Daltons Business Scraper - Businesses for Sale UK avatar

Daltons Business Scraper - Businesses for Sale UK

Pricing

from $2.10 / 1,000 listings

Go to Apify Store
Daltons Business Scraper - Businesses for Sale UK

Daltons Business Scraper - Businesses for Sale UK

Scrape UK businesses for sale from Daltons Business: asking price, leasehold or freehold, turnover, net profit, location, business type, staff and full description. Filter by business type, location, keyword or price. Export to Excel, CSV, JSON or API.

Pricing

from $2.10 / 1,000 listings

Rating

0.0

(0)

Developer

Shivam Prajapati

Shivam Prajapati

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Security

Limited permissions

Share

Daltons Business Scraper - Businesses for Sale in the UK

Get UK businesses for sale from Daltons Business, one of the UK's largest business-for-sale marketplaces: about 13,000 listings with asking price, leasehold or freehold, turnover, net profit, location, business type, staff, trading hours and the full description. Filter by 770+ business types, 1,600 locations (towns, counties, Scotland, Wales, Spain ...), keyword or price, and export to Excel, CSV, JSON or the API.

Actively maintained. Last update: 2026-11-04. Every release passes 450+ automated tests on saved Daltons Business pages plus a check against the live site, and Apify test-runs it every day.

What can you use it for?

  • Find a business to buy. Screen restaurants, pubs, care homes, shops, B&Bs or online businesses by location, price and turnover instead of clicking through 650 result pages.
  • Deal sourcing for brokers, investors and search funds. Pull every listing in a sector or region with its financials and send the best ones to your CRM.
  • Valuation research. Compare asking prices with turnover and net profit across thousands of UK small businesses to see what similar businesses sell for.
  • Daily new-listing alerts. Schedule it with Only new listings on: you get (and pay for) only the businesses you haven't had yet, in Google Sheets, Slack or e-mail.

What data do you get?

Fields marked details are filled when Open each listing for full details is on (the default).

FieldWhat it is
listingIdDaltons listing ID, e.g. DB2573832
urlLink to the listing
titleHeadline
statusFor Sale or Under Offer
isFeaturedFeatured (paid placement) on Daltons
isFranchiseOpportunityA franchisor looking for franchisees, not an existing business
labelsAll labels, e.g. "Retirement sale"
priceTypeWhat the price is for: leasehold, freehold or investment
askingPriceAsking price as a number (empty for "Offers invited")
currencyGBP, EUR or USD
priceTextThe price as shown, e.g. "£195,000" or "Offers invited"
annualTurnoverTurnover per year (weekly x 52, monthly x 12)
turnover / turnoverPeriodTurnover as the seller gave it, and its period (annual, monthly, weekly)
annualNetProfitNet profit per year
netProfit / netProfitPeriodNet profit as the seller gave it, and its period
locationLocation as shown, e.g. "Manchester, Greater Manchester, England"
town, county, countryThe same, split up
categoriesBusiness types the listing is filed under (details)
categoryFirst business type (details)
sellerRefThe seller's or broker's own reference (details)
shortDescriptionSummary from the results page
descriptionFull description (details)
locationDetailsExtra location notes (details)
employeesNumber of employees, as written by the seller (details)
tradingHoursTrading hours (details)
supportAndTrainingHandover support offered (details)
leaseholdTermsLease terms: rent, length (details)
otherTermsOther terms of the sale (details)
isRelocatableThe business can be moved (details)
isHomeBasedRun from home (details)
includesAccommodationLiving accommodation included (details)
inAdministrationIn administration or receivership (details)
stockIncludedWhether stock is included, e.g. "Stock at valuation" (details)
imageUrlFirst photo
imageCountNumber of photos (details)
datePublished / dateModifiedWhen the listing was published and last updated, YYYY-MM-DD (details)
hasDetailstrue if the listing page was opened
foundOnThe results page where the listing was found
scrapedAtWhen it was scraped (UTC)

Weekly and monthly figures are converted to yearly ones (annualTurnover, annualNetProfit) so you can sort every listing the same way; the seller's original figure and period are kept next to them.

Privacy

You get business data, not personal data. The scraper never reads the contact form, the "Listed By" broker block or the business's own website address, and it removes any e-mail address, phone number or web link typed into the description (replaced with [removed]). To contact a seller, use the listing url.

Example result

{
"listingId": "DB2573832",
"title": "Long established Thai restaurant in city centre of Manchester",
"status": "For Sale",
"priceType": "leasehold",
"askingPrice": 195000,
"currency": "GBP",
"priceText": "£195,000",
"annualTurnover": 600000,
"location": "Manchester, Greater Manchester, England",
"town": "Manchester",
"county": "Greater Manchester",
"country": "England",
"categories": ["Chinese Restaurants", "Chinese Takeaways", "Fast Food Restaurants", "Restaurants", "Thai Restaurants"],
"employees": "4",
"tradingHours": "11.30-9.30 pm Monday to Sunday",
"leaseholdTerms": "Rent 15900 quarterly End July 2030",
"isRelocatable": false,
"stockIncluded": "Stock at valuation",
"datePublished": "2026-07-14",
"hasDetails": true
}

How to use it

  1. Optionally pick Business types and Locations (or leave both empty for every business, newest first).
  2. Optionally add a Keyword or a price range.
  3. Set Maximum listings, click Start, and download the results.

With several types or locations, every type is searched in every location and Maximum listings is shared fairly between those searches.

Input options

OptionWhat it does
categoriesBusiness types, e.g. Restaurants, Pubs, Nursing & Care Homes (770+, from Daltons' own list)
locationsTowns, counties, regions or countries, e.g. London, Kent, Scotland, Spain
keywordOnly listings whose title or summary contains this word
minPrice / maxPriceAsking price range in £ (listings without a price are kept)
includeFranchisesAlso return new franchise opportunities (franchise resales are always included)
startUrlsDaltons results pages or single listing URLs, scraped as given
includeDetailsOpen each listing for the full set of fields (default on). Turn off for a fast, cheaper run
onlyNewSkip listings that earlier runs of the same search returned: you get and pay only for ones you haven't had (the first run works as usual)
maxItemsStop after this many listings
maxConcurrencyPages loaded at the same time (keep low to be polite)

Fast mode vs. full details

  • Full details (default): opens every listing for all the fields above.
  • Fast mode (includeDetails off): reads only the result pages, about 20x fewer requests. You get title, status, price and price type, turnover and net profit (when shown), location, summary and photo.

How much does it cost?

You pay $3.00 per 1,000 listings returned (plus a tiny $0.00005 per run start). Platform usage is included.

ListingsCost
100$0.30
1,000$3.00
Everything (~13,000 listings)about $39

Apify's free plan gives you $5 of credit every month, which covers about 1,600 listings. Set a spending limit on any run and the scraper stops exactly there.

Use it via API, on a schedule, or with your tools

  • Schedule it daily to catch every new listing (newest come first).
  • Only new listings: turn it on in a scheduled run or task and each run returns only listings you haven't had yet, so you never pay twice for the same listing.
  • Integrations: send results to Google Sheets, Slack, e-mail, Zapier, Make or a webhook.
  • API: run it from your own code and download results as JSON, CSV or Excel.
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("pshivam/daltons-business-scraper").call(run_input={"categories": ["Restaurants"], "locations": ["London"], "maxItems": 100})
for listing in client.dataset(run["defaultDatasetId"]).iterate_items():
print(listing["title"], listing["askingPrice"], listing["annualTurnover"], listing["location"])

Use it in Clay, n8n, Make or Zapier

Actor: pshivam/daltons-business-scraper. Paste this input and change the filters to yours:

{"categories": ["cafes-for-sale"], "onlyNew": true, "maxItems": 500}
  • Clay: create a table from an Apify source to pull in the results of a scheduled run of this Actor (it refreshes every 24 hours by default), or use the Run Apify Actor enrichment and paste the input.
  • n8n: add the Apify node, choose Run Actor and get dataset items, pick this Actor and paste the input.
  • Make: use Run an Actor with Run synchronously on, then Get Dataset Items with the run's dataset ID.
  • Zapier: schedule this Actor in Apify, then use the Finished Actor Run trigger and Fetch Dataset Items. (Zapier stops waiting for Run Actor after 30 seconds, and a run usually takes about a minute.)

Good to know

  • Business type and location filters cost nothing extra: Daltons has a page for each, so the scraper starts there. Keyword and price are checked on each result before a listing is opened, so you only pay for matches.
  • Figures are the seller's own. Some sellers write "N/A" or leave figures out; those fields are then empty.
  • Unknown locations return nothing, never everything. Daltons quietly shows all of the UK for a location it doesn't know; the scraper detects that and returns no results for it instead of wrong ones.
  • Sold or withdrawn listings are skipped and replaced with the next one.

This scraper vs. the alternatives

This scraperCopying from Daltons Business by handBuilding your own scraper
100 listings with full detailsAbout 1 minuteHours (open and copy each page)Days to build, then upkeep
OutputExcel, CSV, JSON or API; 44 fields per listingA spreadsheet you typeWhatever you code
Asking price, turnover, net profitNumbers; weekly or monthly figures converted to yearlyRetyped by handYou write the parsing
Only new listings each dayBuilt in (onlyNew)Compare lists yourselfYou build it
When the site changesWe fix it; Apify test-runs it daily-You fix it
Seller contact detailsRemovedYour responsibilityYour responsibility
Cost$3.00 per 1,000 listingsYour timeYour time plus hosting

FAQ

How many listings are there?

About 13,000 UK businesses for sale, in 770+ business types and 1,600 locations.

How much does it cost?

$3.00 per 1,000 listings (less on paid Apify plans), so 100 listings cost $0.30 and all of about 13,000 cost about $39.

What's the difference between a business for sale and a franchise opportunity?

Businesses for sale are existing businesses (including franchise resales). Franchise opportunities are franchisors looking for new franchisees, with an investment amount instead of an asking price. They are left out unless you turn on Include new franchise opportunities or pick a franchise business type.

This scraper reads public listing pages at a polite speed, follows the site's robots.txt and returns business data with contact details removed. You are responsible for how you use the data; check the site's terms for your use case.

Can I get the seller's contact details?

No. Use the listing url to contact the seller through Daltons.

How do I get only new listings every day?

Save your search as a task, turn on Only new listings and schedule it daily. Each run then skips the listings earlier runs returned, so you get and pay only for ones you haven't had. Tip: set Maximum listings above the number of listings your search has, so the first run gets them all and later runs return just the new ones.

Ready-made examples

Open one, click Try for free, and get data in about a minute:

More business-for-sale scrapers

Other scrapers