Files
QR-master/SEO-UMSETZUNGSPLAN-2026-08.md
2026-08-05 19:32:52 +02:00

12 KiB
Raw Permalink Blame History

SEO-Umsetzungsplan qrmaster.net

Erstellt: 2026-08-04 · Datenbasis: GSC-Export 2026-08-03 (letzte 3 Monate) Zugeschnitten auf wenige Stunden pro Woche — jeder Schritt ist einzeln abschließbar.

Ausgangslage: ~34.000 Impressionen, ~150 Klicks außerhalb der Homepage. Kein Sichtbarkeits-, sondern ein Positions- und Konsolidierungsproblem.


REVISION 2026-08-04 — nach Code- und Live-Prüfung

Beim Umsetzen von Phase 1 hat sich die Ausgangslage als anders herausgestellt als aus den reinen GSC-Daten ableitbar. Drei Befunde, die den Plan verändern.

Befund 1: Kaputter Title (behoben)

/blog/qr-code-tracking-guide-2025 hatte rohes HTML im title-Feld:

title: '<a href="/qr-code-tracking" class="...">QR Code Tracking</a>: Complete Guide 2026'

Live ausgeliefert wurde daraus im <title>-Tag, in der H1, in og:title und twitter:title:

&lt;a href="/qr-code-tracking" class="text-blue-600 underline font-semibold"&gt;QR Code Tracking&lt;/a&gt;: Complete Guide 2026 | QR Master

Das erklärt Position 79,4 vollständig. Kein Content-, kein Kannibalisierungsproblem — ein unbrauchbares Snippet. Einzelvorkommen, alle anderen Titles sind sauber. Behoben in src/lib/blog-data.ts:1160.

Befund 2: Konsolidierungsrunde lief bereits (Commit 671c1a1 / 2026-07-10)

Live und funktionierend:

Quelle Ziel
/blog/qr-code-analytics /qr-code-analytics
/blog/qr-code-restaurant-menu /restaurants
/guide/tracking-analytics /learn/tracking
/guide/qr-code-best-practices /learn/basics
/guide/bulk-qr-code-generation /learn/developer

Die GSC-Positionen dieser URLs sind damit historisch — die Redirects waren nur die letzten ~3,5 Wochen des Auswertungsfensters aktiv. Die Phase-1.1-Tabelle weiter unten ist insoweit überholt.

Konsequenz: Nicht /blog/qr-code-tracking-guide-2025 zum Ziel machen, wie ursprünglich geplant. Die bestehende Architektur ist /learn/[pillar] als Hub. Dieser Struktur folgen, keine dritte parallel aufmachen.

Befund 3: Der Learn-Hub hält die Kannibalisierung am Leben

/learn/tracking listet und verlinkt alle fünf konkurrierenden Tracking-Artikel gleichzeitig — inklusive /blog/qr-code-analytics, das eine 301-Quelle ist. Der Hub ist damit nicht die Lösung, sondern der Motor: Er hält jeden Artikel im Index und intern verlinkt, statt Signale zu bündeln.

Zusätzlich behoben:

  • Footer verlinkte sitewide auf /guide/tracking-analytics und /guide/qr-code-best-practices — beides 301-Quellen. Jede Seite der Site leitete Linkkraft durch eine Weiterleitung. → jetzt /learn/tracking und /learn/basics (src/components/ui/Footer.tsx:88-89)
  • IndexNow meldete aktiv die drei /guide/*-URLs an Suchmaschinen, also Redirect-Quellen. → jetzt die /learn/*-Pillars (src/lib/indexnow.ts:125-130)

Offen aus dieser Runde

  • /learn/tracking entrümpeln: nur noch auf die eine überlebende Tracking-Seite verlinken, nicht auf alle fünf
  • /blog/trackable-qr-codes (204 Impr., Pos. 81,5) ist nicht weitergeleitet und lebt weiter → 301 auf den Guide
  • src/app/(main)/guide/*/page.tsx existieren noch als Komponenten mit Self-Canonical, obwohl der Redirect greift → Dead Code entfernen
  • Drei FAQ-Antworten in industry-pages.ts (Zeilen 102, 375, 735) und growth-pages.ts:473 verlinken auf /blog/qr-code-restaurant-menu → auf /restaurants umhängen

Erst diese Punkte, dann Phase 2. Die Reihenfolge im Plan bleibt sonst gültig.


Wichtige Korrektur vorab: Intent-Check vor Snippet-Rewrites

Ich hatte empfohlen, die /qr-code-for/-Seiten mit Position < 20 und 0 % CTR per Title-Rewrite zu fixen. Beim Prüfen der Seiten stimmt das nur zum Teil. Die Meta-Titles sind bereits gut geschrieben:

barbershops → „QR Codes for Barbershops: Bookings & Reviews" cinemas → „QR Codes for Cinemas: Tickets & Loyalty"

Das Problem liegt woanders. Beispiel /qr-code-for/barbershops (327 Impr., Position 9,8, 4 Klicks) — die tatsächlichen Suchanfragen:

