Zum Inhalt springen

Google for Jobs einrichten

Stellenanzeigen bei Google for Jobs sichtbar machen — die komplette Anleitung

Schritt für Schritt: Schema.org JobPosting, Validierung, Search Console, Service Account und Indexing API. Mit Code-Snippets zum direkten Übernehmen — oder du überspringst alles und lässt Jobflare die Technik machen.

Warum Google for Jobs überhaupt?

Wenn jemand bei Google nach „Servicetechniker Hamburg“ sucht, rendert Google an oberster Stelle ein eigenes Job-Karussell — die weiße Box mit Job-Karten, BEVOR die normalen blauen Treffer kommen. Dieses Karussell wird komplett aus strukturierten JobPosting-Daten gespeist, die Karriereseiten in ihrem HTML mit ausliefern.

Der Effekt: Wer dort gelistet ist, gewinnt Bewerber-Aufmerksamkeit an einer Position, die mit klassischem SEO praktisch nicht erreichbar ist — egal wie hoch die Domain-Autorität der eigenen Karriereseite. Voraussetzung: das JobPosting-Markup ist vollständig, die URL ist indexiert und die Stelle ist zeitlich gültig.

Das Schöne: Google verlangt für die Aufnahme nichts. Die einzigen Kosten sind technische Einrichtung — entweder als DIY-Projekt (geschätzt 8–20 Entwickler-Stunden inklusive Tests und Wartung) oder als SaaS wie Jobflare, der alle Schritte unten automatisiert.

Zur Einordnung: Klassische Stellenportale liefern dieselbe Sichtbarkeit gegen Schaltungsgebühren im drei- bis vierstelligen Bereich pro Stelle und Schaltung. Google for Jobs ist dauerhaft gebührenfrei und liefert oft mehr Klicks pro Stelle — vorausgesetzt, die technische Umsetzung stimmt. Mehr Hintergrund im Artikel Was ist Google for Jobs?.

Pflichtfelder im JobPosting-Schema

Bevor du mit der Einrichtung loslegst: das sind die Pflichtfelder, die Google für jede Stelle verlangt. Ohne diese erscheint die Anzeige nicht im Karussell — egal wie gut deine Domain rankt.

title — der Jobtitel

Der Titel der Stelle. Sollte kurz und beschreibend sein (50–70 Zeichen ideal). Vermeide Buzzwords wie „Rockstar Developer“ oder vage Begriffe — schreibe stattdessen, was Bewerber:innen googeln würden („Servicetechniker SHK“ statt „Stelle im Anlagenservice“).

description — die Stellenbeschreibung

Vollständige HTML-Beschreibung. Aufgaben, Anforderungen und Benefits sollten klar getrennt sein. Mindestens 150 Wörter, ideal 300–600. Achtung: kein Markdown, sondern HTML mit <p>, <ul>, <strong>. Erlaubt sind Inhalt-Tags, keine Layout-Tags.

datePosted — das Veröffentlichungsdatum

ISO-8601-Format: 2026-06-08 oder 2026-06-08T09:00+02:00. Wird verwendet, um die Stelle im „Datum“-Filter einzuordnen. Sollte nicht in der Zukunft liegen.

validThrough — das Ablaufdatum

Wann die Stelle nicht mehr aktuell ist. Sobald das Datum überschritten ist, entfernt Google die Anzeige automatisch aus dem Karussell — typisch innerhalb von 24 Stunden. Stelle das Datum großzügig (60–90 Tage) und verlängere bei Bedarf statt neue Stellen anzulegen.

hiringOrganization — der Arbeitgeber

Mindestens name und url. Zusätzlich empfohlen: logo, sameAs (LinkedIn, Xing). Wichtig bei Personaldienstleistern: hier sollte das tatsächlich einstellende Unternehmen stehen, nicht die Personalvermittlung.

jobLocation — der Arbeitsort

Ein Place-Objekt mit address.addressLocality, address.addressCountry und idealerweise address.postalCode und address.streetAddress. Bei mehreren Standorten kann jobLocation ein Array sein — Google zeigt die Stelle dann in commute-Suchen für alle Standorte an.

