Business Tech|11 Min. Lesezeit

Local SEO 2025: Warum deine Firma auf Google Maps unsichtbar ist

2025-07-15Benjamin Amos Wagner

#"Maler in Zürich" – und du bist nicht dabei.

Du googlest dein eigenes Geschäft. "Elektriker Winterthur". "Zahnarzt Bern". "Gipser Luzern".

Und du findest dich nicht.

Nicht auf der ersten Seite. Nicht im Google Maps Pack. Nicht einmal, wenn du deinen Firmennamen eingibst, erscheinst du prominent.

Das ist kein Zufall. Das ist ein Datenproblem.

Google vertraut deiner Webseite nicht. Es weiss nicht, wo du bist. Es weiss nicht, welche Gebiete du bedienst. Es weiss nicht, wann du geöffnet hast. Also zeigt es jemand anderen – jemanden, der diese Informationen maschinenlesbar bereitgestellt hat.

Willkommen in der Welt von Local SEO 2025.

#Die "Near Me" Explosion

Die Suchanfragen mit "in meiner Nähe" oder "near me" sind in den letzten Jahren exponentiell gestiegen:

  • "Bäckerei in meiner Nähe" +900% seit 2019
  • "Notfall-Schlüsseldienst jetzt offen" +1200%
  • "Beste Pizza Zürich Altstadt" +600%

Google hat darauf reagiert. Das Local Pack – diese Karte mit drei Einträgen oben in den Suchergebnissen – bekommt heute mehr Klicks als alle organischen Ergebnisse zusammen.

Wenn du dort nicht bist, existierst du für lokale Kunden praktisch nicht.

#Kapitel 1: Deine Webseite füttert Google Maps

Hier ist etwas, das die meisten Unternehmer nicht verstehen:

Dein Google Business Profil und deine Webseite sind verbunden.

Google crawlt deine Webseite und vergleicht die Informationen mit deinem Business Profil. Wenn die Daten übereinstimmen, steigt dein Trust Score. Wenn sie widersprüchlich sind, sinkt er.

#Die NAP-Konsistenz

NAP steht für Name, Address, Phone. Diese drei Datenpunkte müssen überall identisch sein:

  • Auf deiner Webseite
  • In deinem Google Business Profil
  • In Branchenverzeichnissen (local.ch, search.ch, etc.)
  • Auf Social Media

"Muster GmbH" ist nicht dasselbe wie "Muster AG". "Bahnhofstrasse 10" ist nicht dasselbe wie "Bahnhofstr. 10". Google ist pedantisch.

#Das Problem mit Text

Aber NAP allein reicht 2025 nicht mehr. Google liest deine Webseite nicht wie ein Mensch. Es sucht nach strukturierten Daten – maschinenlesbaren Informationen, die es sofort verarbeiten kann.

Wenn du schreibst "Wir sind von Montag bis Freitag von 8 bis 17 Uhr für Sie da", versteht Google das vielleicht. Wenn du es in Schema.org formatierst, versteht es das garantiert.

#Kapitel 2: Der technische Fix – JSON-LD

JSON-LD (JavaScript Object Notation for Linked Data) ist der Standard, um strukturierte Daten in deine Webseite einzubetten. Google bevorzugt dieses Format gegenüber Microdata oder RDFa.

#Ein vollständiges LocalBusiness Schema

Hier ist ein Beispiel für einen Malerbetrieb in Zürich:

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "@id": "https://maler-muster.ch/#business",
  "name": "Maler Muster GmbH",
  "description": "Professionelle Malerarbeiten in Zürich und Umgebung. Fassaden, Innenräume, Renovationen.",
  "url": "https://maler-muster.ch",
  "telephone": "+41 44 123 45 67",
  "email": "info@maler-muster.ch",
  "image": "https://maler-muster.ch/images/logo.png",
  "priceRange": "$$",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Bahnhofstrasse 10",
    "addressLocality": "Zürich",
    "postalCode": "8001",
    "addressRegion": "ZH",
    "addressCountry": "CH"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 47.3769,
    "longitude": 8.5417
  },
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "08:00",
      "closes": "17:00"
    }
  ],
  "areaServed": [
    {
      "@type": "City",
      "name": "Zürich"
    },
    {
      "@type": "City", 
      "name": "Winterthur"
    },
    {
      "@type": "City",
      "name": "Uster"
    },
    {
      "@type": "City",
      "name": "Dübendorf"
    }
  ],
  "sameAs": [
    "https://www.facebook.com/malermuster",
    "https://www.instagram.com/malermuster",
    "https://www.linkedin.com/company/malermuster"
  ],
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "47"
  }
}

