# Keyword decision — Schichtplan (`feature-schichtplan`)

**Last Updated:** 2026-04-02

## Primary intent

- **Chosen primary:** **Dienstplan Software** (retained; aligned with SISTRIX head term volume vs. „Schichtplan Software“ and with product positioning).
- **Rationale:** SISTRIX batch shows `dienstplan software` at higher traffic than `schichtplan software` in [`data/keywords-sistrix.json`](keywords-sistrix.json). GSC **query-level** exports show strong **non-brand impressions** on „Schichtplan“, „Schichtplan erstellen“, „Dienstplan online“ and automation/KI stems — the FAQ set and copy should **cover both lexical families** (Dienstplan + Schichtplan) without splitting URLs.

## Baseline snapshot (2026-04-02)

| Source | Finding |
|--------|---------|
| GSC page (`/schichtplan`, ~90d) | 46 074 impressions, 410 clicks, avg position 6.84 — see [`data/performance-gsc.json`](performance-gsc.json) |
| GA4 (`/schichtplan`, same window) | 1 612 sessions, 1 942 views, ~126 s avg session — see `docs/content/pages/product-pages-performance-ga4.json` |
| GSC queries | [`data/gsc-queries.json`](gsc-queries.json) — brand queries drive clicks; non-brand demand clusters on Schichtplan/Dienstplan/online/KI |
| SISTRIX | [`data/keywords-sistrix.json`](keywords-sistrix.json) |
| PAA / questions | [`data/faq-research.json`](faq-research.json) (Serper merge pending if `SERPER_API_KEY` unset) |

## Supporting phrases (SEO/AEO)

- Schichtplan Software, Schichtplan online, Dienstplan online, digitale Schichtplanung, Schichtplan erstellen, KI Schichtplanung (where factually supportable).

## Title tag & meta (2026-oriented)

- **Avoid stacked head-terms** in the `<title>` (e.g. „Keyword A – Keyword B | Brand“) where it reads like a list rather than a sentence — aligns with [Google’s title-link guidance](https://developers.google.com/search/docs/appearance/title-link) (clear, descriptive text; avoid looking spammy to users).
- **Prefer natural German** that still reflects data: conjunction („Dienstplan und Schichtplan …“), one primary **online** intent, audience (**Teams** / Schichtbetrieb). Exact phrases like **Dienstplan Software** stay in **`SoftwareApplication` `alternateName`**, body copy, FAQ and `featureList` so SISTRIX/GSC clusters stay covered without a over-optimized title.
- **Meta description:** benefit + specifics (App, Zeiterfassung, Abwesenheiten); avoid repeating the same bigrams as the title verbatim.

## Evidence (refresh after data runs)

| Source | Path |
|--------|------|
| Target keywords | `data/target-keywords.json` |
| GSC (site) | `docs/content/pages/product-pages-performance-gsc.json` |
| GA4 | `docs/content/pages/product-pages-performance-ga4.json` |
| Per-page GSC slice | `data/performance-gsc.json` |
| GSC queries | `data/gsc-queries.json` |
| SISTRIX (page) | `data/keywords-sistrix.json` |
| FAQ research | `data/faq-research.json` |

## On-page implementation (meta / hero / schema)

- **Canonical `/schichtplan` (indexed):** [`v2/pages/product_schichtplan_neu.php`](../../../../../v2/pages/product_schichtplan_neu.php) — **Title** natürlich formuliert („Dienstplan und Schichtplan online für Teams | Ordio“); Keywords aus `target-keywords.json` in Copy, FAQ und Schema **`alternateName`** / **`featureList`**. **WebPage**-JSON-LD **`headline`** = sichtbarer H1. **FAQ (sichtbar + FAQPage):** [`schichtplan-neu/faq-answers-optimized.json`](../../schichtplan-neu/faq-answers-optimized.json) (Pfadname „neu“ = historischer Ordner; URL ist `/schichtplan`).
- **Archiviert (keine öffentliche URL):** [`v2/pages/product_shiftplan.php`](../../../../../v2/pages/product_shiftplan.php) — frühere Implementierung, nur im Repo; **kein** `.htaccess`-Route; direkter Aufruf **`/v2/pages/product_shiftplan.php`** → **403**. Optionaler FAQ-Snapshot: **`misc-faqs/product_shiftplan.json`** (nicht mit der Live-Seite gerendert).
- **Redirect:** `/schichtplan-neu` → **`/schichtplan`** (301, QSA). Interne Links und Sitemap: nur **`/schichtplan`**, nicht `/schichtplan-neu`.

## Open points

- **2026-04-02:** Ran `run-feature-page-research-pipeline.sh feature-schichtplan`, global `collect-product-pages-performance-gsc.php`, `split-product-gsc-to-registry-pages.php`, `collect-product-pages-performance-ga4.php`, `generate-feature-page-data-synthesis.php` — Serper/Firecrawl skipped locally (no keys in shell).
- Run `python3 v2/scripts/marketing-pages/serper-paa-research.py --page=feature-schichtplan` when Serper is configured to merge live PAA into `paa_questions[]`.
- Re-run the pipeline quarterly or before major FAQ rewrites; use `compare-gsc-query-exports.php` across two `gsc-queries.json` snapshots for period compare.
- `misc-faqs/product_shiftplan.json` ist FAQ-Snapshot für Tooling/Abgleich; bei großen FAQ-Änderungen mit `schichtplan-neu/faq-answers-optimized.json` abgleichen (oder Migration ins `schichtplan/`-Dokumentverzeichnis planen).