employmentType — die Beschäftigungsart

Werte aus dem Schema.org-Enum: FULL_TIME, PART_TIME, CONTRACTOR, TEMPORARY, INTERN, VOLUNTEER, PER_DIEM, OTHER. Falls die Stelle mehrere Modelle umfasst: Array.

baseSalary — das Gehalt (ab 2026 EU-weit Pflicht)

Ab 2026 wegen der EU-Gehaltstransparenz-Richtlinie quasi-Pflicht. baseSalary ist ein MonetaryAmount-Objekt mit currency, value (Min/Max oder Fix) und unitText (YEAR, MONTH, HOUR). Stellen mit Gehalt erhalten in unseren Tests ca. 60 % mehr Klicks. Hintergründe: Gehaltstransparenz in Stellenanzeigen.

Selbst einrichten: 5 Schritte

Aufwand: einmalig ca. 8–20 Entwickler-Stunden plus laufende Pflege beim Schalten neuer Stellen. Voraussetzung: Zugriff auf den HTML-Code der eigenen Karriereseite, Google-Cloud-Account, Search-Console-Account.

1. Schema.org JobPosting im HTML hinterlegen

Jede einzelne Stellenanzeige braucht im <head> einen <script type="application/ld+json">-Block mit strukturierten Daten. Pflichtfelder: title, description, datePosted, validThrough, hiringOrganization, jobLocation, employmentType.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "JobPosting",
  "title": "Servicetechniker (m/w/d)",
  "description": "<p>Wir suchen ...</p>",
  "datePosted": "2026-05-11",
  "validThrough": "2026-08-11T23:59",
  "employmentType": "FULL_TIME",
  "hiringOrganization": {
    "@type": "Organization",
    "name": "Beispiel GmbH",
    "sameAs": "https://www.beispiel.de"
  },
  "jobLocation": {
    "@type": "Place",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "Musterstr. 1",
      "addressLocality": "Hamburg",
      "postalCode": "20095",
      "addressCountry": "DE"
    }
  },
  "directApply": true
}
</script>

2. Mit dem Rich-Results-Test validieren

Jede Job-URL bei search.google.com/test/rich-results einreichen. Google zeigt direkt, ob alle Pflichtfelder erkannt wurden. Häufigste Fehler: fehlendes validThrough oder unvollständige jobLocation (streetAddress + postalCode sollten beide gesetzt sein).

3. Search Console verifizieren