Query Impr. Pos.
short code for barbershops 16 21,8
qr barber 13 8,9
short code for barber shops 6 16,3
barber+scan 5 9,6
barcode grooming 4 11,0
short code for barber shop 4 26,0

Das Muster short code for X zieht sich durch: short code for barbers, for yoga studios, for cinemas, for bars, for nail bars, for theaters, for barbershop — zusammen rund 60 Impressionen. Wer „short code for barbershops" sucht, will mit hoher Wahrscheinlichkeit einen SMS-Short-Code, keinen QR-Code. Diese Impressionen sind mit keinem Title der Welt klickbar.

Konsequenz für den Plan: Vor jedem Rewrite die Queries der Einzelseite prüfen. Nur Seiten anfassen, deren Top-Queries echte QR-Intention haben. Das kostet pro Seite zwei Minuten und verhindert, dass Phase 2 zu Beschäftigungstherapie wird.


Phase 0 — Messpunkt setzen (30 Min, einmalig)

Ohne Baseline lässt sich später nicht sagen, ob etwas gewirkt hat.

  • GSC-Export von heute unter /seo-baseline/2026-08-03/ im Repo ablegen
  • Vier Zahlen notieren: Gesamtklicks, Gesamtimpressionen, Ø-Position, Anzahl Keywords auf Position < 10
  • Kalendereintrag: gleicher Export am 2026-11-03 (Google braucht 610 Wochen, vorher ist jede Bewertung Rauschen)

Erfolgskriterium: Datei liegt im Repo.


Phase 1 — Kannibalisierung auflösen (Wochen 12)

Höchster Hebel im ganzen Plan, weil kein neuer Content nötig ist. Fünf Seiten konkurrieren um das Tracking-Thema, keine rankt.

1.1 Tracking-Cluster zusammenlegen (~2 Std.)

URL Impr. Pos. Aktion
/qr-code-tracking 2.148 48,4 bleibt — Money-Page
/blog/qr-code-tracking-guide-2025 67 79,4 bleibt — wird der eine Ratgeber
/blog/trackable-qr-codes 204 81,5 301 → Guide
/blog/qr-code-analytics 93 85,1 301 → Guide
/guide/tracking-analytics 1 91,0 301 → Guide
  • Die besten Absätze aus den drei Seiten in den Guide übernehmen, bevor umgeleitet wird
  • Redirects in next.config.mjs eintragen
  • Guide umbenennen: qr-code-tracking-guide-2025 → Jahreszahl raus oder auf 2026 (Slug-Änderung nur mit Redirect)
  • Eigenes H2 für how to track qr code scans from a print campaign — steht bereits auf Position 9,9 bei 43 Impressionen
  • Wechselseitige Verlinkung Guide ↔ /qr-code-tracking

Erfolgskriterium: Eine URL pro Suchintention. /qr-code-tracking unter Position 30 bis November.

1.2 Static-vs-Dynamic-Duplikate mergen (~1 Std.)

/blog/static-vs-dynamic-qr-code (Pos. 3, 1 Impr.) und /blog/dynamic-vs-static-qr-codes (Pos. 5, 1 Impr.) sind faktisch dieselbe Seite. Beide ranken top und bekommen zusammen 2 Impressionen — klassisches Zeichen dafür, dass Google beide kennt und keiner traut.

  • Inhalte in eine URL zusammenführen, die andere per 301 darauf
  • Zusammen mit /blog/convert-static-to-dynamic-qr-code (Pos. 3,5) und /guide/dynamic-qr-code-best-practices (Pos. 50) prominent von /dynamic-qr-code-generator verlinken

Warum das zählt: /dynamic-qr-code-generator hat mit 4.147 Impressionen das größte Volumen der Site — bei Position 45,5 und 0,02 % CTR.

1.3 Instagram entzerren (~30 Min)