#Was dieser Code bewirkt

Schau dir die Schlüsselfelder an:

geo (GeoCoordinates): Exakte GPS-Koordinaten deines Standorts. Google Maps liebt das. Es verbindet deine Webseite direkt mit einem Punkt auf der Karte.

openingHoursSpecification: Strukturierte Öffnungszeiten. Google zeigt sie direkt in den Suchergebnissen an ("Geöffnet bis 17:00").

areaServed: Die Städte und Gemeinden, die du bedienst. Das ist Gold für Local SEO. Du sagst Google explizit: "Zeig mich, wenn jemand in Winterthur nach einem Maler sucht, auch wenn mein Büro in Zürich ist."

aggregateRating: Deine Bewertungen. Google zeigt Sterne in den Suchergebnissen an – ein massiver Klick-Boost.

#Wo kommt der Code hin?

Der JSON-LD Block gehört in den <head> Bereich deiner Webseite, eingebettet in ein <script type="application/ld+json"> Tag:

<head>
  <title>Maler Muster GmbH – Zürich</title>
  <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "LocalBusiness",
      ... (der komplette JSON-Code)
    }
  </script>
</head>

Bei Astro oder Next.js bauen wir das dynamisch ein, sodass jede Seite automatisch die richtigen strukturierten Daten erhält.

#Kapitel 3: Programmatische Local Landing Pages

Jetzt wird es interessant. Du bist Maler in Zürich. Aber du arbeitest auch in Winterthur, Uster, Dübendorf, Dietikon, Kloten...

Wie rankst du für all diese Orte?

#Die manuelle Methode (langsam, teuer)

Du erstellst manuell eine Seite für jeden Ort:

  • /maler-winterthur
  • /maler-uster
  • /maler-dubendorf
  • ...

Für jeden Ort schreibst du einen einzigartigen Text, optimierst die Meta-Tags, fügst lokale Bilder ein. Bei 20 Orten sind das 20 Stunden Arbeit. Mindestens.

#Die Vibe-Methode (schnell, skalierbar)

Wir nutzen Programmatic SEO. Eine Datenbank mit Ortsinformationen + ein intelligentes Template = hunderte von Landingpages.

Jede Seite hat:

  • Einen einzigartigen Title ("Maler in Winterthur | Muster GmbH")
  • Lokale Inhalte (Einwohnerzahl, Nachbargemeinden, lokale Referenzen)
  • Eigene strukturierte Daten mit den spezifischen GeoCoordinates
  • Interne Verlinkung zu Nachbarorten

Google sieht das nicht als Duplicate Content, weil jede Seite echte, lokale Daten enthält. Es ist kein Spam – es ist Service.

#Der Code dahinter

Mit Next.js sieht das so aus:

// app/maler/[ort]/page.tsx
 
export async function generateStaticParams() {
  const cities = await getCitiesFromDatabase()
  return cities.map((city) => ({ ort: city.slug }))
}
 
export default async function CityPage({ params }) {
  const city = await getCityData(params.ort)
  
  const jsonLd = {
    "@context": "https://schema.org",
    "@type": "LocalBusiness",
    "name": "Maler Muster GmbH",
    "geo": {
      "@type": "GeoCoordinates",
      "latitude": city.latitude,
      "longitude": city.longitude
    },
    "areaServed": {
      "@type": "City",
      "name": city.name
    }
    // ... weitere Felder
  }
  
  return (
    <>
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
      />
      <h1>Maler in {city.name}</h1>
      <p>
        Professionelle Malerarbeiten für {city.population} Einwohner 
        in {city.name} und den Nachbargemeinden {city.neighbors.join(", ")}.
      </p>
    </>
  )
}

