Yell.com Scraper [$1.2/1K💰] | UK Leads | Emails & Phones avatar

Yell.com Scraper [$1.2/1K💰] | UK Leads | Emails & Phones

Pricing

from $1.17 / 1,000 results

Go to Apify Store
Yell.com Scraper [$1.2/1K💰] | UK Leads | Emails & Phones

Yell.com Scraper [$1.2/1K💰] | UK Leads | Emails & Phones

Scrape UK business listings from Yell.com for lead generation: business name, email, phone, website, address, category, rating, reviews and opening hours per listing. Built for UK lead-gen agencies, SMB outreach teams, local SEO auditors and CRM enrichment.

Pricing

from $1.17 / 1,000 results

Rating

0.0

(0)

Developer

Ahmed Jasarevic

Ahmed Jasarevic

Maintained by Community

Actor stats

0

Bookmarked

9

Total users

4

Monthly active users

20 days ago

Last modified

Categories

Share

Yell.com Scraper — UK Business Listings, Phones & Websites for Lead Generation

Extract UK business listings from Yell.com — the UK's No. 1 business directory and the digital successor to Yellow Pages — to build lead-generation lists, enrich CRM data and audit local competitors from ~$1.20 per 1,000 listings. Each dataset row carries the business name, phone, website, address, category, star rating, review count and opening hours, ready for lead gen, SMB outreach and local SEO work.

Built for UK lead-gen agencies, SMB outreach teams, local SEO auditors and CRM enrichment workflows. Run it on the Apify platform to get API access, scheduling, proxy rotation, monitoring and one-click exports to JSON, CSV, Excel or Google Sheets.

Main Use Cases

  • UK lead generation — build targeted prospect lists by trade and town (e.g. plumbers in London) for outbound sales and marketing.
  • SMB outreach & cold call lists — collect business phone numbers and websites for UK small businesses.
  • Local SEO audits — benchmark competitors on Yell rating, review count and categories for any UK city or postcode.
  • CRM enrichment — append verified contact and location data to existing UK business records.
  • Market research & business databases — map business density by category, town, county or postcode.

How It Works

Give the actor a business type and a UK location (e.g. plumbers + London), or paste Yell search-result URLs directly. It crawls Yell's search result pages and handles Yell's Cloudflare Bot Management automatically, returning one dataset row per business listing.

A normal run is plain HTTP over the Apify Web Unlocker group. When a result page comes back challenged, the actor asks several clean UK IPs in parallel and serves the page from the first one that answers with real content — so a typical 50-listing run finishes in well under a minute. A full browser is only started as a last resort if no clean IP answers, and most runs never reach it.

The crawler only fetches the pages it still needs — it stops immediately once maxItems are collected, so you pay for exactly the listings you ask for.

Build Business Contact Databases Without an Official Yell API

Yell.com does not offer a public bulk-data or listings API. The official relationship is via Yell Business — a paid marketing service for businesses that advertise, not an API a developer can query. If you need structured UK business contact data — names, phones, websites, addresses, ratings — a Yell.com scraper is the practical way to get it programmatically.

Scrape UK Business Contact Data by Trade and Location

Search by any business type and any UK town, city, postcode or region:

  • plumbers + London
  • electricians + Manchester
  • dentists + Birmingham
  • restaurants + Edinburgh
  • builders + SW1A 1AA

Each search page holds ~50 listings, and the actor follows pagination only until maxItems is reached. Results are deduplicated by Yell profile URL (sponsored and organic copies of the same business collapse into one row).

What You Get, and Why There Is No Profile-Page Scraping

Every field in this actor comes from Yell's search results, which is where name, phone, website, address, category, rating and review count all live. That keeps a run to roughly one request per result page, so a 50-listing search usually completes in under a minute.

Yell does publish richer data on an individual business profile page — a written description, every category, hours broken down by weekday, social links and sometimes an e-mail address. This actor deliberately does not fetch those pages. Yell only serves them to a live browser session: a plain request is challenged every time, so collecting them costs a browser solve plus a request per listing, and in practice the fields came back empty. Rather than bill you for requests that return nothing, that data is left out and the run stays fast.