/tools/instagram-qr-code (794 Impr., Pos. 33,7) vs. /blog/instagram-qr-code-generator (11 Impr., Pos. 73,4).

  • Blogpost auf How-to-Intent umschreiben („So erstellst du…") oder konsolidieren, damit er nicht mehr um dasselbe Keyword kämpft

Phase 2 — Snippets mit Intent-Check (Woche 3, ~2 Std.)

Nur Seiten mit Position < 20, CTR < 3 % und passender Query-Intention.

Kandidaten mit belegbar richtiger Intention:

  • /blog/microsoft-teams-qr-code — 287 Impr., Position 14,4, 0 Klicks. Queries sind sauber: microsoft teams qr code generator (Pos. 9,6), teams qr code generator (Pos. 6,6), qr code for teams meeting (Pos. 11). Klarster Einzelfall der Site.
  • /tools/teams-qr-code — 489 Impr., Pos. 13,6, CTR 2,45 %
  • /tools/call-qr-code-generator — 119 Impr., Pos. 18,9, 0 Klicks
  • /learn — 486 Impr., Pos. 13,3, CTR 1,65 %

Erst nach Query-Prüfung anfassen: /qr-code-for/cinemas (168 Impr., Pos. 16), /qr-code-for/airports (162, Pos. 10,6), /qr-code-for/yoga-studios, /qr-code-for/art-galleries, /qr-code-for/catering, /qr-code-for/car-dealerships.

Prüfweg: GSC → Seiten → URL wählen → Tab „Suchanfragen". Enthalten die Top-3-Queries short code, barcode oder Branchenbegriffe ohne QR-Bezug, ist die Seite kein Snippet-Fall.

Titles und Descriptions liegen zentral in src/lib/industry-pages.ts (Felder metaTitle, metaDescription) — kein Anfassen einzelner Routen nötig.

Erfolgskriterium: Teams-Post von 0 auf messbare Klicks. Alles andere ist Bonus.


Phase 3 — Aufräumen (Woche 4, ~1 Std.)

Nicht die 53 Branchenseiten löschen — die ranken mit Ø Position 20,4 am besten von allen Content-Typen. Tot ist etwas anderes:

Bereich Seiten Impr. Klicks Ø Pos. Vorschlag
/de/* 13 194 0 31,0 Entscheiden: ausbauen oder deindexieren
/guide/* 2 15 0 70,6 In /blog/ überführen (siehe 1.1)
/compare/* 1 31 0 50,6 Prüfen, ob es die Route noch braucht
/qr-code-erstellen 1 264 2 72,5 Deutsche Seite ohne DE-Strategie — bündeln mit /de/*

Die DE-Frage ist eine Entscheidung, keine Aufgabe: 13 Seiten mit 0 Klicks binden Crawl-Budget. Entweder eine echte deutsche Sektion mit hreflang, oder weg.


Phase 4 — Neue Posts, einer pro Woche (ab Woche 5)

Reihenfolge nach Impressionen ohne passende Seite. Jeweils ein Post, dann weiter.

Woche Post Nachfrage Zielseite, die profitiert
5 Google Review QR Code erstellen (inkl. Place-ID) 1.331 Impr. /tools/google-review-qr-code (1.752 Impr., Pos. 37,8)
6 QR Codes aus Excel & Google Sheets 402 Impr., konvertiert bereits /bulk-qr-code-generator
7 Location-QR: Maps, GPS, geo:-URI auf iOS vs. Android 923 Impr. /tools/geolocation-qr-code (Pos. 62,8)
8 Custom QR mit Logo ohne Scanbarkeitsverlust 465 Impr. /custom-qr-code-generator
9 QR-Coupons: Einlösung tracken, Missbrauch verhindern 495 Impr. /use-cases/coupon-qr-codes
10 Beaconstac vs Popl vs Blinq vs QR Master ~350 Impr., hohe Kaufintention /alternatives/*
11 Kundenfeedback per QR sammeln 349 Impr. /use-cases/feedback-qr-codes

Jeder Post: Verlinkung zur Money-Page rein und raus, Aufnahme in public/llms.txt, Eintrag im Sitemap-Lauf.

Woche 6 zuerst ziehen, falls Zeit knapp wirdbulk qr code generator in google sheets und bulk qr code generator from excel haben als einzige Nicht-Brand-Keywords bereits Klicks geliefert. Bewiesene Konversion schlägt großes Volumen.


Phase 5 — Daten-Asset (ab Woche 12, größerer Block)

Aggregierte, anonymisierte Scan-Daten aus QRMaster als Studie: Scan-Zeitpunkte über den Tag, Device-Splits, wie oft dynamische Codes nach dem Druck tatsächlich geändert werden, Abbruchraten.

Realitätscheck vorab: /blog/qr-code-scan-statistics-2026 existiert bereits — Position 38,7, 3 Impressionen. Ein Daten-Asset rankt nicht, weil es eines ist. Ohne Verteilung passiert nichts.

  • Bestehende Statistik-Seite als Basis nehmen statt neu anzulegen
  • Echte Zahlen aus der DB, Methodik sichtbar dokumentieren, Stichprobengröße nennen
  • Eigene Grafiken statt Fremdquellen
  • Erst danach: aktiv verteilen (Reddit, Branchennewsletter, HARO-artige Anfragen)

Der Wert liegt im Zitiertwerden durch LLMs und in Backlinks, nicht im direkten Ranking. Entsprechend bewerten.


Was dieser Plan bewusst nicht enthält

Crypto-Cluster (765 Impr.) — rankt vergleichsweise gut (usdt qr code generator Pos. 13, 2 Klicks), monetarisiert aber schwach.

Internationale Streuungsystem qr dla hoteli (PL), qr kütüphane (TR), куар мастер (RU). Ohne lokalisierte Seiten nicht adressierbar, siehe DE-Entscheidung in Phase 3.

E-E-A-T-Maßnahmen/authors/timo existiert bereits (Position 6,4) und hat für sich genommen nichts bewegt. Kein weiterer Aufwand nötig.

Alles, was „schnell rankt" — Phase 1 ist der schnellste Effekt im Plan, und auch der braucht 610 Wochen bis zur Messbarkeit.


Nächster Schritt

Phase 1.1 (Tracking-Konsolidierung). Zwei Stunden, kein neuer Text, betrifft 2.371 Impressionen.