search.google.com/search-console öffnen, Property hinzufügen (Domain via DNS-TXT-Eintrag oder URL-Prefix via HTML-Tag). Sitemap-URL einreichen (z.B. https://example.com/sitemap.xml). Ohne verifizierte Property funktioniert die Indexing API nicht.

4. Service-Account in Google Cloud anlegen

In console.cloud.google.com ein Projekt erstellen, die Web Search Indexing API aktivieren und einen Service Account mit JSON-Key generieren. Den Service-Account-E-Mail in Search Console als Owner hinzufügen — Achtung: das geht nicht über 'Nutzer und Berechtigungen', sondern über www.google.com/webmasters/verification/home → Property → Inhaber hinzufügen.

5. Bei jedem Job-Update die Indexing API benachrichtigen

Sobald eine Stelle veröffentlicht, aktualisiert oder geschlossen wird, einen authentifizierten POST an die Indexing API senden. Google crawlt die URL dann typisch innerhalb 24 Stunden und übernimmt sie ins Job-Karussell.

POST https://indexing.googleapis.com/v3/urlNotifications:publish
Authorization: Bearer <access_token_vom_service_account>
Content-Type: application/json

{
  "url": "https://example.com/jobs/servicetechniker",
  "type": "URL_UPDATED"
}

Typische Fehler bei der Einrichtung — und wie du sie behebst

Die meisten Probleme entstehen nicht beim Schema selbst, sondern in der Auslieferung und der Wartung. Hier die häufigsten Stolpersteine aus unserer Praxis mit über 80 produktiven Stellenanzeigen.

Schema-Markup wird via JavaScript nachgeladen

Wenn dein Karriereseiten-Framework das JSON-LD erst per JavaScript ins DOM injiziert, sieht es Googlebot häufig nicht. Mache das Markup serverseitig — Next.js, Astro, Hugo, WordPress mit serverseitigem Hook. Test: view-source: der URL, Schema muss schon im rohen HTML stehen.

validThrough abgelaufen, Stelle aber noch offen

Häufigste Ursache für „Stelle plötzlich verschwunden“. Lösung: Automatik einbauen, die validThrough bei jeder Bearbeitung neu setzt. Bei Jobflare passiert das beim Verlängern per Klick automatisch.

Duplikate — gleiche Stelle auf mehreren URLs

Wenn dieselbe Stelle auf /karriere/job-1 und /jobs/job-1?utm_source=google erscheint, wählt Google nur eine aus und ignoriert die andere — meist nicht die, die du sehen möchtest. Lösung: canonical-Tags und konsistente URLs ohne Tracking-Parameter im Schema-Markup.

Karriereseite nur über internen Bewerber-Login erreichbar

Wenn Google nicht ohne Login an die Stelle kommt, kann es das Schema nicht lesen. Die Karriereseite muss öffentlich sein — Login-Schranke erst auf der Bewerbungs-Formularseite.

Service Account ist nicht als Eigentümer der Property hinterlegt

Die Google Indexing API verlangt, dass der Service Account (genauer: dessen Service-Account-E-Mail) in der Search Console als Eigentümer der Property eingetragen ist. Nicht „Vollzugriff“ oder „Mitwirkender“ — nur Eigentümer reicht. Hinzufügen über www.google.com/webmasters/verification/home → Property → Inhaber.

Wettbewerbs-Vergleiche und Werbe-Phrasen in der Description

Google verbietet in der JobPosting-Beschreibung Werbe-Sprache über andere Stellen oder den eigenen Arbeitgeber gegenüber Wettbewerbern. Halte die Beschreibung sachlich: Aufgaben, Anforderungen, Benefits. Bei Verstoß wird die Stelle aus dem Karussell entfernt.

DIY oder Tool? Wann sich was lohnt

Beide Ansätze führen zum gleichen Ziel — sichtbare Stellen im Google-Karussell. Die Entscheidung hängt davon ab, wie viel Entwickler-Zeit du verfügbar hast und wie häufig du neue Stellen schaltest.

DIY-Einrichtung

Sinnvoll, wenn …

  • → Du oder dein Team Entwickler-Zeit verfügbar habt
  • → Eure Karriereseite bereits existiert und stabil läuft
  • → Ihr maximal ein bis fünf Stellen pro Jahr schaltet
  • → Ihr volle Kontrolle über jeden Schema-Eintrag braucht
  • → Ihr eigene ATS-Integration habt

Aufwand: 8–20 Stunden Setup + 1–2 Stunden pro neuer Stelle

Tool wie Jobflare

Sinnvoll, wenn …

  • → Du keine Entwickler:innen-Ressourcen für das Thema hast
  • → Du regelmäßig neue Stellen schaltest (mehr als 5 pro Jahr)
  • → Du Bewerbungsformular, Mini-ATS und Karriereseite in einem Tool willst
  • → Du nicht ständig nachpflegen willst (Indexing-API-Calls, Schema-Updates)
  • → Du sofort starten willst, nicht in 2 Wochen

Aufwand: 5 Minuten Setup + 2 Minuten pro neuer Stelle, ab 0 €/Monat

Branchen-Beispiele

Google for Jobs funktioniert für alle Berufsfelder, ist aber besonders stark in regional gesuchten und gewerblichen Berufen. Branchen-spezifische Tipps findest du auf den Branchen-Landings:

  • Handwerk — Elektrik, SHK, Bau, Schreinerei
  • Pflege — Altenpflege, Krankenpflege, Hebammen
  • Logistik — Lager, LKW, Disposition
  • Gastronomie — Service, Küche, Bar
  • IT — Entwicklung, DevOps, Data
  • Ausbildung — Azubis, Duales Studium

Lieber direkt fertig?

Jobflare richtet Schema.org-JobPosting, Service-Account-Setup, Indexing-API-Anbindung und Search-Console-Wiring automatisch ein. 14 Tage testen, monatlich kündbar.

Weiterlesen

Häufige Fragen zu Google for Jobs

Wie lange dauert es, bis eine Stelle bei Google for Jobs erscheint?
Mit Indexing API typischerweise 24–48 Stunden. Ohne API kann es bei neuen Domains 1–4 Wochen dauern, bis Google die Sitemap crawlt und die JobPosting-Markup erkennt.
Brauche ich Programmier-Kenntnisse, um Google for Jobs einzurichten?
Für die manuelle Einrichtung ja — JobPosting-JSON-LD, Service-Account-Setup und Indexing-API-Calls erfordern Entwickler-Arbeit. Jobflare übernimmt alle technischen Schritte automatisch.
Was ist die Google Indexing API?
Eine Google-API, die speziell für JobPosting- und BroadcastEvent-URLs gedacht ist. Statt darauf zu warten, dass Google die Sitemap crawlt, meldet die API neue oder aktualisierte URLs sofort an. Tageslimit: 200 Submissions pro Property.
Welche Pflichtfelder hat schema.org/JobPosting?
Pflicht: title, description, datePosted, validThrough, hiringOrganization (mit name + url), jobLocation (Place mit addressLocality + addressCountry). Empfohlen: employmentType, baseSalary, identifier, directApply.
Ist Google for Jobs für Unternehmen kostenlos?
Ja. Google selbst verlangt nichts für die Aufnahme im Job-Karussell. Bezahlt werden müssen nur die technische Infrastruktur (Karriereseite, Schema-Markup, Indexing-API-Setup) — oder ein SaaS wie Jobflare, der das übernimmt.
Was passiert, wenn ich Pflichtfelder im JobPosting-Schema vergesse?
Google nimmt die Stelle nicht ins Job-Karussell auf. In der Search Console erscheint eine 'Stellenanzeige'-Fehlermeldung. Häufigste Ursachen: fehlendes validThrough-Datum oder unvollständige jobLocation.
Kann ich Google for Jobs mit WordPress nutzen?
Ja, aber WordPress liefert standardmäßig kein JobPosting-Schema aus. Du brauchst entweder ein Plugin wie WP Job Manager, händischen Schema-Eintrag in Custom Fields oder ein externes Tool wie Jobflare, das per Subdomain (z. B. jobs.deine-firma.de) eine fertige Karriereseite liefert.
Wie viele Stellen kann ich gleichzeitig in Google for Jobs haben?
Es gibt kein hartes Limit von Google. Praktisch zählt nur, ob jede einzelne Stelle gültiges Schema-Markup, eine eindeutige URL und ein gültiges validThrough-Datum hat. Konzerne mit mehreren hundert offenen Stellen funktionieren genauso wie Handwerksbetriebe mit einer Stelle.
Wie wird das Ranking innerhalb von Google for Jobs bestimmt?
Google selbst veröffentlicht keine offiziellen Ranking-Faktoren. Beobachtet wurden: Vollständigkeit des Schemas (alle empfohlenen Felder gesetzt), Aktualität (datePosted), Domain-Autorität, Relevanz zum Suchbegriff, Standort-Match und Klickrate. Wichtig: directApply=true und vollständige Gehaltsangaben helfen sichtbar.
Was kostet ein eigenes DIY-Setup im Vergleich zu Jobflare?
Selbst eingerichtet: einmalig 8–20 Entwickler-Stunden für Schema-Markup, Indexing-API-Anbindung und Karriereseiten-Template, plus laufende Wartung bei jedem neuen Job. Jobflare: ab 0 €/Monat im Free-Plan dauerhaft kostenlos für eine Stelle, ab 49 €/Monat für mehrere Stellen plus eigene Karriereseite, Mini-ATS und Bewerber-Pipeline.
Funktioniert Google for Jobs auch für Personalvermittler?
Ja, aber mit Einschränkungen. Google empfiehlt, dass Personaldienstleister im hiringOrganization-Feld den tatsächlichen Endkunden angeben (sofern bekannt) und die Stelle nur einmal in den Index speisen, statt sie auf mehreren Plattformen zu duplizieren — Duplikate werden gefiltert.