If you need profile-level data and already have a list of Yell profile URLs, a dedicated profile scraper is the better tool for that step.

How Yell is handled, and one thing that does not work

Yell sits behind Cloudflare Bot Management, which challenges plain HTTP requests. The default GB Web Unlocker proxy group solves that challenge server-side, so the actor stays on plain HTTP and needs no browser. When a page still comes back challenged, the actor probes several clean UK IPs in parallel and serves the page from the first one that answers with real content. A real Chromium tab is opened only as a last resort, if no clean IP answers at all.

What does not work: the app API. Yell's Android app talks to a JSON backend that would return listings in a single request with no challenge at all, which would be far faster and cheaper. That was worth investigating, and the actor still carries the discovery code — but the route is closed. Every candidate endpoint returns HTTP 401 before routing, and a GB residential proxy sweep produced zero successful responses out of 105 attempts. Yell requires authenticated app sessions, so the JSON path is not publicly reachable and this actor does not rely on it.

Input

FieldTypeRequiredDefaultNotes
keywordsstringNo*plumbersBusiness type / trade to search for, e.g. plumbers, dentists, carpenters. Ignored when startUrls is provided.
locationstringNo*LondonUK town, city, postcode or region, e.g. London, Manchester, SW1A 1AA. Ignored when startUrls is provided.
startUrlsarrayNo—Direct Yell.com search-result URLs to scrape instead of keywords + location, e.g. https://www.yell.com/ucs/UcsSearchAction.do?keywords=plumbers&location=london. Overrides keywords/location. Website transport only.
maxItemsintegerNo50Max listings to extract. The crawler stops as soon as this many are collected — no extra pages are fetched.
proxyConfigurationobjectNoApify proxy + UNBLOCKER (GB)Proxy picker: useApifyProxy, apifyProxyGroups, apifyProxyCountry. Keep it on the default. Do not switch to RESIDENTIAL: plain residential IPs get challenged, which sends the run into a multi-minute browser solve that often stalls on the Turnstile widget.

* Provide either keywords + location, or startUrls. If neither is set, the run fails with Provide either "keywords" + "location", or "startUrls".

Example input:

{
"keywords": "plumbers",
"location": "London",
"maxItems": 50,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["UNBLOCKER"],
"apifyProxyCountry": "GB"
}
}

Output

Each Yell.com business listing becomes one dataset row, with 11 fields:

FieldDescription
nameBusiness name.
urlYell business profile URL.
categoryPrimary business classification.
phoneContact phone number(s).
websiteBusiness website (when listed).
addressFull street address.
ratingAverage star rating (e.g. 4.5).
reviewsNumber of reviews.
openingHoursCurrent opening status / hours.
searchKeywordThe keyword used for this run.
searchLocationThe location used for this run.

Example output row:

{
"name": "Bandera Ltd",
"url": "https://www.yell.com/biz/bandera-ltd-manchester-5857009/",
"category": "Restaurants",
"phone": "0161 833 9019",
"website": "http://www.harpersmanchester.co.uk",
"address": "2 Ridgefield, Manchester, M2 6EQ",
"rating": "4.0",
"reviews": "1",
"openingHours": "Open now · Closes 11:00 pm",
"searchKeyword": "plumbers",
"searchLocation": "London"
}

You can download the dataset in JSON, HTML, CSV, Excel or XML, or push it on to a database, Google Sheets or a webhook via the Apify API.

How Much Does It Cost to Scrape Yell.com?

The actor is pay-per-event: a fixed $0.00005 per GB of memory when a run starts, and $0.0012 per listing result (lower tiers may pay slightly less per result). In practice:

  • A single-page lookup of 50 listings ≈ $0.06, finished in well under a minute.
  • A 1,000-listing pull ≈ $1.20 plus a negligible start fee, over plain HTTP.

The crawler fetches only what it needs and stops at maxItems, so costs scale linearly with the number of listings you actually collect. Free plans get a capped preview of 10 listings; paying users get unlimited runs (subject to maxItems).