Das Ergebnis? Hunderte von Seiten, jede mit korrekten GPS-Koordinaten, jede mit einzigartigem Content, alle in Minuten generiert.

#Kapitel 4: Der LLM-Faktor

Hier kommt der Twist, den 99% der SEO-Agenturen noch nicht verstanden haben:

ChatGPT und Perplexity lesen deine strukturierten Daten.

Wenn jemand fragt "Wer ist der beste Maler in Winterthur?", durchsucht das LLM nicht nur Webseiten-Text. Es analysiert strukturierte Daten, Bewertungen, Öffnungszeiten, Servicegebiete.

Je präziser deine Schema.org Daten sind, desto wahrscheinlicher wirst du von AI-Assistenten empfohlen.

#Was LLMs lieben

  • Explizite Servicegebiete (areaServed mit spezifischen Städten)
  • Verifizierte Bewertungen (aggregateRating mit echten Reviews)
  • Klare Kontaktdaten (telephone, email, address)
  • Aktuelle Öffnungszeiten (openingHoursSpecification)
  • Visuelle Inhalte (image, logo)

#Was LLMs ignorieren

  • Vage Formulierungen ("Wir bedienen die Region")
  • Fehlende strukturierte Daten
  • Widersprüchliche Informationen
  • Veraltete Webseiten ohne Schema.org

Die Zukunft der lokalen Suche ist hybrid: Google Maps + ChatGPT + Perplexity. Wer jetzt die richtigen Daten liefert, dominiert alle drei Kanäle.

#Die Vibe-Checkliste für Local SEO

Hier ist, was wir für jeden lokalen Kunden implementieren:

Grundlagen:

  • NAP-Konsistenz auf allen Plattformen
  • Google Business Profil vollständig ausgefüllt
  • Webseite mit SSL und Mobile-Optimierung

Strukturierte Daten:

  • LocalBusiness Schema auf jeder Seite
  • GeoCoordinates mit exakten GPS-Daten
  • OpeningHoursSpecification für alle Tage
  • AreaServed für alle bedienten Orte
  • AggregateRating mit echten Bewertungen

Content-Strategie:

  • Lokale Landingpages für Zielgemeinden
  • Referenzen mit Ortsangabe
  • Lokale Keywords in Title und H1
  • Google Maps Embed auf Kontaktseite

Ongoing:

  • Regelmässige Bewertungen sammeln
  • Lokale Backlinks aufbauen
  • Öffnungszeiten bei Änderungen aktualisieren

#Fazit: Dominiere deine Nachbarschaft

Local SEO ist kein Hexenwerk. Es ist Datenhygiene.

Google und ChatGPT wollen dir helfen, gefunden zu werden. Aber du musst ihnen die richtigen Informationen geben – strukturiert, konsistent, maschinenlesbar.

Die Konkurrenz in deiner Nachbarschaft hat das noch nicht verstanden. Sie haben eine WordPress-Seite von 2018, kein Schema.org, widersprüchliche Adressen auf verschiedenen Plattformen.

Das ist deine Chance.

Mit den richtigen strukturierten Daten und programmatischen Landingpages kannst du nicht nur für deine Stadt ranken, sondern für jede Gemeinde in deinem Einzugsgebiet.


Bist du unsichtbar auf Google Maps? Lass uns das ändern. Wir analysieren deine lokale Präsenz und zeigen dir, wo die Lücken sind.

Kostenloses Local-SEO-Audit anfragen.

Hat dir dieser Artikel gefallen?

Wir setzen genau diese Technologien für Schweizer Unternehmen ein. Lass uns besprechen, wie das für dich aussehen könnte.

BW

Benjamin Amos Wagner

Digital Nomad / Founder

Baut die Zukunft des Webs mit Next.js, AI Agents und dem Hyperstack. Besessen von Performance, sauberem Code und der Automatisierung langweiliger Aufgaben.