Gelbe Seiten Scraper: German Business Leads, Emails & Impressum
Pricing
from $1.00 / 1,000 businesses
Gelbe Seiten Scraper: German Business Leads, Emails & Impressum
Scrape Gelbe Seiten (gelbeseiten.de), Germany's yellow pages: business name, address, phone, email, website, rating and categories by trade and city; optionally each business page (opening hours, services, fax) and its website's Impressum (owners, HRB number, VAT ID). No login.
Pricing
from $1.00 / 1,000 businesses
Rating
0.0
(0)
Developer
Steady Scrape
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Gelbe Seiten Scraper — German business leads with emails, opening hours and Impressum data
Scrape Gelbe Seiten (gelbeseiten.de), Germany's yellow pages, by trade and place: every business as one clean row with name, address, district, phone (also in E.164), email, website, rating, review count, category and Gelbe Seiten partner level. Two optional steps make it a lead list you can act on:
- Business page (
includeDetails): the email where the list shows none, every category, services, description, opening hours per day, fax, payment methods, coordinates, social profiles and when the entry last changed. - Impressum of the business's website (
includeImprint): the legal name, legal form, managing directors or owners, register court and HRB number, VAT ID, tax number, emails and phone, read from the legal notice every German commercial website must publish. That is the decision maker's name, which a directory listing does not give.
Search Zahnarzt in Berlin, Steuerberater in München, Elektriker in Hamburg — or paste results and business
links straight from gelbeseiten.de. You pay per business delivered; searches without results, links that give nothing
and websites without an Impressum are free rows that say why.
Who it is for
- B2B sales and lead generation in Germany: local businesses by trade and city with phone, email and — with the Impressum — the owner or Geschäftsführer, the register entry and the VAT ID.
- Agencies selling websites, SEO or ads to local businesses: rating, review count, partner level (who already pays Gelbe Seiten for advertising) and whether a business has a website at all.
- Market research: count and map the dentists, roofers or tax advisers of a city (Gelbe Seiten's own count per search is in every search row; coordinates come with the business page).
- CRM enrichment and scheduled refreshes: run the same searches weekly and compare.
How it works
- Searches open the site's own results list for a trade in a place (
gelbeseiten.de/branchen/zahnarzt/berlin), the pages listed in its sitemaps. The first 50 businesses come with the page; the rest through the list's own "Mehr anzeigen" request, 10 at a time, until your maximum or the end of the list. Loose place names are followed to the site's own (Berlin Mitte→Berlin Bezirk Mitte,Frankfurt→Frankfurt am Main). - Trades the site has no list page for (
Friseure,Heizung,Kfz Werkstatt) are answered by Gelbe Seiten only on its search page, which its robots.txt closes to automated readers. The Actor does not read it: the search becomes a free row with look-alike trades the site does have (friseur,heizung & sanitär,autowerkstatt). - Business pages are read from the site's schema.org data and the page's own blocks.
- Impressums are read with the same reader as our Impressum Scraper:
the legal-notice link is found on the business's homepage, and German formats are read (,Amtsgericht Charlottenburg, HRB 269744 B
USt-IdNr. DE450479811,info(at)firma.de, Cloudflare-hidden emails). A website that is really a Facebook page, a directory or a booking profile is not read: its Impressum would name the platform.
A business that two searches find (a district inside its city) is delivered and charged once per run. Measured on 2026-10-22: 10 of 10 Berlin dentists of the prefill had a phone, 10 an email and 10 an Impressum naming the practice.
Input example
{"searchTerms": ["Zahnarzt", "Kieferorthopäde"],"locations": ["Berlin", "Potsdam"],"startUrls": ["https://www.gelbeseiten.de/gsbiz/5f06ccb6-068f-4b36-91a4-63113f066676"],"maxResultsPerSearch": 100,"includeDetails": true,"includeImprint": true}
Every trade is searched in every place. Use searchTerms + locations, startUrls, or both.
Output example
A business with details and Impressum (shortened lists):
{"rowType": "business","id": "e31b78fd-dfd7-4aa3-b2af-19d42058ba63","url": "https://www.gelbeseiten.de/gsbiz/e31b78fd-dfd7-4aa3-b2af-19d42058ba63","name": "Fiedler Andreas Dr. und Fiedler Julia","category": "Zahnärzte","partnerLevel": "Silber Partner","address": "Reichenhaller Str. 63, 14199 Berlin","street": "Reichenhaller Str. 63","postalCode": "14199","city": "Berlin","district": "Schmargendorf","phone": "030 8 23 96 97","phoneInternational": "+49308239697","email": "praxis.dr.fiedler@t-online.de","website": "https://www.zahnarzt-fiedler-berlin.de","rating": null,"reviewCount": null,"distanceKm": 7.3,"snippet": "Wir, die Zahnärzte Dr. Andreas Fiedler und Julia Fiedler bieten in unserer Zahnarztpraxis in Berlin-...","searchTerm": "Zahnarzt","location": "Berlin","searchUrl": "https://www.gelbeseiten.de/branchen/zahnarzt/berlin","position": 9,"details": {"categories": ["Zahnärzte"],"services": ["Zahnärztin", "Zahnärzte/innen", "Zahnreinigung"],"description": "Wir, die Zahnärzte Dr. Andreas Fiedler und Julia Fiedler bieten in unserer Zahnarztpraxis in Berlin-Wilmersdorf (Schmargendorf) moderne Behandlungsmethoden, …","openingHours": [{ "day": "Montag", "hours": "Ruhetag" }, { "day": "Dienstag", "hours": "Ruhetag" }],"latitude": 52.477478,"longitude": 13.291053,"fax": null,"paymentMethods": [],"socials": { "linkedin": null, "xing": null, "facebook": null, "instagram": null, "youtube": null, "tiktok": null, "x": null },"logoUrl": "https://ies.v4all.de/0122/GS/0001/5/2575/70082575_310x190.png","lastUpdated": "2026-08-13"},"imprint": {"status": "found","message": null,"imprintUrl": "https://www.zahnarzt-fiedler-berlin.de/impressum","companyName": "Dr. Andreas Fiedler und Julia Fiedler","legalForm": null,"managingDirectors": ["Dr. Andreas Fiedler", "Julia Fiedler"],"registerType": null,"registerNumber": null,"registerCourt": null,"vatId": null,"taxNumber": null,"address": "Reichenhaller Straße 63, 14199 Berlin","countryCode": "DE","emails": ["praxis.dr.fiedler@t-online.de", "info@zaek-berlin.de", "kontakt@kzv-berlin.de"],"phone": "030 8239697","fax": "(030) 34808 - 240","socials": { "linkedin": null, "xing": null, "facebook": null, "instagram": null, "youtube": null, "tiktok": null, "x": null }},"scrapedAt": "2026-10-22T12:00:00.000Z"}
Business fields (rowType: business, charged)
| field | what it holds |
|---|---|
id, url | Gelbe Seiten's id of the entry and its page. |
name, category, partnerLevel | The entry's name, its main trade, and the advertising package it buys from Gelbe Seiten (Premium Partner, Top Partner, Silber Partner…), null for a free entry. |
address, street, postalCode, city, district | The address on one line and split; district is the city part (Neukölln, Schmargendorf). |
phone, phoneInternational | As listed, and in E.164 (+49308239697) for dialers and CRMs. |
email | The business's email: from the list when it shows one (its Gelbe Seiten chat contact), else from the business page. |
website | The website the entry links (also a Facebook page or a directory profile, when that is what it links). |
rating, reviewCount | Gelbe Seiten's star rating (0–5) and number of reviews. |
distanceKm, snippet | Distance from the centre of the place searched, and the entry's teaser text, as the list shows them. |
searchTerm, location, searchUrl, position | Which search found it and where it stood in the list; null for a business link. |
details | With includeDetails (else null): categories, services, description, openingHours ([{ day, hours }]), latitude, longitude, fax, paymentMethods, socials, logoUrl, lastUpdated. |
imprint | With includeImprint (else null): status (found, noWebsite, notOwnWebsite, unreachable, blocked, noImprint, noCompanyData), message saying why when not found, imprintUrl, companyName, legalForm, managingDirectors, registerType, registerNumber, registerCourt, vatId, taxNumber, address, countryCode, emails, phone, fax, socials. |
A field the site does not state is null (or an empty list).
Free rows
rowType: search— one per trade and place:status(ok,not_listed,no_results,blocked,not_searched,unreadable), the trade and place as the site names them (resolvedTerm,resolvedLocation), Gelbe Seiten's own count (totalListed), businesses delivered, duplicates skipped,suggestedTermsfor a trade the site has no list page for, and a plainreason.rowType: link— a link that gave no business:invalid(not a gelbeseiten.de list or business page),not_found(the entry was removed),blocked,not_read(spending limit),unreadable.
The run's SUMMARY record counts everything.
Pricing
| event | price | when |
|---|---|---|
business | US$0.001 | a business as the results list shows it |
business-with-details | US$0.002 | instead of business, when its page was read (includeDetails, and every business link) |
imprint | US$0.003 | on top, when its website's Impressum named the company (includeImprint) |
1,000 businesses cost US$1; with their pages US$2; with pages and Impressums at most US$5. Branches of a chain that
link one website pay its Impressum once. Free rows cost nothing, and a business page that cannot be read leaves the
row at the business price. Set a spending limit on the run and the Actor stops before reading anything it would not
pay for.
Limits
- Searches use the site's list pages (
/branchen/<trade>/<place>), which exist for the trades and places in its sitemaps: about 900 trades in the big cities, fewer in small towns. Postcodes and free-text searches are answered by the site only on its search page, which its robots.txt closes to automated readers: they are freenot_listedrows. - One Gelbe Seiten request every 0.6 s: about a minute for 1,000 businesses from the list (10 per request after the first 50), about 10 minutes with their pages, plus the websites for Impressums (read 8 at a time, different hosts).
- If Gelbe Seiten refuses (a firewall answer or a bot check), the Actor retries twice from another IP, never solves a
challenge, and then stops asking: the rest are free
blockedrows and the run still ends successfully. - Impressums drawn with JavaScript or shown as an image are
noCompanyData. Regulated professions (dentists, lawyers, tax advisers) must name their chamber in the Impressum, so the chamber's email or fax can appear after the business's own. - The data is what each business publishes on Gelbe Seiten and on its website. It can be outdated; check the official register before relying on it for a contract.
Is it legal?
This Actor reads only public pages — Gelbe Seiten's results lists and business pages, which the site lists in its own sitemaps, and the Impressum every German commercial website must publish (§ 5 DDG) — at a visitor's pace, follows the site's robots.txt, never signs in and never bypasses any protection. Using the data is your responsibility. In particular:
- Cold email and calls: in Germany, § 7 UWG forbids advertising emails without prior consent, also to businesses, and cold calls to businesses need at least their presumed consent.
- GDPR: names, direct emails and phones of sole traders and managing directors are personal data. You need a legal basis (for example legitimate interest, with a balancing test), must inform the people you contact, honour objections, and keep the data only as long as needed.
This Actor is not affiliated with, endorsed or sponsored by Gelbe Seiten, Sellwerk or the Gelbe Seiten publishers, nor by any website whose Impressum it reads. Read more in Apify's blog post on the legality of web scraping.
Feedback
A trade or place that gives a wrong row, or a field you need? Open an issue with the search or the link: every fix is tested against the real page.