The default GB Web Unlocker proxy group is what makes that price possible: it solves Cloudflare's challenge server-side, so a run needs no browser at all. When a page still comes back challenged, the actor probes several clean IPs and uses the first that works, and a real browser is started only if none of them answer. Do not switch to RESIDENTIAL — those IPs get challenged far more often, which is what drags a run into a slow browser solve.

Integrations & Automation

  • Apify API & SDKs — run the actor from JavaScript (apify-client), Python, or any HTTP client; pull results as JSON/CSV/Excel.
  • Schedule it — use Apify's built-in scheduler (daily or weekly) to keep UK lead lists and review/rating data fresh. This actor is a natural fit for recurring monitoring: ratings, review counts and opening hours change over time.
  • Webhooks — push completed-run datasets straight into your own system.
  • Zapier / Make / Google Sheets — connect the dataset to downstream tools through Apify's standard integrations.
  • MCP servers — expose this actor (or any Apify actor) to Claude, Cursor or other MCP clients via the Apify MCP server, so an AI agent can pull UK Yell.com data on demand.

Recommended schedule: weekly for lead lists and prospect databases; monthly for market research and local SEO benchmarking.

FAQ

Why use this actor instead of the official Yell API?

There is no official Yell listings API for developers — Yell's data products are marketing services for advertisers, not programmatic data access. Scraping Yell.com with a purpose-built actor is the standard way to get structured UK business contact data, and this actor removes the hard part (Cloudflare Bot Management) automatically.

Scraping publicly available business directory data is common practice and, for public-facing business information like name, phone and address, generally treated the same as accessing any public website (the reasoning applied in hiQ v. LinkedIn). This actor only accesses publicly available Yell.com pages — no login bypass, no CAPTCHA farms. You are responsible for complying with Yell.com's Terms of Service and applicable data-protection law (e.g. UK GDPR) when using the data, and for how you use contact details (see the Legal & Compliance Disclaimer below).

Why does Yell.com limit each search to about 10 pages?

Yell caps on-site pagination per search — third-party Yell scrapers consistently report a ~10-page / few-hundred-results ceiling per keyword+location search. To go deeper, run the same category for multiple towns and postcodes, or use startUrls to target specific category pages. This actor pages through whatever Yell returns until maxItems is reached.

Is Yell still Yellow Pages?

Yes — Yell.com is the digital successor of the Yellow Pages directory. Yellow Pages ended printed production in 2017 and fully moved online as Yell, which is why "Yellow Pages UK" searches resolve to yell.com today.

What data does this actor extract from Yell.com?

Business name, Yell profile URL, primary category, phone, website, full address, star rating, review count and current opening status — plus the search keyword and location used.

What is an alternative to Yell.com for UK business data?

Thomson Local and FreeIndex are the other big UK directories and have scrapers of their own (see Related Actors); Google Maps data is a strong complementary source; Yelp UK covers consumer categories. Yell.com remains the largest UK business directory, so it is usually the best single source for UK lead lists. The actor accepts direct startUrls, so you can scrape Yell category pages precisely for any trade or town.

What is the best way to build a list of UK tradesmen for cold outreach?

Search by trade and town — e.g. plumbers + Manchester, electricians + Birmingham — then export to CSV/Excel and load into your outreach tool. Running the same trade across multiple towns (or every postcode district) builds a national tradesmen dataset; see the UK Tradesmen Contact Data task.

How do I get UK business emails and phone numbers?

For phone numbers, this actor is the right tool: every listing carries a phone number, and the search results also expose the business website, so you can usually reach a business without an e-mail address.

For e-mail addresses specifically, this actor will not help. Yell only publishes them on individual business profile pages, which it serves to a live browser session only — a plain request is challenged every time, so collecting e-mails would mean a browser solve plus a request per listing. In practice the field came back empty anyway, so it is not offered rather than billed for. Use a dedicated Yell profile scraper, or go direct to the business website, for e-mail data.

Is Yell.com data compliant with GDPR?

