Google-Ads-Playbook für Elektriker, Rohrreinigung und Kammerjäger in NRWGoogle Ads playbook for electricians, drain cleaning and pest control in NRW
Wie eine neue Domain vorbereitet und beworben wird, damit das Budget möglichst viele echte Anrufe und Aufträge bringt. Mit Rechner, Schritt-für-Schritt-Anleitungen, Texten, Keywords und Ausschlusslisten.How a new domain is prepared and advertised so the budget buys as many real calls and jobs as possible. With a calculator, step-by-step instructions, copy, keywords and negative lists.
- gemessenmeasured aus einer Quelle gemessen (Quelle + Datum genannt)measured from a source (source + date given)
- Schätzungestimate aus gemessenen Werten berechnet (Methode genannt)calculated from measured values (method given)
- Annahmeassumption Annahme, durch Ihre eigenen Zahlen ersetzenassumption; replace with your own figures
- Empfehlungrecommendation Empfehlung aus Erfahrung, keine Google-Vorgaberecommendation from practice, not a Google rule
- Mit Details › markierte Karten und Zeilen öffnen ein Seitenfenster. Weiterlesen zeigt die genauen Schritte.Cards and rows marked Details › open a side panel; Read more shows the exact steps.
11Der Plan auf einen BlickThe plan at a glance
Die Klickpreise (CPC) unten sind gemessen: Google-Ads-Daten über OpenSEO, Deutschland, Stand 26.10.2026. Der Kosten-pro-Lead (CPL) ist eine Schätzung: Median-CPC geteilt durch eine angenommene Conversion-Rate von 8–20 %. Eine neue Domain liegt anfangs eher am oberen Ende.
The click prices (CPC) are measured: Google Ads data via OpenSEO, Germany, as of 26 Oct 2026. The cost per lead (CPL) is an estimate: median CPC divided by an assumed conversion rate of 8–20%. A new domain usually starts near the upper end.
Die 8 GrundentscheidungenThe 8 core decisions
- 1Ein Betrieb = ein eigenes Google-Ads-Konto. Landingpages frei testen, Domains nur im selben Konto.One business = its own Google Ads account. Test landing pages freely, domains only in the same account.
Der Betrieb zahlt selbst und bestätigt sich als Werbetreibender. Domains werden per Experiment oder nacheinander getestet, nie parallel.The business pays itself and verifies as the advertiser. Domains are tested via experiment or one after another, never in parallel.
Details ›Details › - 2Erst Recht & Vertrauen, dann Anzeigen: das „Go-live-Tor“.Legal & trust first, ads second: the “go-live gate”.
Impressum, Preise, Qualifikationsnachweise, Consent und Tracking müssen fertig sein, bevor 1 € ausgegeben wird.Impressum, prices, proof of qualification, consent and tracking must be done before €1 is spent.
Details ›Details › - 3Start nur mit Suchkampagnen + Anruf-Assets.Start with Search campaigns + call assets only.
Kein Performance Max, Display oder Demand Gen am Anfang. Neue reine Anrufanzeigen sind seit Feb. 2026 nicht mehr möglich.No Performance Max, Display or Demand Gen at the start. New call-only ads cannot be created since Feb 2026.
Details ›Details › - 4Standort: ~30 km um die echte Adresse, Option „Präsenz“.Location: ~30 km around the real address, option “Presence”.
Nur Menschen, die sich wirklich im Einsatzgebiet befinden. Stufe A (Kernstadt) bekommt das meiste Budget.Only people who are actually in the service area. Tier A (core city) gets most of the budget.
Details ›Details › - 5Kampagnen nach Dringlichkeit: Notdienst/akut vs. planbar.Campaigns by urgency: emergency/acute vs. planned.
Notdienst-Kampagnen laufen nur zu Zeiten, in denen wirklich jemand ausrückt.Emergency campaigns only run at times when someone really dispatches.
Details ›Details › - 6Messung: Anrufe ≥ 60 s sind die Haupt-Conversion.Measurement: calls ≥ 60 s are the main conversion.
Formulare und WhatsApp zählen sekundär. Ab Monat 2 kommen gebuchte Aufträge aus dem Callcenter-Protokoll zurück ins Konto.Forms and WhatsApp count as secondary. From month 2, booked jobs from the call-centre log go back into the account.
Details ›Details › - 7Gebote in 3 Phasen bis zum Ziel-CPA.Bidding in 3 phases up to target CPA.
Klicks maximieren mit CPC-Limit → Conversions maximieren → Ziel-CPA bei ~30 Conversions in 30 Tagen.Maximise clicks with CPC cap → maximise conversions → target CPA at ~30 conversions in 30 days.
Details ›Details › - 8Der Callcenter-Standard gehört zur Kampagne.The call-centre standard is part of the campaign.
Begrüßung mit exaktem Markennamen, ≥ 90 % Annahmequote, Rückruf verpasster Anrufe in ≤ 5 Min., jeder Anruf wird markiert.Greeting with the exact brand name, ≥ 90% answer rate, missed calls called back in ≤ 5 min, every call tagged.
Details ›Details ›
Der Fahrplan in 5 StufenThe roadmap in 5 stages
Alles messbar und regelkonform, bevor 1 € ausgegeben wird.Everything measurable and compliant before €1 is spent.
Zur Stufe ›Go to stage ›1 Branche × 1–3 Kernstädte. Beweisen, dass Anrufe zu tragbaren Kosten kommen.1 niche × 1–3 core cities. Prove that calls come at an affordable cost.
Zur Stufe ›Go to stage ›Gewinner-Seite, -Anzeigen und -Keywords finden und als Vorlage einfrieren.Find the winning page, ads and keywords and freeze them as a template.
Zur Stufe ›Go to stage ›Vorlage per Editor auf weitere Städte übertragen: Stufe A → B → weitere bediente Städte.Copy the template to more cities via Editor: tier A → B → further served cities.
Zur Stufe ›Go to stage ›Viele Kampagnen mit Regeln, Portfolio-Geboten und Dashboard steuern.Run many campaigns with rules, portfolio bidding and a dashboard.
Zur Stufe ›Go to stage ›Lead- & Budget-Rechner →Lead & budget calculator →
Rohrreinigung kostet pro Klick etwa 5× so viel wie Elektriker (Median ~€16 vs. ~€3). Dort entscheidet jede Minute am Telefon über die Rentabilität. Kammerjäger ist stark saisonal: Suchen nach „Wespennest entfernen“ sind im Juni/Juli etwa 3,5× so hoch wie im Jahresmittel. Budget und Personal müssen dem folgen.
Drain cleaning costs about 5× more per click than electricians (median ~€16 vs ~€3), so every minute on the phone decides profitability. Pest control is highly seasonal: searches for “Wespennest entfernen” in June/July are about 3.5× the yearly average. Budget and staffing must follow that.
22Die Zahlen hinter dem PlanThe numbers behind the plan
Zum Lead- & Budget-Rechner →Open the lead & budget calculator →
Klickpreise und Kosten pro LeadClick prices and cost per lead
| BrancheNiche | Median-CPC „+ Stadt“Median CPC “+ city” | Spanne 25 NRW-StädteRange 25 NRW cities | eff. CPC (+30 % neue Domain)eff. CPC (+30% new domain) | CPL bei 8 / 10 / 15 / 20 % Conversion-RateCPL at 8 / 10 / 15 / 20% conversion rate |
|---|---|---|---|---|
| ElektrikerElectrician | €2,88€2.88 | €1,38€1.38–€4,79€4.79 | €3,74€3.74 | €47€47 / €37€37 / €25€25 / €19€19 |
| RohrreinigungDrain cleaning | €16,57€16.57 | €6,27€6.27–€21,98€21.98 | €21,54€21.54 | €269€269 / €215€215 / €144€144 / €108€108 |
| KammerjägerPest control | €10,61€10.61 | €5,82€5.82–€16,68€16.68 | €13,79€13.79 | €172€172 / €138€138 / €92€92 / €69€69 |
Median und Spanne gemessenmeasured (OpenSEO, 26.10.2026). Aufschlag Annahmeassumption. CPL = eff. CPC ÷ Conversion-Rate Schätzungestimate.
Median and range gemessenmeasured (OpenSEO, 26 Oct 2026). Uplift Annahmeassumption. CPL = eff. CPC ÷ conversion rate Schätzungestimate.
Budgets je StufeBudgets per stage
| BrancheNiche | Mindestbudget/Monat (5 Klicks/Tag)Minimum budget/month (5 clicks/day) | Pilot: 30 Leads/MonatPilot: 30 leads/month | +1 Stadt mit 10 Leads/Monat+1 city with 10 leads/month | Ein Test (2 × 30 Leads)One test (2 × 30 leads) |
|---|---|---|---|---|
| ElektrikerElectrician | €438€438 | €1.123€1,123 | €374€374 | €2.246€2,246 |
| RohrreinigungDrain cleaning | €2.519€2,519 | €6.462€6,462 | €2.154€2,154 | €12.925€12,925 |
| KammerjägerPest control | €1.613€1,613 | €4.138€4,138 | €1.379€1,379 | €8.276€8,276 |
Schätzungestimate bei 10 % Conversion-Rate Annahmeassumption. Mindestbudget mit Median-CPC, alle anderen mit eff. CPC.
Schätzungestimate at 10% conversion rate Annahmeassumption. Minimum budget with median CPC, all others with eff. CPC.
Rechnet es sich? Break-even-AuftragswertDoes it pay off? Break-even job value
| BrancheNiche | CPL bei 10 %CPL at 10% | CPL bei 20 %CPL at 20% | nötiger Auftragswert bei 10 %job value needed at 10% | nötiger Auftragswert bei 20 %job value needed at 20% |
|---|---|---|---|---|
| ElektrikerElectrician | €37€37 | €19€19 | €187€187 | €94€94 |
| RohrreinigungDrain cleaning | €215€215 | €108€108 | €1.077€1,077 | €539€539 |
| KammerjägerPest control | €138€138 | €69€69 | €690€690 | €345€345 |
Break-even-Auftragswert = CPL ÷ (Marge 40 % × Buchungsquote 50 %), beides Annahmen. Elektriker rechnet sich schon bei kleinen Aufträgen. Kammerjäger braucht mittlere Auftragswerte oder eine hohe Buchungsquote. Rohrreinigung rechnet sich nur mit hoher Conversion-Rate (Notdienst-Anrufe), hoher Buchungsquote am Telefon und Folgeaufträgen (Kamera, Sanierung). Deshalb startet Rohrreinigung mit den Notdienst-Begriffen in den günstigsten Kernstädten, und die Telefonqualität ist dort der wichtigste Hebel.
Break-even job value = CPL ÷ (margin 40% × booking rate 50%), both assumptions. Electricians pay off even on small jobs. Pest control needs mid-sized job values or a high booking rate. Drain cleaning only pays off with a high conversion rate (emergency calls), a high booking rate on the phone and follow-up work (camera, repair). That is why drain cleaning starts with emergency terms in the cheapest core cities, and phone quality is the biggest lever there.
Schwellen im PlanThresholds in the plan
| WannWhen | KennzahlMetric | SchwelleThreshold |
|---|---|---|
| Gate 0 → 1Gate 0 → 1 | Budget je Pilot-Kampagnebudget per pilot campaign | ≥ 5 Klicks/Tag≥ 5 clicks/day |
| LernphaseLearning | Wechsel zu „Conversions maximieren“switch to “maximise conversions” | ≈ 15 Conversions≈ 15 conversions |
| Gate 1 → 2Gate 1 → 2 | Conversions · CPL · Annahmequote · passende Suchbegriffeconversions · CPL · answer rate · fitting search terms | ≥ 30 · ≤ 1,2 × tragbar · ≥ 90 % · ≥ 85 %≥ 30 · ≤ 1.2 × affordable · ≥ 90% · ≥ 85% |
| Ziel-CPATarget CPA | Conversions in 30 Tagenconversions in 30 days | ≥ 30 |
| Gate 2 → 3Gate 2 → 3 | CPL-Stabilität · AuftragsimportCPL stability · job import | ±20 % in 2 × 14 Tagen · ≥ 4 Wochen±20% in 2 × 14 days · ≥ 4 weeks |
| TestsTests | Laufzeit · Leads je Varianteruntime · leads per variant | ≥ 4 Wochen · ≥ 30≥ 4 weeks · ≥ 30 |
| Jede WelleEach wave | Conversion-Rate · CPLconversion rate · CPL | ≥ 70 % der Pilot-Rate · ≤ 1,2 × Ziel≥ 70% of pilot rate · ≤ 1.2 × target |
| PortfolioPortfolio | Conversions je Kampagne / 30 Tageconversions per campaign / 30 days | < 15 zusammenlegen · ≥ 30 eigene Kampagne möglich< 15 merge · ≥ 30 own campaign possible |
| SkalierenScaling | Budgeterhöhung pro Wochebudget increase per week | +20 % (max. +30 %), nur wenn CPL im Ziel+20% (max +30%), only if CPL on target |
Alle Schwellen Empfehlungrecommendation: Erfahrungswerte, keine Google-Vorgaben.
All thresholds Empfehlungrecommendation: rules of thumb, not Google rules.
Saison: wann das Budget wo hingehörtSeason: where the budget belongs when
| SuchbegriffSearch term | Höchster Monat (Index)Peak month (index) | Tiefster Monat (Index)Lowest month (index) |
|---|---|---|
| „wespennest entfernen“ | Jun (363)Jun (363) | Feb (5)Feb (5) |
| „kammerjäger“ | Jul (142)Jul (142) | Feb (63)Feb (63) |
| „rohrreinigung“ | Jan (124)Jan (124) | Mai (91)May (91) |
| „elektriker notdienst“ | Dez (136)Dec (136) | Jul (81)Jul (81) |
gemessenmeasured Index 100 = Monatsdurchschnitt Okt. 2024 – Sep. 2026 (OpenSEO). Kammerjäger-Budgets folgen der Saison, Rohrreinigung und Elektro bleiben ganzjährig gleichmäßig.
gemessenmeasured Index 100 = monthly average Oct 2024 – Sep 2026 (OpenSEO). Pest-control budgets follow the season; drain cleaning and electrical stay even all year.
33Fahrplan: 5 Stufen mit GatesRoadmap: 5 stages with gates
Alles messbar und regelkonform, bevor 1 € ausgegeben wird.Everything measurable and compliant before €1 is spent.
Zur Stufe ›Go to stage ›1 Branche × 1–3 Kernstädte. Beweisen, dass Anrufe zu tragbaren Kosten kommen.1 niche × 1–3 core cities. Prove that calls come at an affordable cost.
Zur Stufe ›Go to stage ›Gewinner-Seite, -Anzeigen und -Keywords finden und als Vorlage einfrieren.Find the winning page, ads and keywords and freeze them as a template.
Zur Stufe ›Go to stage ›Vorlage per Editor auf weitere Städte übertragen: Stufe A → B → weitere bediente Städte.Copy the template to more cities via Editor: tier A → B → further served cities.
Zur Stufe ›Go to stage ›Viele Kampagnen mit Regeln, Portfolio-Geboten und Dashboard steuern.Run many campaigns with rules, portfolio bidding and a dashboard.
Zur Stufe ›Go to stage ›Alle Schwellen sind Empfehlungen aus der Praxis, keine Google-Vorgaben. CPL-Ziele kommen aus dem Rechner (max. tragbarer CPL).
All thresholds are recommendations from practice, not Google rules. CPL targets come from the calculator (max affordable CPL).
Stufe 0 · FundamentStage 0 · Foundation
Ziel: Recht, Website, Tracking, Konto und Editor-Vorlage sind fertig und getestet.
Goal: legal, website, tracking, account and Editor template are done and tested.
Warum: Fehler im Fundament kosten später in jeder Stadt Geld. Einmal sauber gebaut, lässt es sich beliebig kopieren.Why: Foundation errors later cost money in every city. Built cleanly once, it can be copied any number of times.
So geht’s: Voraussetzungen prüfen → Website + Preise + Impressum → Konto + Bestätigung → Tracking + Consent → Editor-Vorlage → Callcenter.How: Check requirements → website + prices + Impressum → account + verification → tracking + consent → Editor template → call centre.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Tag 1: Voraussetzungen und Nachweise prüfen (Richtlinien & Recht).
- Tag 1–5: Website nach der Checkliste bauen, Preisseite und Impressum (Website & Landingpages).
- Tag 2: Google-Ads-Konto anlegen, Zahlungsprofil auf die Firma, Werbetreibenden-Bestätigung starten.
- Tag 5–7: GTM, Consent Mode v2, Conversions, Website-Anrufe einrichten (Tracking).
- Tag 7: Testanruf ≥ 60 s und Testformular; beides muss in Google Ads erscheinen.
- Tag 8: Pilot-Kampagne anlegen (z. B. im Google Ads Editor) und pausiert hochladen.
- Tag 9: Ausschlusslisten verknüpfen, Assets anlegen, Einstellungen prüfen.
- Tag 10: Callcenter einweisen, 3 Testanrufe (Lead-Bearbeitung).
- Day 1: check requirements and proof (Policy & legal).
- Days 1–5: build the website per the checklist, price page and Impressum (Website & landing pages).
- Day 2: create the Google Ads account, payments profile in the company name, start advertiser verification.
- Days 5–7: set up GTM, Consent Mode v2, conversions, website calls (Tracking).
- Day 7: test call ≥ 60 s and test form; both must appear in Google Ads.
- Day 8: create the pilot campaign (e.g. in Google Ads Editor) and post it paused.
- Day 9: link negative lists, create assets, check settings.
- Day 10: brief the call centre, 3 test calls (Lead handling).
Gate 0 → 1Gate 0 → 1
| KriteriumCriterion | SchwelleThreshold | ArtType |
|---|---|---|
| Go-live-Tor (7 Punkte)Go-live gate (7 points) | alle erfülltall met | Empfehlungrecommendation |
| Testanruf ≥ 60 s in „Anrufdetails“ sichtbarTest call ≥ 60 s visible in “call details” | jayes | Empfehlungrecommendation |
| Werbetreibenden-BestätigungAdvertiser verification | gestartet oder abgeschlossenstarted or completed | Empfehlungrecommendation |
| Budget je Pilot-KampagneBudget per pilot campaign | ≥ 5 Klicks/Tag zum Median-CPC (siehe Gebote & Budget)≥ 5 clicks/day at median CPC (see Bidding & budget) | Schätzungestimate |
- Starten, bevor Anrufe gemessen werden: Die Lernphase läuft dann ohne Signal.
- „24/7“ in Anzeigen, obwohl nachts niemand abnimmt.
- Texte von einer anderen Domain kopieren: wirkt dünn und kann gegen Google-Regeln verstoßen.
- Launching before calls are measured: the learning phase then runs without signal.
- “24/7” in ads although nobody answers at night.
- Copying text from another domain: looks thin and can breach Google rules.
Stufe 1 · PilotStage 1 · Pilot
Ziel: In 1 Branche und 1–3 Kernstädten beweisen, dass Anrufe ≥ 60 s zu einem tragbaren CPL kommen und das Telefon sie in Aufträge verwandelt.
Goal: in 1 niche and 1–3 core cities, prove that calls ≥ 60 s come at an affordable CPL and the phone turns them into jobs.
Warum: Ein kleiner, enger Pilot sammelt schnell genug Conversions für klare Entscheidungen. Viele Städte gleichzeitig verteilen das Budget zu dünn.Why: A small, tight pilot gathers enough conversions quickly for clear decisions. Many cities at once spread the budget too thin.
So geht’s: Eine Notdienst-/Akut-Kampagne für Stufe A aktivieren, Klicks maximieren mit CPC-Limit, täglich Suchbegriffe und Anrufe prüfen, 7 Tage keine großen Änderungen.How: Enable one emergency/acute campaign for tier A, maximise clicks with a CPC cap, check search terms and calls daily, no big changes for 7 days.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Pilot anlegen: 1 Branche, nur Leistungen „Notdienst/akut“, 1–3 Städte als Stufe A, plus eine Gruppe „Allgemein“.
- Budget = Ergebnis aus dem Rechner für das Lead-Ziel des Piloten (mindestens das Mindestbudget).
- Gebotsstrategie: Klicks maximieren, max. CPC = Median-CPC der Kernstadt × 1,3.
- Kampagne aktivieren, sobald Gate 0 erfüllt ist.
- Tag 1–14: täglich die 14-Tage-Routine (Suchbegriffe, Anrufdetails, Genehmigungen).
- Ab ~15 Conversions: auf „Conversions maximieren“ wechseln (Gebote & Budget).
- Planbare Leistungen erst ab Woche 3 als zweite Kampagne dazunehmen, wenn das Budget reicht.
- Nach 4 Wochen: Gate 1 → 2 prüfen.
- Set up the pilot: 1 niche, only “emergency/acute” services, 1–3 cities as tier A, plus a “General” group.
- Budget = calculator result for the pilot’s lead target (at least the minimum budget).
- Bid strategy: maximise clicks, max CPC = core-city median CPC × 1.3.
- Enable the campaign once gate 0 is met.
- Days 1–14: daily 14-day routine (search terms, call details, approvals).
- From ~15 conversions: switch to “maximise conversions” (Bidding & budget).
- Add planned services as a second campaign from week 3 if the budget allows.
- After 4 weeks: check gate 1 → 2.
Gate 1 → 2Gate 1 → 2
| KriteriumCriterion | SchwelleThreshold | ArtType |
|---|---|---|
| Conversions (Anrufe ≥ 60 s) im PilotConversions (calls ≥ 60 s) in the pilot | ≥ 30 | Empfehlungrecommendation |
| CPLCPL | ≤ 1,2 × max. tragbarer CPL≤ 1.2 × max affordable CPL | Annahmeassumption |
| Annahmequote CallcenterCall-centre answer rate | ≥ 90 % | Empfehlungrecommendation |
| Kostenanteil passender SuchbegriffeCost share of fitting search terms | ≥ 85 % | Empfehlungrecommendation |
| Laufzeit / RichtlinienRuntime / policy | ≥ 4 Wochen, keine offenen Ablehnungen≥ 4 weeks, no open disapprovals | Empfehlungrecommendation |
- Zu viele Städte oder Leistungen auf einmal.
- Täglich Gebote und Budgets ändern: jede große Änderung startet das Lernen neu.
- Nach Klicks statt nach Anrufen ≥ 60 s und Aufträgen urteilen.
- Too many cities or services at once.
- Changing bids and budgets daily: every big change restarts learning.
- Judging by clicks instead of calls ≥ 60 s and jobs.
Stufe 2 · Vorlage beweisenStage 2 · Prove the template
Ziel: Die beste Landingpage, die besten Anzeigentexte und die sauberste Keyword-Liste finden und als „Vorlage v1“ festhalten. Diese Vorlage wird später in jede Stadt kopiert.
Goal: find the best landing page, ad copy and cleanest keyword list and record them as “template v1”. This template is later copied into every city.
Warum: Was in einer Stadt bewiesen ist, skaliert. Was nicht bewiesen ist, multipliziert nur die Fehler.Why: What is proven in one city scales; what is not proven only multiplies the mistakes.
So geht’s: Ein Landingpage-Experiment, Anzeigentexte nach Leistung bereinigen, Keywords kürzen, Auftragsimport starten, dann die Vorlage als Editor-Datei sichern.How: One landing-page experiment, prune ad copy by performance, trim keywords, start job import, then save the template as an Editor file.
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Landingpage-Experiment starten (Testen): eine Änderung, 50/50, bis zur Gewinnerregel.
- Anzeigen: In der Asset-Ansicht der RSA Titel mit wenig Leistung ersetzen. Jeweils nur 2–3 Titel auf einmal tauschen.
- Keywords: Begriffe ohne Conversion nach 2× CPL Kosten pausieren; gute Suchbegriffe als „Genau passend“ aufnehmen.
- Gebuchte Aufträge wöchentlich importieren (Tracking).
- Bei ≥ 30 Conversions/30 Tage: Ziel-CPA = tatsächlicher CPL.
- Vorlage sichern: Kampagne im Editor exportieren (CSV) und als „Vorlage v1 – [Branche] – [Datum]“ ablegen; Gewinner-Seite als Seitenvorlage im Astro-Projekt.
- Start a landing-page experiment (Testing): one change, 50/50, until the winner rule.
- Ads: in the RSA asset view replace low-performing headlines; swap only 2–3 at a time.
- Keywords: pause terms with no conversion after 2× CPL in cost; add good search terms as exact match.
- Import booked jobs weekly (Tracking).
- At ≥ 30 conversions/30 days: target CPA = actual CPL.
- Save the template: export the campaign in the Editor (CSV) and file it as “template v1 – [niche] – [date]”; the winning page as a page template in the Astro project.
Gate 2 → 3Gate 2 → 3
| KriteriumCriterion | SchwelleThreshold | ArtType |
|---|---|---|
| Gewinner-LandingpageWinning landing page | nach Gewinnerregel bestimmtdetermined by the winner rule | Empfehlungrecommendation |
| CPL-StabilitätCPL stability | 2 aufeinanderfolgende 14-Tage-Fenster innerhalb ±20 %2 consecutive 14-day windows within ±20% | Empfehlungrecommendation |
| AuftragsimportJob import | läuft ≥ 4 Wochen; Buchungsquote bekanntrunning ≥ 4 weeks; booking rate known | Empfehlungrecommendation |
| Kosten pro gebuchtem AuftragCost per booked job | ≤ Auftragswert × Marge≤ job value × margin | Annahmeassumption |
- Mehrere Dinge gleichzeitig testen: dann weiß niemand, was gewirkt hat.
- Tests nach einer Woche abbrechen, weil eine Variante „vorne“ liegt.
- Domains testen, bevor die Seite selbst optimiert ist.
- Testing several things at once: then nobody knows what worked.
- Stopping tests after a week because one variant is “ahead”.
- Testing domains before the page itself is optimised.
Stufe 3 · Rollout in StädtewellenStage 3 · Roll out in city waves
Ziel: Die Vorlage in Wellen auf weitere Städte übertragen: Welle 1 = restliche Stufe-A-Städte, Welle 2 = Stufe B, Welle 3 = weitere Städte, nur wenn der Betrieb dort wirklich arbeitet (eigener Standort oder echtes Einsatzgebiet).
Goal: copy the template to more cities in waves: wave 1 = remaining tier-A cities, wave 2 = tier B, wave 3 = further cities, only if the business really works there (own location or real service area).
Warum: Wellen halten das Risiko klein: Jede Welle wird nach 3 Wochen bewertet, bevor die nächste startet.Why: Waves keep the risk small: each wave is judged after 3 weeks before the next starts.
So geht’s: Vorlage auf neue Städte kopieren (Label „W2“) → prüfen → hochladen → nach 3 Wochen Wellen-Gate.How: Copy the template to new cities (label “W2”) → check → post → wave gate after 3 weeks.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
- Stadtseiten der Welle bauen (echte Inhalte je Stadt, siehe Website).
- Vorlage v1 für die neuen Städte duplizieren (gleiche Leistungen; Stadt in Keywords, Titel 1 und finaler URL tauschen), Label „W2“.
- Neue Städte Stufe A oder B zuordnen; Gewinner-Texte unverändert lassen.
- In Wellen hochladen (siehe Kontostruktur), Ausschlusslisten verknüpfen, Sicherung exportieren.
- Neue Städte kommen in die bestehende Stufen-Kampagne (eigene Anzeigengruppen), nicht in neue Mini-Kampagnen.
- Budget der Kampagne um den Anteil der neuen Städte erhöhen (Rechner je Stadt).
- Nach 3 Wochen: Wellen-Gate prüfen; schwache Städte pausieren oder in Stufe B zusammenlegen.
- Build the wave’s city pages (real content per city, see Website).
- Duplicate template v1 for the new cities (same services; swap the city in keywords, headline 1 and final URL), label “W2”.
- Assign new cities to tier A or B; keep the winning copy unchanged.
- Post in waves (see Account structure), link negative lists, export a backup.
- New cities go into the existing tier campaign (own ad groups), not into new mini-campaigns.
- Raise the campaign budget by the new cities’ share (calculator per city).
- After 3 weeks: check the wave gate; pause weak cities or merge them into tier B.
Gate je Welle (nach 3 Wochen)Gate per wave (after 3 weeks)
| KriteriumCriterion | SchwelleThreshold | ArtType |
|---|---|---|
| Conversion-Rate der Wellen-StädteConversion rate of wave cities | ≥ 70 % der Pilot-Rate≥ 70% of the pilot rate | Empfehlungrecommendation |
| CPL der WelleWave CPL | ≤ 1,2 × Ziel-CPL≤ 1.2 × target CPL | Empfehlungrecommendation |
| KapazitätCapacity | Aufträge/Tag ≤ Kapazität des Betriebsjobs/day ≤ business capacity | Annahmeassumption |
- Städte bewerben, in denen niemand vor Ort ist: Fehl-Leads und Irreführung.
- Für jede Stadt eine eigene Kampagne: zu wenig Conversions je Kampagne für Smart Bidding.
- Neue Welle starten, bevor die letzte bewertet ist.
- Advertising cities with nobody on site: junk leads and misrepresentation.
- A separate campaign for every city: too few conversions per campaign for Smart Bidding.
- Starting a new wave before the last one is judged.
Stufe 4 · Portfolio aus vielen KampagnenStage 4 · Portfolio of many campaigns
Ziel: 20, 50 oder mehr Kampagnen mit festen Regeln führen: Portfolio-Gebote je Branche × Dringlichkeit, gemeinsame Ausschlusslisten, Labels, ein Dashboard und automatische Warnungen.
Goal: run 20, 50 or more campaigns with fixed rules: portfolio bidding per niche × urgency, shared negative lists, labels, one dashboard and automatic alerts.
Warum: Ab vielen Kampagnen entscheidet die Steuerung, nicht die einzelne Kampagne. Feste Regeln verhindern, dass kleine Kampagnen verhungern oder Budget verbrennen.Why: With many campaigns, control matters more than the single campaign. Fixed rules stop small campaigns from starving or burning budget.
So geht’s: Portfolio-Ziel-CPA je Branche × Dringlichkeit, gemeinsame Budgets nur für ähnliche Kampagnen, Labels, Dashboard, Regeln; vierteljährlich zusammenlegen oder aufteilen.How: Portfolio target CPA per niche × urgency, shared budgets only for similar campaigns, labels, dashboard, rules; consolidate or split quarterly.
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Tools → Budgets und Gebote → Gebotsstrategien → +: Portfolio „Ziel-CPA“ je Branche × Dringlichkeit (z. B. „PF_RR_NOT“), Kampagnen zuordnen (Kontostruktur).
- Gemeinsames Budget nur für Kampagnen mit ähnlichem CPC und gleicher Priorität; Google empfiehlt die Kombination mit Portfolio-Geboten.
- Labels für Branche, Stufe, Welle, Domain und Test anlegen (Namenskonvention).
- Dashboard in Looker Studio aufbauen und Warnregeln einrichten (Reporting).
- Vierteljährlich: Kampagnen mit < 15 Conversions/30 Tage zusammenlegen; Städte mit ≥ 30 Conversions/30 Tage und eigenem Budgetbedarf in eine eigene Kampagne heben.
- Zweiten Kanal prüfen (Microsoft Ads, LSA; siehe Weitere Kanäle).
- Tools → Budgets and bidding → Bid strategies → +: portfolio “target CPA” per niche × urgency (e.g. “PF_RR_NOT”), assign campaigns (Account structure).
- Shared budget only for campaigns with similar CPC and the same priority; Google recommends combining it with portfolio bidding.
- Create labels for niche, tier, wave, domain and test (naming convention).
- Build the Looker Studio dashboard and set up alert rules (Reporting).
- Quarterly: merge campaigns with < 15 conversions/30 days; lift cities with ≥ 30 conversions/30 days and their own budget needs into their own campaign.
- Check a second channel (Microsoft Ads, LSA; see Other channels).
Dauerhafte SteuergrößenOngoing control metrics
| KriteriumCriterion | SchwelleThreshold | ArtType |
|---|---|---|
| Conversions je KampagneConversions per campaign | ≥ 15 / 30 Tage, sonst zusammenlegen≥ 15 / 30 days, otherwise merge | Empfehlungrecommendation |
| CPL je Branche × DringlichkeitCPL per niche × urgency | ≤ Ziel-CPA des Portfolios≤ portfolio target CPA | Annahmeassumption |
| Kosten pro gebuchtem AuftragCost per booked job | ≤ Auftragswert × Marge≤ job value × margin | Annahmeassumption |
- Hunderte Mini-Kampagnen ohne Daten: Smart Bidding lernt nicht.
- Ein gemeinsames Budget für teure und günstige Kampagnen: die teuren verdrängen die anderen.
- Kein Archiv vor großen Editor-Änderungen.
- Hundreds of mini-campaigns without data: Smart Bidding can’t learn.
- One shared budget for expensive and cheap campaigns: the expensive ones crowd out the rest.
- No archive before big Editor changes.
44Die perfekte Kampagne in 10 SchrittenThe perfect campaign in 10 steps
- 1Keyword-RechercheKeyword research
Start-Listen aus dem Playbook + Keyword-Planer je Stadt; nach Absichtsstufe sortieren; DIY/Jobs sofort ausschließen.Starter lists from the playbook + Keyword Planner per city; sort by intent tier; exclude DIY/jobs immediately. - 2Anzeigengruppen bauenBuild ad groups
Je Stadt × Leistung eine Gruppe mit 3–8 Keywords in „Passende Wortgruppe“ und „Genau passend“ plus eine Gruppe „Allgemein“ ohne Stadt.Per city × service one group with 3–8 keywords in phrase and exact, plus one “General” group without a city. - 3Responsive Suchanzeige schreibenWrite the responsive search ad
15 Titel, 4 Beschreibungen, Stadt in Titel 1 (angeheftet), Preise und Qualifikation in weiteren Titeln, alles belegbar.15 headlines, 4 descriptions, city in headline 1 (pinned), prices and qualification in other headlines, everything provable. - 4AssetsAssets
Anruf, 4–6 Sitelinks, Zusatzinfos, Snippets, Preise, Bilder, Name + Logo.Call, 4–6 sitelinks, callouts, snippets, prices, images, name + logo. - 5EinstellungenSettings
Nur Google-Suche, Standortoption „Präsenz“, Sprachen DE + EN, Werbezeitplan, automatische Empfehlungen aus.Google Search only, location option “Presence”, languages DE + EN, ad schedule, auto-apply recommendations off. - 6AusschlüsseNegatives
Gemeinsame Listen „Allgemein“ + „Branche“ + „Städte außerhalb“ anlegen und mit allen Kampagnen verknüpfen.Create shared lists “General” + “Niche” + “cities outside” and link them to all campaigns. - 7Gebote & BudgetBidding & budget
Klicks maximieren mit CPC-Limit, Budget aus dem Rechner; Wechsel nach Datenlage.Maximise clicks with CPC cap, budget from the calculator; switch based on data. - 8Tracking-CheckTracking check
Testanruf ≥ 60 s, Testformular, Tag Assistant, Conversion-Status prüfen.Test call ≥ 60 s, test form, Tag Assistant, check conversion status. - 9LaunchLaunch
Editor: Änderungen prüfen → hochladen → im Konto Status prüfen → aktivieren.Editor: check changes → post → check status in the account → enable. - 10Die ersten 14 TageThe first 14 days
Täglich Suchbegriffe, Anrufe, Budget und Genehmigungen prüfen; nur Ausschlüsse und Fehler korrigieren, keine großen Umbauten.Daily: search terms, calls, budget and approvals; fix only negatives and errors, no big rebuilds.
Jeder Schritt im DetailEvery step in detail
Warum: Nur Begriffe mit Auftragsabsicht kaufen; Stadt-Varianten sind günstiger zu steuern als breite Begriffe.Why: Only buy terms with job intent; city variants are easier to steer than broad terms.
So geht’s: Start-Listen aus dem Playbook + Keyword-Planer je Stadt; nach Absichtsstufe sortieren; DIY/Jobs sofort ausschließen.How: Starter lists from the playbook + Keyword Planner per city; sort by intent tier; exclude DIY/jobs immediately.
Weiterlesen – alle 5 SchritteRead more – all 5 steps
- Start-Keywords der Branche aus Markt, Keywords & Ausschlüsse kopieren.
- Keyword-Planer: Tools → Planung → Keyword-Planer → Neue Keywords entdecken, Standort = Stadt, Sprache Deutsch.
- Ergebnisse nach Absicht einordnen: Notfall / Leistung / Preis / DIY (ausschließen).
- Je Leistung 3–8 Begriffe mit Stadt („rohrreinigung essen“) und 2–4 ohne Stadt („rohrreinigung notdienst“) auswählen.
- Liste je Leistung als Vorlage speichern.
- Copy the niche’s starter keywords from Market, keywords & negatives.
- Keyword Planner: Tools → Planning → Keyword Planner → Discover new keywords, location = city, language German.
- Sort results by intent: emergency / service / price / DIY (exclude).
- Per service pick 3–8 terms with city (“rohrreinigung essen”) and 2–4 without (“rohrreinigung notdienst”).
- Save the list per service as a template.
Warum: Eine Anzeigengruppe = eine Leistung in einer Stadt. So passen Suche, Anzeige und Seite genau zusammen.Why: One ad group = one service in one city, so search, ad and page match exactly.
So geht’s: Je Stadt × Leistung eine Gruppe mit 3–8 Keywords in „Passende Wortgruppe“ und „Genau passend“ plus eine Gruppe „Allgemein“ ohne Stadt.How: Per city × service one group with 3–8 keywords in phrase and exact, plus one “General” group without a city.
Weiterlesen – alle 5 SchritteRead more – all 5 steps
- Namen nach Konvention:
RR_NOT_Essen_WC verstopft. - Keywords je Gruppe nur zu einer Leistung, jeweils als Phrase und Exact.
- Keine Keywords mehrfach in verschiedenen Gruppen derselben Kampagne.
- Gruppe „Allgemein“ nimmt stadtlose Suchen auf; die Stadt kommt über die Standort-Einfügung in die Anzeige.
- Bei vielen Städten wird diese Struktur per Google Ads Editor in einem Schritt angelegt.
- Names per convention:
RR_NOT_Essen_WC verstopft. - Keywords per group for one service only, each as phrase and exact.
- No duplicate keywords across groups of the same campaign.
- The “General” group takes city-less searches; the city enters the ad via location insertion.
- With many cities this structure is created in one step via Google Ads Editor.
Warum: Die Anzeige entscheidet über Klickrate und Qualitätsfaktor. Stadt und Leistung im ersten Titel erhöhen die Relevanz.Why: The ad decides CTR and Quality Score. City and service in headline 1 raise relevance.
So geht’s: 15 Titel, 4 Beschreibungen, Stadt in Titel 1 (angeheftet), Preise und Qualifikation in weiteren Titeln, alles belegbar.How: 15 headlines, 4 descriptions, city in headline 1 (pinned), prices and qualification in other headlines, everything provable.
Weiterlesen – alle 5 SchritteRead more – all 5 steps
- Texte aus Anzeigen & Assets übernehmen.
- Titel 1 = Leistung + Stadt, an Position 1 anheften.
- Gruppe „Allgemein“: ein Titel mit
{LOCATION(City)}; Google verlangt mindestens 3 Titel ohne Einfügung. - Anzeigeneffektivität mindestens „Gut“.
- Finale URL = Stadt-/Leistungsseite.
- Take copy from Ads & assets.
- Headline 1 = service + city, pinned to position 1.
- “General” group: one headline with
{LOCATION(City)}; Google requires at least 3 headlines without insertion. - Ad strength at least “Good”.
- Final URL = city/service page.
Warum: Assets vergrößern die Anzeige und bringen den Anruf-Button direkt in die Suche.Why: Assets enlarge the ad and put the call button right into the search results.
So geht’s: Anruf, 4–6 Sitelinks, Zusatzinfos, Snippets, Preise, Bilder, Name + Logo.How: Call, 4–6 sitelinks, callouts, snippets, prices, images, name + logo.
Weiterlesen – alle 5 SchritteRead more – all 5 steps
- Anruf-Asset mit echter Firmennummer und Werbezeitplan.
- Sitelinks: Preise, Notdienst, 2 Leistungen, Qualifikation, Einsatzgebiet.
- Preis-Asset identisch mit /preise/.
- Assets auf Kontoebene anlegen, damit neue Kampagnen sie erben; Abweichungen auf Kampagnenebene.
- Details: Anzeigen & Assets.
- Call asset with the real company number and ad schedule.
- Sitelinks: prices, emergency, 2 services, qualification, service area.
- Price asset identical to /preise/.
- Create assets at account level so new campaigns inherit them; exceptions at campaign level.
- Details: Ads & assets.
Warum: Falsche Standardeinstellungen (Partner, Display, „Präsenz oder Interesse“) kosten in lokalen Branchen viel Geld.Why: Wrong defaults (partners, Display, “presence or interest”) cost a lot in local niches.
So geht’s: Nur Google-Suche, Standortoption „Präsenz“, Sprachen DE + EN, Werbezeitplan, automatische Empfehlungen aus.How: Google Search only, location option “Presence”, languages DE + EN, ad schedule, auto-apply recommendations off.
Weiterlesen – alle 4 SchritteRead more – all 4 steps
- Einstellungstabelle in Kontostruktur Punkt für Punkt durchgehen.
- Im Editor mehrere Kampagnen gleichzeitig markieren und Einstellungen gemeinsam setzen.
- Werbezeitplan nur mit besetzten Zeiten.
- AI Max und automatisch erstellte Assets aus.
- Go through the settings table in Account structure point by point.
- In the Editor select several campaigns and set settings together.
- Ad schedule only with staffed hours.
- AI Max and automatically created assets off.
Warum: Ohne Ausschlüsse fließt in DIY- und Job-Branchen schnell ein Drittel des Budgets in falsche Suchen.Why: Without negatives, a large share of budget quickly flows to wrong searches in DIY- and job-heavy niches.
So geht’s: Gemeinsame Listen „Allgemein“ + „Branche“ + „Städte außerhalb“ anlegen und mit allen Kampagnen verknüpfen.How: Create shared lists “General” + “Niche” + “cities outside” and link them to all campaigns.
Weiterlesen – alle 4 SchritteRead more – all 4 steps
- Listen aus Keywords & Ausschlüsse.
- Editor: Gemeinsame Bibliothek → Listen auszuschließender Keywords.
- Mit jeder neuen Kampagne verknüpfen (auch bei jeder Welle).
- Wettbewerber-Namen aus dem Suchbegriffsbericht ergänzen.
- Lists from Keywords & negatives.
- Editor: Shared library → Negative keyword lists.
- Link to every new campaign (also with every wave).
- Add competitor names from the search-term report.
Warum: Ohne Conversion-Historie braucht Smart Bidding Leitplanken.Why: Without conversion history, Smart Bidding needs guard rails.
So geht’s: Klicks maximieren mit CPC-Limit, Budget aus dem Rechner; Wechsel nach Datenlage.How: Maximise clicks with CPC cap, budget from the calculator; switch based on data.
Weiterlesen – alle 3 SchritteRead more – all 3 steps
- Budget: Rechner (Lead-Ziel → Monatsbudget ÷ 30,4).
- Max. CPC = Median-CPC × 1,3.
- Phasen und Wechselregeln: Gebote & Budget.
- Budget: calculator (lead target → monthly budget ÷ 30.4).
- Max CPC = median CPC × 1.3.
- Phases and switch rules: Bidding & budget.
Warum: Eine Kampagne ohne funktionierende Conversions optimiert ins Leere.Why: A campaign without working conversions optimises into the void.
So geht’s: Testanruf ≥ 60 s, Testformular, Tag Assistant, Conversion-Status prüfen.How: Test call ≥ 60 s, test form, Tag Assistant, check conversion status.
Weiterlesen – alle 5 SchritteRead more – all 5 steps
- Seite mit
#google-wcc-debugöffnen: Google-Nummer sichtbar? - Testanruf ≥ 60 s; nach einigen Stunden in Berichte → Anrufdetails.
- Testformular → /danke/ → Conversion „Formular“ im Tag Assistant.
- Consent-Banner: vor der Wahl „denied“, danach „granted“.
- Details: Tracking & Consent.
- Open the page with
#google-wcc-debug: Google number visible? - Test call ≥ 60 s; after a few hours in Reports → Call details.
- Test form → /danke/ → “Form” conversion in Tag Assistant.
- Consent banner: “denied” before choosing, “granted” after.
- Details: Tracking & consent.
Warum: Ein kontrollierter Start verhindert, dass abgelehnte Anzeigen oder falsche Einstellungen die erste Woche kosten.Why: A controlled launch stops disapproved ads or wrong settings from costing the first week.
So geht’s: Editor: Änderungen prüfen → hochladen → im Konto Status prüfen → aktivieren.How: Editor: check changes → post → check status in the account → enable.
Weiterlesen – alle 4 SchritteRead more – all 4 steps
- Editor: Kontoarchiv exportieren, dann „Änderungen prüfen“ und Fehler beheben.
- Hochladen; Kampagnen bleiben pausiert.
- Im Konto: Anzeigenstatus „Genehmigt“ abwarten (meist innerhalb eines Werktags).
- Gate 0 noch einmal durchgehen, dann aktivieren, idealerweise an einem Werktagmorgen.
- Editor: export an account archive, then “Check changes” and fix errors.
- Post; campaigns stay paused.
- In the account: wait for ad status “Approved” (usually within a business day).
- Go through gate 0 once more, then enable, ideally on a weekday morning.
Warum: In den ersten zwei Wochen entscheidet sich, ob Budget in Aufträge oder in Fehlklicks fließt.Why: The first two weeks decide whether budget flows into jobs or wasted clicks.
So geht’s: Täglich Suchbegriffe, Anrufe, Budget und Genehmigungen prüfen; nur Ausschlüsse und Fehler korrigieren, keine großen Umbauten.How: Daily: search terms, calls, budget and approvals; fix only negatives and errors, no big rebuilds.
Weiterlesen – alle 5 SchritteRead more – all 5 steps
- Tag 1: Anzeigen genehmigt? Impressionen vorhanden? Anrufe kommen an?
- Täglich: Suchbegriffe → Ausschlüsse; Anrufdetails → verpasste Anrufe ans Callcenter.
- Tag 3: Budget ausgeschöpft vor 18 Uhr? Dann Zeitplan prüfen statt Budget sofort zu erhöhen.
- Tag 7: erste Bilanz: CPL, Anteil Anrufe ≥ 60 s, Annahmequote; erst jetzt CPC-Limit ±20 % anpassen.
- Tag 14: schwache Keywords pausieren, gute als Exact ergänzen; Gate 1 vorbereiten.
- Day 1: ads approved? impressions? calls arriving?
- Daily: search terms → negatives; call details → missed calls to the call centre.
- Day 3: budget spent before 6 pm? Check the schedule instead of raising the budget at once.
- Day 7: first review: CPL, share of calls ≥ 60 s, answer rate; only now adjust the CPC cap by ±20%.
- Day 14: pause weak keywords, add good ones as exact; prepare gate 1.
5Kontostruktur für viele StädteAccount structure for many cities
| ModellModel | VorteilePros | NachteileCons | UrteilVerdict |
|---|---|---|---|
| Kampagne je StadtCampaign per city | Budget und Zeiten je Stadt steuerbar; einfache Berichtebudget and hours per city; simple reports | bei 25 Städten × 2 Dringlichkeiten = 50 Kampagnen mit je wenigen Conversions; Smart Bidding lernt langsamwith 25 cities × 2 urgencies = 50 campaigns with few conversions each; Smart Bidding learns slowly | nur für Top-Städtetop cities only |
| Kampagne je Leistung, Städte als GruppenCampaign per service, cities as groups | viele Conversions je Kampagnemany conversions per campaign | kein Budget je Stadt; teure Städte verdrängen günstigeno budget per city; expensive cities crowd out cheap ones | teilweisepartly |
| Kampagne je Branche × Dringlichkeit × Stufe, Städte als GruppenCampaign per niche × urgency × tier, cities as groups | genug Conversions, Budget je Stufe, Notdienst-Zeiten getrennt, einfache Wellenenough conversions, budget per tier, emergency hours separate, simple waves | Stadt-Budget nur über Stufen oder Ausgliederungcity budget only via tiers or promotion | Empfehlungrecommended |
Wenn die Stadt allein ≥ 30 Conversions in 30 Tagen bringt und einen eigenen Grund hat: anderes Budget (deutlich anderer CPC), andere Zeiten oder eine eigene Kapazitätsgrenze (z. B. eigener Standort). Sonst bleibt sie Anzeigengruppe. Kampagnen mit < 15 Conversions in 30 Tagen werden zusammengelegt.
When the city alone brings ≥ 30 conversions in 30 days and has its own reason: a different budget (clearly different CPC), different hours or its own capacity limit (e.g. its own location). Otherwise it stays an ad group. Campaigns with < 15 conversions in 30 days are merged.
Portfolio-Gebotsstrategie „PF_RR_NOT“ (Ziel-CPA) über RR_NOT_A und RR_NOT_B; gemeinsames Budget nur, wenn beide ähnliche CPCs haben.
Portfolio bid strategy “PF_RR_NOT” (target CPA) across RR_NOT_A and RR_NOT_B; shared budget only if both have similar CPCs.
Namenskonvention und LabelsNaming convention and labels
| EbeneLevel | MusterPattern | BeispielExample |
|---|---|---|
| KampagneCampaign | [BR]_[DR]_[STUFE oder STADT]_[NETZ] | RR_NOT_A_SRCH, RR_ESSEN_SRCH |
| AnzeigengruppeAd group | [BR]_[DR]_[Stadt]_[Leistung] | RR_NOT_Essen_WC verstopft |
| Portfolio-GebotPortfolio bid strategy | PF_[BR]_[DR] | PF_EL_NOT |
| AusschlusslisteNegative list | NEG_[BR]_[Thema] | NEG_ALL_Jobs, NEG_KJ_Produkte |
| LabelsLabels | Welle, Domain, Test, Statuswave, domain, test, status | W2, DOM-b, TEST-LP3, PILOT |
BR = EL/RR/KJ, DR = NOT (Notdienst/akut) oder PLAN (planbar), NETZ = SRCH. Die Konvention ist sortierbar und bleibt auch bei 50+ Kampagnen lesbar; Filter im Editor und in Berichten arbeiten mit „enthält“.
BR = EL/RR/KJ, DR = NOT (emergency/acute) or PLAN (planned), NETZ = SRCH. The convention is sortable and stays readable at 50+ campaigns; filters in the Editor and reports use “contains”.
Portfolio-Gebote und gemeinsame BudgetsPortfolio bidding and shared budgets
- Portfolio-Gebotsstrategie: bündelt die Conversion-Daten mehrerer Kampagnen unter einem Ziel (z. B. Ziel-CPA). Ideal, wenn einzelne Stufen-Kampagnen allein zu wenige Conversions haben.
- Gemeinsames Budget: verschiebt ungenutztes Budget automatisch zu Kampagnen, die am Limit sind. Google nennt die Kombination mit Portfolio-Geboten Best Practice.
- Grenzen: Portfolio-Gebote gibt es für Suche, Display und Shopping. Kampagnen in einem Experiment können kein gemeinsames Budget nutzen.
- Nicht mischen: Notdienst und planbar, oder Branchen mit sehr unterschiedlichen CPCs, gehören nicht in ein Portfolio.
- Portfolio bid strategy: pools the conversion data of several campaigns under one target (e.g. target CPA). Ideal when single tier campaigns have too few conversions on their own.
- Shared budget: automatically moves unused budget to campaigns at their limit. Google calls the combination with portfolio bidding best practice.
- Limits: portfolio strategies exist for Search, Display and Shopping. Campaigns in an experiment can’t use a shared budget.
- Don’t mix: emergency and planned, or niches with very different CPCs, don’t belong in one portfolio.
Google: Gemeinsame Budgets (abgerufen 26.10.2026retrieved 26.10.2026) · Google: Gemeinsame Budgets mit Portfolio-Geboten verknüpfen (abgerufen 26.10.2026retrieved 26.10.2026)
Google: About shared budgets (abgerufen 26.10.2026retrieved 26.10.2026) · Google: Link shared budgets to portfolio bid strategies (abgerufen 26.10.2026retrieved 26.10.2026)
Umsetzung im Google Ads Editor (kurz)Implementation in Google Ads Editor (short)
- Reihenfolge: Kampagnen → Standorte → Anzeigengruppen → Keywords → Anzeigen; danach Ausschlusslisten verknüpfen und Einstellungen (Gebote, „Präsenz“, Sprachen, Zeitplan) setzen.
- Vor jedem Hochladen „Änderungen prüfen“ und nur die Kampagnen einer Welle hochladen; Kampagnen pausiert hochladen, erst nach dem Gate aktivieren.
- Vor und nach jeder Welle ein Kontoarchiv (*.aea) exportieren. Laut Google ist das der einzige Weg zurück nach dem Hochladen.
- Order: campaigns → locations → ad groups → keywords → ads; then link negative lists and set settings (bidding, “Presence”, languages, schedule).
- Before every post run “Check changes” and post only one wave’s campaigns; post paused, enable only after the gate.
- Export an account archive (*.aea) before and after every wave. Per Google, this is the only way back after posting.
Google Ads Editor: Import (abgerufen 27.10.2026retrieved 27.10.2026) · Google Ads Editor: Rückgängig / Archiv (abgerufen 27.10.2026retrieved 27.10.2026)
Google Ads Editor: import (abgerufen 27.10.2026retrieved 27.10.2026) · Google Ads Editor: revert / archive (abgerufen 27.10.2026retrieved 27.10.2026)
Kampagnen-Bauplan je BrancheCampaign blueprint per niche
| KampagneCampaign | AnzeigengruppenAd groups | ZeitenHours | BudgetBudget | LandingpageLanding page |
|---|---|---|---|---|
| EL · Notdienst | Notdienst allgemein · Stromausfall · Sicherung/FIemergency general · power outage · fuse/RCD | nur tatsächlich besetzte Notdienstzeitenonly actually staffed emergency hours | 40 % | /notdienst/ |
| EL · Service · A/B | Elektriker + Stadt · Installation · E-Check · Zählerschrank* · Wallbox*electrician + city · installation · E-Check · meter cabinet* · wallbox* | Mo–Fr 7–19, Sa 8–14Mon–Fri 7–19, Sat 8–14 | 60 % | Stadtseite / Leistungsseitecity page / service page |
| RR · Notdienst · A/B | Rohrreinigung + Stadt · WC verstopft · Abfluss verstopft · Küche/Dusche · Notdienstdrain cleaning + city · toilet blocked · drain blocked · kitchen/shower · emergency | Kernzeiten; Nacht nur bei echtem Bereitschaftsdienstcore hours; night only with real on-call | 75 % | Stadtseitecity page |
| RR · Planbar | Kanal-TV · Kanalreinigung · Dichtheitsprüfung · Hochdruckspülungsewer camera · sewer cleaning · leak test · high-pressure jetting | Mo–Fr 7–18Mon–Fri 7–18 | 25 % | Leistungsseitenservice pages |
| KJ · Akut (Saison) | Wespen · Bettwanzen · Kakerlaken · Ratten akutwasps · bedbugs · cockroaches · acute rats | Mo–Sa 7–20; April–Sept. hochfahrenMon–Sat 7–20; ramp up April–Sept | 50 % (Sommer 70 %)50% (summer 70%) | Schädlingsseitenpest pages |
| KJ · Allgemein | Kammerjäger + Stadt · Schädlingsbekämpfung + Stadt · Kostenpest control + city · cost | Mo–Sa 7–20Mon–Sat 7–20 | 50 % | Stadtseitecity page |
| KJ · Gewerbe | HACCP/Monitoring · Gastro · HausverwaltungHACCP/monitoring · restaurants · property managers | Mo–Fr 8–17Mon–Fri 8–17 | optionaloptional | /gewerbe/ |
* Zählerschrank und Wallbox nur mit Eintrag im Installateurverzeichnis. Die Budgetanteile sind Startwerte (Empfehlung) und werden nach 30 Tagen nach CPL umverteilt.
* Meter cabinet and wallbox only with an installer-register entry. Budget shares are starting values (recommendation) and are reallocated by CPL after 30 days.
Kampagnen-Einstellungen (für alle)Campaign settings (for all)
| EinstellungSetting | WertValue | WarumWhy |
|---|---|---|
| KampagnentypCampaign type | Suche, Ziel „Leads“Search, goal “Leads” | aktive Nachfrageactive demand |
| NetzwerkeNetworks | Suchnetzwerk-Partner aus, Displaynetzwerk ausSearch partners off, Display Network off | Lead-Qualität; Partner frühestens ab Monat 3 testenlead quality; test partners from month 3 at the earliest |
| StandorteLocations | PLZ/Städte im 30-km-Radius; Stufe A und B getrenntpostcodes/cities in 30 km radius; tier A and B separate | Budget dort, wo die Anfahrt kurz istbudget where travel is short |
| StandortoptionenLocation options | „Präsenz““Presence” | nur Menschen im Gebietonly people in the area |
| SprachenLanguages | Deutsch, EnglischGerman, English | Englisch für Zugezogene; Anzeigen bleiben deutschEnglish for newcomers; ads stay German |
| GeboteBidding | Phase 1: Klicks maximieren, max. CPC-LimitPhase 1: maximise clicks, max CPC cap | siehe Gebote & Budgetsee Bidding & budget |
| WerbezeitplanAd schedule | nach echten Besetzungszeitenby real staffed hours | kein Klick ohne Annahmeno click without someone answering |
| Keyword-OptionMatch types | Passende Wortgruppe + Genau passend; Weitgehend ausphrase + exact; broad off | Kontrolle in der Lernphasecontrol during learning |
| AI Max / URL-ErweiterungAI Max / URL expansion | aus (falls angeboten)off (if offered) | Seiten- und Suchbegriffs-Kontrollepage and search-term control |
| Automatisch angewendete EmpfehlungenAuto-applied recommendations | alle ausall off | sonst ergänzt Google Keywords/Budgetsotherwise Google adds keywords/budgets |
| Automatisch erstellte AssetsAutomatically created assets | aus, bis Texte freigegeben sindoff until texts are approved | Policy- und Preisaussagenpolicy and price claims |
| RotationRotation | optimieren (Standard)optimise (default) | – |
Welche Formate wannWhich formats when
| FormatFormat | UrteilVerdict | BegründungReason |
|---|---|---|
| Suche (RSA) + Anruf-AssetSearch (RSA) + call asset | Startstart | Hauptkanal; Anruf direkt aus der Anzeigemain channel; call straight from the ad |
| Reine AnrufanzeigenCall-only ads | nicht mehrno longer | Neuanlage seit Feb. 2026 nicht möglich; Auslieferung endet Feb. 2027no new ones since Feb 2026; serving ends Feb 2027 |
| Performance MaxPerformance Max | ab Monat 4from month 4 | braucht ≥ 30 Conv./Monat + Auftragsimport; Testanteil 20 %needs ≥ 30 conv./month + job import; 20% test share |
| Demand GenDemand Gen | neinno | keine geplante Nachfrage über Bilder/Videono planned demand via images/video |
| Display-RemarketingDisplay remarketing | neinno | Notfall ist nach 1 Tag gelöstthe emergency is solved after 1 day |
| Local Services AdsLocal Services Ads | prüfen ab Monat 3check from month 3 | Eignung je PLZ; braucht Bewertungeneligibility per postcode; needs reviews |
So geht’sHow to do it
Warum: Eine sauber angelegte erste Kampagne spart Wochen an Korrekturen und schützt die Lernphase.Why: A cleanly built first campaign saves weeks of fixes and protects the learning phase.
So geht’s: Neue Kampagne → Leads → Suche → Einstellungen wie Tabelle → Anzeigengruppen aus der Keyword-Liste → RSA + Assets → Budget → pausiert speichern → Go-live-Tor prüfen.How: New campaign → Leads → Search → settings per table → ad groups from the keyword list → RSA + assets → budget → save paused → check the go-live gate.
Weiterlesen – alle 13 SchritteRead more – all 13 steps
- Kampagnen → + → Neue Kampagne → Zielvorhaben Leads → Typ Suche → Conversion-Ziele: nur die zwei Anruf-Aktionen (Kontostandard „Leads“ prüfen).
- Name nach Schema
RR · Notdienst · A · Essen. - Netzwerke: beide Haken entfernen (Suchnetzwerk-Partner, Displaynetzwerk).
- Standorte: Erweiterte Suche → PLZ/Städte der Stufe A eingeben; Standortoptionen → Präsenz.
- Sprachen: Deutsch, Englisch. Gebote: Klicks, „Maximales CPC-Gebotslimit“ = Median-CPC der Kernstadt × 1,3 (aus dem Rechner).
- Werbezeitplan: tatsächliche Besetzungszeiten des Callcenters/Notdienstes.
- AI Max und „Automatisch erstellte Assets“ aus; Keyword-Option Weitgehend nicht verwenden.
- Anzeigengruppen anlegen (je Thema eine), Keywords aus dem Abschnitt Keywords in Klammern/Anführungszeichen einfügen.
- Je Anzeigengruppe 1 RSA (15 Titel, 4 Beschreibungen) aus dem Abschnitt Anzeigen; finale URL = passende Stadt-/Leistungsseite.
- Assets: Anruf (echte Firmennummer, Anrufberichte an, Zeitplan = Werbezeitplan), 4–6 Sitelinks, Callouts, Snippets, Preise.
- Tagesbudget = Monatsbudget aus dem Rechner ÷ 30,4 × Kampagnenanteil.
- Ausschlusslisten verknüpfen: Tools → Freigegebene Bibliothek → Listen auszuschließender Keywords → allgemeine + Branchenliste → auf die Kampagne anwenden.
- Als pausiert speichern. Erst aktivieren, wenn das Go-live-Tor erfüllt ist.
- Campaigns → + → New campaign → objective Leads → type Search → conversion goals: only the two call actions (check the “Leads” account default).
- Name using the scheme
RR · Notdienst · A · Essen. - Networks: untick both (Search partners, Display Network).
- Locations: Advanced search → postcodes/cities of tier A; Location options → Presence.
- Languages: German, English. Bidding: Clicks, “Maximum CPC bid limit” = core-city median CPC × 1.3 (from the calculator).
- Ad schedule: actual staffed hours of the call centre/emergency service.
- AI Max and “automatically created assets” off; don’t use broad match.
- Create ad groups (one per theme), paste keywords from the Keywords section in brackets/quotes.
- Per ad group 1 RSA (15 headlines, 4 descriptions) from the Ads section; final URL = matching city/service page.
- Assets: call (real company number, call reporting on, schedule = ad schedule), 4–6 sitelinks, callouts, snippets, prices.
- Daily budget = monthly budget from the calculator ÷ 30.4 × campaign share.
- Link negative lists: Tools → Shared library → Negative keyword lists → general + niche list → apply to the campaign.
- Save as paused. Only enable once the go-live gate is met.
Warum: Automatisch angewendete Empfehlungen können Weitgehend-Keywords hinzufügen, Budgets erhöhen oder Gebotsstrategien ändern, ohne dass Sie es merken.Why: Auto-applied recommendations can add broad keywords, raise budgets or change bidding without you noticing.
So geht’s: Kampagnen → Empfehlungen → Automatisch anwenden → alle Haken entfernen.How: Campaigns → Recommendations → Auto-apply → untick everything.
Weiterlesen – alle 4 SchritteRead more – all 4 steps
- Im Google-Ads-Konto Kampagnen → Empfehlungen öffnen.
- Oben rechts Automatisch anwenden wählen.
- In allen Reitern (Anzeigen und Assets, Keywords und Ausrichtung, Gebote und Budgets, Wartung) alle Haken entfernen und speichern.
- Monatlich prüfen: Unter Änderungsverlauf darf kein Nutzer „Empfehlungen“ auftauchen.
- In the Google Ads account open Campaigns → Recommendations.
- Top right choose Auto-apply.
- In all tabs (ads and assets, keywords and targeting, bidding and budgets, maintenance) untick everything and save.
- Check monthly: no “Recommendations” user should appear in Change history.
56Landingpages & Domains testenTesting landing pages & domains
| WasWhat | WieHow | RegelRule |
|---|---|---|
| LandingpagesLanding pages | auf derselben Domain, Google-Ads-Experiment 50/50 (finale URL im Testarm ändern)on the same domain, Google Ads experiment 50/50 (change the final URL in the trial arm) | unbegrenztunlimited |
| DomainsDomains | im selben Konto: Kampagnen-Experiment (Testarm mit Domain B) oder nacheinander je 2–4 Wochenin the same account: campaign experiment (trial arm with domain B) or one after another, 2–4 weeks each | wenigefew |
| Parallele DomainsParallel domains | zwei Konten oder zwei Kampagnen desselben Betriebs für dieselben Suchen im selben Gebiettwo accounts or two campaigns of the same business for the same searches in the same area | nienever |
Seit 14.04.2025 verbietet Google, mehr als eine Anzeige für dasselbe Unternehmen in einer einzigen Anzeigenposition zu zeigen („Unfair advantage“). Ein Experiment teilt den Traffic, sodass pro Suche nur ein Arm auftritt. Zwei Konten oder zwei konkurrierende Kampagnen tun das nicht.
Since 14 Apr 2025 Google prohibits showing more than one ad for the same business in a single ad location (“Unfair advantage”). An experiment splits traffic so only one arm appears per search; two accounts or two competing campaigns don’t.
- Jede Domain zeigt im Impressum denselben echten Betrieb. Die Marke ist ein echter Handelsname („… ist ein Angebot der …“), keine erfundenen Inhaber.
- Jede neue Domain braucht eigene Search-Console-Bestätigung für die Website-Anrufe und denselben Consent- und Tracking-Aufbau.
- Eine Domain-Variante ändert nur die Domain/Marke, nicht gleichzeitig Seite und Texte.
- Every domain shows the same real business in the Impressum. The brand is a real trade name (“… is a service of …”), no invented owners.
- Every new domain needs its own Search Console verification for website calls and the same consent and tracking set-up.
- A domain variant changes only the domain/brand, not page and copy at the same time.
Was ein Test kostetWhat a test costs
| BrancheNiche | CPLCPL | 2 Varianten × 30 Leads2 variants × 30 leads | bei 6 Wochen Laufzeitover 6 weeks |
|---|---|---|---|
| ElektrikerElectrician | €37€37 | €2.246€2,246 | €374 / Woche€374 / week |
| RohrreinigungDrain cleaning | €215€215 | €12.925€12,925 | €2.154 / Woche€2,154 / week |
| KammerjägerPest control | €138€138 | €8.276€8,276 | €1.379 / Woche€1,379 / week |
Schätzungestimate Median-CPC gemessenmeasured × 1,3 (neue Domain) ÷ 10 % Conversion-Rate Annahmeassumption. Mit echten Werten aus dem Konto neu rechnen. Bei Rohrreinigung kostet ein sauberer Test fünfstellig, deshalb dort nur Fragen mit großer Wirkung testen.
Schätzungestimate median CPC gemessenmeasured × 1.3 (new domain) ÷ 10% conversion rate Annahmeassumption. Recalculate with real values from the account. In drain cleaning a clean test costs five figures, so only test questions with a big impact there.
TestreihenfolgeTest order
- Hero: Überschrift + Preisbox + Anruf-Button (größter Hebel).
- Vertrauen: echte Fotos, Bewertungen, Qualifikation im sichtbaren Bereich.
- Formular vs. nur Anruf (bei planbaren Leistungen).
- Domain/Marke: Markenname (z. B. „Rohrreinigung Scholl“) vs. beschreibender Name (z. B. „rohrreinigung-essen-…“), nur wenn 1–3 entschieden sind.
- Hero: headline + price box + call button (biggest lever).
- Trust: real photos, reviews, qualification above the fold.
- Form vs. call only (for planned services).
- Domain/brand: brand name (e.g. “Rohrreinigung Scholl”) vs. descriptive name (e.g. “rohrreinigung-essen-…”), only once 1–3 are settled.
Ein Test läuft mindestens 4 Wochen (volle Wochenzyklen) und bis jede Variante ≥ 30 Conversions hat. Gewinner ist die Variante mit niedrigerem CPL, wenn das Experiment den Unterschied bei Conversions bzw. Kosten/Conversion als statistisch signifikant ausweist. Ist nach 8 Wochen nichts signifikant, gilt: kein echter Unterschied. Die einfachere oder günstigere Variante bleibt, und der nächste Test prüft eine größere Änderung.
A test runs at least 4 weeks (full weekly cycles) and until each variant has ≥ 30 conversions. The winner is the variant with the lower CPL if the experiment shows the difference in conversions or cost/conversion as statistically significant. If nothing is significant after 8 weeks: no real difference. Keep the simpler or cheaper variant and test a bigger change next.
So geht’sHow to do it
Warum: Die Seite ist der größte Hebel auf die Conversion-Rate. Ein Experiment misst sauber, statt Vorher/Nachher zu raten.Why: The page is the biggest lever on conversion rate. An experiment measures cleanly instead of guessing before/after.
So geht’s: Variante B auf derselben Domain (noindex) → benutzerdefiniertes Experiment → finale URL im Testarm → 50/50 → Erfolgskriterium „statistische Signifikanz“.How: Variant B on the same domain (noindex) → custom experiment → final URL in the trial arm → 50/50 → success criterion “statistical significance”.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
- Variante B als eigene URL anlegen, z. B.
/rohrreinigung-essen-b/,noindex, gleiche Telefon-Logik und Tags. - Kampagnen → Tests → + → Benutzerdefinierter Test (Suche), Basis-Kampagne wählen.
- Im Testarm die finale URL der Anzeigen auf Variante B ändern (im Editor per Suchen & Ersetzen in der Spalte Final URL möglich).
- Aufteilung 50 %, Search- oder Cookie-basiert, Erfolgsmesswert Conversions bzw. Kosten/Conversion, Gewinnerermittlung „statistische Signifikanz“.
- Start in der Zukunft planen, damit die Anzeigen vorher geprüft werden (laut Google).
- Gewinnerregel anwenden; Gewinner übernehmen („Änderungen übernehmen“), Verlierer-URL per 301 umleiten.
- Ergebnis mit Label
TEST-LPxim Testprotokoll festhalten.
- Create variant B as its own URL, e.g.
/rohrreinigung-essen-b/,noindex, same phone logic and tags. - Campaigns → Experiments → + → Custom experiment (Search), choose the base campaign.
- In the trial arm change the ads’ final URL to variant B (in the Editor possible via find & replace in the Final URL column).
- Split 50%, search- or cookie-based, success metric conversions or cost/conversion, winner by “statistical significance”.
- Schedule a future start so ads are reviewed first (per Google).
- Apply the winner rule; apply the winner (“Apply changes”), 301-redirect the losing URL.
- Record the result with label
TEST-LPxin the test log.
Warum: Manchmal ist die Frage „Marke oder beschreibender Name?“ wichtig genug. Dann nur so, dass nie zwei Anzeigen desselben Betriebs um eine Suche konkurrieren.Why: Sometimes “brand or descriptive name?” is important enough. Then only in a way that two ads of the same business never compete for one search.
So geht’s: Domain B mit identischer Seite + Impressum desselben Betriebs → Experiment wie oben, nur die Domain ändert sich; alternativ nacheinander je 2–4 Wochen.How: Domain B with an identical page + Impressum of the same business → experiment as above, only the domain changes; alternatively one after another, 2–4 weeks each.
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Domain B einrichten: identische Gewinner-Seite, gleiches Impressum, gleiche Preise, gleiches Tracking und eigene Search-Console-Bestätigung.
- Website-Anrufe auf Domain B testen (Tracking-Check).
- Experiment in der bestehenden Kampagne: Testarm mit finaler URL auf Domain B, 50/50.
- Oder nacheinander: Kampagne 2–4 Wochen mit Domain A, dann 2–4 Wochen mit Domain B, gleiche Gebote und Budgets; saisonale Effekte beachten (Kammerjäger!).
- Gewinnerregel anwenden; Verlierer-Domain per 301 auf den Gewinner leiten und nicht weiter bewerben.
- Nie Domain B in einem zweiten Konto oder einer parallelen Kampagne für dieselben Suchen laufen lassen.
- Set up domain B: identical winning page, same Impressum, same prices, same tracking and its own Search Console verification.
- Test website calls on domain B (tracking check).
- Experiment in the existing campaign: trial arm with final URL on domain B, 50/50.
- Or sequentially: campaign 2–4 weeks with domain A, then 2–4 weeks with domain B, same bids and budgets; mind seasonality (pest control!).
- Apply the winner rule; 301-redirect the losing domain to the winner and stop advertising it.
- Never run domain B in a second account or a parallel campaign for the same searches.
- Zwei Domains gleichzeitig in zwei Konten „zum Testen“.
- Tests ohne Mindestmenge beenden (weniger als 30 Leads je Variante).
- Unterschiedliche Preise oder Impressen je Domain: Falschdarstellung.
- Two domains at the same time in two accounts “for testing”.
- Ending tests without the minimum volume (fewer than 30 leads per variant).
- Different prices or Impressums per domain: misrepresentation.
QuellenSources
- Google: Benutzerdefinierte Tests (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Tests beobachten (Signifikanz) (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Unfair advantage (14.04.2025) (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: About custom experiments (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Monitor your experiments (significance) (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Unfair advantage (14 Apr 2025) (abgerufen 26.10.2026retrieved 26.10.2026)
67Richtlinien & RechtPolicy & legal readiness
Voraussetzungen: ohne diese Punkte wird nicht geworbenRequirements: no advertising without these
- Echte Firma mit ladungsfähiger Adresse fürs Impressum.
- Elektro: Eintrag in die Handwerksrolle (Elektrotechniker = zulassungspflichtig, Anlage A Nr. 25 HwO).
- Rohrreinigung (Anlage B2, handwerksähnlich): „Rohrbruch reparieren“ oder „Sanitär-Notdienst“ nur als Installateur-/SHK-Meisterbetrieb bewerben.
- Kammerjäger: Sachkundenachweis für die eingesetzten Biozide.
- Preise offen nennen; „Festpreise“ nur, wenn sie vor Ort auch gelten.
- Zweit-Domains nur im selben Konto per Experiment oder nacheinander, nie parallel.
- Nur echte Bewertungen, echte Adressen und belegbare Aussagen (kein „Nr. 1“, „seit 1985“, „in 15 Minuten da“ ohne Beleg).
- Das Callcenter meldet sich mit dem Namen der beworbenen Marke.
- A real company with an address that can receive legal documents, for the Impressum.
- Electrical: entry in the Handwerksrolle (electrician = licensed trade, Annex A no. 25 HwO).
- Drain cleaning (Annex B2, trade-like): advertise “pipe burst repair” or “plumbing emergency” only as a licensed plumbing/SHK master business.
- Pest control: proof of Sachkunde for the biocides used.
- Show prices openly; “fixed prices” only if they also apply on site.
- Second domains only in the same account via experiment or one after another, never in parallel.
- Only real reviews, real addresses and provable claims (no “No. 1”, “since 1985”, “there in 15 minutes” without proof).
- The call centre answers with the advertised brand name.
Was vor dem Start vorliegen mussWhat must be ready before launch
- Handelsregisterauszug oder Gewerbeanmeldung, Ausweis des Inhabers/Geschäftsführers
- Qualifikationsnachweise (Handwerkskarte, Sachkunde-Zertifikat, Installateurausweis)
- Preisliste: Anfahrt, Stundensatz/Festpreise, Zuschläge Nacht/Wochenende/Feiertag
- Echte Fotos: Team, Fahrzeuge, Arbeit; echte Bewertungen (Link)
- Einsatzzeiten, die wirklich besetzt sind, und das Einsatzgebiet
- Zugang zum eigenen Google-Ads-Konto mit Zahlungsprofil auf die Firma
- Commercial register extract or trade registration, ID of the owner/managing director
- Proof of qualification (Handwerkskarte, Sachkunde certificate, installer ID)
- Price list: call-out fee, hourly rate/fixed prices, night/weekend/holiday surcharges
- Real photos (team, vans, work) and real reviews (link)
- Hours that are really staffed, and the service area
- Access to the company’s own Google Ads account with a payments profile in the company name
So geht’sHow to do it
Warum: Ohne Bestätigung werden Anzeigen eingeschränkt oder das Konto pausiert. Falsche Angaben führen zur Sperrung.Why: Without verification, ads are limited or the account is paused; false information leads to suspension.
So geht’s: Der Betrieb zahlt selbst, beantwortet die Fragen als „Werbung für das eigene Unternehmen“ und lädt Firmen- und Ausweisdokumente hoch.How: The business pays itself, answers the questions as “advertising my own business” and uploads company and ID documents.
Weiterlesen – alle 9 SchritteRead more – all 9 steps
- Das Konto unter
ads.google.commit einer Firmen-Google-Identität anlegen (z. B.ads@ihrefirma.de), nicht mit einer privaten oder fremden Adresse. - Zahlungsprofil: Typ Organisation, Name exakt wie im Handelsregister/Gewerbeschein, Adresse = Impressum-Adresse.
- Betreut ein Ads-Team das Konto, sendet es aus seinem Verwaltungskonto eine Verknüpfungsanfrage an Ihre Kunden-ID (Zugriff „Standard“).
- Sie bestätigen die Anfrage im eigenen Konto unter Verwaltung → Zugriff und Sicherheit → Verwaltungskonten.
- Sobald Google die Bestätigung anfordert (Benachrichtigung oben im Konto): Abrechnung → Werbetreibenden-Bestätigung öffnen.
- Fragen beantworten: Sie werben für das eigene Unternehmen und zahlen selbst.
- Dokumente hochladen: Handelsregisterauszug oder Gewerbeanmeldung + Ausweis der vertretungsberechtigten Person. Name/Adresse müssen exakt zum Zahlungsprofil passen.
- Status prüfen; Aktualisierungen erscheinen laut Google nach bis zu 5 Werktagen. In dieser Zeit Name und Adresse im Zahlungsprofil nicht ändern.
- Danach Asset „Unternehmensname“ und „Logo“ anlegen, Name identisch mit Marke/Impressum.
- Create the account at
ads.google.comwith a company Google identity (e.g.ads@yourfirm.de), not a private or third-party address. - Payments profile: type Organisation, name exactly as in the commercial register/trade licence, address = Impressum address.
- If an ads team manages the account, it sends a link request from its manager account to your customer ID (“Standard” access).
- You approve the request in your own account under Admin → Access and security → Managers.
- When Google requests verification (notification at the top of the account): open Billing → Advertiser verification.
- Answer the questions: you advertise your own business and pay yourself.
- Upload documents: commercial register extract or trade registration + ID of the authorised person. Name/address must exactly match the payments profile.
- Check status; per Google, updates can take up to 5 business days. Do not change name or address in the payments profile meanwhile.
- Then create the “Business name” and “Logo” assets, with the name identical to brand/Impressum.
Warum: Google wertet unklare Identität als „Falschdarstellung“. Abmahner suchen gezielt nach unvollständigen Impressen.Why: Google treats unclear identity as “misrepresentation”; warning-letter senders target incomplete Impressums.
So geht’s: Firmenname mit Rechtsform, Anschrift, Vertreter, Kontakt, Register, USt-ID und bei Handwerk Kammer + Berufsbezeichnung eintragen; die Marke klar zuordnen.How: Enter company name with legal form, address, representative, contact, register, VAT ID and, for crafts, chamber + professional title; clearly link the brand.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Kopfzeile: „[Marke] ist ein Angebot der [Firma + Rechtsform]“, z. B. „Elektriker Andi ist ein Angebot der Andreas Muster Elektrotechnik e.K.“
- Anschrift: echte Niederlassung (kein Postfach, keine virtuelle Stadtadresse).
- Vertretungsberechtigte Person(en) bei GmbH/UG: Geschäftsführer.
- Kontakt: Telefon und E-Mail. Die Telefonnummer im Impressum ist die echte Firmennummer, nicht die Google-Weiterleitungsnummer.
- Register + Nummer (Handelsregister, Amtsgericht), falls eingetragen; USt-IdNr., falls vorhanden.
- Elektro: zuständige Handwerkskammer, Berufsbezeichnung „Elektrotechnikermeister“ (verliehen in Deutschland), Hinweis auf die Handwerksordnung.
- Kammerjäger/Rohrreinigung: zuständige Kammer (HWK oder IHK) und ggf. Berufsbezeichnung.
- Footer-Link „Impressum“ auf jeder Seite, max. 2 Klicks erreichbar. Gleicher Firmenname auch in Datenschutzerklärung und Zahlungsprofil.
- Header line: “[Brand] is a service of [company + legal form]”, e.g. “Elektriker Andi is a service of Andreas Muster Elektrotechnik e.K.”
- Address: real branch (no PO box, no virtual city address).
- Authorised representative(s) for GmbH/UG: managing director.
- Contact: phone and email. The Impressum phone is the real company number, not the Google forwarding number.
- Register + number (commercial register, local court) if registered; VAT ID if available.
- Electrical: responsible Handwerkskammer, title “Elektrotechnikermeister” (awarded in Germany), reference to the Handwerksordnung.
- Pest control/drain cleaning: responsible chamber (HWK or IHK) and professional title if any.
- Footer link “Impressum” on every page, reachable in max. 2 clicks. Same company name in the privacy policy and payments profile.
Warum: Google verlangt bei dringenden Vor-Ort-Diensten, dass Anfahrt, Notdienst-Zuschläge und die Verbindlichkeit von Angeboten klar genannt werden. Die PAngV verlangt Preise oder Verrechnungssätze inkl. USt.Why: For urgent on-site services Google requires call-out fees, emergency surcharges and whether quotes are binding to be clearly stated. PAngV requires prices or rates incl. VAT.
So geht’s: Eine Seite /preise/ plus Kurz-Preisbox auf jeder Landingpage; dieselben Zahlen in Preis-Assets und im Callcenter-Skript.How: One page /preise/ plus a short price box on every landing page; the same figures in price assets and the call-centre script.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Tabelle mit Anfahrt/Einsatzpauschale (im Einsatzgebiet), Stundensatz bzw. Arbeitswert und typischen Festpreisen. Alle Preise inkl. 19 % USt (Endverbraucher).
- Zuschläge ausdrücklich nennen: Abend (z. B. ab 18 Uhr), Nacht, Samstag, Sonn- und Feiertag, in € oder %.
- Material: „zzgl. Material nach Verbrauch“ oder Pauschalen nennen.
- Satz zur Verbindlichkeit: „Vor Arbeitsbeginn nennen wir Ihnen den Preis. Er gilt verbindlich, außer Sie beauftragen zusätzliche Leistungen.“
- Zahlarten nennen (Karte, Überweisung). Bei Rohrreinigung/Kammerjäger: keine Vorkasse-Pflicht in bar vor Ort.
- „Ab“-Preise nur verwenden, wenn ein realistischer Auftrag zu diesem Preis möglich ist. Kein „0 € Anfahrt“, wenn sie im Stundensatz versteckt ist.
- Kurz-Preisbox (3–4 Zeilen) im sichtbaren Bereich jeder Landingpage mit Link „Alle Preise“.
- Dieselben Werte in Preis-Assets und im Callcenter-Skript. Bei jeder Preisänderung alle drei Stellen am selben Tag ändern.
- Table with call-out/service fee (within the service area), hourly rate or labour unit, and typical fixed prices. All prices incl. 19% VAT (consumers).
- State surcharges explicitly: evening (e.g. from 6 pm), night, Saturday, Sunday and holiday, in € or %.
- Materials: “plus materials as used” or state flat rates.
- Binding sentence: “We tell you the price before work starts. It is binding unless you order additional work.”
- Name payment methods (card, transfer). Drain cleaning/pest control: no mandatory cash pre-payment on site.
- Use “from” prices only if a realistic job at that price is possible. No “€0 call-out” if it is hidden in the hourly rate.
- Short price box (3–4 lines) above the fold on every landing page with a link “All prices”.
- The same figures in price assets and the call-centre script; on any price change, update all three on the same day.
Warum: Unbelegte Qualifikationen gelten als Falschdarstellung. Belegte Qualifikationen sind gleichzeitig das stärkste Vertrauenssignal auf der Seite.Why: Unproven qualifications count as misrepresentation; proven ones are also the strongest trust signal on the page.
So geht’s: Dokumente als PDF ablegen, auf der Seite in Textform nennen (kein reines Logo), nur Leistungen bewerben, die die Qualifikation abdeckt.How: File documents as PDF, name them on the site in text (not just a logo), advertise only services the qualification covers.
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Elektriker: Handwerkskarte (Eintrag Handwerksrolle, Elektrotechniker). Für Zählerschrank, Hausanschluss und neue Anlagen: Eintrag im Installateurverzeichnis des örtlichen Netzbetreibers (§ 13 NAV), z. B. Westnetz, Rheinische NETZGesellschaft, Netze Duisburg. Ohne Eintrag werden „Zählerschrank erneuern“ und „Wallbox anmelden“ nicht beworben.
- Rohrreinigung: Gewerbeanmeldung bzw. Eintrag als handwerksähnliches Gewerbe „Rohr- und Kanalreiniger“ (Anlage B2). Darf reinigen und Schäden feststellen, aber keine Rohre reparieren oder bauen. Reparatur-Keywords nur mit SHK-Meisterbetrieb.
- Kammerjäger: Abschluss „Geprüfter Schädlingsbekämpfer“ bzw. Sachkunde für die eingesetzten Biozide (z. B. § 15c GefStoffV für bestimmte Rodentizide). Zertifikat mit Datum und Aussteller.
- Für alle: Betriebshaftpflicht (Versicherer, Deckungssumme) – als Vertrauenselement, nicht als „geprüft von Google“.
- Auf der Seite im Block „Qualifikation“ in Textform nennen: „Meisterbetrieb, eingetragen in der Handwerksrolle der HWK Düsseldorf, Nr. …“.
- PDFs griffbereit ablegen, damit Sie bei einer Google-Prüfung oder Abmahnung binnen Minuten belegen können.
- Electrician: Handwerkskarte (entry in the Handwerksrolle, electrician). For meter cabinets, house connections and new installations: entry in the local grid operator’s installer register (§ 13 NAV), e.g. Westnetz, Rheinische NETZGesellschaft, Netze Duisburg. Without it, do not advertise “Zählerschrank erneuern” or “register a wallbox”.
- Drain cleaning: trade registration or entry as the trade-like business “Rohr- und Kanalreiniger” (Annex B2). May clean and diagnose damage, but not repair or build pipes. Repair keywords only with a licensed SHK master business.
- Pest control: qualification “Geprüfter Schädlingsbekämpfer” or Sachkunde for the biocides used (e.g. § 15c GefStoffV for certain rodenticides). Certificate with date and issuer.
- For all: business liability insurance (insurer, cover) – as a trust element, not as “verified by Google”.
- Name it in text on the site in a “Qualification” block: “Master business, entered in the Handwerksrolle of HWK Düsseldorf, no. …”.
- Keep the PDFs to hand so you can prove it within minutes during a Google review or a warning letter.
78Website & LandingpagesWebsite & landing pages
- HTTPS, eine Hauptversion (z. B. ohne www), 301 für den RestHTTPS, one main version (e.g. no www), 301 for the rest
- Mobil LCP ≤ 2,5 s, Ziel ≤ 2,0 s (PageSpeed Insights)Mobile LCP ≤ 2.5 s, target ≤ 2.0 s (PageSpeed Insights)
- Keine Pop-ups, kein Cookie-Banner, das den Anruf-Button verdecktNo pop-ups, no cookie banner covering the call button
- Search Console verknüpft (auch für die Domain-Bestätigung der Website-Anrufe)Search Console linked (also for domain verification of website calls)
- Impressum § 5 DDG, DatenschutzerklärungImpressum § 5 DDG, privacy policy
- CMP mit Consent Mode v2, Standard „abgelehnt“CMP with Consent Mode v2, default “denied”
- Preisseite + Preisbox (PAngV, Google-Preisregeln)Price page + price box (PAngV, Google pricing rules)
- Qualifikation in Textform genanntQualification named in text
- Echte Fotos: Team, Fahrzeug mit Beschriftung, EinsätzeReal photos: team, branded van, jobs
- Echte Bewertungen (Quelle verlinkt), keine gekauftenReal reviews (source linked), none bought
- Einsatzgebiet als Liste/Karte, realistische AnfahrtszeitService area as list/map, realistic arrival time
- Ablauf in 3 Schritten, Zahlarten, Garantie/GewährleistungProcess in 3 steps, payment methods, warranty
- Telefonnummer oben + klickbar (
tel:)Phone number at top + clickable (tel:) - Mobile Anrufleiste fixiert unten: „Jetzt anrufen“ + WhatsAppMobile sticky call bar at the bottom: “Call now” + WhatsApp
- Öffnungs-/Notdienstzeiten direkt neben der NummerOpening/emergency hours right next to the number
- Rückruf-Formular mit 3 FeldernCallback form with 3 fields
- Felder: Name, Telefon, Anliegen (+ PLZ)Fields: name, phone, issue (+ postcode)
- Eigene Danke-Seite
/danke/(noindex)Own thank-you page/danke/(noindex) - Sofortige E-Mail/SMS an CallcenterInstant email/SMS to the call centre
- Spam-Schutz ohne Captcha-Hürde (Honeypot)Spam protection without a captcha hurdle (honeypot)
- Unternehmensprofil: optional, siehe DetailsBusiness Profile: optional, see details
- Eigenes Google-Ads-Konto (Zugriff für das Ads-Team)Own Google Ads account (access for the ads team)
- Werbetreibenden-Bestätigung gestartetAdvertiser verification started
- Conversions angelegt und getestetConversions created and tested
Der Qualitätsfaktor besteht aus erwarteter Klickrate, Anzeigenrelevanz und Landingpage-Erlebnis. Er wird je Keyword und aus Ihrer Kontohistorie gebildet. Dass die Domain „alt“ ist, zählt kaum. Ohne Daten schätzt Google vorsichtig, deshalb sind die ersten 2–4 Wochen teurer. Abhilfe: enge Anzeigengruppen, Stadt + Leistung in Anzeige und Überschrift, schnelle Seite, Start mit „Passende Wortgruppe“ und „Genau passend“.
Quality Score consists of expected CTR, ad relevance and landing-page experience, built per keyword and from your account history. Whether the domain is “old” hardly matters. Without data Google estimates cautiously, so the first 2–4 weeks cost more. The remedy: tight ad groups, city + service in ad and headline, a fast page, and starting with phrase and exact match.
So geht’sHow to do it
Warum: Das Landingpage-Erlebnis fließt in den Qualitätsfaktor ein. Jede Sekunde Ladezeit auf dem Handy kostet Anrufe.Why: Landing-page experience feeds Quality Score; every second of mobile load time costs calls.
So geht’s: Statisch bauen, Bilder als AVIF/WebP mit Größenangaben, Schrift lokal, kein JS-Framework für die Startseite, Tag Manager erst nach Consent.How: Build static, images as AVIF/WebP with dimensions, fonts local, no JS framework on the landing page, Tag Manager only after consent.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Astro mit
output: 'static'; Hosting auf CDN mit HTTP/2+ und Brotli (z. B. Cloudflare Pages, Netlify, Vercel – Rechenzentrum EU wählen). - Hero-Bild max. ~80 KB:
<Image>von Astro mit AVIF/WebP,width/height,fetchpriority="high", kein Lazy-Load für das Hero-Bild. - Schriften lokal einbinden (
font-display: swap), max. 2 Schnitte; oder Systemschrift. - Keine Slider, kein Video im Hero, keine Chat-Widgets von Drittanbietern vor der Einwilligung.
- CSS kritisch inline (Astro macht das bei kleinen Seiten automatisch), restliche Skripte
defer. - Telefon-Button als reines HTML (
<a href="tel:…">), nicht per JavaScript erzeugen. Er muss sofort klickbar sein. - Messung: PageSpeed Insights (Mobil) für Startseite und 3 Landingpages; Ziel LCP ≤ 2,0 s, CLS ≤ 0,1, INP ≤ 200 ms.
- Nach jedem größeren Update erneut messen und Ergebnis dokumentieren.
- Astro with
output: 'static'; hosting on a CDN with HTTP/2+ and Brotli (e.g. Cloudflare Pages, Netlify, Vercel – choose an EU region). - Hero image max ~80 KB: Astro
<Image>with AVIF/WebP,width/height,fetchpriority="high", no lazy-load on the hero image. - Fonts self-hosted (
font-display: swap), max 2 weights; or a system font. - No sliders, no hero video, no third-party chat widgets before consent.
- Critical CSS inline (Astro does this automatically for small pages), other scripts
defer. - Call button as plain HTML (
<a href="tel:…">), not created by JavaScript; it must be clickable immediately. - Measure: PageSpeed Insights (mobile) for the home page and 3 landing pages; target LCP ≤ 2.0 s, CLS ≤ 0.1, INP ≤ 200 ms.
- Re-measure after every larger update and record the result.
Warum: Bei Notdiensten kommen die meisten Leads mobil per Anruf. Die Leiste hält den Anruf immer einen Daumen entfernt.Why: Most emergency leads come by mobile call; the bar keeps the call one thumb away.
So geht’s: Fixierte Leiste unten (nur < 768 px) mit 2 Buttons; die Telefonnummer exakt so geschrieben wie im Google-Tag hinterlegt.How: Fixed bar at the bottom (only < 768 px) with 2 buttons; phone number written exactly as configured in the Google tag.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
- HTML:
<div class="callbar"><a href="tel:+492011234567" class="cb-call">Jetzt anrufen: 0201 1234567</a><a href="https://wa.me/49201…?text=Hallo%2C%20ich%20brauche…" class="cb-wa">WhatsApp</a></div> - CSS:
position:fixed;bottom:0;left:0;right:0;z-index:50, Höhe ≥ 56 px, Seite unten mitpadding-bottomausgleichen, damit nichts verdeckt wird. - Die sichtbare Nummer (Text) muss genau dem Format entsprechen, das Sie im Tag „Anrufe von Website“ eintragen (z. B.
0201 1234567). Nur dann kann Google sie gegen die Weiterleitungsnummer tauschen. - Nur eine Tracking-Nummer pro Seite. Impressum und Footer dürfen die echte Nummer zeigen, wenn sie anders geschrieben ist (z. B.
+49 201 …). - Ab 768 px Breite die Leiste ausblenden; dort reicht die Nummer im Header.
- WhatsApp-Link mit vorausgefülltem Text („Hallo, ich habe ein Problem mit …, PLZ …“). Das beschleunigt die Qualifizierung.
- Zeigt die Leiste „24/7“, muss nachts wirklich jemand abnehmen. Sonst Zeiten nennen: „Mo–Sa 7–20 Uhr“.
- HTML:
<div class="callbar"><a href="tel:+492011234567" class="cb-call">Call now: 0201 1234567</a><a href="https://wa.me/49201…?text=Hallo%2C%20ich%20brauche…" class="cb-wa">WhatsApp</a></div> - CSS:
position:fixed;bottom:0;left:0;right:0;z-index:50, height ≥ 56 px, offset the page bottom withpadding-bottomso nothing is covered. - The visible number (text) must match exactly the format you enter in the “calls from website” tag (e.g.
0201 1234567); only then can Google swap it for the forwarding number. - Only one tracking number per page. Impressum and footer may show the real number if written differently (e.g.
+49 201 …). - Hide the bar from 768 px width; there the number in the header is enough.
- WhatsApp link with prefilled text (“Hello, I have a problem with …, postcode …”); speeds up qualification.
- If the bar says “24/7”, someone must really answer at night; otherwise state hours: “Mon–Sat 7am–8pm”.
Warum: Formulare sind die zweite Lead-Quelle und liefern die E-Mail/Telefondaten für erweiterte Conversions.Why: Forms are the second lead source and provide the email/phone data for enhanced conversions.
So geht’s: Kurzes Formular → Weiterleitung auf /danke/ → Conversion-Tag dort + Daten an das Callcenter.How: Short form → redirect to /danke/ → conversion tag there + data to the call centre.
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Felder: Name, Telefon (Pflicht), Anliegen (Auswahl + Freitext), PLZ, optional E-Mail. Keine weiteren Pflichtfelder.
- Datenschutz-Hinweis unter dem Button mit Link; keine vorangekreuzte Werbe-Einwilligung.
- Versand an ein Formular-Backend (z. B. eigener Endpoint / Serverless Function), das sofort E-Mail + SMS/Webhook an das Callcenter schickt.
- Nach Erfolg Weiterleitung auf
/danke/mit<meta name="robots" content="noindex">; dort steht „Wir rufen Sie innerhalb von 10 Minuten zurück“ (nur wenn wahr) und die Telefonnummer. - Honeypot-Feld (verstecktes Feld, das Bots ausfüllen) statt Captcha.
- Für erweiterte Conversions: Telefon/E-Mail-Werte im dataLayer auf der Danke-Seite bereitstellen (siehe Tracking).
- Fields: name, phone (required), issue (select + free text), postcode, optional email. No other required fields.
- Privacy note under the button with a link; no pre-ticked marketing consent.
- Send to a form backend (e.g. own endpoint / serverless function) that instantly emails + SMS/webhooks the call centre.
- On success redirect to
/danke/with<meta name="robots" content="noindex">; it says “We’ll call you back within 10 minutes” (only if true) and shows the phone number. - Honeypot field (hidden field bots fill in) instead of a captcha.
- For enhanced conversions: provide phone/email values in the dataLayer on the thank-you page (see Tracking).
Warum: Ohne Unternehmensprofil fehlen Standort-Assets, Bewertungssterne aus Google und Sichtbarkeit in Maps. Für echte Firmen mit echter Adresse kostet ein Profil nichts.Why: Without a Business Profile there are no location assets, no Google review stars and no Maps visibility. For real firms with a real address, a profile is free.
So geht’s: Profil als Einzugsgebiet-Unternehmen ohne sichtbare Adresse anlegen, bestätigen und mit Google Ads verknüpfen.How: Create the profile as a service-area business without a visible address, verify it and link it to Google Ads.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
business.google.commit dem Firmen-Google-Konto öffnen → Unternehmen hinzufügen.- Name = exakter Firmen-/Markenname wie im Impressum, keine Keywords oder Städte im Namen.
- Kategorie: „Elektriker“, „Rohrreinigungsdienst“ bzw. „Schädlingsbekämpfung“.
- Adresse eingeben, aber „Ich liefere Waren und erbringe Dienstleistungen bei meinen Kunden“ wählen und die Adresse ausblenden, wenn keine Kunden vorbeikommen.
- Einzugsgebiet: Städte des 30-km-Radius.
- Bestätigung (meist Video) durchführen. Firmenfahrzeug, Werkzeug und Gewerbenachweis bereithalten.
- In Google Ads: Assets → Standort → Unternehmensprofil verknüpfen.
- Open
business.google.comwith the company Google account → add business. - Name = exact company/brand name as in the Impressum; no keywords or cities in the name.
- Category: “Electrician”, “Drainage service” or “Pest control service”.
- Enter the address but choose “I deliver goods and services to my customers” and hide the address if customers don’t visit.
- Service area: the cities within the 30 km radius.
- Complete verification (usually video); have the branded van, tools and trade proof ready.
- In Google Ads: Assets → Location → link Business Profile.
Landingpage-ArchitekturLanding-page architecture
Seitenarchitektur je BetriebPage architecture per business
| SeitentypPage type | URL-MusterURL pattern | WofürUsed for | AnzahlCount |
|---|---|---|---|
| Leistung × KernstadtService × core city | /rohrreinigung-essen/ | Notdienst- und Stadt-Anzeigengruppen der Stufe Aemergency and city ad groups of tier A | 3–8 (nur Stufe-A-Städte)3–8 (tier-A cities only) |
| Leistung (Einsatzgebiet)Service (service area) | /kanal-tv-untersuchung/ | planbare Leistungen + Stufe-B-Städteplanned services + tier-B cities | 1 je Leistung1 per service |
| NotdienstEmergency | /notdienst/ | „Notdienst“-Suchen ohne Stadt“emergency” searches without a city | 1 |
| PreisePrices | /preise/ | PAngV, Preis-Assets, VertrauenPAngV, price assets, trust | 1 |
| Über uns / QualifikationAbout / qualification | /ueber-uns/ | Team, Nachweise, Fahrzeugeteam, proof, vans | 1 |
| DankeThank you | /danke/ | Formular-Conversion (noindex)form conversion (noindex) | 1 |
| Test-VarianteTest variant | /…-b/ | Experimente (noindex)experiments (noindex) | nach Bedarfas needed |
Empfehlung: Astro erzeugt Stadtseiten aus einer Datendatei (Stadt, Anfahrtszeit, Stadtteile, ein echtes Einsatzfoto aus der Stadt, Bewertungen aus der Stadt). Keine 25 fast gleichen Seiten und keine Überschrift per Keyword-Einfügung. Das wirkt dünn, kann irreführen („in Ihrer Nähe“ ohne Standort) und senkt das Landingpage-Erlebnis. Städte der Stufe B teilen sich eine Einsatzgebiet-Seite.
Recommendation: Astro generates city pages from a data file (city, arrival time, districts, a real job photo from that city, reviews from that city). No 25 near-identical pages and no headline via keyword insertion: that looks thin, can mislead (“near you” without a location) and lowers landing-page experience. Tier-B cities share one service-area page.
Message Match: Anzeigengruppe → SeiteMessage match: ad group → page
| AnzeigengruppeAd group | Keyword-BeispielKeyword example | Anzeigentitel 1Headline 1 | Landingpage · H1Landing page · H1 |
|---|---|---|---|
| RR · Notdienst · Essen | [rohrreinigung essen] | Rohrreinigung in Essen | /rohrreinigung-essen/ · „Rohr verstopft in Essen? Wir kommen heute.“ |
| RR · WC verstopft | "toilette verstopft" | Toilette verstopft? | /rohrreinigung-essen/#wc · „WC verstopft – Hilfe in Essen & Umgebung“ |
| RR · Kanal-TV | "kanal tv untersuchung" | Kanal-TV-Untersuchung | /kanal-tv-untersuchung/ · „Kanal-TV-Untersuchung mit Bericht“ |
| EL · Notdienst | "elektriker notdienst" | Elektriker-Notdienst | /notdienst/ · „Strom weg? Elektriker-Notdienst für [Stadt]“ |
| EL · E-Check | "e check" | E-Check vom Meisterbetrieb | /e-check/ · „E-Check für Vermieter & Gewerbe“ |
| KJ · Wespen | "wespennest entfernen" | Wespennest entfernen lassen | /wespennest-entfernen/ · „Wespennest? Beratung & Entfernung in [Stadt]“ |
| KJ · Bettwanzen | "bettwanzen kammerjäger" | Bettwanzen-Bekämpfung | /bettwanzen/ · „Bettwanzen sicher bekämpfen – mit Nachkontrolle“ |
Wireframes je BrancheWireframes per niche
CRO-Checkliste (vor jedem Start)CRO checklist (before every launch)
- H1 wiederholt Leistung + Stadt der Anzeigengruppe.
- Telefonnummer im sichtbaren Bereich, auf Mobil ohne Scrollen.
- Ein Hauptziel pro Seite (Anruf oder Termin), keine Navigation, die wegführt.
- Preisbox sichtbar, bevor man scrollen muss.
- Echte Fotos statt Stockfotos; Gesichter des Teams.
- Zeiten ehrlich: „Notdienst bis 22 Uhr“ statt „24/7“, wenn nachts niemand fährt.
- Formular ≤ 4 Felder, Danke-Seite mit Rückruf-Versprechen (nur wenn haltbar).
- Keine Superlative ohne Beleg („bester“, „günstigster“, „Nr. 1“).
- Ladezeit mobil gemessen (LCP ≤ 2,5 s).
- Cookie-Banner verdeckt nicht den Anruf-Button.
- H1 repeats the ad group’s service + city.
- Phone number above the fold, on mobile without scrolling.
- One main goal per page (call or appointment), no navigation leading away.
- Price box visible before scrolling.
- Real photos instead of stock; team faces.
- Honest hours: “emergency until 10 pm” instead of “24/7” if nobody drives at night.
- Form ≤ 4 fields, thank-you page with a callback promise (only if kept).
- No superlatives without proof (“best”, “cheapest”, “No. 1”).
- Mobile load time measured (LCP ≤ 2.5 s).
- Cookie banner does not cover the call button.
9Tracking & ConsentTracking & consent
| EreignisEvent | Messung überMeasured via | Conversion-AktionConversion action | RolleRole |
|---|---|---|---|
| Anruf über Anruf-AssetCall via call asset | Google-Weiterleitungsnummer (Anrufberichte)Google forwarding number (call reporting) | „Anruf aus Anzeige ≥ 60 s““Call from ad ≥ 60 s” | primärprimary |
| Anruf von der WebsiteCall from website | Google-Tag + Nummerntausch (Weiterleitungsnummer)Google tag + number swap (forwarding number) | „Anruf von Website ≥ 60 s““Call from website ≥ 60 s” | primärprimary |
| FormularForm | GTM: Seitenaufruf /danke/ + erweiterte ConversionsGTM: page view /danke/ + enhanced conversions | „Formular gesendet““Form submitted” | sekundärsecondary |
| WhatsApp-KlickWhatsApp click | GTM: Klick auf wa.me-LinkGTM: click on wa.me link | „WhatsApp-Klick““WhatsApp click” | sekundärsecondary |
| Klick auf Telefonnummer (Mobil)Click on phone number (mobile) | GTM: Klick auf tel:-LinkGTM: click on tel: link | „Tel-Klick“ (nur Beobachtung)“Tel click” (observation only) | sekundärsecondary |
| Auftrag gebuchtJob booked | Import aus Callcenter-Protokoll (Anrufer-Nr. + Zeit) bzw. Formulardatenimport from call-centre log (caller no. + time) or form data | „Auftrag gebucht“ mit Wert“Job booked” with value | ab Monat 2from month 2 |
GTM-Rezept für eine statische SeiteGTM recipe for a static site
| TagTag | TypType | TriggerTrigger | EinwilligungConsent |
|---|---|---|---|
| CMP | CMP-Vorlage aus der Community-GalerieCMP template from the community gallery | Einwilligungsinitialisierung – Alle SeitenConsent Initialization – All Pages | – |
| Google Tag | Google Tag (AW-…) | Initialisierung – Alle SeitenInitialization – All Pages | integriert (ad_storage)built-in (ad_storage) |
| Conversion Linker | Conversion Linker | Alle SeitenAll Pages | integriertbuilt-in |
| Anrufe von WebsiteCalls from website | Google Ads – Anrufe von Website-ConversionGoogle Ads Calls from Website Conversion | Alle SeitenAll Pages | integriertbuilt-in |
| FormularForm | Google Ads Conversion-Tracking + NutzerdatenGoogle Ads Conversion Tracking + user-provided data | Seitenaufruf – Page Path enthält /dankePage view – Page Path contains /danke | integriertbuilt-in |
| Google Ads Conversion-TrackingGoogle Ads Conversion Tracking | Klick – Nur Links – Click URL enthält wa.meClick – Just Links – Click URL contains wa.me | integriertbuilt-in | |
| Tel-KlickTel click | Google Ads Conversion-TrackingGoogle Ads Conversion Tracking | Klick – Nur Links – Click URL beginnt mit tel:Click – Just Links – Click URL starts with tel: | integriertbuilt-in |
Fallback: Consent-Standard im <head> (nur wenn die CMP ihn nicht selbst setzt)Fallback: consent default in <head> (only if the CMP does not set it)
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('consent', 'default', {
ad_storage: 'denied', ad_user_data: 'denied',
ad_personalization: 'denied', analytics_storage: 'denied',
wait_for_update: 500
});
</script>
<!-- danach: GTM-Snippet -->dataLayer auf /danke/ (für erweiterte Conversions)dataLayer on /danke/ (for enhanced conversions)
<script>
// Werte aus dem Formular (z. B. per sessionStorage übergeben)
window.dataLayer = window.dataLayer || [];
dataLayer.push({
event: 'lead_form',
lead: { phone: '+492011234567', email: 'kunde@example.de' }
});
</script>So geht’sHow to do it
Warum: Ohne saubere primäre Conversions bieten die automatischen Gebote auf das Falsche.Why: Without clean primary conversions, automated bidding optimises for the wrong thing.
So geht’s: Ziele → Conversions → + Neue Conversion-Aktion; zwei Anruf-Aktionen (60 s) primär, Formular/WhatsApp/Tel-Klick sekundär.How: Goals → Conversions → + New conversion action; two call actions (60 s) primary, form/WhatsApp/tel click secondary.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Ziele → Conversions → Zusammenfassung → + Neue Conversion-Aktion → Telefonanrufe → „Anrufe über Anruf-Assets“. Name „Anruf aus Anzeige ≥ 60 s“, Mindestdauer 60 Sekunden, Zählweise „Eine“, Zeitraum 30 Tage, Attribution „Datengetrieben“.
- Zweite Aktion: Telefonanrufe → „Anrufe an eine Telefonnummer auf Ihrer Website“. Name „Anruf von Website ≥ 60 s“, Mindestdauer 60 s, gleiche Einstellungen. Conversion-ID und Label notieren.
- Dritte Aktion: Website → manuell: „Formular gesendet“, Kategorie „Lead-Formular senden“, Zählweise „Eine“. ID + Label notieren.
- Vierte/fünfte Aktion: „WhatsApp-Klick“ und „Tel-Klick“, Kategorie „Kontakt“.
- Primär/sekundär setzen: in der Liste jede Aktion öffnen → „Als primäre Aktion verwenden“ nur für die beiden Anruf-Aktionen.
- Wert: zunächst „Keinen Wert verwenden“. Sobald Auftragsimporte laufen, kommt der Wert dorthin.
- Verwaltung → Kontoeinstellungen → Anrufberichte: aktivieren. Bei Bedarf „Anrufaufzeichnung“ nur mit Ansage und Einwilligung (vorher Rechtsrat einholen).
- Auto-Tagging prüfen: Verwaltung → Kontoeinstellungen → Auto-Tagging = an.
- Goals → Conversions → Summary → + New conversion action → Phone calls → “Calls from ads using call assets”. Name “Call from ad ≥ 60 s”, minimum length 60 seconds, count “One”, window 30 days, attribution “Data-driven”.
- Second action: Phone calls → “Calls to a phone number on your website”. Name “Call from website ≥ 60 s”, minimum 60 s, same settings. Note conversion ID and label.
- Third action: Website → manual: “Form submitted”, category “Submit lead form”, count “One”. Note ID + label.
- Fourth/fifth: “WhatsApp click” and “Tel click”, category “Contact”.
- Primary/secondary: open each action → “Use as primary action” only for the two call actions.
- Value: start with “Don’t use a value”. Once job imports run, the value goes there.
- Admin → Account settings → Call reporting: turn on. Call recording only with an announcement and consent (get legal advice first).
- Check auto-tagging: Admin → Account settings → Auto-tagging = on.
Warum: Die meisten Anrufe kommen nicht über das Anruf-Asset, sondern von der Landingpage. Ohne Nummerntausch sieht Google diese Anrufe nicht.Why: Most calls don’t come via the call asset but from the landing page; without the number swap Google doesn’t see them.
So geht’s: GTM-Tag „Anrufe von Website-Conversion“ mit ID, Label und der Nummer im nationalen Format ohne +; Domain über Search Console bestätigen.How: GTM tag “Calls from Website Conversion” with ID, label and the number in national format without +; verify the domain via Search Console.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- In GTM: Tags → Neu → Google Ads – Anrufe von Website-Conversion.
- Conversion-ID und Label aus Schritt 2 der Conversion-Einrichtung eintragen.
- Telefonnummer im nationalen Format ohne Pluszeichen eintragen, genau so, wie sie im Seitentext steht, z. B.
0201 1234567(Google-Hinweis für GTM). - Trigger: Alle Seiten. Einwilligung: integrierte Prüfung (ad_storage) reicht.
- Nur eine verfolgte Nummer pro Seite (Google-Einschränkung des Standard-Tags). Andere Schreibweisen bleiben unverändert.
- Domain bestätigen: Google Ads mit der Search Console der Domain verknüpfen (Tools → Verknüpfte Konten → Search Console).
- Test: Seite über eine echte Anzeige oder mit
#google-wcc-debugan der URL aufrufen. Die angezeigte Nummer muss eine Google-Nummer sein. Anruf ≥ 60 s machen; nach einigen Stunden erscheint er in Berichte → Anrufdetails. - Keine „Early Media“-Ansage beim Callcenter vor dem Abheben (Google: kann verpasste Anrufe falsch melden).
- In GTM: Tags → New → Google Ads Calls from Website Conversion.
- Enter conversion ID and label from step 2 of the conversion set-up.
- Enter the phone number in national format without a plus, exactly as in the page text, e.g.
0201 1234567(Google’s note for GTM). - Trigger: All Pages. Consent: built-in check (ad_storage) is enough.
- Only one tracked number per page (limit of the default tag). Other formats stay unchanged.
- Verify domain: link Google Ads with the domain’s Search Console (Tools → Linked accounts → Search Console).
- Test: open the page via a real ad or with
#google-wcc-debugon the URL; the displayed number must be a Google number. Make a call ≥ 60 s; after a few hours it appears under Reports → Call details. - No “early media” announcement at the call centre before pick-up (Google: may report calls as missed).
Warum: § 25 TDDDG verlangt die Einwilligung. Ohne die Signale ad_user_data/ad_personalization fallen Teile der Messung und das Remarketing weg.Why: § 25 TDDDG requires consent; without the ad_user_data/ad_personalization signals, parts of measurement and remarketing are lost.
So geht’s: CMP mit Google-Consent-Mode-Unterstützung als GTM-Vorlage, Standard „abgelehnt“, Banner mit gleichwertigem „Ablehnen“-Button, testen.How: CMP with Google Consent Mode support as a GTM template, default “denied”, banner with an equal “Reject” button, test.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- CMP wählen, die Consent Mode v2 unterstützt und von Google zertifiziert ist (z. B. Usercentrics/Cookiebot, CookieHub, consentmanager – Liste im Google-CMP-Partnerprogramm prüfen).
- In GTM: Admin → Container-Einstellungen → „Übersicht über die Einwilligung aktivieren“.
- CMP-Vorlage aus der Community-Galerie hinzufügen, Trigger Einwilligungsinitialisierung – Alle Seiten, Standard für EWR: alle vier Parameter
denied. - Banner: „Alle akzeptieren“ und „Ablehnen“ gleich groß auf der ersten Ebene. Kein Banner, das den Anruf-Button verdeckt (unten links/rechts oder schmale Leiste).
- Kategorien zuordnen: Marketing →
ad_storage,ad_user_data,ad_personalization; Statistik →analytics_storage. - Modus: Basis (Tags erst nach Einwilligung). Den erweiterten Modus nur mit Freigabe Ihres Datenschutzberaters.
- Test mit Tag Assistant: Vor der Wahl Status „denied“, nach „Akzeptieren“ „granted“; die Google-Ads-Tags feuern erst danach (Basis-Modus).
- In Google Ads nach einigen Tagen: Ziele → Conversions → Diagnose; Consent-Hinweise prüfen.
- Choose a CMP that supports Consent Mode v2 and is Google-certified (e.g. Usercentrics/Cookiebot, CookieHub, consentmanager – check the list in Google’s CMP partner programme).
- In GTM: Admin → Container settings → “Enable consent overview”.
- Add the CMP template from the community gallery, trigger Consent Initialization – All Pages, EEA default: all four parameters
denied. - Banner: “Accept all” and “Reject” equally prominent on the first layer. No banner covering the call button (bottom corner or a slim bar).
- Map categories: marketing →
ad_storage,ad_user_data,ad_personalization; statistics →analytics_storage. - Mode: basic (tags only after consent). Advanced mode only with sign-off from your data-protection adviser.
- Test with Tag Assistant: before choosing, status “denied”; after “Accept”, “granted”; Google Ads tags fire only then (basic mode).
- In Google Ads after a few days: Goals → Conversions → Diagnostics; check consent notes.
Warum: Erweiterte Conversions gleichen gehashte Telefon-/E-Mail-Daten ab. Damit lassen sich später gebuchte Aufträge auch ohne GCLID zuordnen.Why: Enhanced conversions match hashed phone/email data, so booked jobs can later be attributed even without a GCLID.
So geht’s: Kundendaten-Bedingungen akzeptieren, im GTM-Tag Nutzerdaten aus dem dataLayer übergeben, auf /danke/ auslösen.How: Accept customer data terms, pass user data from the dataLayer in the GTM tag, fire on /danke/.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
- Google Ads: Ziele → Einstellungen → Erweiterte Conversions für Leads aktivieren und die Kundendaten-Bedingungen akzeptieren. Wird das Konto über ein Verwaltungskonto betreut, laut Google dort akzeptieren.
- Formular speichert Telefon/E-Mail kurz (z. B.
sessionStorage) und leitet auf/danke/; dortdataLayer.pushwie im Code oben. - GTM: Variablen vom Typ „Datenschichtvariable“ für
lead.phoneundlead.email. - GTM: Tag „Google Ads Conversion-Tracking“ (Formular) → „Vom Nutzer bereitgestellte Daten einschließen“ → neue Variable „Vom Nutzer bereitgestellte Daten“ → Manuelle Konfiguration → Telefon/E-Mail-Variablen.
- Telefon im E.164-Format (
+49…). Google hasht automatisch, wenn Sie Rohdaten übergeben. - Trigger: Ereignis
lead_form. Vorschau-Modus testen; im Netzwerk-Tab muss ein Aufruf angoogle.com/pagead/form-data/erscheinen. - Daten nach dem Push aus
sessionStoragelöschen.
- Google Ads: Goals → Settings → Enhanced conversions for leads: turn on and accept the customer data terms. If the account is managed via a manager account, per Google accept them there.
- The form briefly stores phone/email (e.g.
sessionStorage) and redirects to/danke/; there rundataLayer.pushas in the code above. - GTM: “Data Layer Variable” variables for
lead.phoneandlead.email. - GTM: “Google Ads Conversion Tracking” tag (form) → “Include user-provided data” → new variable “User-provided data” → manual configuration → phone/email variables.
- Phone in E.164 format (
+49…). Google hashes automatically if you pass raw data. - Trigger: event
lead_form. Test in preview mode; the network tab must show a call togoogle.com/pagead/form-data/. - Delete the data from
sessionStorageafter the push.
Warum: Ein 60-Sekunden-Anruf ist nicht automatisch ein Auftrag. Erst mit importierten Aufträgen lernt Google, welche Suchen Geld bringen.Why: A 60-second call is not automatically a job. Only with imported jobs does Google learn which searches make money.
So geht’s: Callcenter markiert jeden Anruf; wöchentlich CSV mit Anrufer-Nummer + Anrufzeit (Anrufe) bzw. Telefon/E-Mail (Formulare) hochladen.How: The call centre tags every call; upload a weekly CSV with caller number + call time (calls) or phone/email (forms).
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Conversion-Aktion Import → „Anrufe“ bzw. „Andere Datenquellen/CRM“ anlegen: „Auftrag gebucht“, Wert = Auftragswert netto (oder Pauschale).
- Callcenter-Protokoll mit Pflichtfeldern: Anrufer-Nummer, Datum + Uhrzeit Anrufbeginn, Dauer, Ergebnis (gebucht / kein Auftrag / Spam / Bestandskunde / falsche Region), Auftragswert.
- Anrufer-Nummer und Startzeit stehen auch in Google Ads unter Berichte → Anrufdetails (Nummer ab 15 s Gespräch). Dort abgleichen.
- Wöchentlich (z. B. montags) Vorlage aus Ziele → Uploads herunterladen, Zeilen für „gebucht“ eintragen, hochladen. Formular-Leads über den Google Ads Data Manager mit Telefon/E-Mail.
- Erst nach 4–6 Wochen stabiler Importe „Auftrag gebucht“ als primär und die Anruf-Aktionen als sekundär setzen. Vorher nicht wechseln.
- Danach Gebotsstrategie auf Ziel-ROAS oder „Conversion-Wert maximieren“ nur, wenn ≥ 30 Aufträge/Monat importiert werden.
- Create conversion action Import → “Calls” or “Other data sources/CRM”: “Job booked”, value = net job value (or a flat value).
- Call-centre log with required fields: caller number, date + time of call start, duration, outcome (booked / no job / spam / existing customer / wrong area), job value.
- Caller number and start time also appear in Google Ads under Reports → Call details (number from 15 s calls); match there.
- Weekly (e.g. Mondays) download the template from Goals → Uploads, enter “booked” rows, upload. Form leads via Google Ads Data Manager with phone/email.
- Only after 4–6 weeks of stable imports set “Job booked” as primary and the call actions as secondary; don’t switch earlier.
- Then move bidding to target ROAS or “maximise conversion value” only if ≥ 30 jobs/month are imported.
QuellenSources
- Google: Anrufberichte (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Website-Anruf-Conversions (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Weiterleitungsnummern (Deutschland gelistet) (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Erweiterte Conversions für Leads (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Consent Mode Parameter (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Call reporting (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Website call conversions (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Forwarding numbers (Germany listed) (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Enhanced conversions for leads (abgerufen 26.10.2026retrieved 26.10.2026)
- Google: Consent mode parameters (abgerufen 26.10.2026retrieved 26.10.2026)
10Markt, Keywords & AusschlüsseMarket, keywords & negatives
Markt in Zahlen (anklicken für alle Städte)Market in numbers (click for all cities)
| BrancheNiche | Suchen/Monat DE (Kernbegriff)Searches/month DE (core term) | CPC KernbegriffCPC core term | CPC „+ Stadt“ (25 NRW-Städte)CPC “+ city” (25 NRW cities) | Median StadtCity median | CPC „Notdienst“CPC “emergency” | SaisonSeason | |
|---|---|---|---|---|---|---|---|
| ElektrikerElectrician | 60.500 | €2,63 | €1,38–€4,79 | €2,88 | €8,17 | leicht Winter/Frühjahrmild winter/spring | › |
| RohrreinigungDrain cleaning | 33.100 | €4,78 | €6,27–€21,98 | €16,57 | €11,80 | flach, leichter Winter-Peakflat, slight winter peak | › |
| KammerjägerPest control | 9.900 | €6,78 | €5,82–€16,68 | €10,61 | €10,48 | stark Sommer (Wespen 3,5×)strong summer (wasps 3.5×) | › |
gemessenmeasured OpenSEO (DataForSEO, Google-Ads-Daten), Deutschland, abgerufen 26.10.2026. CPC = durchschnittlicher historischer Klickpreis, kein Garantiepreis. In der Auktion zahlen Sie je nach Position, Qualität und Wettbewerb mehr oder weniger.
gemessenmeasured OpenSEO (DataForSEO, Google Ads data), Germany, retrieved 26 Oct 2026. CPC = average historical click price, not a guaranteed price; in the auction you pay more or less depending on position, quality and competition.
Saison (Index: 100 = Monatsdurchschnitt, Okt. 2024 – Sep. 2026)Seasonality (index: 100 = monthly average, Oct 2024 – Sep 2026)
Folge: Kammerjäger-Budgets ab April hochfahren, Juni/Juli Höchststand, ab Oktober wieder drosseln. Bei Rohrreinigung und Elektro ganzjährig gleichmäßig, mit leichtem Plus im Winter.
Consequence: ramp up pest-control budgets from April, peak in June/July, throttle from October. Drain cleaning and electrical: even all year, slightly up in winter.
AbsichtsstufenIntent tiers
| StufeTier | SignalwörterSignal words | UmgangHandling |
|---|---|---|
| 1 Notfall1 Emergency | notdienst, verstopft, sofort, heute, stromausfall, wespennest | höchstes Gebot, Notdienst-Kampagne, Anruf-Fokushighest bid, emergency campaign, call focus |
| 2 Leistung2 Service | [branche] [stadt], in der nähe, kanal tv, e check, rattenbekämpfung | Standard-Gebot, Stadt-/Leistungsseitestandard bid, city/service page |
| 3 Preis3 Price | kosten, preis, was kostet, festpreis | mittleres Gebot; Anzeige mit Preis-Asset; Preisbox obenmedium bid; ad with price asset; price box on top |
| 4 DIY/Info4 DIY/info | selber, hausmittel, anleitung, was tun, warum | ausschließen; „was tun“ nur beobachtenexclude; only observe “was tun” |
| – Jobs/Produkte– Jobs/products | ausbildung, gehalt, kaufen, spray, granulat | immer ausschließenalways exclude |
Start-Keywords je BrancheStarter keywords per niche
[…] = Genau passend, "…" = Passende Wortgruppe. [stadt] durch jede Stufe-A-Stadt ersetzen. Mit * markierte Zeilen nur mit dem passenden Qualifikationsnachweis.
[…] = exact match, "…" = phrase match. Replace [stadt] with each tier-A city. Lines marked * only with the matching proof of qualification.
ElektrikerElectrician
RohrreinigungDrain cleaning
KammerjägerPest control
Ausschlusslisten (als freigegebene Listen anlegen)Negative lists (create as shared lists)
Als „Weitgehend passend“ ausschließen (ohne Klammern), damit alle Varianten erfasst werden. Die allgemeine Liste gilt immer. Die Branchenliste kommt dazu. Städte außerhalb des eigenen Einsatzgebiets ergänzen Sie selbst. Namen von Wettbewerbern kommen aus dem Suchbegriffsbericht dazu.
Exclude as broad match (no brackets) so all variants are caught. The general list always applies; the niche list is added. Add cities outside your own service area yourself; competitor names come from the search-term report.
In den Daten tauchen Markennamen auf (z. B. „rohrreinigung abex“, „weiler rohrreinigung“). Diese Suchenden wollen eine bestimmte Firma. Schließen Sie sie aus, statt darauf zu bieten. Das spart Geld, und Marken in Anzeigentexten können Markenrechtsbeschwerden auslösen.
The data contains brand names (e.g. “rohrreinigung abex”, “weiler rohrreinigung”). These searchers want a specific firm. Exclude them instead of bidding on them: it saves money, and brands in ad text can trigger trademark complaints.
So geht’sHow to do it
Warum: In der Lernphase entscheidet der Suchbegriffsbericht, ob das Budget in Aufträge oder in DIY-Klicks fließt.Why: During learning, the search-term report decides whether budget goes into jobs or DIY clicks.
So geht’s: Bericht nach Kosten sortieren → irrelevante Begriffe in die passende Ausschlussliste → gute Begriffe als Genau passend aufnehmen.How: Sort the report by cost → irrelevant terms into the matching negative list → good terms added as exact match.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Kampagnen → Statistiken und Berichte → Suchbegriffe, Zeitraum „Gestern“ (Woche 1–2) bzw. „Letzte 7 Tage“.
- Spalten: Kosten, Klicks, Conversions, Kosten/Conv. Nach Kosten absteigend sortieren.
- Jede Zeile einordnen: passt (Stufe 1–3) / passt nicht (DIY, Jobs, Produkt, falsche Stadt, Wettbewerber) / unklar.
- „Passt nicht“: Haken setzen → Als auszuschließendes Keyword hinzufügen → in die freigegebene Liste (allgemein oder Branche), nicht nur in die Anzeigengruppe.
- „Passt“ mit ≥ 1 Conversion oder ≥ 10 Klicks: als
[genau passend]in die passende Anzeigengruppe aufnehmen. - Unklar: 7 Tage beobachten; ohne Conversion nach 2× Median-CPL Kosten → ausschließen.
- Falsche Städte (Suche nach Ort außerhalb des Gebiets): Stadt in die eigene Ausschlussliste.
- Ergebnis in einer Zeile ins Optimierungsprotokoll: Datum, Anzahl neuer Ausschlüsse, auffällige Begriffe.
- Campaigns → Insights and reports → Search terms, period “Yesterday” (weeks 1–2) or “Last 7 days”.
- Columns: cost, clicks, conversions, cost/conv. Sort by cost descending.
- Classify each row: fits (tier 1–3) / doesn’t fit (DIY, jobs, product, wrong city, competitor) / unclear.
- “Doesn’t fit”: tick → Add as negative keyword → into the shared list (general or niche), not just the ad group.
- “Fits” with ≥ 1 conversion or ≥ 10 clicks: add as
[exact match]to the matching ad group. - Unclear: watch for 7 days; with no conversion after 2× median CPL in cost → exclude.
- Wrong cities (search for a place outside the area): add the city to your own negative list.
- Log one line in the optimisation log: date, number of new negatives, notable terms.
11Anzeigen & AssetsAds & assets
Regeln für richtlinienkonforme TexteRules for policy-safe copy
- Keine Superlative ohne Beleg („bester“, „günstigster“, „Nr. 1“, „schnellster“).
- „24/7“, „Festpreis“, „in 30 Min. da“ nur, wenn es stimmt und auf der Seite steht.
- Kein „kostenlos“, wenn Anfahrt oder Prüfung Geld kostet; „kostenlose telefonische Beratung“ ist ok.
- Keine Telefonnummer im Anzeigentext (dafür gibt es das Anruf-Asset).
- Keine Ausrufezeichen in Titeln, keine GROSSBUCHSTABEN als Effekt, keine Zeichen-Spielereien.
- Platzhalter
[x],[Zeit],[Marke]durch echte Werte ersetzen. Die Länge ist mit „Gelsenkirchen“ geprüft (≤ 30 bzw. ≤ 90 Zeichen). - Pinning sparsam: nur Position 1 mit 2–3 Varianten (Stadt-Titel, Marke). Den Rest frei rotieren lassen.
- No superlatives without proof (“best”, “cheapest”, “No. 1”, “fastest”).
- “24/7”, “fixed price”, “there in 30 min” only if true and stated on the page.
- No “free” if call-out or inspection costs money; “free phone advice” is fine.
- No phone number in ad text (that’s what the call asset is for).
- No exclamation marks in headlines, no ALL CAPS for effect, no symbol tricks.
- Replace placeholders
[x],[Zeit],[Marke]with real values; length checked with “Gelsenkirchen” (≤ 30 / ≤ 90 characters). - Pin sparingly: only position 1 with 2–3 variants (city headline, brand); let the rest rotate.
Anzeigentexte je Branche (Deutsch, zum Kopieren)Ad copy per niche (German, ready to copy)
„Termin oft heute oder morgen“, „Notdienst bis [Zeit] Uhr“, „In der Handwerksrolle“ und „Zählerschrank“ nur verwenden, wenn es für den Betrieb zutrifft.
Use “Termin oft heute oder morgen”, “Notdienst bis [Zeit] Uhr”, “In der Handwerksrolle” and “Zählerschrank” only if true for the business.
AssetsAssets
| AssetAsset | InhaltContent | HinweisNote |
|---|---|---|
| AnrufCall | echte Firmennummer; Anrufberichte anreal company number; call reporting on | Zeitplan = besetzte Zeiten; Conversion „Anruf aus Anzeige ≥ 60 s“schedule = staffed hours; conversion “call from ad ≥ 60 s” |
| Sitelinks (4–6)Sitelinks (4–6) | Preise · Notdienst · Leistung A · Leistung B · Über uns/Qualifikation · Einsatzgebietprices · emergency · service A · service B · about/qualification · service area | je 2 Beschreibungszeilen ausfüllenfill both description lines |
| ZusatzinformationenCallouts | „Preis vor Arbeitsbeginn“ · „Kartenzahlung“ · „Keine Vorkasse“ · „Meisterbetrieb“ · „Mit Nachkontrolle“ | ≤ 25 Zeichen, nur Belegbares≤ 25 characters, only provable |
| SnippetsStructured snippets | Kopf „Leistungen“: WC, Küche, Dusche, Kanal, Keller / Elektro: Störung, Installation, E-Check / KJ: Wespen, Ratten, Mäuse, Bettwanzenheader “Services”: … | 3–10 Werte3–10 values |
| PreisePrice | 3–8 Einträge: Anfahrt, Stundensatz/Arbeitswert, typische Festpreise3–8 items: call-out, hourly/labour rate, typical fixed prices | identisch mit /preise/identical to /preise/ |
| BilderImages | echte Fotos: Team, Fahrzeug, Einsatz (quadratisch + quer)real photos: team, van, job (square + landscape) | kein Text im Bild, keine Stockfotosno text in image, no stock photos |
| Unternehmensname + LogoBusiness name + logo | exakt wie Impressum/Markeexactly as Impressum/brand | nach Werbetreibenden-Bestätigungafter advertiser verification |
| StandortLocation | nur mit Unternehmensprofilonly with Business Profile | aktuell nicht genutzt (kein Profil)not used currently (no profile) |
| Lead-Formular-AssetLead form asset | –– | nicht empfohlen: viele Fehl-Leads, kein Preis-Kontextnot recommended: many junk leads, no price context |
So geht’sHow to do it
Warum: Gute Anzeigenrelevanz senkt den Klickpreis. Abgelehnte Anzeigen stoppen die Kampagne in der wichtigsten ersten Woche.Why: Good ad relevance lowers CPC; disapproved ads stop the campaign in the crucial first week.
So geht’s: Texte aus dem Kopierfeld einfügen, Platzhalter ersetzen, Position 1 pinnen, finale URL + Pfad setzen, Anzeigeneffektivität ≥ „Gut“.How: Paste texts from the copy box, replace placeholders, pin position 1, set final URL + path, ad strength ≥ “Good”.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
- Anzeigengruppe öffnen → Anzeigen → + → Responsive Suchanzeige.
- Finale URL = Stadt-/Leistungsseite; Anzeigepfad z. B.
/rohrreinigung/essen. - 15 Titel aus dem Kopierfeld einfügen;
[Stadt]durch die Stadt der Anzeigengruppe ersetzen,[x]/[Zeit]/[Marke]durch echte Werte. - Stadt-Titel und Marken-Titel an Position 1 pinnen (Stecknadel-Symbol), sonst nichts.
- 4 Beschreibungen einfügen; keine pinnen.
- Anzeigeneffektivität prüfen (Ziel „Gut“ oder „Sehr gut“); Google-Vorschläge nur übernehmen, wenn sie belegbar sind.
- Speichern; nach 1–24 Std. Status Genehmigt prüfen. Bei „Abgelehnt“: Grund lesen, Text korrigieren, nicht einfach Einspruch einlegen.
- Open the ad group → Ads → + → Responsive search ad.
- Final URL = city/service page; display path e.g.
/rohrreinigung/essen. - Paste 15 headlines from the copy box; replace
[Stadt]with the ad group city,[x]/[Zeit]/[Marke]with real values. - Pin the city headline and brand headline to position 1 (pin icon), nothing else.
- Paste 4 descriptions; pin none.
- Check ad strength (target “Good” or “Excellent”); accept Google suggestions only if provable.
- Save; after 1–24 hrs check status Approved. If “Disapproved”: read the reason, fix the text, don’t just appeal.
12Gebote & BudgetBidding & budget
| BrancheNiche | Median-CPC StadtCity median CPC | Start-CPC-Limit (×1,3)Start CPC cap (×1.3) | Mindestbudget/Monat (5 Klicks/Tag)Min. budget/month (5 clicks/day) | Komfortbudget (10 Klicks/Tag)Comfortable budget (10 clicks/day) |
|---|---|---|---|---|
| ElektrikerElectrician | €2,88 | €3,74 | €438€438 | €876€876 |
| RohrreinigungDrain cleaning | €16,57 | €21,54 | €2.519€2,519 | €5.037€5,037 |
| KammerjägerPest control | €10,61 | €13,79 | €1.613€1,613 | €3.225€3,225 |
Schätzungestimate Median-CPC gemessenmeasured × Klicks/Tag × 30,4. Unter dem Mindestbudget: Kampagnen zusammenlegen (eine Kampagne, nur Stufe A, nur Notdienst-Begriffe), statt Budget dünn zu verteilen.
Schätzungestimate median CPC gemessenmeasured × clicks/day × 30.4. Below the minimum budget: merge campaigns (one campaign, tier A only, emergency terms only) instead of spreading budget thin.
PhasenplanPhase plan
| PhasePhase | GebotsstrategieBid strategy | EinstellungSetting | Weiter, wenn …Move on when … |
|---|---|---|---|
| 1 · Tag 1–~21day 1–~21 | Klicks maximierenMaximise clicks | max. CPC-Limit = Median × 1,3max CPC cap = median × 1.3 | ≥ 15 Conversions, Tracking geprüft, Suchbegriffe sauber≥ 15 conversions, tracking verified, search terms clean |
| 2 · bis ~Tag 60to ~day 60 | Conversions maximierenMaximise conversions | ohne Ziel; Budget nicht ändern in den ersten 7 Tagenno target; don’t change budget for the first 7 days | ≥ 30 Conversions in 30 Tagen≥ 30 conversions in 30 days |
| 3 · ab ~Tag 60from ~day 60 | Ziel-CPATarget CPA | Start = tatsächlicher CPL der letzten 30 Tagestart = actual CPL of the last 30 days | alle 2 Wochen −10 % bis zum Ziel-CPLevery 2 weeks −10% towards the target CPL |
| 4 · ab Monat 4from month 4 | Ziel-ROAS / Wert maximierenTarget ROAS / maximise value | nur mit ≥ 30 importierten Aufträgen/Monatonly with ≥ 30 imported jobs/month | – |
Budget-RegelnBudget rules
- Aufteilung zum Start: Notdienst/akut 60–75 %, planbar 25–40 % (siehe Bauplan); Stufe A ~70 %, Stufe B ~30 %. Nach 30 Tagen nach CPL umverteilen.
- Skalieren: +20 % pro Woche, wenn CPL ≤ Ziel und der Betrieb freie Kapazität hat. Nie mehr als +30 % auf einmal (Lernphase).
- Kapazitätsdeckel: Tagesbudget ≤ (max. Aufträge/Tag ÷ Buchungsquote) × CPL. Mehr Leads als Termine verbrennen Geld und Bewertungen.
- CPL zu hoch (2 Wochen): zuerst Stufe B, schwache Zeiten und teure Keywords kürzen, Seite/Callcenter prüfen. Erst dann das Budget.
- Nacht/Wochenende: eigene Notdienst-Kampagne mit eigenem Zeitplan. Bei Smart Bidding wirken manuelle Gebotsanpassungen nicht (außer Gerät −100 %).
- Saison Kammerjäger: Budget monatlich am Saisonindex ausrichten (April ↑, Juni/Juli Spitze, ab Oktober ↓). Nicht über „Saisonabhängigkeitsanpassungen“ lösen, die sind für kurze Ereignisse gedacht.
- Split at start: emergency/acute 60–75%, planned 25–40% (see blueprint); tier A ~70%, tier B ~30%. Reallocate by CPL after 30 days.
- Scaling: +20% per week if CPL ≤ target and the business has free capacity. Never more than +30% at once (learning phase).
- Capacity cap: daily budget ≤ (max jobs/day ÷ booking rate) × CPL. More leads than appointments burn money and reviews.
- CPL too high (2 weeks): first cut tier B, weak hours and expensive keywords, check page/call centre; only then budget.
- Night/weekend: own emergency campaign with its own schedule. With Smart Bidding, manual bid adjustments don’t apply (except device −100%).
- Pest-control season: align budget monthly with the seasonality index (April ↑, June/July peak, from October ↓). Don’t use “seasonality adjustments”; those are for short events.
813Lead-Bearbeitung & CallcenterLead handling & call centre
Gesprächsleitfaden (Callcenter)Call script (call centre)
- Begrüßung: „Guten Tag, [exakter Markenname], mein Name ist …, wie kann ich Ihnen helfen?“
- Problem: „Was genau ist passiert?“ (z. B. WC verstopft, Strom weg, Wespennest wo?)
- Ort: „In welcher Postleitzahl sind Sie?“ Außerhalb des Gebiets: freundlich absagen, nicht trotzdem buchen.
- Dringlichkeit: „Brauchen Sie heute Hilfe oder passt ein Termin in den nächsten Tagen?“
- Preis nennen: Anfahrt, Arbeitswert bzw. Festpreis, aktueller Zuschlag (Abend/Wochenende). „Den genauen Preis nennt der Techniker vor Arbeitsbeginn. Er ist dann verbindlich.“
- Termin: realistisches Zeitfenster, nichts versprechen, was die Technik nicht halten kann.
- Bestätigen: Name, Adresse, Rückrufnummer; SMS/WhatsApp-Bestätigung mit Zeitfenster und Preisrahmen.
- Markieren: Ergebnis sofort im Protokoll eintragen (siehe unten).
- Greeting: “Good day, [exact brand name], my name is …, how can I help?”
- Problem: “What exactly happened?” (e.g. toilet blocked, power out, wasp nest where?)
- Location: “What is your postcode?” Outside the area: politely decline, don’t book anyway.
- Urgency: “Do you need help today or does an appointment in the next days work?”
- State price: call-out, labour or fixed price, current surcharge (evening/weekend). “The technician confirms the exact price before work starts; it is then binding.”
- Appointment: a realistic time window; promise nothing the technicians can’t keep.
- Confirm: name, address, callback number; SMS/WhatsApp confirmation with time window and price range.
- Tag: enter the outcome in the log immediately (see below).
Markierungen je AnrufTags per call
| MarkierungTag | BedeutungMeaning | Folge im KontoConsequence in the account |
|---|---|---|
| GebuchtBooked | Termin vereinbartappointment made | Import als „Auftrag gebucht“ mit Wertimport as “job booked” with value |
| AngebotQuote | Kostenvoranschlag/Besichtigungestimate/site visit | später nachtragen, wenn gebuchtadd later if booked |
| Kein AuftragNo job | Preis zu hoch, nur Info, selbst gelöstprice too high, info only, solved themselves | Suchbegriff/Zeit prüfencheck search term/time |
| Außerhalb GebietOut of area | PLZ nicht bedientpostcode not served | Standort-Ausrichtung prüfencheck location targeting |
| Falsche LeistungWrong service | z. B. Schlüsseldienst, Heizunge.g. locksmith, heating | Ausschluss-Keyword ergänzenadd negative keyword |
| Spam/WerbungSpam/sales | Verkaufsanrufe, Botssales calls, bots | Nummer melden; Muster beobachtenreport number; watch patterns |
| BestandskundeExisting customer | Rückfrage zu altem Auftragquestion about old job | Marken-Suchen ggf. ausschließenpossibly exclude brand searches |
| BewerberJob seeker | fragt nach Jobasks about a job | „jobs/ausbildung“ prüfencheck “jobs/ausbildung” negatives |
So geht’sHow to do it
Warum: Das Callcenter spricht für eine Marke, die es nicht kennt. Ohne Einweisung nennt es falsche Preise, bucht außerhalb des Gebiets oder meldet sich mit falschem Namen.Why: The call centre speaks for a brand it doesn’t know. Without a briefing it quotes wrong prices, books outside the area or answers with the wrong name.
So geht’s: Ein Info-Blatt je Marke (Marke, Preise, Gebiet, Zeiten, Leistungen, No-Gos) + Skript + Protokollvorlage; Testanrufe vor Go-live.How: One info sheet per brand (brand, prices, area, hours, services, no-gos) + script + log template; test calls before go-live.
Weiterlesen – alle 8 SchritteRead more – all 8 steps
- Info-Blatt erstellen: exakter Markenname, Firmenname laut Impressum, Preisliste (identisch mit
/preise/), PLZ-Liste des Gebiets, Besetzungs- und Notdienstzeiten, Leistungen und Nicht-Leistungen. - Rufumleitung: Geht die Google-Weiterleitungsnummer auf eine eigene Callcenter-Durchwahl je Marke, erkennt der Agent die Marke am Display.
- Keine Ansage vor dem Abheben („Early Media“). Laut Google kann das zu falsch als verpasst gemeldeten Anrufen führen.
- Protokollvorlage (Tabelle/CRM) mit Pflichtfeldern: Anrufer-Nr., Datum/Uhrzeit, Dauer, Markierung, Auftragswert.
- Verpasste Anrufe: Telefonanlage zeigt Anrufer-ID → Rückruf ≤ 5 Min., Ergebnis markieren.
- Anrufaufzeichnung nur mit Ansage und Einwilligung (Rechtsrat einholen). Sonst Qualität per Stichproben-Testanruf prüfen.
- 3 Testanrufe vor Go-live (Notfall, planbar, außerhalb Gebiet); Abweichungen sofort korrigieren.
- Wöchentlich: Export des Protokolls an das Ads-Team (für Import und Auswertung).
- Create the info sheet: exact brand name, company name per Impressum, price list (identical to
/preise/), postcode list of the area, staffed and emergency hours, services and non-services. - Call routing: if the Google forwarding number routes to a dedicated call-centre extension per brand, the agent sees the brand on the display.
- No announcement before pick-up (“early media”); per Google it can make calls appear as missed.
- Log template (sheet/CRM) with required fields: caller no., date/time, duration, tag, job value.
- Missed calls: the phone system shows caller ID → callback ≤ 5 min, tag the outcome.
- Call recording only with an announcement and consent (get legal advice); otherwise check quality with sample test calls.
- 3 test calls before go-live (emergency, planned, out of area); fix deviations immediately.
- Weekly: export the log to the ads team (for import and analysis).
914Reporting & AutomatisierungReporting & automation
| KennzahlKPI | DefinitionDefinition | ZielTarget | ArtType |
|---|---|---|---|
| Kosten pro Lead (CPL)Cost per lead (CPL) | Kosten ÷ Anrufe ≥ 60 scost ÷ calls ≥ 60 s | ≤ max. tragbarer CPL (Rechner)≤ max affordable CPL (calculator) | Annahmeassumption |
| Conversion-RateConversion rate | Anrufe ≥ 60 s ÷ Klickscalls ≥ 60 s ÷ clicks | ab Woche 4 messen, dann als Ausgangswertmeasure from week 4, then use as baseline | gemessenmeasured |
| Kosten pro gebuchtem AuftragCost per booked job | Kosten ÷ importierte Aufträgecost ÷ imported jobs | ≤ Auftragswert × Marge≤ job value × margin | Annahmeassumption |
| AnnahmequoteAnswer rate | angenommene ÷ alle Anrufe (Callcenter-Protokoll)answered ÷ all calls (call-centre log) | ≥ 90 % | Empfehlungrecommendation |
| Verlorener Anteil (Budget)Lost impression share (budget) | Impressionen, die am Budget scheitertenimpressions lost to budget | Stufe A Notdienst < 20 %, wenn CPL im Zieltier A emergency < 20% if CPL on target | Empfehlungrecommendation |
Rhythmus für viele KampagnenRhythm for many campaigns
| RhythmusRhythm | AufgabenTasks | ZeitTime |
|---|---|---|
| Täglich (automatisch)Daily (automated) | Warn-E-Mails lesen: Budget-Tempo, CPL-Spitzen, 0 Conversions, abgelehnte Anzeigenread alert emails: budget pacing, CPL spikes, 0 conversions, disapproved ads | 5 Min. |
| 2× pro Woche2× per week | Suchbegriffe aller Kampagnen (Editor/Bericht nach Kosten); neue Ausschlüsse in die gemeinsamen Listensearch terms across all campaigns (Editor/report by cost); new negatives into shared lists | 20 Min. |
| WöchentlichWeekly | Dashboard: Kampagnen und Städte nach CPL sortieren; untere 10 % prüfen; Auftragsimport; laufende Testsdashboard: sort campaigns and cities by CPL; check the bottom 10%; job import; running tests | 45 Min. |
| MonatlichMonthly | Bericht an den Inhaber; Budget nach CPL umverteilen; Gates prüfen; Saison (Kammerjäger)report to the owner; reallocate budget by CPL; check gates; season (pest control) | 1–2 Std. |
| VierteljährlichQuarterly | Struktur: zusammenlegen (< 15 Conv./30 T.) oder ausgliedern (≥ 30 Conv./30 T.); Vorlage aktualisierenstructure: merge (< 15 conv./30 d) or promote (≥ 30 conv./30 d); update the template | 2–3 Std. |
So geht’sHow to do it
Warum: Ein Dashboard für alle Kampagnen ersetzt das Klicken durch Dutzende Ansichten und zeigt Ausreißer sofort.Why: One dashboard for all campaigns replaces clicking through dozens of views and shows outliers immediately.
So geht’s: Google-Ads-Connector + Google-Sheet mit dem Callcenter-Protokoll, verknüpft über Datum und Kampagne; vier Seiten: Übersicht, Städte, Seiten/Domains, Telefon.How: Google Ads connector + Google Sheet with the call-centre log, blended on date and campaign; four pages: overview, cities, pages/domains, phone.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
lookerstudio.google.com→ Leerer Bericht → Datenquelle Google Ads → Konto wählen. Laut Google kann eine Datenquelle mit Verwaltungskonto bis zu 50 Unterkonten abdecken.- Zweite Datenquelle: Google Sheet „Callcenter-Protokoll“ (Datum, Kampagne, Anrufe, angenommen, gebucht, Auftragswert).
- Daten verknüpfen (Blend): Schlüssel Datum + Kampagne.
- Berechnete Felder: CPL = Kosten ÷ Conversions; Kosten/Auftrag = Kosten ÷ gebucht; Annahmequote = angenommen ÷ Anrufe.
- Seite 1 Übersicht: Kennzahlen + Verlauf je Woche. Seite 2 Städte: Tabelle nach Anzeigengruppe (Stadt aus dem Namen per Feld „REGEXP_EXTRACT“).
- Seite 3 Seiten & Domains: nach finaler URL bzw. Label
DOM-x/TEST-LPx. Seite 4 Telefon: Annahmequote, verpasste Anrufe nach Stunde. - Filter für Branche, Stufe und Welle (aus der Namenskonvention). Bericht wöchentlich per E-Mail planen.
lookerstudio.google.com→ blank report → data source Google Ads → choose account. Per Google, a data source with a manager account can cover up to 50 sub-accounts.- Second data source: Google Sheet “call-centre log” (date, campaign, calls, answered, booked, job value).
- Blend data: keys date + campaign.
- Calculated fields: CPL = cost ÷ conversions; cost/job = cost ÷ booked; answer rate = answered ÷ calls.
- Page 1 overview: KPIs + weekly trend. Page 2 cities: table by ad group (city extracted from the name with “REGEXP_EXTRACT”).
- Page 3 pages & domains: by final URL or label
DOM-x/TEST-LPx. Page 4 phone: answer rate, missed calls by hour. - Filters for niche, tier and wave (from the naming convention). Schedule the report weekly by email.
Warum: Bei vielen Kampagnen fällt ein Problem sonst erst im Monatsbericht auf.Why: With many campaigns a problem would otherwise only show in the monthly report.
So geht’s: Regeln (Tools → Bulk-Aktionen → Regeln) mit E-Mail-Benachrichtigung, dazu Googles Lösungen „Account Anomaly Detector“ und „Link Checker“.How: Rules (Tools → Bulk actions → Rules) with email notification, plus Google’s solutions “account anomaly detector” and “link checker”.
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Budget-Tempo: Regel täglich 14 Uhr: Kampagnen mit Kosten heute ≥ 80 % des Tagesbudgets → E-Mail.
- CPL-Spitze: Regel wöchentlich: Kosten/Conversion letzte 7 Tage > 1,5 × Ziel-CPA und Kosten > 2 × Ziel-CPA → E-Mail.
- Null Conversions: Regel täglich: Kampagnen mit 0 Conversions in 3 Tagen und Kosten > 1 × Ziel-CPA → E-Mail.
- Abgelehnte Anzeigen: E-Mail-Benachrichtigungen des Kontos aktiviert lassen und täglich im Richtlinienmanager prüfen.
- Lösungen: Tools → Bulk-Aktionen → Lösungen → „Account Anomaly Detector“ (Abweichungen bei Kosten, Klicks, Conversions) und „Link Checker“ (defekte Ziel-URLs).
- Regeln zuerst nur benachrichtigen lassen, nicht automatisch pausieren.
- Budget pacing: rule daily 2 pm: campaigns with cost today ≥ 80% of daily budget → email.
- CPL spike: rule weekly: cost/conversion last 7 days > 1.5 × target CPA and cost > 2 × target CPA → email.
- Zero conversions: rule daily: campaigns with 0 conversions in 3 days and cost > 1 × target CPA → email.
- Disapproved ads: keep the account’s email notifications on and check the Policy manager daily.
- Solutions: Tools → Bulk actions → Solutions → “account anomaly detector” (deviations in cost, clicks, conversions) and “link checker” (broken final URLs).
- Let rules only notify at first, not pause automatically.
QuellenSources
- Google: Lösungen erstellen (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Looker Studio – Google-Ads-Connector (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: How to create solutions (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Looker Studio – Google Ads connector (abgerufen 27.10.2026retrieved 27.10.2026)
Die Menüpfade der automatischen Regeln stammen aus Praxisquellen. Die Schwellen der Regeln sind Empfehlungen.
The automated-rules menu paths come from practitioner sources; the rule thresholds are recommendations.
15Weitere KanäleOther channels
| KanalChannel | WannWhen | WofürFor | UrteilVerdict |
|---|---|---|---|
| Microsoft Ads | ab Stufe 2 (Vorlage bewiesen)from stage 2 (template proven) | zusätzliche Suchanfragen, oft günstigere Klicks; Import aus Googleextra searches, often cheaper clicks; import from Google | jayes |
| Local Services Ads | ab Monat 3, mit Bewertungenfrom month 3, with reviews | Bezahlung pro Lead, „Google Verified“pay per lead, “Google Verified” | prüfencheck |
| Meta Lead AdsMeta lead ads | nur planbar (E-Check, Kanal-TV, Gewerbe-Schädlingsschutz)planned only (E-Check, sewer camera, business pest control) | Formular-Leads ohne akute Absichtform leads without acute intent | kleiner Testsmall test |
| MyHammer / Check24MyHammer / Check24 | jederzeitany time | Vergleichsmaßstab für den CPLbenchmark for CPL | Benchmarkbenchmark |
| YouTube / TikTok / Display | – | keine Notfall-Absicht, teure Fehlklicks; im Notfall sucht man, man scrollt nichtno emergency intent, costly wasted clicks; in an emergency people search, they don’t scroll | neinno |
So geht’sHow to do it
Warum: Der Import übernimmt Struktur, Keywords, Anzeigen und Ausschlüsse. Damit läuft ein zweiter Suchkanal ohne Neuaufbau.Why: The import carries over structure, keywords, ads and negatives, so a second search channel runs without rebuilding.
So geht’s: Microsoft-Ads-Konto auf die Firma → Import → von Google Ads → anmelden → Konto und Kampagnen wählen → Optionen → Zeitplan.How: Microsoft Ads account in the company name → Import → from Google Ads → sign in → choose account and campaigns → options → schedule.
Weiterlesen – alle 7 SchritteRead more – all 7 steps
- Microsoft-Advertising-Konto mit Firmendaten anlegen (gleiche Firma wie im Impressum), Zahlung hinterlegen.
- Import → Von Google Ads importieren → mit dem Google-Konto anmelden, das Zugriff auf das Ads-Konto hat.
- Konto und nur die bewiesenen Kampagnen wählen (nicht Pilot-Reste).
- Optionen prüfen: Gebote/Budgets anpassen, Standorte und Ausschlüsse mitnehmen.
- Zeitplan: anfangs einmalig importieren. Laut Microsoft können spätere geplante Importe manuelle Änderungen (Status, Gebote, Budgets) überschreiben.
- Eigene Conversion-Messung (UET-Tag über GTM, nach Einwilligung) und Anruf-Erweiterung einrichten.
- Nach 4 Wochen CPL je Kanal vergleichen; Budget dorthin, wo der CPL niedriger ist.
- Create a Microsoft Advertising account with company data (same company as in the Impressum), add payment.
- Import → Import from Google Ads → sign in with the Google account that has access to the Ads account.
- Choose the account and only the proven campaigns (not pilot leftovers).
- Check options: adjust bids/budgets, carry over locations and negatives.
- Schedule: import once at first. Per Microsoft, later scheduled imports can overwrite manual changes (status, bids, budgets).
- Set up its own conversion tracking (UET tag via GTM, after consent) and a call extension.
- After 4 weeks compare CPL per channel; shift budget to the lower CPL.
Warum: Für Notfälle ungeeignet, aber für planbare Leistungen kann ein kurzes Sofortformular günstige Anfragen bringen.Why: Unsuitable for emergencies, but for planned services a short instant form can bring cheap enquiries.
So geht’s: Kampagne mit Ziel „Leads“, Sofortformular „Höhere Absicht“, Region = Einsatzgebiet, 4 Wochen mit kleinem Budget.How: Campaign with objective “Leads”, instant form “higher intent”, region = service area, 4 weeks with a small budget.
Weiterlesen – alle 6 SchritteRead more – all 6 steps
- Werbeanzeigenmanager → Kampagne „Leads“ → Conversion-Ort „Sofortformulare“.
- Formulartyp „Höhere Absicht“ (Bestätigungsschritt), Fragen: Leistung, PLZ, Telefon.
- Datenschutzlink des Betriebs eintragen (Pflicht bei Meta).
- Region auf die Städte des Einsatzgebiets begrenzen; echte Fotos aus Einsätzen.
- Leads täglich abrufen oder per Integration ins Callcenter leiten; Rückruf ≤ 10 Min.
- Nach 4 Wochen: Kosten pro gebuchtem Auftrag mit Google vergleichen; nur weiterführen, wenn gleich gut oder besser.
- Ads Manager → campaign “Leads” → conversion location “Instant forms”.
- Form type “Higher intent” (confirmation step), questions: service, postcode, phone.
- Add the business’s privacy link (required by Meta).
- Limit the region to the service-area cities; real photos from jobs.
- Fetch leads daily or route them to the call centre via integration; callback ≤ 10 min.
- After 4 weeks: compare cost per booked job with Google; continue only if equal or better.
Warum: Lead-Portale verlangen einen Preis pro Anfrage oder Auftrag. Das ist die Messlatte: Google Ads lohnt, wenn die Kosten pro gebuchtem Auftrag darunter liegen.Why: Lead portals charge per enquiry or job. That is the bar: Google Ads pays off if the cost per booked job is below it.
So geht’s: Aktuelle Portal-Konditionen für die eigene Leistung und Region einholen und mit den Kosten pro gebuchtem Auftrag aus Google vergleichen.How: Get current portal terms for your own service and region and compare them with the cost per booked job from Google.
Weiterlesen – alle 4 SchritteRead more – all 4 steps
- Konditionen direkt beim Portal anfragen (Preise ändern sich und hängen von Leistung und Region ab, daher hier keine Zahlen).
- Umrechnen auf Kosten pro gebuchtem Auftrag (Portal-Preis ÷ eigene Abschlussquote dort).
- Mit „Kosten pro gebuchtem Auftrag“ aus dem Dashboard vergleichen.
- Ergebnis im Monatsbericht festhalten.
- Ask the portal directly for terms (prices change and depend on service and region, so no figures here).
- Convert to cost per booked job (portal price ÷ your own close rate there).
- Compare with “cost per booked job” from the dashboard.
- Record the result in the monthly report.
QuellenSources
- Microsoft: Google Ads Import (abgerufen 27.10.2026retrieved 27.10.2026)
- Microsoft Advertising Hilfe: Import (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Local Services Ads – Deutschland (abgerufen 26.10.2026retrieved 26.10.2026)
- Microsoft: Google Ads import (abgerufen 27.10.2026retrieved 27.10.2026)
- Microsoft Advertising help: import (abgerufen 27.10.2026retrieved 27.10.2026)
- Google: Local Services Ads – Germany (abgerufen 26.10.2026retrieved 26.10.2026)
Meta-Angaben (Formulartypen, Datenschutzlink, Lead-Speicherung) stammen aus Praxisanleitungen und wurden nicht in Metas eigener Hilfe geprüft. Bitte vor dem Start im Werbeanzeigenmanager kontrollieren.
Meta details (form types, privacy link, lead storage) come from practitioner guides and were not checked in Meta’s own help. Please verify in Ads Manager before launch.
1016Risiken & FallstrickeRisks & pitfalls
| SchwereSeverity | RisikoRisk | KurzIn short | |
|---|---|---|---|
| hochhigh | Klickbetrug & WettbewerberklicksClick fraud & competitor clicks | Hohe CPCs in Notdienst-Branchen locken Klicks ohne Absicht an.High CPCs in emergency niches attract clicks without intent. | › |
| hochhigh | Ablehnung oder KontosperrungDisapproval or suspension | Falschdarstellung, unklare Preise, fehlende Bestätigung.Misrepresentation, unclear prices, missing verification. | › |
| hochhigh | Callcenter-QualitätCall-centre quality | Verpasste oder schlecht geführte Anrufe vernichten bezahlte Leads.Missed or badly handled calls destroy paid leads. | › |
| mittelmedium | SaisonalitätSeasonality | Kammerjäger im Winter: wenig Nachfrage, hoher CPL.Pest control in winter: low demand, high CPL. | › |
| mittelmedium | Zu breite Standort-AusrichtungOver-broad geo targeting | „Präsenz oder Interesse“ oder zu großer Radius bringt Anrufe von außerhalb.“Presence or interest” or too large a radius brings calls from outside. | › |
| mittelmedium | Doppelte Marken in der AuktionDuplicate brands in the auction | Zwei Domains oder Marken desselben Betriebs im selben Gebiet.Two domains or brands of the same business in the same area. | › |
| niedriglow | Neue Domain: teurer StartNew domain: expensive start | Ohne Historie schätzt Google vorsichtig.Without history Google estimates cautiously. | › |
| niedriglow | Kein UnternehmensprofilNo Business Profile | Keine Standort-Assets, keine Maps-Sichtbarkeit, keine Google-Sterne.No location assets, no Maps visibility, no Google stars. | › |
| mittelmedium | Abmahnung (UWG/PAngV/DSGVO)Warning letter (UWG/PAngV/GDPR) | Fehlende Preisangaben, Impressum, Consent oder unbelegte Werbeaussagen.Missing prices, Impressum, consent or unprovable claims. | › |
17Anhang: Quellen, Annahmen, RahmenAppendix: sources, assumptions, scope
QuellenSources
DatenbasisData basis
- OpenSEO (DataForSEO, Google-Ads-Daten): 9 lokale Seed-Abfragen (Elektriker/Rohrreinigung/Kammerjäger × Köln/Essen/Hamm) und 165 Keyword-Metriken (25 NRW-Städte + Absichtsbegriffe, Deutschland); Google-Geo-IDs der 25 Städte über die OpenSEO-Ortssuche (27.10.2026).
- CPC = durchschnittlicher historischer Klickpreis der Datenquelle; Saisonindex = Mittel Okt. 2024 – Sep. 2026 je Kalendermonat ÷ Gesamtmittel × 100.
- Für 17 der 165 abgefragten Begriffe lieferte die Quelle keine Daten (zu geringes Volumen).
- OpenSEO (DataForSEO, Google Ads data): 9 local seed queries (electrician/drain cleaning/pest control × Cologne/Essen/Hamm) and 165 keyword metrics (25 NRW cities + intent terms, Germany); Google geo IDs of the 25 cities via the OpenSEO location search (27 Oct 2026).
- CPC = the data source’s average historical click price; seasonality index = Oct 2024 – Sep 2026 average per calendar month ÷ overall average × 100.
- For 17 of the 165 terms queried, the source returned no data (volume too low).
AnnahmenAssumptions
| AnnahmeAssumption | WertValue | WoherFrom |
|---|---|---|
| Conversion-Rate Klick → Anruf ≥ 60 sConversion rate click → call ≥ 60 s | 10 % (8–20 %) | Planungsannahme, keine Messung; nach 4 Wochen ersetzenplanning assumption, not measured; replace after 4 weeks |
| Aufschlag neue DomainNew-domain uplift | +30 % | Planungsannahmeplanning assumption |
| Buchungsquote, Auftragswert, MargeBooking rate, job value, margin | 50 % · 300 € · 40 % | Platzhalter; eigene Werte eintragenplaceholders; enter your own values |
| EinsatzradiusService radius | ~30 km / 30–45 Min. | Rahmen dieses Playbooksscope of this playbook |
| Lead-DefinitionLead definition | Anruf ≥ 60 scall ≥ 60 s | Rahmen dieses Playbooksscope of this playbook |
| Gebotsschwellen 15 / 30 ConversionsBid thresholds 15 / 30 conversions | – | Erfahrungswert (Empfehlung)rule of thumb (recommendation) |
Rahmen dieses PlaybooksScope of this playbook
| ThemaTopic | AnnahmeAssumption |
|---|---|
| BetriebBusiness | echter lokaler Handwerksbetrieb in NRW mit eigener Adresse und eigenen Technikerna real local trade business in NRW with its own address and technicians |
| Domain & TestsDomain & tests | eine Live-Domain je Betrieb, Varianten als Landingpagesone live domain per business, variants as landing pages |
| Konto & ZahlungAccount & payment | eigenes Google-Ads-Konto; der Betrieb zahlt und bestätigt sichown Google Ads account; the business pays and verifies |
| EinsatzgebietService area | ein Sitz + Umkreis ~30 kmone base + ~30 km radius |
| Erreichbarkeit & PreiseAvailability & prices | 24/7 nur, wenn echt; veröffentlichte Ab-Preise; Anrufannahme über ein Callcenter24/7 only if real; published from-prices; calls answered by a call centre |
| ZielGoal | Lead = Anruf ≥ 60 s; Leads ab Woche 1, stabil bis Tag 90lead = call ≥ 60 s; leads from week 1, stable by day 90 |
| TechnikTech | statische Website (Astro); Google-Weiterleitungsnummern; Unternehmensprofil optionalstatic website (Astro); Google forwarding numbers; Business Profile optional |