Yellow Pages Scraper
Pricing
from $2.00 / 1,000 businesses
Yellow Pages Scraper
Scrape Yellow Pages US by keyword and location: business name, phone, address, website, categories, hours, ratings, years in business and email. Build local B2B lead lists.
Pricing
from $2.00 / 1,000 businesses
Rating
0.0
(0)
Developer
Trevor Ortega
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Scrape Yellow Pages US (yellowpages.com) business listings for any keyword and US location: business name, phone number, full address, website, categories, rating and review count, years in business, open status and weekly hours. Turn on profile details to also get the business email (when published), services, brands, payment methods, AKA names, extra phone numbers, social links and GPS coordinates. Built for local B2B lead lists, sales prospecting and local-market research.
Type what you are looking for (plumber, dentist, roofing contractors) and where (Chicago, IL, Austin, TX, 10001). The Actor runs every search term in every location, walks the result pages (30 businesses per page), removes duplicate sponsored listings, and saves one clean record per business. You can also paste Yellow Pages search, category or business profile URLs.
Plain HTTP, no browser, no login. Export as JSON, CSV or Excel, or pull the dataset through the API into Google Sheets, a CRM or an LLM pipeline. You pay only for the businesses you get.
What data does Yellow Pages Scraper extract?
Every business (from the search results, charged as result):
| Field | Description |
|---|---|
id, ypListingId | Yellow Pages business id (ypid, stable) and the listing id of this placement |
name | Business name |
url | Yellow Pages profile URL |
phone | Main business phone, e.g. (312) 878-8062 |
website | The business's own website |
address, addressText | {street, city, state, postalCode, country} and a one-line address |
categories | Yellow Pages categories shown on the listing |
rating, reviewCount | Yellow Pages star rating (0-5) and number of reviews |
tripAdvisorRating, tripAdvisorReviewCount | TripAdvisor rating shown on some listings (restaurants, bars, hotels) |
yearsInBusiness, yearsWithYellowPages | Badges shown on the listing |
hoursText, isOpenNow | Open status at scrape time (open now, open 24 hours, closing soon, closed now) |
hours, openingHours | Weekly hours by day ({"Monday": "6:30 am - 4:30 pm", ...}) and the raw schema.org strings |
isAd, isSponsored, isPreferred, isClaimed | Paid advertiser listing, sponsored ad block, "YP Preferred" badge, owner-claimed profile |
businessSnippet | "From Business" description snippet (customer review quotes are not collected) |
thumbnailUrl, features | Listing thumbnail and Yellow Pages feature flags (website, reviews, open-24hr, ...) |
searchTerm, searchLocation, rank, page | Which search found the business and its position (organic rank across pages) |
sourceUrl, scrapedAt | Where and when the record was scraped |
With Open each business profile (charged as detail, one extra request per business):
| Field | Description |
|---|---|
email | Business email, only when the business publishes one on its Yellow Pages profile |
latitude, longitude | GPS coordinates |
hours | Full weekly hours including closed days |
categories | All categories (search cards show only the first few) |
services, brands, paymentMethods, languages | Services/products, brands carried, payment methods accepted, languages spoken |
aka | Other names the business is listed under |
extraPhones | [{type: "phone" / "fax" / "toll free", number}] |
socialLinks, otherLinks | {facebook, instagram, linkedin, ...} and other websites listed |
slogan, generalInfo, description | Slogan and the "General Info" text |
neighborhoods | Neighborhoods the business belongs to |
yearEstablished, priceRange, bbbRating | Founding year, price range and BBB grade when shown |
moreInfo | Any other "More Info" rows, e.g. {"Ownership": "Locally Owned", "Free Estimates": "Yes"} |
detailsScraped | true when the profile was opened |
Reviewer names, review texts and personal contact details are deliberately not collected; reviews appear only as a rating and a count.
How to scrape Yellow Pages business listings
- Enter one or more Search terms (for example
plumber,hvac,dentist). - Enter one or more Locations: city and state (
Chicago, IL), neighborhood or ZIP code (10001). - Set Max businesses to cap the run and the cost, and Max pages per search (30 businesses per page).
- Turn on Open each business profile if you need emails, full hours, services and coordinates.
- Click Start. Results appear in the Dataset tab; export from there or use the API.
Input example
{"searchTerms": ["plumber", "electrician"],"locations": ["Chicago, IL", "10001"],"maxItems": 500,"maxPagesPerSearch": 10,"includeDetails": true,"sortBy": "default","proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"], "apifyProxyCountry": "US" }}
Start URLs work too:
{"startUrls": [{ "url": "https://www.yellowpages.com/chicago-il/plumbers" },{ "url": "https://www.yellowpages.com/search?search_terms=dentist&geo_location_terms=Austin%2C+TX" },{ "url": "https://www.yellowpages.com/chicago-il/mip/baethke-plumbing-15128363" }],"maxItems": 200}
Output example
{"id": "15128363","ypListingId": "15128363","name": "Baethke Plumbing","url": "https://www.yellowpages.com/chicago-il/mip/baethke-plumbing-15128363","phone": "(773) 276-5430","website": "http://www.baethkeplumbing.com","address": { "street": "3511 N Cicero Ave", "city": "Chicago", "state": "IL", "postalCode": "60641", "country": "US" },"addressText": "3511 N Cicero Ave, Chicago, IL 60641","latitude": 41.94505,"longitude": -87.746765,"categories": ["Plumbers", "Home Improvements", "Major Appliances", "Plumbing Fixtures, Parts & Supplies"],"rating": 4.97,"reviewCount": 64,"yearsInBusiness": 33,"hoursText": "open 24 hours","isOpenNow": true,"hours": { "Monday": "Open 24 Hours", "Tuesday": "Open 24 Hours", "Wednesday": "Open 24 Hours", "Thursday": "Open 24 Hours", "Friday": "Open 24 Hours", "Saturday": "Open 24 Hours", "Sunday": "Open 24 Hours" },"isAd": false,"isSponsored": false,"isClaimed": false,"email": "info@baethkeplumbing.com","brands": ["bradford white", "rheem"],"paymentMethods": ["check", "debit", "amex", "discover", "mastercard", "visa"],"extraPhones": [{ "type": "phone", "number": "(773) 282-4340" }, { "type": "phone", "number": "(847) 965-8667" }],"neighborhoods": ["Northwest Side", "Portage Park"],"yearEstablished": 1993,"detailsScraped": true,"searchTerm": "plumber","searchLocation": "Chicago, IL","rank": 15,"page": 1,"scrapedAt": "2026-09-14T20:17:07Z"}
How much does it cost to scrape Yellow Pages?
Pay per event, no subscription and no start fee:
- $0.002 per business saved from search results ($2 per 1,000 leads).
- $0.003 extra per business whose profile page is opened (only with Open each business profile, or for profile start URLs).
1,000 plumbers with phone, address, website and rating cost $2; with emails, full hours and services $5. Platform usage (compute and proxy) is billed by Apify at cost and is small: a result page is ~300 KB. Apify's free plan is enough to try it.
How many results can I get per search?
Yellow Pages shows at most 100 pages (3,000 businesses) for one search, and busy searches in big cities often hit that limit. To collect more, split the area: use several ZIP codes or neighboring cities as Locations. Duplicates across searches are removed automatically (by Yellow Pages business id), so overlapping areas never cost twice.
Does it get emails from Yellow Pages?
Yes, when the business lists an email on its Yellow Pages profile (the "Email Business" link). Turn on Open each business profile; the email field is empty when the business has not published one. Only business contact details shown publicly by Yellow Pages are collected.
Does Yellow Pages block scrapers?
Yellow Pages sits behind Cloudflare and answers bursts of requests from one IP with HTTP 429 challenge pages. The Actor uses real-browser TLS fingerprints, keeps concurrency low, detects challenge pages and retries them on a fresh proxy IP, so runs finish instead of silently returning nothing. Use Apify Proxy (residential, US) for large runs; without a proxy the Actor slows down to one request every ~3 seconds.
Integrations and API
Use the run in Zapier, Make, n8n, Google Sheets or HubSpot, or call it from Python/Node with the Apify client. See the API tab for ready-made snippets. A typical lead workflow: scrape Yellow Pages, then enrich the website domains with a contact finder and verify emails before outreach.
Is it legal to scrape Yellow Pages?
The Actor collects publicly available business listing data (business names, business phone numbers, addresses, websites, categories, hours and aggregate ratings) without logging in. It does not collect reviewer names, review texts or personal data about individuals. You are responsible for how you use the data and for complying with Yellow Pages' terms, anti-spam rules (CAN-SPAM, TCPA) and applicable law.
Support
Found a bug or need a field added? Open an issue in the Issues tab; it is usually answered within a day.