Yell.com listings are publicly available business information, and business contact details published for commercial purposes are handled differently from personal data in practice. This actor does not collect personal consumer data. You must still comply with UK GDPR and the Privacy and Electronic Communications Regulations (PECR) when storing data and when using email/phone details for marketing — the same obligations apply to any lead list you buy or build.

SEO Keywords

yell.com scraper, scrape yell.com, yell.com api, yell business data, uk business directory, yellow pages uk, uk business leads, uk b2b leads, uk business contact data, local seo audit, local seo competitor analysis, uk lead generation, cold call list uk, uk tradesmen data, tradesman leads uk, uk business phone numbers, crm enrichment uk, business rating data, yell.com alternatives, plumbers in london data, uk business database, reviews and ratings monitoring, yell data export, business directory scraping uk

For AI Agents & LLM Apps

This actor is fully callable via the Apify MCP server and the Apify REST API. Use it whenever a task needs UK business contact data from Yell.com — lead generation, prospect lists, local competitor benchmarking, CRM enrichment or market research.

Purpose: returns Yell.com business listings for a UK trade + location (or a set of Yell search URLs) — each row is one business with contact, category, rating, review and opening-hours data.

Minimal working input:

{ "keywords": "plumbers", "location": "London", "maxItems": 10 }

One-off discovery run (finds and caches the app API route): add the environment variable YELL_PROBE=1 to the run. The input is otherwise a normal search.

{ "keywords": "plumbers", "location": "London" }

Alternative — start URLs (takes priority when present):

{
"startUrls": [{ "url": "https://www.yell.com/ucs/UcsSearchAction.do?keywords=plumbers&location=london" }],
"maxItems": 10
}

Output fields (dataset): name, url, category, phone, website, address, rating, reviews, openingHours, searchKeyword, searchLocation.

Behaviors an agent should know:

  • startUrls overrides keywords/location — if startUrls is non-empty, search keywords are ignored. If startUrls is empty and either keywords or location is missing, the run fails with a clear error.
  • The transport is plain HTTP over the Web Unlocker group, with a clean-IP probe when a page is challenged. The app API discovery path (YELL_PROBE=1) is retained but is not expected to succeed — Yell returns 401 for all candidate routes, so a normal run never uses it.
  • Setting YELL_PROBE=1 on a run discovers the app API route, writes the full evidence to the app-api-probe-report.json key-value-store record and to the dataset, and exits without scraping anything. A hit is only accepted if the response is JSON containing an array of at least 3 objects with a name-like string field, so an error envelope is never mistaken for success.
  • maxItems is the price control: the run stops the moment that many listings are collected, so no extra pages are billed. Default 50. (maxResults is accepted as a legacy alias.)
  • Every field comes from Yell's search results. The actor does not fetch individual business profile pages, so description, email, socialLinks, hoursByDay and verified are not in the output — see the section above for why.
  • The default transport is plain HTTP over the Web Unlocker group. A challenged page is served by probing several clean UK IPs and taking the first real response; a real browser is started only if none answer, which most runs never need.
  • proxyConfiguration should stay on the GB UNBLOCKER group. RESIDENTIAL IPs get challenged far more often and send the run into a slow browser solve.
  • Some fields are legitimately empty — not every listing publishes a website or phone number. Check website/phone presence rather than treating empties as errors.

Billing model: pay-per-event. $0.00005 per GB at run start + $0.0012 per listing result returned to the dataset (~$1.20 per 1,000 listings). Keep maxItems tight for exploratory runs.

This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Yell Group Limited or Yell.com.

The actor accesses only publicly available Yell.com pages and the public JSON endpoints its own mobile app calls — it does not bypass any login or paywall. It automatically handles Yell.com's Cloudflare bot challenge on public pages, which is standard automated-access behaviour; users remain responsible for how they use the extracted data.

Because the output includes business phone numbers and websites, do not use this data for unsolicited commercial outreach in violation of applicable law (e.g. CAN-SPAM, UK PECR, TCPA), and store data in line with UK GDPR (and GDPR/CCPA where the data relates to individuals). This section is factual disclosure, not legal advice — consult a professional for your specific use case.