diff --git a/.agents/pricing-strategy.md b/.agents/pricing-strategy.md index 77816dd..b484c72 100644 --- a/.agents/pricing-strategy.md +++ b/.agents/pricing-strategy.md @@ -1,234 +1,234 @@ -# QR Master — Pricing Strategy -*Erstellt: April 2026 | Basiert auf Marktforschung, Competitor-Scraping & SaaS-Benchmarks* - ---- - -## 1. Marktkontext - -### QR-Code-Markt 2025/2026 -| Metrik | Wert | -|--------|------| -| Globale Marktgröße | $15,3 Mrd. (2025) | -| CAGR bis 2030 | 16,1% | -| US-Smartphone-User die QR scannen | 100+ Mio. monatlich | -| Business-Adoption | 50% der Unternehmen nutzen QR-Codes aktiv | - -**Fazit:** Wachstumsmarkt mit noch großem Potenzial, besonders im KMU-Segment. - ---- - -## 2. Wettbewerbs-Pricing-Map - -### Vollständige Marktübersicht (aus Firecrawl-Recherche) - -| Tool | Preis/Monat | Analytics | Dynamic | Bulk | Branding | Positionierung | -|------|------------|-----------|---------|------|----------|----------------| -| TQRCG | $5 | ✅ | ✅ | ❌ | ✅ | Value-Leader | -| QRStuff | $5 | ❌ | ❌ | ✅ | ❌ | Budget | -| ViralQR | $1,49 | ✅ | ✅ | ❌ | ✅ | Ultra-Budget | -| Beaconstac | $5–24 | ✅ | ✅ | ✅ | ✅ | SMB–Enterprise | -| Bitly QR | $10 | ✅ | ✅ | ❌ | ✅ | Mid-Market | -| Unitag | $10 | ❌ | ✅ | ✅ | ✅ | Mid-Market | -| ZebraQR | $9 | ✅ | ✅ | ❌ | ✅ | Hospitality-Nische | -| QR Tiger | $12–15 | ✅ | ✅ | ✅ | ✅ | Mid-Market+ | -| Hovercode | $15 | ✅ | ✅ | ✅ | ✅ | Growth-Fokus | -| Flowcode | $10–15 | ✅ | ✅ | ❌ | ✅ | Design-Fokus | -| Scanova | $20 | ✅ | ✅ | ✅ | ✅ | Premium | -| QR Code Chimp | $20 | ✅ | ✅ | ✅ | ✅ | Premium-Design | -| Uniqode | $10–30 | ✅ | ✅ | ✅ | ✅ | Enterprise | -| QRFY | $25 | ✅ | ✅ | ✅ | ✅ | Premium-Flat | -| QR Code Generator Pro | $15–29 | ✅ | ✅ | ✅ | ✅ | Agency | - -### Marktlücke für QR Master -> **Kein einziges Tool unter $12 bietet Analytics + Bulk + Custom Branding + DSGVO gleichzeitig.** -> Das ist exakt QR Masters Sweet Spot. - ---- - -## 3. SaaS-Benchmark-Daten (Industrie) - -| Metrik | Benchmark | Quelle | -|--------|-----------|--------| -| Median Entry-Level Preis (SaaS) | $29/mo | Monetizely 2025 | -| Free-to-Paid Conversion | ~5% | RevenueCat 2026 | -| Anteil Jahres-Abos (vs. Monatlich) | 68% annual / 32% monthly | RevenueCat 2026 | -| ARPU (Subscription Apps) | ~$30 | RevenueCat 2026 | -| Freemium-Anteil unter SaaS | 38% der Unternehmen | Monetizely 2025 | -| Hybrid-Pricing-Adoption | 61% | Monetizely 2025 | -| SaaS Churn (SMB) | 3–5%/Monat | Benchmark | - -**Key Insight:** 68% der Subscriber wählen Jahrestarife. Das ist der wichtigste Hebel für Cashflow und Churn-Reduktion. - ---- - -## 4. Value Metric Empfehlung - -### Aktuelles Modell: Anzahl dynamischer QR-Codes -**Bewertung: Gut, aber optimierbar.** - -Die Anzahl dynamischer Codes skaliert mit dem wahrgenommenen Wert (mehr Codes = mehr Kampagnen = mehr Wert). Jedoch: -- Limit von 8 FREE / 50 PRO / 500 BUSINESS ist nicht intuitiv kommuniziert -- Kunden denken in "Projekten" oder "Kampagnen", nicht in "Codes" - -### Empfehlung: Hybrid-Metric einführen -Primär-Metric behalten (Dynamic Codes), aber mit Sekundär-Metriken ergänzen: - -| Tier | Primär-Metric | Sekundär-Metriken | -|------|--------------|-------------------| -| FREE | 8 Dynamic Codes | 1 User, Basic Analytics, 30 Tage History | -| PRO | 50 Dynamic Codes | 1–3 User, Full Analytics, 1 Jahr History, Custom Domain | -| BUSINESS | 500 Dynamic Codes | Unlimitierte User, Advanced Analytics, Bulk, API | - ---- - -## 5. Empfohlene Pricing-Struktur - -### Tier-Empfehlung (Monatlich / Jährlich) - -#### FREE — Kostenlos, für immer -- **8 dynamische QR-Codes** (klar kommuniziert als "8 Kampagnen") -- Unlimitierte statische Codes -- Basis-Analytics (Scans, Datum) -- QR Master Branding (nicht entfernbar) -- **Ziel:** Acquisition, Habit-Building, Virality durch Branding - -#### PRO — €9/Monat (monatlich) | **€7/Monat (jährlich = €84/Jahr)** -*Empfohlen für: Restaurants, lokale Unternehmen, Marketing-Einsteiger* -- **50 dynamische QR-Codes** -- Custom Branding (kein QR Master Logo) -- Vollständige Analytics (Device, Location, OS, UTM) -- 1 Jahr Analytics-History -- Custom Domain für Redirects -- Prioritäts-Support -- **Rationale:** $7–9 liegt im bewiesenen Sweet Spot ($5–$10) für diese Zielgruppe. Beaconstac Starter bei $5 hat nur 100 Scans — wir haben keine Scan-Limits. - -#### BUSINESS — €24/Monat (monatlich) | **€19/Monat (jährlich = €228/Jahr)** -*Empfohlen für: Agenturen, Retail-Chains, Event-Organisatoren* -- **500 dynamische QR-Codes** -- Bulk-Upload (Excel/CSV bis 1.000 Zeilen) -- API-Zugriff -- Team-Management (bis 5 User) -- Erweiterte Analytics + Export (CSV, PDF) -- White-Label Option -- DSGVO-Compliance-Report -- **Rationale:** $19–24 ist der Bereich wo Scanova ($20), Hovercode ($15) und QR Code Chimp ($20) spielen — aber keiner hat DSGVO + Bulk + Analytics zusammen. - -#### ENTERPRISE — Auf Anfrage (ab €99/Monat) -*Für: Corporations, Franchise-Ketten* -- Unlimitierte Codes -- Dedizierter Account Manager -- Custom SLA -- SSO / SAML -- On-Premise Option (optional) - ---- - -## 6. Psychologische Preisgestaltung - -### Anchoring-Strategie -Reihenfolge auf Pricing-Page: **BUSINESS → PRO → FREE** (von teuer nach günstig) -→ PRO wirkt dadurch als "vernünftiger Kompromiss" - -### Decoy-Effekt -PRO muss der offensichtliche "Best Deal" sein: -- BUSINESS ist 2,7× teurer als PRO aber hat 10× mehr Codes → Nur für Power-User -- FREE hat 6× weniger Codes als PRO → Upgrade liegt nahe - -### Jahres-Pricing-Push -- Monatlich: €9 / €24 -- Jährlich: €7 / €19 (sparst 22% / 21%) -- **Wichtig:** Jahrespreis prominent anzeigen mit "Spare 2 Monate" statt Prozent -- Default-Toggle: **Jährlich** (da 68% aller Subscriber Jahrestarife wählen) - -### Charm vs. Round Pricing -- PRO: **€9** (nicht €10) → Charm Pricing für Conversion -- BUSINESS: **€24** (nicht €25) → Knapp unter psychologischer Grenze -- Jahrestarife: **€84/Jahr** und **€228/Jahr** (rund → Premium-Signal) - ---- - -## 7. Jahres-Discount-Strategie - -| Tier | Monatlich | Jährlich | Ersparnis | -|------|-----------|----------|-----------| -| PRO | €9/Mo | €84/Jahr (€7/Mo) | 22% / 2 Monate gratis | -| BUSINESS | €24/Mo | €228/Jahr (€19/Mo) | 21% / 2,5 Monate gratis | - -**Kommunikation:** "2 Monate kostenlos bei jährlicher Zahlung" schlägt "20% Rabatt" in A/B-Tests regelmäßig. - ---- - -## 8. Free-Tier-Optimierung - -### Ziel des Free-Tiers -Nicht monetarisieren — **qualifizieren und konvertieren**. - -### Empfohlene Trigger für Upgrade-Prompts -1. **Code-Limit erreicht** → "Du hast 8/8 Codes verwendet. Upgrade auf PRO für 50 Codes." -2. **Analytics-Feature geklickt** → "Detaillierte Location-Analytics nur in PRO." -3. **Custom Branding versucht** → "Entferne das QR Master Logo — upgrade auf PRO." -4. **Bulk-Upload versucht** → "Bulk-Upload ist nur in BUSINESS verfügbar." -5. **Nach 7 Tagen aktive Nutzung** → In-App Prompt: "Du nutzt QR Master aktiv — hole mehr raus." - -### Virality-Mechanismus -- FREE-Codes enthalten subtiles "Made with QR Master" in Metadaten -- QR-Code-Landing-Pages (bei Dynamic Redirects) zeigen "Powered by QR Master" Footer -- Jeder Scan ist eine potenzielle Akquisition - ---- - -## 9. Positioning Statement je Tier - -**FREE:** -> "Starte kostenlos mit 8 professionellen QR-Codes — keine Kreditkarte erforderlich." - -**PRO:** -> "Für Restaurants, lokale Geschäfte und Marketer: Unbegrenzte Änderungen, echte Analytics, dein Branding — für weniger als ein Mittagessen pro Monat." - -**BUSINESS:** -> "Für Agenturen und Retail-Chains: Erstelle 500 Codes auf einmal, per Excel-Upload — DSGVO-konform, skalierbar, professionell." - ---- - -## 10. Pricing Page Struktur (Empfehlung) - -### Elemente above the fold -1. **Toggle: Monatlich / Jährlich** (Default: Jährlich) -2. **3 Tier-Karten** in Reihenfolge: FREE → PRO (highlighted "Beliebteste Wahl") → BUSINESS -3. **CTA je Tier:** "Kostenlos starten" / "14 Tage gratis testen" / "Jetzt upgraden" -4. **Trust-Signal:** "Keine Kreditkarte für Free • DSGVO-konform • Jederzeit kündbar" - -### Weitere Sektionen -- Feature-Vergleichstabelle (vollständig) -- ROI-Rechner: "Wie viel sparst du durch dynamische QR-Codes vs. Neudruck?" -- FAQ (Objections aus Product-Marketing-Context) -- Testimonials-Sektion (Platzhalter für spätere echte Reviews) -- Enterprise-CTA am Ende - ---- - -## 11. Kurzfristige Maßnahmen (Quick Wins) - -| Priorität | Maßnahme | Impact | -|-----------|----------|--------| -| 🔴 Hoch | Jahrestarif als Default auf Pricing-Page setzen | +20–30% ARPU sofort | -| 🔴 Hoch | "2 Monate gratis" Kommunikation (statt %) | +Conversion | -| 🟡 Mittel | Upgrade-Prompts bei Feature-Gates einbauen | +Free-to-Paid | -| 🟡 Mittel | 14-Tage PRO Trial (kreditkartenlos) | +Trial Signups | -| 🟢 Niedrig | BUSINESS Jahrespreis auf €228 festlegen | Cashflow | -| 🟢 Niedrig | Enterprise-Kontaktformular ergänzen | Upmarket | - ---- - -## 12. Risiken & Gegenmaßnahmen - -| Risiko | Wahrscheinlichkeit | Gegenmaßnahme | -|--------|-------------------|---------------| -| ViralQR mit $1,49 unterbietbar | Mittel | Auf Analytics + DSGVO differenzieren, nicht Preis | -| FREE-User konvertieren nicht | Hoch | Smarte Feature-Gates + E-Mail-Nurturing | -| BUSINESS-Preis zu hoch für KMU | Mittel | Jährlich-Preis betonen: €19/mo fühlt sich zugänglich an | -| Konkurrenten senken Preise | Niedrig | Value-Story stärken, nicht mitziehen | - ---- - -*Datenbasis: Firecrawl-Scraping von 5+ Competitor-Seiten, QR Marktstatistiken 2026, RevenueCat State of Subscription Apps 2026, Monetizely SaaS Benchmark 2025, Product Marketing Context QR Master.* +# QR Master — Pricing Strategy +*Erstellt: April 2026 | Basiert auf Marktforschung, Competitor-Scraping & SaaS-Benchmarks* + +--- + +## 1. Marktkontext + +### QR-Code-Markt 2025/2026 +| Metrik | Wert | +|--------|------| +| Globale Marktgröße | $15,3 Mrd. (2025) | +| CAGR bis 2030 | 16,1% | +| US-Smartphone-User die QR scannen | 100+ Mio. monatlich | +| Business-Adoption | 50% der Unternehmen nutzen QR-Codes aktiv | + +**Fazit:** Wachstumsmarkt mit noch großem Potenzial, besonders im KMU-Segment. + +--- + +## 2. Wettbewerbs-Pricing-Map + +### Vollständige Marktübersicht (aus Firecrawl-Recherche) + +| Tool | Preis/Monat | Analytics | Dynamic | Bulk | Branding | Positionierung | +|------|------------|-----------|---------|------|----------|----------------| +| TQRCG | $5 | ✅ | ✅ | ❌ | ✅ | Value-Leader | +| QRStuff | $5 | ❌ | ❌ | ✅ | ❌ | Budget | +| ViralQR | $1,49 | ✅ | ✅ | ❌ | ✅ | Ultra-Budget | +| Beaconstac | $5–24 | ✅ | ✅ | ✅ | ✅ | SMB–Enterprise | +| Bitly QR | $10 | ✅ | ✅ | ❌ | ✅ | Mid-Market | +| Unitag | $10 | ❌ | ✅ | ✅ | ✅ | Mid-Market | +| ZebraQR | $9 | ✅ | ✅ | ❌ | ✅ | Hospitality-Nische | +| QR Tiger | $12–15 | ✅ | ✅ | ✅ | ✅ | Mid-Market+ | +| Hovercode | $15 | ✅ | ✅ | ✅ | ✅ | Growth-Fokus | +| Flowcode | $10–15 | ✅ | ✅ | ❌ | ✅ | Design-Fokus | +| Scanova | $20 | ✅ | ✅ | ✅ | ✅ | Premium | +| QR Code Chimp | $20 | ✅ | ✅ | ✅ | ✅ | Premium-Design | +| Uniqode | $10–30 | ✅ | ✅ | ✅ | ✅ | Enterprise | +| QRFY | $25 | ✅ | ✅ | ✅ | ✅ | Premium-Flat | +| QR Code Generator Pro | $15–29 | ✅ | ✅ | ✅ | ✅ | Agency | + +### Marktlücke für QR Master +> **Kein einziges Tool unter $12 bietet Analytics + Bulk + Custom Branding + DSGVO gleichzeitig.** +> Das ist exakt QR Masters Sweet Spot. + +--- + +## 3. SaaS-Benchmark-Daten (Industrie) + +| Metrik | Benchmark | Quelle | +|--------|-----------|--------| +| Median Entry-Level Preis (SaaS) | $29/mo | Monetizely 2025 | +| Free-to-Paid Conversion | ~5% | RevenueCat 2026 | +| Anteil Jahres-Abos (vs. Monatlich) | 68% annual / 32% monthly | RevenueCat 2026 | +| ARPU (Subscription Apps) | ~$30 | RevenueCat 2026 | +| Freemium-Anteil unter SaaS | 38% der Unternehmen | Monetizely 2025 | +| Hybrid-Pricing-Adoption | 61% | Monetizely 2025 | +| SaaS Churn (SMB) | 3–5%/Monat | Benchmark | + +**Key Insight:** 68% der Subscriber wählen Jahrestarife. Das ist der wichtigste Hebel für Cashflow und Churn-Reduktion. + +--- + +## 4. Value Metric Empfehlung + +### Aktuelles Modell: Anzahl dynamischer QR-Codes +**Bewertung: Gut, aber optimierbar.** + +Die Anzahl dynamischer Codes skaliert mit dem wahrgenommenen Wert (mehr Codes = mehr Kampagnen = mehr Wert). Jedoch: +- Limit von 8 FREE / 50 PRO / 500 BUSINESS ist nicht intuitiv kommuniziert +- Kunden denken in "Projekten" oder "Kampagnen", nicht in "Codes" + +### Empfehlung: Hybrid-Metric einführen +Primär-Metric behalten (Dynamic Codes), aber mit Sekundär-Metriken ergänzen: + +| Tier | Primär-Metric | Sekundär-Metriken | +|------|--------------|-------------------| +| FREE | 8 Dynamic Codes | 1 User, Basic Analytics, 30 Tage History | +| PRO | 50 Dynamic Codes | 1–3 User, Full Analytics, 1 Jahr History, Custom Domain | +| BUSINESS | 500 Dynamic Codes | Unlimitierte User, Advanced Analytics, Bulk, API | + +--- + +## 5. Empfohlene Pricing-Struktur + +### Tier-Empfehlung (Monatlich / Jährlich) + +#### FREE — Kostenlos, für immer +- **8 dynamische QR-Codes** (klar kommuniziert als "8 Kampagnen") +- Unlimitierte statische Codes +- Basis-Analytics (Scans, Datum) +- QR Master Branding (nicht entfernbar) +- **Ziel:** Acquisition, Habit-Building, Virality durch Branding + +#### PRO — €9/Monat (monatlich) | **€7/Monat (jährlich = €84/Jahr)** +*Empfohlen für: Restaurants, lokale Unternehmen, Marketing-Einsteiger* +- **50 dynamische QR-Codes** +- Custom Branding (kein QR Master Logo) +- Vollständige Analytics (Device, Location, OS, UTM) +- 1 Jahr Analytics-History +- Custom Domain für Redirects +- Prioritäts-Support +- **Rationale:** $7–9 liegt im bewiesenen Sweet Spot ($5–$10) für diese Zielgruppe. Beaconstac Starter bei $5 hat nur 100 Scans — wir haben keine Scan-Limits. + +#### BUSINESS — €24/Monat (monatlich) | **€19/Monat (jährlich = €228/Jahr)** +*Empfohlen für: Agenturen, Retail-Chains, Event-Organisatoren* +- **500 dynamische QR-Codes** +- Bulk-Upload (Excel/CSV bis 1.000 Zeilen) +- API-Zugriff +- Team-Management (bis 5 User) +- Erweiterte Analytics + Export (CSV, PDF) +- White-Label Option +- DSGVO-Compliance-Report +- **Rationale:** $19–24 ist der Bereich wo Scanova ($20), Hovercode ($15) und QR Code Chimp ($20) spielen — aber keiner hat DSGVO + Bulk + Analytics zusammen. + +#### ENTERPRISE — Auf Anfrage (ab €99/Monat) +*Für: Corporations, Franchise-Ketten* +- Unlimitierte Codes +- Dedizierter Account Manager +- Custom SLA +- SSO / SAML +- On-Premise Option (optional) + +--- + +## 6. Psychologische Preisgestaltung + +### Anchoring-Strategie +Reihenfolge auf Pricing-Page: **BUSINESS → PRO → FREE** (von teuer nach günstig) +→ PRO wirkt dadurch als "vernünftiger Kompromiss" + +### Decoy-Effekt +PRO muss der offensichtliche "Best Deal" sein: +- BUSINESS ist 2,7× teurer als PRO aber hat 10× mehr Codes → Nur für Power-User +- FREE hat 6× weniger Codes als PRO → Upgrade liegt nahe + +### Jahres-Pricing-Push +- Monatlich: €9 / €24 +- Jährlich: €7 / €19 (sparst 22% / 21%) +- **Wichtig:** Jahrespreis prominent anzeigen mit "Spare 2 Monate" statt Prozent +- Default-Toggle: **Jährlich** (da 68% aller Subscriber Jahrestarife wählen) + +### Charm vs. Round Pricing +- PRO: **€9** (nicht €10) → Charm Pricing für Conversion +- BUSINESS: **€24** (nicht €25) → Knapp unter psychologischer Grenze +- Jahrestarife: **€84/Jahr** und **€228/Jahr** (rund → Premium-Signal) + +--- + +## 7. Jahres-Discount-Strategie + +| Tier | Monatlich | Jährlich | Ersparnis | +|------|-----------|----------|-----------| +| PRO | €9/Mo | €84/Jahr (€7/Mo) | 22% / 2 Monate gratis | +| BUSINESS | €24/Mo | €228/Jahr (€19/Mo) | 21% / 2,5 Monate gratis | + +**Kommunikation:** "2 Monate kostenlos bei jährlicher Zahlung" schlägt "20% Rabatt" in A/B-Tests regelmäßig. + +--- + +## 8. Free-Tier-Optimierung + +### Ziel des Free-Tiers +Nicht monetarisieren — **qualifizieren und konvertieren**. + +### Empfohlene Trigger für Upgrade-Prompts +1. **Code-Limit erreicht** → "Du hast 8/8 Codes verwendet. Upgrade auf PRO für 50 Codes." +2. **Analytics-Feature geklickt** → "Detaillierte Location-Analytics nur in PRO." +3. **Custom Branding versucht** → "Entferne das QR Master Logo — upgrade auf PRO." +4. **Bulk-Upload versucht** → "Bulk-Upload ist nur in BUSINESS verfügbar." +5. **Nach 7 Tagen aktive Nutzung** → In-App Prompt: "Du nutzt QR Master aktiv — hole mehr raus." + +### Virality-Mechanismus +- FREE-Codes enthalten subtiles "Made with QR Master" in Metadaten +- QR-Code-Landing-Pages (bei Dynamic Redirects) zeigen "Powered by QR Master" Footer +- Jeder Scan ist eine potenzielle Akquisition + +--- + +## 9. Positioning Statement je Tier + +**FREE:** +> "Starte kostenlos mit 8 professionellen QR-Codes — keine Kreditkarte erforderlich." + +**PRO:** +> "Für Restaurants, lokale Geschäfte und Marketer: Unbegrenzte Änderungen, echte Analytics, dein Branding — für weniger als ein Mittagessen pro Monat." + +**BUSINESS:** +> "Für Agenturen und Retail-Chains: Erstelle 500 Codes auf einmal, per Excel-Upload — DSGVO-konform, skalierbar, professionell." + +--- + +## 10. Pricing Page Struktur (Empfehlung) + +### Elemente above the fold +1. **Toggle: Monatlich / Jährlich** (Default: Jährlich) +2. **3 Tier-Karten** in Reihenfolge: FREE → PRO (highlighted "Beliebteste Wahl") → BUSINESS +3. **CTA je Tier:** "Kostenlos starten" / "14 Tage gratis testen" / "Jetzt upgraden" +4. **Trust-Signal:** "Keine Kreditkarte für Free • DSGVO-konform • Jederzeit kündbar" + +### Weitere Sektionen +- Feature-Vergleichstabelle (vollständig) +- ROI-Rechner: "Wie viel sparst du durch dynamische QR-Codes vs. Neudruck?" +- FAQ (Objections aus Product-Marketing-Context) +- Testimonials-Sektion (Platzhalter für spätere echte Reviews) +- Enterprise-CTA am Ende + +--- + +## 11. Kurzfristige Maßnahmen (Quick Wins) + +| Priorität | Maßnahme | Impact | +|-----------|----------|--------| +| 🔴 Hoch | Jahrestarif als Default auf Pricing-Page setzen | +20–30% ARPU sofort | +| 🔴 Hoch | "2 Monate gratis" Kommunikation (statt %) | +Conversion | +| 🟡 Mittel | Upgrade-Prompts bei Feature-Gates einbauen | +Free-to-Paid | +| 🟡 Mittel | 14-Tage PRO Trial (kreditkartenlos) | +Trial Signups | +| 🟢 Niedrig | BUSINESS Jahrespreis auf €228 festlegen | Cashflow | +| 🟢 Niedrig | Enterprise-Kontaktformular ergänzen | Upmarket | + +--- + +## 12. Risiken & Gegenmaßnahmen + +| Risiko | Wahrscheinlichkeit | Gegenmaßnahme | +|--------|-------------------|---------------| +| ViralQR mit $1,49 unterbietbar | Mittel | Auf Analytics + DSGVO differenzieren, nicht Preis | +| FREE-User konvertieren nicht | Hoch | Smarte Feature-Gates + E-Mail-Nurturing | +| BUSINESS-Preis zu hoch für KMU | Mittel | Jährlich-Preis betonen: €19/mo fühlt sich zugänglich an | +| Konkurrenten senken Preise | Niedrig | Value-Story stärken, nicht mitziehen | + +--- + +*Datenbasis: Firecrawl-Scraping von 5+ Competitor-Seiten, QR Marktstatistiken 2026, RevenueCat State of Subscription Apps 2026, Monetizely SaaS Benchmark 2025, Product Marketing Context QR Master.* diff --git a/.claude/hooks/check-gstack.sh b/.claude/hooks/check-gstack.sh index f7fe488..23b9b7f 100644 --- a/.claude/hooks/check-gstack.sh +++ b/.claude/hooks/check-gstack.sh @@ -1,19 +1,19 @@ -#!/bin/bash - -# Block skill usage when gstack is not installed globally. -if [ ! -d "$HOME/.claude/skills/gstack/bin" ]; then - cat >&2 <<'MSG' -BLOCKED: gstack is not installed globally. -gstack is required for AI-assisted work in this repo. - -Install it: -git clone --depth 1 https://github.com/garrytan/gstack.git ~/.claude/skills/gstack -cd ~/.claude/skills/gstack && ./setup --team - -Then restart your AI coding tool. -MSG - echo '{"permissionDecision":"deny","message":"gstack is required but not installed. See stderr for install instructions."}' - exit 0 -fi - -echo '{}' +#!/bin/bash + +# Block skill usage when gstack is not installed globally. +if [ ! -d "$HOME/.claude/skills/gstack/bin" ]; then + cat >&2 <<'MSG' +BLOCKED: gstack is not installed globally. +gstack is required for AI-assisted work in this repo. + +Install it: +git clone --depth 1 https://github.com/garrytan/gstack.git ~/.claude/skills/gstack +cd ~/.claude/skills/gstack && ./setup --team + +Then restart your AI coding tool. +MSG + echo '{"permissionDecision":"deny","message":"gstack is required but not installed. See stderr for install instructions."}' + exit 0 +fi + +echo '{}' diff --git a/.claude/settings.json b/.claude/settings.json index 13181ed..38b27c1 100644 --- a/.claude/settings.json +++ b/.claude/settings.json @@ -1,15 +1,15 @@ -{ - "hooks": { - "PreToolUse": [ - { - "matcher": "Skill", - "hooks": [ - { - "type": "command", - "command": "\"$CLAUDE_PROJECT_DIR/.claude/hooks/check-gstack.sh\"" - } - ] - } - ] - } -} +{ + "hooks": { + "PreToolUse": [ + { + "matcher": "Skill", + "hooks": [ + { + "type": "command", + "command": "\"$CLAUDE_PROJECT_DIR/.claude/hooks/check-gstack.sh\"" + } + ] + } + ] + } +} diff --git a/.claude/settings.local.json b/.claude/settings.local.json index 171d5bc..666a270 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -31,9 +31,5 @@ ], "deny": [], "ask": [] - }, - "enabledMcpjsonServers": [ - "firecrawl", - "apify" - ] + } } diff --git a/.codex-temp/awesome-design-md-SKILL.md b/.codex-temp/awesome-design-md-SKILL.md deleted file mode 100644 index 2b5dd74..0000000 --- a/.codex-temp/awesome-design-md-SKILL.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -name: awesome-design-md -description: Use VoltAgent's awesome-design-md collection when the user wants UI inspired by a specific brand or asks for a DESIGN.md reference, visual system, or brand-style implementation such as Stripe, Linear, Vercel, Claude, or Supabase. Resolve the brand slug from the installed `design-md/` folder, fetch the matching `getdesign.md` design document for that slug, and apply it as the design-system reference for implementation. ---- - -# Awesome DESIGN.md - -Use this skill to turn the installed `awesome-design-md` collection into a practical design reference workflow. - -The local `design-md/` directory is the index of supported brand slugs. Its per-brand `README.md` files are only pointers. The actual design-system document lives at: - -```text -https://getdesign.md//design-md -``` - -## Workflow - -1. Identify the target brand or closest visual reference. -2. Resolve the brand slug from the local `design-md/` folder. -3. Prefer exact folder names for dotted brands such as `linear.app`, `mistral.ai`, `opencode.ai`, `together.ai`, and `x.ai`. -4. Fetch `https://getdesign.md//design-md`. -5. Use the fetched document in one of two ways: - - write or update the project's root `DESIGN.md` - - keep it as an external design reference while implementing UI -6. Preserve the user's product semantics and content model. Borrow visual language, spacing, typography, motion, and component patterns, not product-specific copy. - -## Local Source Of Truth - -Use the installed folder below to confirm which slugs exist before fetching: - -```text -C:\Users\a931627\.claude\skills\awesome-design-md\design-md -``` - -If needed, list the available slugs with: - -```powershell -Get-ChildItem -Name C:\Users\a931627\.claude\skills\awesome-design-md\design-md -``` - -## Practical Rules - -- Treat `DESIGN.md` as a visual system reference, not as code to mirror verbatim. -- If the user asks for "something like X, but lighter, warmer, or more minimal", adapt the reference instead of cloning it literally. -- If multiple brands fit, choose the closest one and state the choice. -- If a slug is missing locally or the remote fetch fails, pick the nearest available brand or ask the user for a replacement target. -- When working inside an existing design system, merge the borrowed visual cues with the established component structure instead of replacing everything. - -## Common Slug Examples - -- `stripe` -- `vercel` -- `claude` -- `cursor` -- `supabase` -- `linear.app` -- `mistral.ai` -- `opencode.ai` -- `together.ai` -- `x.ai` diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 7f455d9..bbc0936 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,39 +1,39 @@ -## Summary - -- - -## Change Type - -- [ ] QRMaster SEO page -- [ ] QRMaster landing/tool page -- [ ] QRMaster conversion/pricing change -- [ ] GreenLens content/ASO workflow -- [ ] Bug fix -- [ ] Other - -## SEO / Content Review - -- [ ] Primary search intent is clear. -- [ ] Metadata is present and specific. -- [ ] Exactly one H1 is rendered for each new or changed page. -- [ ] Internal links are added to relevant money pages. -- [ ] CTA is specific to the page/use case. -- [ ] Duplicate or thin content risk was checked. -- [ ] Schema/structured data was added or intentionally skipped. - -## Verification - -- [ ] Build passes. -- [ ] Lint passes. -- [ ] Links/CTAs checked. -- [ ] Screenshots or notes included for UI changes. - -## Codex Review Prompt - -For QRMaster SEO/page changes, run: - -```text -Use docs/automations/qrmaster-pr-seo-review.md and review this PR for SEO, -conversion, internal linking, duplicate content, schema, and build/lint risk. -``` - +## Summary + +- + +## Change Type + +- [ ] QRMaster SEO page +- [ ] QRMaster landing/tool page +- [ ] QRMaster conversion/pricing change +- [ ] GreenLens content/ASO workflow +- [ ] Bug fix +- [ ] Other + +## SEO / Content Review + +- [ ] Primary search intent is clear. +- [ ] Metadata is present and specific. +- [ ] Exactly one H1 is rendered for each new or changed page. +- [ ] Internal links are added to relevant money pages. +- [ ] CTA is specific to the page/use case. +- [ ] Duplicate or thin content risk was checked. +- [ ] Schema/structured data was added or intentionally skipped. + +## Verification + +- [ ] Build passes. +- [ ] Lint passes. +- [ ] Links/CTAs checked. +- [ ] Screenshots or notes included for UI changes. + +## Codex Review Prompt + +For QRMaster SEO/page changes, run: + +```text +Use docs/automations/qrmaster-pr-seo-review.md and review this PR for SEO, +conversion, internal linking, duplicate content, schema, and build/lint risk. +``` + diff --git a/.gitignore b/.gitignore index 840e04a..f6fcc0c 100644 --- a/.gitignore +++ b/.gitignore @@ -59,3 +59,14 @@ dev-server.js .gstack/ .env.meta + +# Local temporary files, test scripts, and reports +tmp/ +.codex-temp/ +*.report.html +*.report.json +tmp_*.js +test_email.py +meta-fix.js +read-inbox.mjs +quora_antwort_statisch_dynamisch.txt diff --git a/.mcp.json b/.mcp.json index f579574..16be37d 100644 --- a/.mcp.json +++ b/.mcp.json @@ -1,11 +1,11 @@ -{ - "mcpServers": { - "apify": { - "type": "sse", - "url": "https://mcp.apify.com/sse", - "headers": { - "Authorization": "Bearer apify_api_0D7RWI6eW1H9LETBuLY7PHNpAErxL72ua6lo" - } - } - } -} +{ + "mcpServers": { + "apify": { + "type": "sse", + "url": "https://mcp.apify.com/sse", + "headers": { + "Authorization": "Bearer apify_api_0D7RWI6eW1H9LETBuLY7PHNpAErxL72ua6lo" + } + } + } +} diff --git a/.planning/industry-pages-batch2.md b/.planning/industry-pages-batch2.md index 91442c7..c1fdb3d 100644 --- a/.planning/industry-pages-batch2.md +++ b/.planning/industry-pages-batch2.md @@ -1,1281 +1,1281 @@ -# Industry Pages — Batch 2 (30 Pages) - -Build order: High-CPC B2B first, then high-volume consumer services. - -All entries follow the `IndustryPage` type from `src/lib/industry-pages.ts`. - ---- - -## Build Order - -### Group A — High CPC, B2B Service Trades (build first) -1. plumbers -2. roofing-companies -3. electricians -4. moving-companies -5. financial-advisors -6. construction-companies -7. cleaning-services -8. auto-repair -9. landscaping -10. tutors -11. dog-trainers - -### Group B — High Volume, Low Competition, Consumer Services (build second) -12. vacation-rentals -13. massage-therapists -14. escape-rooms -15. pilates-studios -16. wedding-venues -17. architects -18. hair-salons -19. hostels -20. crossfit -21. sports-bars -22. laundromats -23. aquariums - -### Group C — Retail & Lifestyle (build third) -24. gift-shops -25. bike-shops -26. ice-cream-shops -27. delis -28. resorts -29. toy-stores -30. sporting-goods - ---- - -## Full Data - -```ts - { - slug: "plumbers", - name: "Plumbers", - title: "QR Codes for Plumbers", - metaTitle: "QR Codes for Plumbers: Win More Jobs from Flyers and Vans", - metaDescription: "Help plumbing businesses turn printed flyers, van graphics, and invoices into instant quote requests with dynamic QR codes and scan analytics.", - headline: "QR Codes for Plumbers: Turn Every Flyer and Van Into a Lead", - subheadline: "Let customers scan to request a quote, save your number, or leave a Google review — from any printed surface you already have.", - heroImage: "/marketing/industries/plumbers.png", - statistics: [ - { value: "68%", label: "of customers research tradespeople online before calling" }, - { value: "3x", label: "More quote requests from QR-coded flyers vs URL-only" }, - { value: "40%", label: "of reviews come from post-job follow-up prompts" } - ], - benefits: [ - { title: "Instant Quote Requests", description: "A scan on your van or flyer opens your contact form directly — no typing, no friction." }, - { title: "Review Collection on Autopilot", description: "Add a QR code to invoices linking straight to your Google review page and watch 5-star reviews accumulate." }, - { title: "Update Without Reprinting", description: "Changed your phone number or service area? Dynamic QR codes let you update the destination without reprinting a single flyer." } - ], - useCases: [ - "Van and vehicle graphics linking to a quote request form", - "Flyers and door drops with scannable contact or booking links", - "Invoices with a QR code to leave a Google review", - "Business cards linking to full service list and vCard", - "Job site signage driving local visibility and inquiries" - ], - tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], - faq: [ - { question: "What should a plumber's QR code link to?", answer: "A quote request form or a click-to-call page works best. Avoid linking to a generic homepage — make it one action." }, - { question: "Should I put a QR code on my work van?", answer: "Yes. Van graphics are one of the highest-ROI placements for tradespeople. A dynamic QR code lets you change the destination later without a new wrap." }, - { question: "Can I track how many leads come from my flyers?", answer: "Yes. Dynamic QR codes give you scan counts by date, device, and location so you can compare flyer drops and know which areas convert." } - ], - placementTips: [ - "Apply a sticker with QR code to the rear and side of your work van", - "Print on invoices and job completion cards next to the review request", - "Include on door-drop flyers with a clear call to action like 'Scan for a free quote'" - ] - }, - { - slug: "roofing-companies", - name: "Roofing Companies", - title: "QR Codes for Roofing Companies", - metaTitle: "QR Codes for Roofing Companies: More Leads from Every Printed Surface", - metaDescription: "Help roofing businesses convert truck graphics, yard signs, and flyers into qualified leads with dynamic QR codes that track every scan.", - headline: "QR Codes for Roofing Companies: Every Truck and Yard Sign Should Be Working for You", - subheadline: "Turn passive signage into active lead generation with scannable QR codes on vehicles, yard signs, and direct mail.", - heroImage: "/marketing/industries/roofing-companies.png", - statistics: [ - { value: "72%", label: "of homeowners get multiple quotes before choosing a roofer" }, - { value: "5x", label: "More inquiries from yard signs with QR codes vs phone number only" }, - { value: "60%", label: "of roofing leads start with an online search or referral" } - ], - benefits: [ - { title: "Yard Sign Lead Capture", description: "A QR code on every active job site yard sign turns neighbors into your next customers." }, - { title: "Trackable Direct Mail", description: "Know exactly which neighborhoods respond to your flyer drops with per-code scan analytics." }, - { title: "Dynamic Links", description: "Update your estimate form or seasonal offer without replacing yard signs or reprinting mailers." } - ], - useCases: [ - "Yard signs at active job sites linking to a free estimate form", - "Truck and trailer graphics with a scannable quote request", - "Direct mail campaigns with unique QR codes per neighborhood", - "Business cards with vCard and portfolio link", - "Post-job door hangers driving reviews and referrals" - ], - tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], - faq: [ - { question: "What should a roofing company QR code link to?", answer: "A free estimate request form is the highest-converting destination. Keep it short — name, address, and contact only." }, - { question: "How do I track which job site signs bring in the most leads?", answer: "Create one unique dynamic QR code per yard sign location. QR Master's analytics show scans per code so you know exactly which sites perform." }, - { question: "Can I use QR codes on seasonal storm-damage mailers?", answer: "Yes, and they're especially effective. A QR code linking to a storm damage assessment form converts better than a phone number alone." } - ], - placementTips: [ - "Place yard signs at every active job site with a 'Scan for a Free Estimate' prompt", - "Add to the rear of every truck and trailer with high visibility contrast", - "Include on door hangers left at neighboring properties after completing a job" - ] - }, - { - slug: "electricians", - name: "Electricians", - title: "QR Codes for Electricians", - metaTitle: "QR Codes for Electricians: Turn Van Graphics and Flyers Into Quote Requests", - metaDescription: "Help electrical contractors generate more leads from printed materials with dynamic QR codes for quote forms, reviews, and service bookings.", - headline: "QR Codes for Electricians: Make Your Printed Materials Work as Hard as You Do", - subheadline: "From van graphics to invoices, every surface is a lead generation opportunity when you add a dynamic QR code.", - heroImage: "/marketing/industries/electricians.png", - statistics: [ - { value: "74%", label: "of customers check online reviews before hiring an electrician" }, - { value: "2x", label: "More callbacks from flyers with QR codes vs phone-only" }, - { value: "50%", label: "of electrical jobs come from repeat customers and referrals" } - ], - benefits: [ - { title: "Frictionless Quote Requests", description: "Customers scan and land directly on your booking form — no searching, no typing, no lost business." }, - { title: "Professional First Impression", description: "QR-coded business cards and invoices signal a modern, trustworthy business to homeowners and property managers." }, - { title: "Google Review Acceleration", description: "A QR code on completion cards makes leaving a review a 10-second task, not a forgotten promise." } - ], - useCases: [ - "Van and vehicle signage with a quote request or contact link", - "Business cards linking to full service list and vCard", - "Invoices with a post-job review QR code", - "Flyers targeting landlords and property managers", - "Panel stickers linking to emergency contact or service info" - ], - tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], - faq: [ - { question: "What QR code placement works best for electricians?", answer: "Work vans are the highest-visibility surface. Pair with an invoice QR code linking to your Google review page for maximum impact." }, - { question: "Can I use different QR codes for residential vs commercial leads?", answer: "Yes. Create one code per campaign — one for residential flyers, one for commercial property management outreach — and track which converts better." }, - { question: "Should my QR code link to my website or a form?", answer: "A direct quote request form converts better than a homepage. Fewer clicks between the scan and a submitted lead means more jobs." } - ], - placementTips: [ - "Apply QR sticker to the rear of your van at eye level with a clear prompt", - "Print on completion certificates and invoices next to the review ask", - "Add to property management flyers targeting landlord portfolios" - ] - }, - { - slug: "moving-companies", - name: "Moving Companies", - title: "QR Codes for Moving Companies", - metaTitle: "QR Codes for Moving Companies: More Bookings from Trucks and Flyers", - metaDescription: "Help moving companies convert truck graphics, flyers, and partnerships into instant booking requests with dynamic QR codes and scan analytics.", - headline: "QR Codes for Moving Companies: Turn Your Fleet Into a Booking Machine", - subheadline: "Every truck on the road and every flyer in a building lobby is a chance to capture the next move — if you make it scannable.", - heroImage: "/marketing/industries/moving-companies.png", - statistics: [ - { value: "80%", label: "of people moving research removalists online first" }, - { value: "4x", label: "Booking rate from QR flyers in apartment lobbies vs cold outreach" }, - { value: "65%", label: "of moves are booked within 48 hours of first contact" } - ], - benefits: [ - { title: "Fleet-as-Advertising", description: "A dynamic QR code on every truck turns your fleet into a 24/7 booking channel across every neighborhood you serve." }, - { title: "Lobby and Building Partnerships", description: "Leave flyers with QR codes in apartment lobbies, storage facilities, and real estate offices where moving intent is highest." }, - { title: "Seasonal Campaign Flexibility", description: "Update your QR destination to a summer promotion or student move special without reprinting a single flyer." } - ], - useCases: [ - "Truck livery QR codes linking directly to an instant quote form", - "Apartment lobby flyers with a booking or price estimate link", - "Partnerships with real estate agents — QR cards for new homebuyers", - "Post-move review request QR codes on thank-you cards", - "Storage facility referral flyers with unique tracking codes" - ], - tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], - faq: [ - { question: "Where should I place QR codes for maximum bookings?", answer: "Apartment building lobbies and your truck fleet are the two highest-intent placements. People in lobbies are often planning a move." }, - { question: "Can I track which locations send the most bookings?", answer: "Yes. Create a unique dynamic QR code for each placement — one per building, one per truck — and compare scan data in QR Master's dashboard." }, - { question: "What should the QR code link to?", answer: "An instant quote calculator or a simple booking form. The faster you get the customer to a price, the lower the drop-off rate." } - ], - placementTips: [ - "Apply to the rear doors and sides of every moving truck in your fleet", - "Leave A5 flyers with QR codes in apartment building lobbies and notice boards", - "Give QR-coded referral cards to real estate agents and property managers" - ] - }, - { - slug: "financial-advisors", - name: "Financial Advisors", - title: "QR Codes for Financial Advisors", - metaTitle: "QR Codes for Financial Advisors: Share Credentials and Book Consultations", - metaDescription: "Help financial advisors modernize business card exchanges, seminar follow-ups, and referral marketing with dynamic QR codes that track engagement.", - headline: "QR Codes for Financial Advisors: Every Handshake Should Start a Digital Relationship", - subheadline: "From seminar handouts to business cards, dynamic QR codes make sharing credentials, booking calls, and collecting leads effortless.", - heroImage: "/marketing/industries/financial-advisors.png", - statistics: [ - { value: "83%", label: "of high-net-worth clients research their advisor online before meeting" }, - { value: "3x", label: "Higher follow-up rate from seminar QR codes vs business card alone" }, - { value: "70%", label: "of new advisory clients come from referrals" } - ], - benefits: [ - { title: "Professional Digital Handshake", description: "A vCard QR code on your business card lets prospects save your full contact details and LinkedIn in one scan." }, - { title: "Seminar Lead Capture", description: "Collect attendee contact details or drive consultation bookings from printed handouts and presentation slides." }, - { title: "Referral Tracking", description: "Give each referring partner a unique QR code so you know exactly which relationships drive the most business." } - ], - useCases: [ - "Business cards with vCard QR code and booking link", - "Seminar and workshop handouts linking to a consultation form", - "Referral partner cards with unique tracking codes per partner", - "Printed guides and whitepapers with a download or follow-up link", - "Office signage linking to client portal or contact page" - ], - tools: ["vcard-qr-code", "url-qr-code", "email-qr-code"], - faq: [ - { question: "What should a financial advisor's QR code link to?", answer: "A calendar booking link for a free consultation is the highest-converting destination. Pair with a vCard QR on the same business card." }, - { question: "Are QR codes appropriate for a high-trust profession like finance?", answer: "Yes. A clean, professionally designed QR code signals that you're modern and efficient — qualities clients want in an advisor." }, - { question: "Can I track which referral sources generate the most leads?", answer: "Yes. Create a unique dynamic QR code for each referral partner. QR Master shows scans per code so you know exactly where leads come from." } - ], - placementTips: [ - "Print on business cards with a 'Book a free call' prompt alongside the QR code", - "Include in seminar slide decks and printed handouts at the top and bottom", - "Add to direct mail campaigns targeting high-net-worth residential addresses" - ] - }, - { - slug: "construction-companies", - name: "Construction Companies", - title: "QR Codes for Construction Companies", - metaTitle: "QR Codes for Construction Companies: Site Signage That Generates Leads", - metaDescription: "Help construction firms turn site hoardings, vehicle graphics, and project brochures into measurable lead generation assets with dynamic QR codes.", - headline: "QR Codes for Construction Companies: Your Site Hoarding Should Be Selling", - subheadline: "Turn every project site, company vehicle, and brochure into an active lead channel with scannable dynamic QR codes.", - heroImage: "/marketing/industries/construction-companies.png", - statistics: [ - { value: "60%", label: "of construction leads start with an online search for local contractors" }, - { value: "8x", label: "ROI on site hoarding QR codes vs static contact details alone" }, - { value: "55%", label: "of project inquiries come from neighbors noticing active build sites" } - ], - benefits: [ - { title: "Site Hoarding That Converts", description: "A QR code on every hoarding drives neighbors and passersby to your project portfolio, estimate form, or contact page." }, - { title: "Fleet and Equipment Visibility", description: "Branded QR codes on plant and vehicles generate awareness and inquiries across every area you work in." }, - { title: "Proposal and Brochure Tracking", description: "Know which clients engaged with your PDF proposal by using a unique QR code per prospect." } - ], - useCases: [ - "Site hoarding and boarding QR codes linking to company portfolio", - "Vehicle and plant graphics with scannable quote request links", - "Project brochures with unique tracking QR codes per prospect", - "Safety signage linking to RAMS documents and accreditations", - "Subcontractor and supply chain recruitment via QR-coded adverts" - ], - tools: ["url-qr-code", "pdf-qr-code", "vcard-qr-code"], - faq: [ - { question: "What should a construction company's site hoarding QR code link to?", answer: "Your best project portfolio page or a simple inquiry form. Neighbors want to see your work quality before they call." }, - { question: "Can QR codes be used for health and safety documentation?", answer: "Yes. A QR code linking to RAMS, COSHH sheets, or site induction materials saves paper and keeps documents current without reprinting." }, - { question: "How do I track which sites generate the most inquiries?", answer: "Create a unique dynamic QR code per site hoarding. QR Master's scan analytics show date, device, and location for each code." } - ], - placementTips: [ - "Place prominently on site hoarding at pedestrian eye level with a clear CTA", - "Apply to the rear and sides of all company vehicles and plant equipment", - "Include in tender documents and proposals with a unique code per submission" - ] - }, - { - slug: "cleaning-services", - name: "Cleaning Services", - title: "QR Codes for Cleaning Services", - metaTitle: "QR Codes for Cleaning Services: Bookings from Flyers and Vehicle Signage", - metaDescription: "Help cleaning businesses turn door drops, vehicle graphics, and referral cards into instant online bookings with dynamic QR codes.", - headline: "QR Codes for Cleaning Services: Every Door Drop Should Book a Job", - subheadline: "Turn flyers, van graphics, and completion cards into a 24/7 booking engine with one scannable QR code.", - heroImage: "/marketing/industries/cleaning-services.png", - statistics: [ - { value: "65%", label: "of cleaning clients book based on neighbor recommendations" }, - { value: "3x", label: "Booking rate from door drops with QR codes vs phone-only flyers" }, - { value: "45%", label: "of recurring cleaning clients came from a single positive review" } - ], - benefits: [ - { title: "Instant Online Booking", description: "A scan on your flyer takes customers straight to your booking form — removing every barrier between interest and conversion." }, - { title: "Neighborhood Expansion", description: "Leave door-drop cards after completing a job. Neighbors who see your branded vehicle are already warm prospects." }, - { title: "Review Generation", description: "A QR code on completion cards linking to your Google review page turns satisfied customers into your best marketing." } - ], - useCases: [ - "Door-drop flyers with a 'Scan to book your first clean' QR code", - "Van graphics with a scannable booking or contact link", - "Completion cards left after each job with a review QR code", - "Referral cards for existing clients to share with neighbors", - "Building lobby flyers targeting apartment and office managers" - ], - tools: ["url-qr-code", "call-qr-code-generator", "email-qr-code"], - faq: [ - { question: "What should a cleaning company's QR code link to?", answer: "An online booking form or instant quote calculator. The fewer steps between scanning and booking, the higher your conversion rate." }, - { question: "Should I use different QR codes for different areas?", answer: "Yes. Create a unique code per neighborhood and track scan data to identify which areas respond best to your flyers." }, - { question: "How do QR codes help with recurring bookings?", answer: "A follow-up card left after each clean with a QR code to rebook or refer a friend increases both retention and word-of-mouth." } - ], - placementTips: [ - "Door-drop cards in residential streets where you regularly work", - "Van rear and side panels with a high-contrast booking prompt", - "Completion cards placed on kitchen counters or front doors after each job" - ] - }, - { - slug: "auto-repair", - name: "Auto Repair Shops", - title: "QR Codes for Auto Repair Shops", - metaTitle: "QR Codes for Auto Repair Shops: Book More Services Without Extra Staff", - metaDescription: "Help auto repair shops turn waiting room posters, invoices, and vehicle handouts into booking requests and 5-star reviews with dynamic QR codes.", - headline: "QR Codes for Auto Repair Shops: Turn Your Waiting Room Into a Booking Tool", - subheadline: "From service reminders to review requests, dynamic QR codes keep customers coming back and spread the word for you.", - heroImage: "/marketing/industries/auto-repair.png", - statistics: [ - { value: "70%", label: "of car owners use the same garage for 3+ years if satisfied" }, - { value: "88%", label: "of customers trust online reviews as much as personal recommendations" }, - { value: "40%", label: "of auto repair bookings now happen outside business hours" } - ], - benefits: [ - { title: "After-Hours Bookings", description: "A QR code on your invoice links to your online booking page so customers can schedule their next service at midnight if they want." }, - { title: "Review Collection", description: "A scan-to-review QR on every completed job paperwork turns happy customers into a steady flow of Google reviews." }, - { title: "Service Reminders Without Printing New Material", description: "Update your dynamic QR code destination to a seasonal promotion or MOT reminder without reprinting any in-garage signage." } - ], - useCases: [ - "Invoices and job cards with a QR code to book next service", - "Waiting room posters linking to service menu and pricing", - "Windscreen stickers with service due date and a rebooking link", - "Post-job review request cards with a Google review QR code", - "Flyers for local businesses with fleet vehicle servicing offers" - ], - tools: ["url-qr-code", "call-qr-code-generator", "email-qr-code"], - faq: [ - { question: "What is the best QR code placement for a garage?", answer: "Job completion paperwork and waiting room posters are the highest-engagement placements. Customers have time to scan while waiting." }, - { question: "Can I put a QR code on a windscreen service sticker?", answer: "Yes. A small dynamic QR code on a service reminder sticker linking to your booking page is one of the most effective retention tools." }, - { question: "How do QR codes help with fleet clients?", answer: "Give fleet managers a unique QR code linking to a dedicated booking portal or account manager contact so they can log service requests instantly." } - ], - placementTips: [ - "Print on every job card and invoice at the bottom with a rebooking prompt", - "Post A3 posters in the waiting area with service menu and booking QR", - "Apply QR-coded service reminder stickers to windscreens at job completion" - ] - }, - { - slug: "landscaping", - name: "Landscaping Companies", - title: "QR Codes for Landscaping Companies", - metaTitle: "QR Codes for Landscaping Companies: Leads from Signs and Vehicles", - metaDescription: "Help landscaping businesses turn yard signs, vehicle graphics, and flyers into instant quote requests with trackable dynamic QR codes.", - headline: "QR Codes for Landscaping Companies: Your Best Jobs Are in the Yards Next Door", - subheadline: "Every project site is a live portfolio. Make it work harder with a yard sign QR code that turns neighbors into the next booking.", - heroImage: "/marketing/industries/landscaping.png", - statistics: [ - { value: "67%", label: "of landscaping clients come from neighbor referrals or visible work" }, - { value: "5x", label: "More inquiries from job-site signs with QR codes vs phone only" }, - { value: "3x", label: "Higher retention rate when clients can rebook in under 60 seconds" } - ], - benefits: [ - { title: "Yard Signs That Generate Leads", description: "A QR code on job-site yard signs lets neighbors see your portfolio and request a quote instantly — no cold calling required." }, - { title: "Seasonal Campaign Swaps", description: "Update your QR destination from a spring planting offer to a winter clearance special without ordering new signs." }, - { title: "Before and After Portfolio", description: "Link QR codes to a visual before-and-after gallery for the exact type of garden you just transformed." } - ], - useCases: [ - "Yard signs at active job sites linking to portfolio and quote form", - "Vehicle and trailer graphics with a scannable estimate request", - "Post-job door hangers for neighboring properties", - "Flyers for seasonal services like lawn care, snow removal, or planting", - "Business cards with vCard and portfolio gallery link" - ], - tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], - faq: [ - { question: "What should a landscaping yard sign QR code link to?", answer: "A project gallery showing work similar to the job in progress, plus a one-click quote request form. Visual proof converts best." }, - { question: "Can I use the same QR code on all my yard signs?", answer: "You can, but using unique codes per sign lets you measure which neighborhoods generate the most leads and focus your marketing accordingly." }, - { question: "How do seasonal promotions work with dynamic QR codes?", answer: "You update the link destination in QR Master's dashboard and all existing printed signs automatically point to the new page." } - ], - placementTips: [ - "Place yard signs at every active project site, visible from the street", - "Apply to trailer tailgates and vehicle sides on the passenger-facing side", - "Leave door hangers at the 5 properties on each side of every completed job" - ] - }, - { - slug: "tutors", - name: "Tutors", - title: "QR Codes for Tutors", - metaTitle: "QR Codes for Tutors: Fill Your Schedule from Flyers and School Boards", - metaDescription: "Help private tutors and tutoring centers convert notice board flyers, parent handouts, and social posts into bookings with dynamic QR codes.", - headline: "QR Codes for Tutors: Every Notice Board Flyer Should Be Booking Sessions", - subheadline: "Make it effortless for parents to check availability, read reviews, and book a trial session — from a single scan.", - heroImage: "/marketing/industries/tutors.png", - statistics: [ - { value: "78%", label: "of parents prefer to book services digitally rather than by phone" }, - { value: "4x", label: "Higher response rate from notice board flyers with QR booking links" }, - { value: "60%", label: "of tutoring referrals come from satisfied parents sharing contact details" } - ], - benefits: [ - { title: "Instant Booking from Flyers", description: "A QR code on every notice board flyer sends parents directly to your availability calendar — no phone tag needed." }, - { title: "Easy Referral Sharing", description: "A vCard QR code lets parents share your full contact details with one tap to another parent in the school car park." }, - { title: "Subject-Specific Campaigns", description: "Create one QR code per subject or year group and track which produces the most bookings across different schools." } - ], - useCases: [ - "School notice board flyers linking to booking calendar or inquiry form", - "Business cards with vCard QR for easy contact sharing between parents", - "PDF resource sheets for students with a follow-up QR code", - "End-of-term review requests sent via printed or digital card", - "Subject-specific flyers with unique tracking QR codes per campaign" - ], - tools: ["url-qr-code", "vcard-qr-code", "email-qr-code"], - faq: [ - { question: "What should a tutor's QR code link to?", answer: "A simple booking or inquiry form works best. Include your subjects, availability, and a brief bio so parents can qualify you before they reach out." }, - { question: "Can I track which schools send the most inquiries?", answer: "Yes. Use a unique dynamic QR code on flyers for each school and track scan data in QR Master's dashboard to see which locations perform best." }, - { question: "Should I add a QR code to printed worksheets?", answer: "Yes. A QR code at the bottom of student handouts linking to video explanations or supplementary resources adds value and keeps your brand visible to parents." } - ], - placementTips: [ - "Pin A5 flyers with booking QR code on notice boards at local schools and libraries", - "Print on business cards designed for parent-to-parent sharing", - "Add to printed worksheets and resource packs sent home with students" - ] - }, - { - slug: "dog-trainers", - name: "Dog Trainers", - title: "QR Codes for Dog Trainers", - metaTitle: "QR Codes for Dog Trainers: Fill Classes and Share Training Resources", - metaDescription: "Help dog trainers and training schools convert park flyers, vet referrals, and training handouts into bookings with dynamic QR codes.", - headline: "QR Codes for Dog Trainers: Reach New Clients Where Their Dogs Actually Are", - subheadline: "Parks, vet waiting rooms, and pet shop notice boards — put a scannable QR code in every place dog owners spend time.", - heroImage: "/marketing/industries/dog-trainers.png", - statistics: [ - { value: "72%", label: "of new dog owners seek professional training within the first 6 months" }, - { value: "85%", label: "of dog owner referrals happen in person, at parks or vet practices" }, - { value: "3x", label: "More class sign-ups from vet waiting room flyers with QR codes" } - ], - benefits: [ - { title: "Book Classes Instantly", description: "A QR code on your park flyer or business card takes new dog owners straight to your class schedule and booking form." }, - { title: "Share Training Resources", description: "Link QR codes on handouts to video guides, training tips, and homework assignments so clients practice between sessions." }, - { title: "Vet and Pet Shop Referrals", description: "Leave QR-coded referral cards with local vets and pet shops. A unique code per location tells you who sends the most clients." } - ], - useCases: [ - "Park and trail flyers linking to class schedule and booking", - "Vet waiting room cards with training package overview", - "Post-session handouts with QR links to training video resources", - "Business cards with vCard and booking link for park encounters", - "End-of-course review request QR codes on graduation certificates" - ], - tools: ["url-qr-code", "vcard-qr-code", "youtube-qr-code"], - faq: [ - { question: "Where should dog trainers distribute QR code flyers?", answer: "Dog parks, vet waiting rooms, pet shops, and grooming salons are your highest-intent locations. These are where motivated dog owners already spend time." }, - { question: "Can I share training videos via QR code?", answer: "Yes. Link a QR code on printed handouts to a YouTube playlist or private video library. Clients scan during the session or at home for reinforcement." }, - { question: "How do I track which referral partners send the most clients?", answer: "Give each vet or pet shop a unique dynamic QR code. QR Master tracks scans per code so you can thank and reward your best referral sources." } - ], - placementTips: [ - "Post A5 flyers at dog park notice boards and water stations", - "Leave referral cards with local veterinary practices and pet shops", - "Print on post-session handouts with links to homework video resources" - ] - }, - { - slug: "vacation-rentals", - name: "Vacation Rentals", - title: "QR Codes for Vacation Rentals", - metaTitle: "QR Codes for Vacation Rentals: Streamline Guest Check-In and House Guides", - metaDescription: "Help vacation rental owners deliver WiFi passwords, house manuals, local guides, and checkout instructions through a single scannable QR code.", - headline: "QR Codes for Vacation Rentals: Give Guests Everything They Need with One Scan", - subheadline: "Replace printed house manuals, WiFi cards, and welcome books with a dynamic QR code you can update between every stay.", - heroImage: "/marketing/industries/vacation-rentals.png", - statistics: [ - { value: "89%", label: "of guests check WiFi details within 10 minutes of arrival" }, - { value: "4x", label: "Fewer support messages when house rules are on a scannable guide" }, - { value: "35%", label: "of vacation rental reviews mention ease of check-in as a factor" } - ], - benefits: [ - { title: "Zero-Touch Check-In", description: "A welcome card with a QR code replaces printed manuals, sticky notes, and host messages — guests get everything in one scan." }, - { title: "Always Up to Date", description: "Dynamic QR codes mean you update the house guide or local restaurant list once, and it's live for every future guest without reprinting." }, - { title: "Review Collection", description: "A QR code left with the checkout card prompts guests to leave a review when their experience is freshest." } - ], - useCases: [ - "Welcome card with QR code linking to digital house guide", - "WiFi QR code printed on a framed card or fridge magnet", - "Local area guide with restaurant, activity, and emergency links", - "Checkout instructions checklist accessible via scan", - "Post-stay review request via QR on checkout reminder card" - ], - tools: ["wifi-qr-code", "url-qr-code", "pdf-qr-code"], - faq: [ - { question: "What should a vacation rental QR code link to?", answer: "A digital welcome guide covering WiFi, house rules, appliance instructions, local recommendations, and emergency contacts covers 90% of guest questions." }, - { question: "Can I use the same QR code for multiple properties?", answer: "Create a unique code per property so each links to the correct guide. With dynamic codes you can update the guide content without replacing the printed cards." }, - { question: "How do QR codes reduce guest messages?", answer: "Most guest messages ask the same questions — WiFi, checkout time, bin collection. A scannable guide that answers all of these cuts support messages significantly." } - ], - placementTips: [ - "Frame a WiFi QR code card and place on the kitchen counter or entry table", - "Add a house guide QR code to the welcome card included with keys", - "Leave a checkout reminder card with a review QR code on the dining table" - ] - }, - { - slug: "massage-therapists", - name: "Massage Therapists", - title: "QR Codes for Massage Therapists", - metaTitle: "QR Codes for Massage Therapists: Rebook Clients Before They Leave", - metaDescription: "Help massage therapists and clinics use dynamic QR codes for rebooking, aftercare guides, review collection, and gift voucher promotions.", - headline: "QR Codes for Massage Therapists: The Easiest Rebook Starts Right After the Session", - subheadline: "A QR code on your aftercare card turns a relaxed, satisfied client into a confirmed repeat booking before they leave the room.", - heroImage: "/marketing/industries/massage-therapists.png", - statistics: [ - { value: "65%", label: "of clients who rebook do so within 48 hours of their last session" }, - { value: "4x", label: "Higher rebook rate when clients leave with a QR-coded aftercare card" }, - { value: "80%", label: "of massage clients come from word-of-mouth and reviews" } - ], - benefits: [ - { title: "Instant Rebooking", description: "A QR code on your aftercare card linked to your online booking calendar turns every completed session into the next one." }, - { title: "Aftercare and Treatment Information", description: "Share post-treatment advice, hydration tips, and what to expect — all linked from a single scannable code on a printed card." }, - { title: "Gift Voucher Promotion", description: "A QR code on a branded card or display stand links to your gift voucher page — perfect for holiday and birthday gift traffic." } - ], - useCases: [ - "Aftercare cards with rebooking QR code and treatment notes", - "Reception desk signage linking to online booking and treatment menu", - "Gift voucher cards with QR code for purchase or redemption", - "Review request QR on checkout receipts and follow-up texts", - "Referral cards for clients to share with friends and family" - ], - tools: ["url-qr-code", "vcard-qr-code", "email-qr-code"], - faq: [ - { question: "What is the best way to use QR codes as a massage therapist?", answer: "An aftercare card with a rebooking QR code is the single highest-converting use case. Clients are relaxed and receptive right after a session." }, - { question: "Should I link to my booking platform or my own website?", answer: "Link directly to your booking calendar — Calendly, Fresha, or your own system. Fewer clicks between the QR code and a confirmed appointment means more bookings." }, - { question: "How can QR codes help with gift voucher sales?", answer: "A framed QR code display at reception linking to your gift voucher purchase page generates passive sales, especially around Christmas, Valentine's Day, and Mother's Day." } - ], - placementTips: [ - "Include aftercare card with rebook QR in every treatment room", - "Place a framed QR code stand at reception for gift voucher purchases", - "Print on loyalty cards alongside a 'Refer a friend' QR for tracking referrals" - ] - }, - { - slug: "escape-rooms", - name: "Escape Rooms", - title: "QR Codes for Escape Rooms", - metaTitle: "QR Codes for Escape Rooms: More Bookings and Better Reviews", - metaDescription: "Help escape room businesses use QR codes for instant booking, post-game review requests, group offers, and in-game hint systems.", - headline: "QR Codes for Escape Rooms: From Booking to the Last Clue", - subheadline: "Use QR codes at every touchpoint — from street-level marketing to post-game review collection — to fill more sessions and grow your reputation.", - heroImage: "/marketing/industries/escape-rooms.png", - statistics: [ - { value: "74%", label: "of escape room bookings are made online or via mobile" }, - { value: "3x", label: "More reviews collected with a post-game QR card vs verbal requests" }, - { value: "65%", label: "of escape room customers come in groups of 3 or more" } - ], - benefits: [ - { title: "Instant Group Bookings", description: "A QR code on outdoor signage or flyers links directly to your booking calendar — groups can split the cost and book on the spot." }, - { title: "Post-Game Review Rush", description: "Hand every team a QR-coded feedback card as they exit. The adrenaline is still running — reviews written immediately are more enthusiastic." }, - { title: "In-Game Hint Systems", description: "Use QR codes within game rooms to link to optional hint videos, audio clues, or additional story context." } - ], - useCases: [ - "Outdoor and window signage linking to booking calendar", - "Post-game review request cards handed to every team", - "Group discount flyers distributed in nearby hospitality venues", - "In-game QR codes for optional hints or story additions", - "Gift voucher QR codes sold at reception or online" - ], - tools: ["url-qr-code", "youtube-qr-code", "event-qr-code"], - faq: [ - { question: "Where should escape rooms use QR codes for maximum bookings?", answer: "Outdoor street-level signage and nearby hospitality venue flyers capture walk-by and post-dinner impulse bookings, which are common for escape rooms." }, - { question: "Can QR codes be used inside the escape room itself?", answer: "Yes. QR codes linked to video hints, audio clues, or optional story elements add a digital layer to physical puzzles without breaking immersion." }, - { question: "How do I get more Google reviews from escape room customers?", answer: "A branded QR review card handed to every team right after their game, while the experience is fresh, consistently outperforms follow-up emails for review conversion." } - ], - placementTips: [ - "Place booking QR codes on A-frame signs outside the venue entrance", - "Hand every exiting team a review card with a QR code before they leave", - "Distribute group booking flyers in nearby restaurants and bowling alleys" - ] - }, - { - slug: "pilates-studios", - name: "Pilates Studios", - title: "QR Codes for Pilates Studios", - metaTitle: "QR Codes for Pilates Studios: Fill Classes and Retain Members", - metaDescription: "Help pilates studios use dynamic QR codes for class bookings, membership sign-ups, tutorial videos, and referral programs.", - headline: "QR Codes for Pilates Studios: Every Class Should Be Full and Every Member Should Feel Seen", - subheadline: "From first-time visitor flyers to member referral cards, dynamic QR codes make growing your studio effortless.", - heroImage: "/marketing/industries/pilates-studios.png", - statistics: [ - { value: "68%", label: "of pilates clients discover studios through friend referrals" }, - { value: "4x", label: "Higher class attendance when booking reminders include a QR rescheduling link" }, - { value: "55%", label: "of new members join within 2 weeks of a free trial class" } - ], - benefits: [ - { title: "Free Trial Conversions", description: "A QR code on your street-level poster links directly to a free trial class booking — reducing friction for first-time visitors." }, - { title: "Member Referral Tracking", description: "Give each member a unique QR referral card. Track which members bring in the most new clients and reward them accordingly." }, - { title: "Video Tutorial Library", description: "Link QR codes on printed training cards to a private video library of exercises and corrections for home practice." } - ], - useCases: [ - "Exterior signage and flyers with free trial class booking link", - "Member referral cards with unique per-member tracking codes", - "Training cards linking to video exercise demonstrations", - "Class timetable posters with a booking QR code", - "Post-class review request cards for Google and social platforms" - ], - tools: ["url-qr-code", "youtube-qr-code", "email-qr-code"], - faq: [ - { question: "What should a pilates studio's QR code link to?", answer: "A free trial class booking page is the highest-converting destination for new visitors. For existing members, link to the class schedule and rebook flow." }, - { question: "How can I use QR codes to reduce class no-shows?", answer: "Add a QR code to booking confirmation printouts linking to a rescheduling page. Making it easy to change reduces last-minute drops rather than simply losing the booking." }, - { question: "Are QR codes useful for in-studio printed materials?", answer: "Yes. Training cards with QR codes linking to form correction videos, breathing tutorials, and at-home practice guides extend the studio experience beyond class time." } - ], - placementTips: [ - "Post free trial QR flyers on studio windows and nearby community boards", - "Place booking QR codes on class timetable printouts at reception", - "Hand members referral cards with their name on them to personalise the ask" - ] - }, - { - slug: "wedding-venues", - name: "Wedding Venues", - title: "QR Codes for Wedding Venues", - metaTitle: "QR Codes for Wedding Venues: Show Off Your Venue and Book More Tours", - metaDescription: "Help wedding venues use dynamic QR codes on brochures, open day signage, and printed packs to drive virtual tours, inquiry forms, and availability checks.", - headline: "QR Codes for Wedding Venues: Every Brochure Should Book a Tour", - subheadline: "Turn printed venue brochures, open day displays, and wedding fair materials into interactive digital experiences with a single scan.", - heroImage: "/marketing/industries/wedding-venues.png", - statistics: [ - { value: "87%", label: "of couples research venues online before visiting in person" }, - { value: "3x", label: "More inquiry form completions from brochures with QR codes" }, - { value: "70%", label: "of venue bookings are made within 2 weeks of the first site visit" } - ], - benefits: [ - { title: "Virtual Tour on the Spot", description: "A QR code in your brochure links to a video walkthrough so couples can revisit the feeling of your venue at home." }, - { title: "Wedding Fair Lead Capture", description: "A branded QR code on your fair display captures couple details and books consultations without needing manual sign-up sheets." }, - { title: "Availability and Pricing on Demand", description: "Dynamic QR codes update to current availability calendars and pricing packages without reprinting any printed materials." } - ], - useCases: [ - "Printed brochures with QR links to virtual tours and photo galleries", - "Wedding fair display signage with inquiry form QR code", - "Site visit follow-up packs with a 'Check your date' availability link", - "Supplier partnership cards with a referral tracking QR code", - "Guest WiFi QR codes for couples to share on the day itself" - ], - tools: ["url-qr-code", "wifi-qr-code", "youtube-qr-code"], - faq: [ - { question: "What should a wedding venue's QR code link to?", answer: "A virtual tour or photo gallery linked from your brochure is most compelling. Pair it with a date availability checker for the highest inquiry conversion." }, - { question: "How do QR codes help at wedding fairs?", answer: "Replace paper sign-up sheets with a QR code linking to a simple consultation booking form. Couples submit details on their own phone — faster, cleaner, and better data." }, - { question: "Can I give couples a WiFi QR code for their wedding day?", answer: "Yes. A framed WiFi QR code is a popular detail that guests appreciate, and it keeps your venue branding visible in guest photos from the day." } - ], - placementTips: [ - "Print a QR code on the inside front cover of every printed venue brochure", - "Display a large format QR poster at wedding fair stands with a 'Book your tour' prompt", - "Include a QR availability link in every site visit follow-up pack sent to couples" - ] - }, - { - slug: "architects", - name: "Architects", - title: "QR Codes for Architects", - metaTitle: "QR Codes for Architects: Turn Site Hoardings and Proposals Into Portfolio Visits", - metaDescription: "Help architecture firms use dynamic QR codes on site hoardings, pitch documents, and business cards to showcase portfolios and capture project inquiries.", - headline: "QR Codes for Architects: Your Best Work Should Be One Scan Away", - subheadline: "Turn site hoardings, award entries, and proposal documents into living portfolio links with QR codes that update as your projects evolve.", - heroImage: "/marketing/industries/architects.png", - statistics: [ - { value: "82%", label: "of clients select an architect based on visible portfolio quality" }, - { value: "6x", label: "More portfolio views from QR-coded site hoardings vs URL text alone" }, - { value: "55%", label: "of architecture inquiries start with seeing an active project in a neighborhood" } - ], - benefits: [ - { title: "Site Hoardings as Portfolio Windows", description: "A QR code on every project hoarding lets passersby view your full portfolio of similar work and submit an inquiry on the spot." }, - { title: "Living Proposal Documents", description: "Link QR codes in pitch documents to CGI walkthroughs, specification sheets, and project timeline videos that update without reprinting." }, - { title: "Award and Press Coverage", description: "QR codes in printed press materials link journalists and judges directly to project photography, case studies, and contact details." } - ], - useCases: [ - "Site hoarding QR codes linking to portfolio and contact form", - "Proposal and tender documents with QR links to CGI and specification assets", - "Business cards with vCard and portfolio gallery link", - "Award submission materials with QR codes to project photography", - "Planning application notices with public consultation QR codes" - ], - tools: ["url-qr-code", "vcard-qr-code", "pdf-qr-code"], - faq: [ - { question: "What should an architect's site hoarding QR code link to?", answer: "A project page showing similar completed work in the same sector — residential, commercial, or heritage — converts browsers into inquirers most effectively." }, - { question: "Can I use QR codes in architectural proposal documents?", answer: "Yes. A QR code linking to a 3D walkthrough or specification video in a printed proposal significantly increases perceived quality and engagement." }, - { question: "How do QR codes help with public planning consultations?", answer: "A QR code on planning notices allows local residents to access consultation documents, submit feedback, and attend virtual Q&A sessions without searching online." } - ], - placementTips: [ - "Apply QR to all site hoardings at pedestrian eye level with a project preview prompt", - "Include QR codes inside proposal covers linking to CGI animations or project films", - "Print on award submission folders and press kits with a portfolio link" - ] - }, - { - slug: "hair-salons", - name: "Hair Salons", - title: "QR Codes for Hair Salons", - metaTitle: "QR Codes for Hair Salons: Rebook Clients and Collect More Reviews", - metaDescription: "Help hair salons use dynamic QR codes for rebooking, style lookbooks, WiFi access, and review collection to retain clients and attract new ones.", - headline: "QR Codes for Hair Salons: Every Client Should Leave With a Next Appointment", - subheadline: "From WiFi access to rebooking links, dynamic QR codes keep clients connected to your salon between visits.", - heroImage: "/marketing/industries/hair-salons.png", - statistics: [ - { value: "70%", label: "of salon clients who rebook do so within 6 weeks of their last visit" }, - { value: "88%", label: "of new salon clients check reviews before booking for the first time" }, - { value: "3x", label: "More repeat bookings when clients leave with a rebook QR card" } - ], - benefits: [ - { title: "Frictionless Rebooking", description: "A QR code on your appointment card links clients straight to your booking calendar before they've even left the chair." }, - { title: "Style Lookbook Access", description: "Display a QR code at stations linking to your Instagram or a curated gallery so clients can browse styles during their appointment." }, - { title: "WiFi Without Passwords", description: "A framed WiFi QR code at reception removes the awkward password conversation and improves the client experience instantly." } - ], - useCases: [ - "Appointment reminder cards with a rebook QR code", - "Reception desk WiFi QR code display", - "Mirror or station QR codes linking to style lookbook or Instagram", - "Post-visit review request QR on receipts or follow-up cards", - "Referral cards with a 'Give a friend 10% off' QR link" - ], - tools: ["wifi-qr-code", "url-qr-code", "instagram-qr-code"], - faq: [ - { question: "What QR codes work best for hair salons?", answer: "WiFi QR codes at reception and rebooking links on appointment cards are the two most impactful placements. Both improve the client experience directly." }, - { question: "Should I link my QR code to Instagram or my booking platform?", answer: "Use your QR code for your booking platform when the goal is rebooking. Reserve Instagram QR codes for style inspiration at the styling station." }, - { question: "How do QR codes help with salon referrals?", answer: "A referral card with a QR code linking to a discount for a friend makes it easy for satisfied clients to share your salon without needing to remember your details." } - ], - placementTips: [ - "Frame a WiFi QR code card on the reception desk or entry table", - "Print rebook QR codes on the back of every appointment card", - "Place style lookbook QR codes at each styling station mirror" - ] - }, - { - slug: "hostels", - name: "Hostels", - title: "QR Codes for Hostels", - metaTitle: "QR Codes for Hostels: Simplify Check-In and Delight Budget Travelers", - metaDescription: "Help hostels use QR codes for WiFi access, local area guides, check-in instructions, tour bookings, and review collection.", - headline: "QR Codes for Hostels: Give Every Guest Everything They Need the Moment They Arrive", - subheadline: "WiFi, local tips, tour bookings, and house rules — all in one scan. No printed guides. No repeated questions at reception.", - heroImage: "/marketing/industries/hostels.png", - statistics: [ - { value: "92%", label: "of hostel guests check WiFi details within minutes of arrival" }, - { value: "3x", label: "Fewer front desk interruptions when digital guest guides are QR-accessible" }, - { value: "78%", label: "of backpacker travelers discover activities through hostel recommendations" } - ], - benefits: [ - { title: "Self-Service Check-In", description: "A QR code at the entrance links guests to check-in instructions, room assignments, and house rules without queue time at reception." }, - { title: "Local Area Partner Revenue", description: "Link a local guide QR code to partner tour operators, restaurants, and activities — each click is a potential affiliate or commission booking." }, - { title: "Review Collection at Checkout", description: "A QR card left on every bed or in the common room prompts departing guests to leave a review before they even leave the building." } - ], - useCases: [ - "Dorm room WiFi QR code framed on the wall", - "Reception desk local area guide QR linking to activities and restaurants", - "Check-in instruction QR on entry door for self-check-in properties", - "Common room tour booking QR codes with partner operators", - "Checkout review request QR on thank-you card or whiteboard" - ], - tools: ["wifi-qr-code", "url-qr-code", "pdf-qr-code"], - faq: [ - { question: "What is the most valuable QR code placement in a hostel?", answer: "A WiFi QR code in every dorm room eliminates the most common guest question and removes the need to share passwords repeatedly." }, - { question: "Can I use QR codes to promote partner tours and activities?", answer: "Yes. A local guide QR code linking to vetted partner experiences turns guest interest into bookings — and can generate affiliate income for your hostel." }, - { question: "How do QR codes help with self-check-in hostels?", answer: "A QR code at the entrance linking to a step-by-step check-in guide, lockbox instructions, and room details allows fully unattended arrival with no staff required." } - ], - placementTips: [ - "Frame WiFi QR codes next to each set of bunk beds in dorm rooms", - "Post local guide QR codes in the common room, kitchen, and corridor noticeboards", - "Leave checkout review QR cards on beds during daily room refresh" - ] - }, - { - slug: "crossfit", - name: "CrossFit Gyms", - title: "QR Codes for CrossFit Gyms", - metaTitle: "QR Codes for CrossFit Gyms: Fill Classes and Build Community", - metaDescription: "Help CrossFit gyms and boxes use QR codes for free trial bookings, WOD tracking, member referrals, and competition sign-ups.", - headline: "QR Codes for CrossFit Gyms: Every Workout Should Build the Community, Not Just the Athletes", - subheadline: "Free trial sign-ups, WOD results, member referrals, and competition registrations — all accessible from a single scan on your box wall.", - heroImage: "/marketing/industries/crossfit.png", - statistics: [ - { value: "75%", label: "of CrossFit members joined after a free trial or friend referral" }, - { value: "4x", label: "Higher free trial conversion from flyers with QR booking links" }, - { value: "85%", label: "of CrossFit members follow their box on social media" } - ], - benefits: [ - { title: "Free Trial on the Spot", description: "A QR code on your exterior sign or flyer books a free trial class in under a minute — perfect for people walking past the box." }, - { title: "Member Referral Tracking", description: "Give each member a unique referral QR code. When friends scan and sign up, you know exactly who to reward." }, - { title: "WOD and Programming Access", description: "Link a wall-mounted QR code to daily programming, tracking sheets, or a private member app for easy in-box access." } - ], - useCases: [ - "Exterior sign QR code for free trial class booking", - "Member referral cards with unique per-member QR codes", - "Box whiteboard or wall QR linking to daily WOD and programming", - "Competition sign-up QR codes posted in the gym", - "Merchandise and apparel order QR code for member purchasing" - ], - tools: ["url-qr-code", "instagram-qr-code", "youtube-qr-code"], - faq: [ - { question: "What should a CrossFit box's QR code link to?", answer: "A free trial class booking page converts best for new member acquisition. For existing members, link to daily programming or the member portal." }, - { question: "How do I track which members refer the most new clients?", answer: "Create a unique dynamic QR code for each member referral card. QR Master's analytics show scans and conversions per code." }, - { question: "Can QR codes be used inside the CrossFit box?", answer: "Yes. Wall-mounted QR codes linking to daily WOD videos, lift technique tutorials, or scaling options are popular in well-run boxes." } - ], - placementTips: [ - "Apply QR free trial code to exterior window or A-frame sign facing foot traffic", - "Print member referral QR cards to hand out at milestone workouts and events", - "Mount a durable QR code near the whiteboard linking to programming and tracking" - ] - }, - { - slug: "sports-bars", - name: "Sports Bars", - title: "QR Codes for Sports Bars", - metaTitle: "QR Codes for Sports Bars: Digital Menus, Events, and Table Ordering", - metaDescription: "Help sports bars use QR codes for digital drinks menus, event schedules, table ordering, loyalty programs, and review collection.", - headline: "QR Codes for Sports Bars: Keep the Game on the Screen and the Orders Moving", - subheadline: "Digital menus, event schedules, and group booking links — scannable from every table so your staff can focus on service.", - heroImage: "/marketing/industries/sports-bars.png", - statistics: [ - { value: "42%", label: "Increase in drinks orders when digital menus include promotional items" }, - { value: "3x", label: "More event pre-bookings when game schedules are QR-accessible" }, - { value: "68%", label: "of sports bar regulars book big game seats in advance" } - ], - benefits: [ - { title: "Dynamic Drinks Menu", description: "Update daily specials, cocktail promotions, and game-day offers instantly without reprinting laminated menus on every table." }, - { title: "Event and Game Schedule", description: "A QR code linking to your upcoming fixtures list and table reservation form converts curious visitors into confirmed bookings." }, - { title: "Group Booking Engine", description: "Large groups scan once and access your group booking form, function room details, and set menu options without waiting for staff." } - ], - useCases: [ - "Table QR codes linking to digital drinks and food menu", - "Bar top and entrance signage with upcoming fixtures and booking link", - "Group booking QR codes on function room brochures", - "Loyalty program QR codes for scan-to-earn drink stamps", - "Post-event review request QR on receipts and closing announcements" - ], - tools: ["url-qr-code", "wifi-qr-code", "facebook-qr-code"], - faq: [ - { question: "What QR code placement drives the most revenue in a sports bar?", answer: "Table QR menus with promoted specials consistently increase average order values. Add a fixtures calendar QR at the entrance to drive advance bookings." }, - { question: "Can I update my drinks specials on the QR menu without reprinting?", answer: "Yes. A dynamic QR code lets you change the destination URL — point it to an updated specials page before every match day with no new print materials." }, - { question: "How do QR codes help with group bookings?", answer: "A dedicated group booking QR on your function brochures eliminates phone calls. Groups scan, see availability and packages, and submit a booking request instantly." } - ], - placementTips: [ - "Place QR table tents at every table and bar stool station", - "Post a large fixtures and booking QR poster near the entrance and main screen", - "Include group booking QR on every paper napkin or function inquiry card" - ] - }, - { - slug: "laundromats", - name: "Laundromats", - title: "QR Codes for Laundromats", - metaTitle: "QR Codes for Laundromats: Machine Instructions, WiFi, and Loyalty Programs", - metaDescription: "Help laundromats use QR codes for machine instructions, WiFi access, loyalty programs, maintenance reporting, and customer reviews.", - headline: "QR Codes for Laundromats: Make Waiting Time Work for Your Business", - subheadline: "Customers spend 45–90 minutes in your laundromat. QR codes on every machine and wall turn that dwell time into reviews, loyalty sign-ups, and referrals.", - heroImage: "/marketing/industries/laundromats.png", - statistics: [ - { value: "45 min", label: "Average customer dwell time — highest of any retail category" }, - { value: "3x", label: "More loyalty sign-ups from in-venue QR codes vs external campaigns" }, - { value: "60%", label: "of laundromat customers return weekly or more" } - ], - benefits: [ - { title: "Machine Instructions That Never Go Missing", description: "A QR code on every machine links to the correct video or PDF guide so customers help themselves and staff handle fewer interruptions." }, - { title: "Loyalty Program Enrollment", description: "Long dwell times make laundromats one of the highest-converting venues for QR-based loyalty sign-ups — customers have nothing but time." }, - { title: "Fault Reporting Without Staff", description: "A QR code linking to a simple fault report form on out-of-order or underperforming machines keeps maintenance up to date without relying on verbal reports." } - ], - useCases: [ - "Machine instruction QR codes linking to video guides per model", - "WiFi QR code displayed at the entrance and seating area", - "Loyalty program enrollment QR codes on posters and table cards", - "Fault reporting QR on every machine for maintenance tracking", - "Review request QR displayed near exit and on receipts" - ], - tools: ["wifi-qr-code", "url-qr-code", "youtube-qr-code"], - faq: [ - { question: "What is the best QR code use case for a laundromat?", answer: "Machine instruction QR codes reduce staff interruptions most. WiFi QR codes and loyalty program sign-ups are the next most valuable for customer experience and retention." }, - { question: "Can QR codes help with machine maintenance?", answer: "Yes. A fault reporting QR on every machine creates a digital paper trail for maintenance issues — faster to act on than verbal reports and useful for warranty claims." }, - { question: "How do I grow my laundromat loyalty program with QR codes?", answer: "Place QR enrollment codes at eye level on every machine and at the entrance. Customers waiting for a cycle are captive — conversion rates in laundromats are unusually high." } - ], - placementTips: [ - "Apply QR instruction stickers to the front panel of every washer and dryer", - "Frame a WiFi QR code at the entrance and seating area", - "Post loyalty sign-up QR codes at the detergent vending machine and folding tables" - ] - }, - { - slug: "aquariums", - name: "Aquariums", - title: "QR Codes for Aquariums", - metaTitle: "QR Codes for Aquariums: Interactive Exhibits and Visitor Engagement", - metaDescription: "Help aquariums use QR codes to deliver species information, audio guides, feeding schedules, ticketing, and membership sign-ups to visitors.", - headline: "QR Codes for Aquariums: Every Tank Should Tell a Story", - subheadline: "Species info, feeding times, audio guides, and conservation content — all accessible from a single scan next to every exhibit.", - heroImage: "/marketing/industries/aquariums.png", - statistics: [ - { value: "78%", label: "of aquarium visitors want more information about the species they see" }, - { value: "4x", label: "Longer exhibit engagement when interactive QR content is available" }, - { value: "35%", label: "of aquarium memberships are purchased after a positive first visit" } - ], - benefits: [ - { title: "Interactive Species Information", description: "Replace static plaques with QR codes linking to rich species profiles, video content, and conservation stories accessible on any smartphone." }, - { title: "Audio Guide Access", description: "A QR code near each exhibit entrance delivers a narrated audio guide without equipment rental desks or app downloads." }, - { title: "Membership Conversion on Site", description: "A QR code at the exit links directly to membership purchase — converting engaged visitors at the moment of peak enthusiasm." } - ], - useCases: [ - "Exhibit QR codes linking to species profiles and video content", - "Audio guide QR codes at each zone entrance", - "Feeding schedule QR codes at high-interest tanks", - "Membership purchase QR code at exit and gift shop", - "Conservation program donation QR codes on campaign signage" - ], - tools: ["url-qr-code", "youtube-qr-code", "pdf-qr-code"], - faq: [ - { question: "How do QR codes improve the aquarium visitor experience?", answer: "QR codes next to tanks deliver species details, conservation context, and feeding times on demand — far richer than static plaques and appreciated by curious visitors of all ages." }, - { question: "Can QR codes replace printed audio guide equipment?", answer: "Yes. A QR code linking to a web-based audio guide eliminates rental desk queues and equipment hygiene concerns while reducing operational costs." }, - { question: "How do I use QR codes to sell more memberships?", answer: "Place a membership QR code prominently at the exit and in the gift shop. Visitors who've just had a great experience are at peak conversion motivation." } - ], - placementTips: [ - "Mount QR codes at eye level next to every major tank and exhibit", - "Place audio guide QR codes at the entrance to each themed zone", - "Display membership QR codes prominently at the exit and gift shop checkout" - ] - }, - { - slug: "gift-shops", - name: "Gift Shops", - title: "QR Codes for Gift Shops", - metaTitle: "QR Codes for Gift Shops: Product Stories, Reviews, and Reorder Links", - metaDescription: "Help gift shops use QR codes on product tags, packaging, and displays to share product stories, collect reviews, and enable easy reordering.", - headline: "QR Codes for Gift Shops: Every Product Tag Should Be a Story", - subheadline: "Turn packaging and price tags into interactive experiences with QR codes that share provenance, inspire gifting ideas, and make reordering effortless.", - heroImage: "/marketing/industries/gift-shops.png", - statistics: [ - { value: "64%", label: "of gift buyers research product provenance before purchasing" }, - { value: "3x", label: "Higher review rates from QR-coded thank-you inserts vs email follow-ups" }, - { value: "45%", label: "of gift shop repeat purchases are driven by online reorder convenience" } - ], - benefits: [ - { title: "Product Story Tags", description: "A QR code on product tags links to the maker's story, ingredients, or craftsmanship details — the context that turns browsers into buyers." }, - { title: "Easy Reordering", description: "A QR code on packaging inserts links directly to the product page so gift recipients can reorder without searching." }, - { title: "Seasonal Collection Updates", description: "Dynamic QR codes on seasonal displays update to new collection pages without printing new signs for every rotation." } - ], - useCases: [ - "Product hang tags with QR codes linking to maker stories and provenance", - "Packaging inserts with reorder and 'discover more' QR codes", - "In-store display QR codes linking to full collection pages", - "Gift receipt inserts with an exchange or reorder QR link", - "Social follow QR codes at point of sale for Instagram and newsletter" - ], - tools: ["url-qr-code", "instagram-qr-code", "facebook-qr-code"], - faq: [ - { question: "What should a gift shop product tag QR code link to?", answer: "A product detail page with the story behind the item — maker, materials, care instructions, and related products. Context sells gifts more than price." }, - { question: "How do QR codes help with post-purchase retention?", answer: "An insert in every bag with a QR code linking to your newsletter sign-up, Instagram, or reorder page converts one-time buyers into repeat customers." }, - { question: "Can I use QR codes for seasonal promotions without reprinting signs?", answer: "Yes. Dynamic QR codes on in-store displays update to new collection pages or seasonal offers without new print materials — swap the content, not the sign." } - ], - placementTips: [ - "Print QR codes on product hang tags alongside the product name and price", - "Include a QR insert in every shopping bag or gift box", - "Place a social follow QR code at the register for post-purchase engagement" - ] - }, - { - slug: "bike-shops", - name: "Bike Shops", - title: "QR Codes for Bike Shops", - metaTitle: "QR Codes for Bike Shops: Service Bookings, Trail Maps, and Product Info", - metaDescription: "Help bike shops use QR codes for service bookings, trail guide downloads, product manuals, and post-repair review collection.", - headline: "QR Codes for Bike Shops: From the Workshop to the Trail", - subheadline: "Service booking links, trail maps, and product guides — give cyclists the information they need exactly where they need it.", - heroImage: "/marketing/industries/bike-shops.png", - statistics: [ - { value: "72%", label: "of cyclists research service options online before calling a shop" }, - { value: "3x", label: "Higher review rates from post-repair QR cards vs no follow-up" }, - { value: "65%", label: "of bike shop revenue comes from repeat service customers" } - ], - benefits: [ - { title: "Service Booking On Demand", description: "A QR code on your window or workshop board links directly to your online service booking form — no calls, no waiting." }, - { title: "Trail and Route Guides", description: "QR codes on local trail maps or in-store displays link to GPX files, elevation guides, and local club rides — adding value beyond the purchase." }, - { title: "Product Manual Access", description: "Replace lost paper manuals with QR codes on bike frames and component packaging linking to PDF guides and setup videos." } - ], - useCases: [ - "Window and workshop signage with a service booking QR code", - "Trail map displays linking to GPX downloads and route details", - "Post-service review request QR codes on repair invoices", - "Product hang tags linking to manuals, setup guides, and warranty registration", - "Local cycling event and club ride promotion via QR posters" - ], - tools: ["url-qr-code", "pdf-qr-code", "youtube-qr-code"], - faq: [ - { question: "What should a bike shop QR code link to?", answer: "A service booking form is the highest-converting destination. Trail guides and route maps are valuable for community building and in-store dwell time." }, - { question: "Can I add QR codes to bikes I've serviced?", answer: "Yes. A small QR sticker with the service date and a rebooking link on the frame or seatpost is a subtle but effective retention tool." }, - { question: "How do QR codes help sell accessories and components?", answer: "A QR code on component displays linking to compatibility guides, installation videos, and compatible model lists helps customers self-qualify purchases without staff intervention." } - ], - placementTips: [ - "Post a service booking QR code on the shop window and workshop entrance", - "Apply small QR rebooking stickers to frames after every completed service", - "Display trail guide QR codes next to local maps and ride planning resources" - ] - }, - { - slug: "ice-cream-shops", - name: "Ice Cream Shops", - title: "QR Codes for Ice Cream Shops", - metaTitle: "QR Codes for Ice Cream Shops: Daily Flavors, Loyalty, and Social Follows", - metaDescription: "Help ice cream shops use QR codes for daily flavor menus, loyalty program sign-ups, social media follows, and seasonal promotion campaigns.", - headline: "QR Codes for Ice Cream Shops: Let Customers Scan Today's Flavors Before They Queue", - subheadline: "Daily flavor menus, loyalty stamps, and social follows — all from a single scannable QR code on your window or counter.", - heroImage: "/marketing/industries/ice-cream-shops.png", - statistics: [ - { value: "58%", label: "of ice cream customers decide their order before joining the queue" }, - { value: "4x", label: "More social follows from in-store QR codes vs word-of-mouth alone" }, - { value: "45%", label: "of specialty ice cream customers are loyal to one shop" } - ], - benefits: [ - { title: "Daily Flavor Board Without a Chalkboard", description: "A dynamic QR code on your window links to today's flavor lineup — update it from your phone each morning before opening." }, - { title: "Loyalty Without the Card", description: "A QR code linking to a digital loyalty program eliminates lost stamp cards and lets customers track their progress on their phone." }, - { title: "Social Growth on Every Visit", description: "A framed Instagram QR code at the counter turns every photo-worthy visit into a new follower." } - ], - useCases: [ - "Window QR code linking to today's flavor menu", - "Counter Instagram QR code for social follows and user-generated content", - "Digital loyalty program sign-up QR on receipts and in-store signage", - "Seasonal special QR codes linking to limited edition flavor announcements", - "Review request QR on cups, bags, or receipts" - ], - tools: ["url-qr-code", "instagram-qr-code", "facebook-qr-code"], - faq: [ - { question: "What is the best QR code use for an ice cream shop?", answer: "A daily flavor menu QR on your window is the most immediately practical — it reduces queue confusion and lets customers plan before they arrive." }, - { question: "Can a QR code help grow my ice cream shop's Instagram?", answer: "Yes. An Instagram QR code at the counter next to a sign like 'Tag us and get a free scoop' drives follows and user-generated content simultaneously." }, - { question: "How do digital loyalty QR codes work for ice cream shops?", answer: "Link the QR code to your loyalty app or a simple stamp card system. Customers scan on each visit to earn rewards — no physical card to lose." } - ], - placementTips: [ - "Post a daily flavor QR code on the shop window at eye level before opening", - "Frame an Instagram QR code at the point of sale or selfie wall", - "Print loyalty QR codes on the bottom of every receipt" - ] - }, - { - slug: "delis", - name: "Delis", - title: "QR Codes for Delis", - metaTitle: "QR Codes for Delis: Daily Specials, Online Ordering, and Catering Inquiries", - metaDescription: "Help delis and specialty food shops use QR codes for daily specials menus, pre-order links, catering inquiries, and loyalty programs.", - headline: "QR Codes for Delis: Tell Customers What's Fresh Today Before They Walk In", - subheadline: "Daily specials, pre-order links, and catering menus — all accessible from a single QR code on your window or counter.", - heroImage: "/marketing/industries/delis.png", - statistics: [ - { value: "62%", label: "of deli customers decide on a special before arriving at the counter" }, - { value: "3x", label: "Higher catering inquiry rate from window QR menus vs phone-only displays" }, - { value: "55%", label: "of deli regulars visit weekly and prefer to pre-order" } - ], - benefits: [ - { title: "Daily Specials Without a Sandwich Board", description: "Update your specials page from your phone each morning and your window QR code always shows today's menu." }, - { title: "Catering Inquiry Capture", description: "A QR code linking to your catering menu and inquiry form converts curious office managers and event planners into leads." }, - { title: "Pre-Order and Skip the Queue", description: "Link your QR code to an online pre-order system so regulars can pick up without waiting — improving throughput at peak times." } - ], - useCases: [ - "Window QR code linking to daily specials and pre-order form", - "Counter catering menu QR for office and event inquiries", - "Loyalty card QR for digital stamp collection", - "Provenance and maker story QR codes on artisan product labels", - "Review request QR on bags, wrapping, and receipts" - ], - tools: ["url-qr-code", "pdf-qr-code", "instagram-qr-code"], - faq: [ - { question: "What should a deli's window QR code link to?", answer: "A daily specials page updated each morning and a pre-order link. Customers who can plan ahead are more likely to commit to a purchase before they arrive." }, - { question: "How can QR codes help with catering sales?", answer: "A QR code linking to your catering menu and a simple inquiry form on your counter and website converts browsing office workers into catering clients." }, - { question: "Can QR codes replace printed menus in a deli?", answer: "For daily-changing specials, yes. A dynamic QR menu is always current, looks clean, and saves daily printing costs without sacrificing the handcrafted feel of a good deli." } - ], - placementTips: [ - "Post a daily specials QR code on the front window at eye level", - "Display a catering inquiry QR prominently on the counter and near artisan products", - "Print loyalty QR codes on every bag and receipt" - ] - }, - { - slug: "resorts", - name: "Resorts", - title: "QR Codes for Resorts", - metaTitle: "QR Codes for Resorts: Guest Guides, Activity Booking, and In-Room Services", - metaDescription: "Help resorts use QR codes for digital welcome guides, activity bookings, in-room service menus, WiFi access, and guest feedback collection.", - headline: "QR Codes for Resorts: Every Guest Touch Point Should Be Seamlessly Connected", - subheadline: "From arrival to checkout, dynamic QR codes deliver the right information and booking options exactly when guests need them.", - heroImage: "/marketing/industries/resorts.png", - statistics: [ - { value: "91%", label: "of resort guests consult in-room materials for activity and dining options" }, - { value: "4x", label: "More activity bookings when QR codes are placed at poolside and in rooms" }, - { value: "38%", label: "of resort reviews mention quality of information and ease of access" } - ], - benefits: [ - { title: "Paperless Guest Compendium", description: "Replace thick in-room binders with a single QR code on the bedside table linking to a digital guest guide — always current, never outdated." }, - { title: "Activity and Dining Upsells", description: "QR codes at the pool, spa, and reception desk linking to activity booking pages consistently increase ancillary revenue per guest." }, - { title: "Instant Feedback Collection", description: "A QR code on the checkout invoice captures feedback at departure — before the review motivation fades on the journey home." } - ], - useCases: [ - "In-room QR codes replacing printed guest compendiums", - "Pool and spa signage linking to activity and treatment bookings", - "WiFi QR codes framed at reception and in every room", - "Restaurant and bar QR menus at tables and poolside", - "Checkout feedback QR codes on invoice cards" - ], - tools: ["wifi-qr-code", "url-qr-code", "pdf-qr-code"], - faq: [ - { question: "What is the best QR code use case for a resort?", answer: "An in-room digital compendium QR code replacing the printed binder delivers the most operational savings and guest satisfaction improvement simultaneously." }, - { question: "How do QR codes increase resort ancillary revenue?", answer: "QR codes placed at high-dwell locations — pool loungers, spa waiting areas, restaurant tables — drive spontaneous activity and treatment bookings that guests wouldn't otherwise make." }, - { question: "Can QR codes be used for checkout feedback at resorts?", answer: "Yes. A QR code on the checkout invoice linking to a brief satisfaction survey captures feedback at the highest-motivation moment before guests disperse." } - ], - placementTips: [ - "Place in-room compendium QR codes on the bedside table and minibar area", - "Mount activity booking QR codes at pool entrances and spa reception", - "Include WiFi QR codes in every room — framed cards are most professional" - ] - }, - { - slug: "toy-stores", - name: "Toy Stores", - title: "QR Codes for Toy Stores", - metaTitle: "QR Codes for Toy Stores: Age Guides, Gift Ideas, and Assembly Instructions", - metaDescription: "Help toy stores use QR codes on displays and packaging to deliver age guides, gift recommendations, video demos, and assembly instructions.", - headline: "QR Codes for Toy Stores: Help Parents Find the Perfect Gift Without Asking Staff", - subheadline: "Age guides, video demos, and gift recommendation quizzes — QR codes on every display let parents self-serve and buy with confidence.", - heroImage: "/marketing/industries/toy-stores.png", - statistics: [ - { value: "76%", label: "of toy purchases are made by parents uncertain about age suitability" }, - { value: "3x", label: "Higher conversion when video demos are linked from product displays" }, - { value: "55%", label: "of toy store customers are gift buyers visiting without the recipient" } - ], - benefits: [ - { title: "Age Suitability Guides", description: "A QR code on display shelves links to age-by-age gift guides — removing the most common hesitation that prevents a purchase." }, - { title: "Video Demos That Sell", description: "Link product display QR codes to unboxing and play demonstration videos — letting the toy sell itself without staff involvement." }, - { title: "Assembly Instructions On Demand", description: "A QR code on packaging linking to step-by-step assembly videos reduces returns and post-purchase frustration." } - ], - useCases: [ - "Shelf and display QR codes linking to age guides and gift recommendations", - "Product packaging QR codes with video unboxings and demos", - "Assembly instruction QR codes replacing printed manuals", - "In-store gift quiz QR linking to curated gift recommendation tool", - "Post-purchase review QR codes on receipts and inserts" - ], - tools: ["url-qr-code", "youtube-qr-code", "pdf-qr-code"], - faq: [ - { question: "How do QR codes help sell more toys?", answer: "Video demonstrations linked from product displays are the most effective QR use case in toy retail — seeing a toy in action converts hesitant buyers faster than any product description." }, - { question: "Can QR codes reduce toy returns?", answer: "Yes. Assembly instruction QR codes linking to video guides reduce setup frustration, which is one of the most common reasons for returns of complex toys." }, - { question: "What QR content works best for gift buyers in toy stores?", answer: "Age-based gift guides and curated recommendation quizzes address the core anxiety of gift buyers who don't know the child well. These convert browsers into confident purchasers." } - ], - placementTips: [ - "Place QR age guide codes at eye level on every shelf section organized by age group", - "Apply video demo QR codes to the front of product display boxes", - "Include assembly instruction QR codes on packaging inserts and gift receipts" - ] - }, - { - slug: "sporting-goods", - name: "Sporting Goods Stores", - title: "QR Codes for Sporting Goods Stores", - metaTitle: "QR Codes for Sporting Goods Stores: Size Guides, Demos, and Expert Advice", - metaDescription: "Help sporting goods retailers use QR codes on displays and product tags to deliver size guides, video demos, expert reviews, and warranty registration.", - headline: "QR Codes for Sporting Goods Stores: Give Every Shopper Access to Expert Knowledge", - subheadline: "Size guides, fit advisors, and performance comparison videos — QR codes on every product let serious athletes self-qualify purchases without staff.", - heroImage: "/marketing/industries/sporting-goods.png", - statistics: [ - { value: "82%", label: "of sporting goods buyers research specifications before visiting a store" }, - { value: "4x", label: "Higher purchase confidence when size guides are QR-accessible in store" }, - { value: "60%", label: "of athletic equipment purchases involve a comparison with at least one competitor" } - ], - benefits: [ - { title: "In-Store Size and Fit Guides", description: "A QR code on shoe walls and apparel racks links to precise sizing guides, width charts, and fit recommendations — reducing returns and staff interruptions." }, - { title: "Performance Comparison Content", description: "Link display QR codes to product comparison videos and expert reviews so technically-minded shoppers get the depth they need without monopolizing staff time." }, - { title: "Warranty and Registration", description: "A QR code inside equipment packaging links directly to warranty registration, removing post-purchase friction and building a direct customer relationship." } - ], - useCases: [ - "Shoe and apparel wall QR codes linking to size guides and fit tools", - "Equipment display QR codes with performance comparison videos", - "Product packaging QR links to warranty registration pages", - "Clearance section QR codes linking to remaining size availability online", - "Club and team sales QR codes for bulk order inquiries" - ], - tools: ["url-qr-code", "youtube-qr-code", "pdf-qr-code"], - faq: [ - { question: "What sporting goods QR code placement drives the most sales?", answer: "Shoe wall size guide QR codes have the highest measurable impact — fit uncertainty is the number one reason athletic footwear purchases are abandoned in store." }, - { question: "Can QR codes help with team and club bulk orders?", answer: "Yes. A QR code on team equipment displays linking to a bulk order inquiry form captures club purchasing decisions that would otherwise require a sales call." }, - { question: "How do QR codes reduce sporting goods returns?", answer: "Size guide and fit advisor QR codes on apparel and footwear displays address the most common return reason. Customers who buy the right size don't return it." } - ], - placementTips: [ - "Apply QR size guide codes to shoe display walls at eye level per category", - "Place performance comparison QR codes on premium equipment shelf-edge labels", - "Include warranty registration QR codes on packaging inserts for all major equipment" - ] - }, -``` - ---- - -## Remaining Tier 2 (build after above) - -conferences, personal-trainers, music-schools, language-schools, seminars, marketing-agencies, nonprofits, musicians, sports-clubs, interior-designers, nutritionists, life-coaches, dance-schools, real-estate-developers, online-courses, childcare, recruitment-agencies - ---- - -## Hub Page Updates Needed - -Add new slugs to `/qr-code-for/page.tsx` under existing or new categories: - -### New category: "Fitness, Wellness & Active Services" -``` -pilates-studios, crossfit, massage-therapists, dog-trainers -``` - -### Extend "Food, Hospitality, and Guest Experience" -``` -ice-cream-shops, delis, resorts, vacation-rentals, hostels -``` - -### Extend "Services, Real Estate, and Lead Capture" -``` -plumbers, electricians, roofing-companies, moving-companies, cleaning-services, -auto-repair, landscaping, construction-companies, financial-advisors, architects -``` - -### Extend "Retail, Packaging, and Product Discovery" -``` -gift-shops, toy-stores, bike-shops, sporting-goods -``` - -### Extend "Education, Culture, and Public Spaces" -``` -escape-rooms, aquariums, tutors -``` - -### Add to "Services" or new "Hospitality & Lifestyle" -``` -hair-salons, wedding-venues, hostels, sports-bars, laundromats -``` - ---- - -## CTA Map (add to `[industry]/page.tsx`) - -```ts -// industryPrimaryCtas additions -"plumbers": { href: "/tools/call-qr-code-generator", label: "Create a Call QR Code for Your Van" }, -"roofing-companies": { href: "/tools/url-qr-code", label: "Create a Yard Sign QR Code" }, -"electricians": { href: "/tools/call-qr-code-generator", label: "Create a Call QR Code" }, -"moving-companies": { href: "/qr-code-tracking", label: "Track Flyer and Truck QR Scans" }, -"financial-advisors": { href: "/tools/vcard-qr-code", label: "Create a vCard QR Code" }, -"construction-companies": { href: "/qr-code-tracking", label: "Track Site Hoarding QR Scans" }, -"cleaning-services": { href: "/tools/url-qr-code", label: "Create a Booking QR Code" }, -"auto-repair": { href: "/tools/url-qr-code", label: "Create a Service Booking QR Code" }, -"landscaping": { href: "/tools/url-qr-code", label: "Create a Yard Sign QR Code" }, -"tutors": { href: "/tools/url-qr-code", label: "Create a Booking QR Code" }, -"dog-trainers": { href: "/tools/url-qr-code", label: "Create a Class Booking QR Code" }, -"vacation-rentals": { href: "/tools/wifi-qr-code", label: "Create a WiFi QR Code" }, -"massage-therapists": { href: "/tools/url-qr-code", label: "Create a Rebooking QR Code" }, -"escape-rooms": { href: "/tools/url-qr-code", label: "Create a Booking QR Code" }, -"pilates-studios": { href: "/tools/url-qr-code", label: "Create a Free Trial Booking QR Code" }, -"wedding-venues": { href: "/tools/url-qr-code", label: "Create a Tour Booking QR Code" }, -"architects": { href: "/tools/vcard-qr-code", label: "Create a Portfolio vCard QR Code" }, -"hair-salons": { href: "/tools/wifi-qr-code", label: "Create a Salon WiFi QR Code" }, -"hostels": { href: "/tools/wifi-qr-code", label: "Create a Hostel WiFi QR Code" }, -"crossfit": { href: "/tools/url-qr-code", label: "Create a Free Trial QR Code" }, -"sports-bars": { href: "/tools/url-qr-code", label: "Create a Menu QR Code" }, -"laundromats": { href: "/tools/wifi-qr-code", label: "Create a WiFi QR Code" }, -"aquariums": { href: "/tools/url-qr-code", label: "Create an Exhibit QR Code" }, -"gift-shops": { href: "/tools/url-qr-code", label: "Create a Product QR Code" }, -"bike-shops": { href: "/tools/url-qr-code", label: "Create a Service Booking QR Code" }, -"ice-cream-shops": { href: "/tools/url-qr-code", label: "Create a Daily Menu QR Code" }, -"delis": { href: "/tools/url-qr-code", label: "Create a Daily Specials QR Code" }, -"resorts": { href: "/tools/wifi-qr-code", label: "Create a Resort WiFi QR Code" }, -"toy-stores": { href: "/tools/url-qr-code", label: "Create a Product Demo QR Code" }, -"sporting-goods": { href: "/tools/url-qr-code", label: "Create a Size Guide QR Code" }, -``` - ---- - -## Notes - -- `heroImage` paths follow pattern `/marketing/industries/[slug].png` — images need to be added to `/public/marketing/industries/` -- All `germanKeyword` fields omitted — add if German SEO pages are in scope -- `industryPages` export in `industry-pages.ts` should export `allIndustries` (check current export alias) +# Industry Pages — Batch 2 (30 Pages) + +Build order: High-CPC B2B first, then high-volume consumer services. + +All entries follow the `IndustryPage` type from `src/lib/industry-pages.ts`. + +--- + +## Build Order + +### Group A — High CPC, B2B Service Trades (build first) +1. plumbers +2. roofing-companies +3. electricians +4. moving-companies +5. financial-advisors +6. construction-companies +7. cleaning-services +8. auto-repair +9. landscaping +10. tutors +11. dog-trainers + +### Group B — High Volume, Low Competition, Consumer Services (build second) +12. vacation-rentals +13. massage-therapists +14. escape-rooms +15. pilates-studios +16. wedding-venues +17. architects +18. hair-salons +19. hostels +20. crossfit +21. sports-bars +22. laundromats +23. aquariums + +### Group C — Retail & Lifestyle (build third) +24. gift-shops +25. bike-shops +26. ice-cream-shops +27. delis +28. resorts +29. toy-stores +30. sporting-goods + +--- + +## Full Data + +```ts + { + slug: "plumbers", + name: "Plumbers", + title: "QR Codes for Plumbers", + metaTitle: "QR Codes for Plumbers: Win More Jobs from Flyers and Vans", + metaDescription: "Help plumbing businesses turn printed flyers, van graphics, and invoices into instant quote requests with dynamic QR codes and scan analytics.", + headline: "QR Codes for Plumbers: Turn Every Flyer and Van Into a Lead", + subheadline: "Let customers scan to request a quote, save your number, or leave a Google review — from any printed surface you already have.", + heroImage: "/marketing/industries/plumbers.png", + statistics: [ + { value: "68%", label: "of customers research tradespeople online before calling" }, + { value: "3x", label: "More quote requests from QR-coded flyers vs URL-only" }, + { value: "40%", label: "of reviews come from post-job follow-up prompts" } + ], + benefits: [ + { title: "Instant Quote Requests", description: "A scan on your van or flyer opens your contact form directly — no typing, no friction." }, + { title: "Review Collection on Autopilot", description: "Add a QR code to invoices linking straight to your Google review page and watch 5-star reviews accumulate." }, + { title: "Update Without Reprinting", description: "Changed your phone number or service area? Dynamic QR codes let you update the destination without reprinting a single flyer." } + ], + useCases: [ + "Van and vehicle graphics linking to a quote request form", + "Flyers and door drops with scannable contact or booking links", + "Invoices with a QR code to leave a Google review", + "Business cards linking to full service list and vCard", + "Job site signage driving local visibility and inquiries" + ], + tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], + faq: [ + { question: "What should a plumber's QR code link to?", answer: "A quote request form or a click-to-call page works best. Avoid linking to a generic homepage — make it one action." }, + { question: "Should I put a QR code on my work van?", answer: "Yes. Van graphics are one of the highest-ROI placements for tradespeople. A dynamic QR code lets you change the destination later without a new wrap." }, + { question: "Can I track how many leads come from my flyers?", answer: "Yes. Dynamic QR codes give you scan counts by date, device, and location so you can compare flyer drops and know which areas convert." } + ], + placementTips: [ + "Apply a sticker with QR code to the rear and side of your work van", + "Print on invoices and job completion cards next to the review request", + "Include on door-drop flyers with a clear call to action like 'Scan for a free quote'" + ] + }, + { + slug: "roofing-companies", + name: "Roofing Companies", + title: "QR Codes for Roofing Companies", + metaTitle: "QR Codes for Roofing Companies: More Leads from Every Printed Surface", + metaDescription: "Help roofing businesses convert truck graphics, yard signs, and flyers into qualified leads with dynamic QR codes that track every scan.", + headline: "QR Codes for Roofing Companies: Every Truck and Yard Sign Should Be Working for You", + subheadline: "Turn passive signage into active lead generation with scannable QR codes on vehicles, yard signs, and direct mail.", + heroImage: "/marketing/industries/roofing-companies.png", + statistics: [ + { value: "72%", label: "of homeowners get multiple quotes before choosing a roofer" }, + { value: "5x", label: "More inquiries from yard signs with QR codes vs phone number only" }, + { value: "60%", label: "of roofing leads start with an online search or referral" } + ], + benefits: [ + { title: "Yard Sign Lead Capture", description: "A QR code on every active job site yard sign turns neighbors into your next customers." }, + { title: "Trackable Direct Mail", description: "Know exactly which neighborhoods respond to your flyer drops with per-code scan analytics." }, + { title: "Dynamic Links", description: "Update your estimate form or seasonal offer without replacing yard signs or reprinting mailers." } + ], + useCases: [ + "Yard signs at active job sites linking to a free estimate form", + "Truck and trailer graphics with a scannable quote request", + "Direct mail campaigns with unique QR codes per neighborhood", + "Business cards with vCard and portfolio link", + "Post-job door hangers driving reviews and referrals" + ], + tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], + faq: [ + { question: "What should a roofing company QR code link to?", answer: "A free estimate request form is the highest-converting destination. Keep it short — name, address, and contact only." }, + { question: "How do I track which job site signs bring in the most leads?", answer: "Create one unique dynamic QR code per yard sign location. QR Master's analytics show scans per code so you know exactly which sites perform." }, + { question: "Can I use QR codes on seasonal storm-damage mailers?", answer: "Yes, and they're especially effective. A QR code linking to a storm damage assessment form converts better than a phone number alone." } + ], + placementTips: [ + "Place yard signs at every active job site with a 'Scan for a Free Estimate' prompt", + "Add to the rear of every truck and trailer with high visibility contrast", + "Include on door hangers left at neighboring properties after completing a job" + ] + }, + { + slug: "electricians", + name: "Electricians", + title: "QR Codes for Electricians", + metaTitle: "QR Codes for Electricians: Turn Van Graphics and Flyers Into Quote Requests", + metaDescription: "Help electrical contractors generate more leads from printed materials with dynamic QR codes for quote forms, reviews, and service bookings.", + headline: "QR Codes for Electricians: Make Your Printed Materials Work as Hard as You Do", + subheadline: "From van graphics to invoices, every surface is a lead generation opportunity when you add a dynamic QR code.", + heroImage: "/marketing/industries/electricians.png", + statistics: [ + { value: "74%", label: "of customers check online reviews before hiring an electrician" }, + { value: "2x", label: "More callbacks from flyers with QR codes vs phone-only" }, + { value: "50%", label: "of electrical jobs come from repeat customers and referrals" } + ], + benefits: [ + { title: "Frictionless Quote Requests", description: "Customers scan and land directly on your booking form — no searching, no typing, no lost business." }, + { title: "Professional First Impression", description: "QR-coded business cards and invoices signal a modern, trustworthy business to homeowners and property managers." }, + { title: "Google Review Acceleration", description: "A QR code on completion cards makes leaving a review a 10-second task, not a forgotten promise." } + ], + useCases: [ + "Van and vehicle signage with a quote request or contact link", + "Business cards linking to full service list and vCard", + "Invoices with a post-job review QR code", + "Flyers targeting landlords and property managers", + "Panel stickers linking to emergency contact or service info" + ], + tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], + faq: [ + { question: "What QR code placement works best for electricians?", answer: "Work vans are the highest-visibility surface. Pair with an invoice QR code linking to your Google review page for maximum impact." }, + { question: "Can I use different QR codes for residential vs commercial leads?", answer: "Yes. Create one code per campaign — one for residential flyers, one for commercial property management outreach — and track which converts better." }, + { question: "Should my QR code link to my website or a form?", answer: "A direct quote request form converts better than a homepage. Fewer clicks between the scan and a submitted lead means more jobs." } + ], + placementTips: [ + "Apply QR sticker to the rear of your van at eye level with a clear prompt", + "Print on completion certificates and invoices next to the review ask", + "Add to property management flyers targeting landlord portfolios" + ] + }, + { + slug: "moving-companies", + name: "Moving Companies", + title: "QR Codes for Moving Companies", + metaTitle: "QR Codes for Moving Companies: More Bookings from Trucks and Flyers", + metaDescription: "Help moving companies convert truck graphics, flyers, and partnerships into instant booking requests with dynamic QR codes and scan analytics.", + headline: "QR Codes for Moving Companies: Turn Your Fleet Into a Booking Machine", + subheadline: "Every truck on the road and every flyer in a building lobby is a chance to capture the next move — if you make it scannable.", + heroImage: "/marketing/industries/moving-companies.png", + statistics: [ + { value: "80%", label: "of people moving research removalists online first" }, + { value: "4x", label: "Booking rate from QR flyers in apartment lobbies vs cold outreach" }, + { value: "65%", label: "of moves are booked within 48 hours of first contact" } + ], + benefits: [ + { title: "Fleet-as-Advertising", description: "A dynamic QR code on every truck turns your fleet into a 24/7 booking channel across every neighborhood you serve." }, + { title: "Lobby and Building Partnerships", description: "Leave flyers with QR codes in apartment lobbies, storage facilities, and real estate offices where moving intent is highest." }, + { title: "Seasonal Campaign Flexibility", description: "Update your QR destination to a summer promotion or student move special without reprinting a single flyer." } + ], + useCases: [ + "Truck livery QR codes linking directly to an instant quote form", + "Apartment lobby flyers with a booking or price estimate link", + "Partnerships with real estate agents — QR cards for new homebuyers", + "Post-move review request QR codes on thank-you cards", + "Storage facility referral flyers with unique tracking codes" + ], + tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], + faq: [ + { question: "Where should I place QR codes for maximum bookings?", answer: "Apartment building lobbies and your truck fleet are the two highest-intent placements. People in lobbies are often planning a move." }, + { question: "Can I track which locations send the most bookings?", answer: "Yes. Create a unique dynamic QR code for each placement — one per building, one per truck — and compare scan data in QR Master's dashboard." }, + { question: "What should the QR code link to?", answer: "An instant quote calculator or a simple booking form. The faster you get the customer to a price, the lower the drop-off rate." } + ], + placementTips: [ + "Apply to the rear doors and sides of every moving truck in your fleet", + "Leave A5 flyers with QR codes in apartment building lobbies and notice boards", + "Give QR-coded referral cards to real estate agents and property managers" + ] + }, + { + slug: "financial-advisors", + name: "Financial Advisors", + title: "QR Codes for Financial Advisors", + metaTitle: "QR Codes for Financial Advisors: Share Credentials and Book Consultations", + metaDescription: "Help financial advisors modernize business card exchanges, seminar follow-ups, and referral marketing with dynamic QR codes that track engagement.", + headline: "QR Codes for Financial Advisors: Every Handshake Should Start a Digital Relationship", + subheadline: "From seminar handouts to business cards, dynamic QR codes make sharing credentials, booking calls, and collecting leads effortless.", + heroImage: "/marketing/industries/financial-advisors.png", + statistics: [ + { value: "83%", label: "of high-net-worth clients research their advisor online before meeting" }, + { value: "3x", label: "Higher follow-up rate from seminar QR codes vs business card alone" }, + { value: "70%", label: "of new advisory clients come from referrals" } + ], + benefits: [ + { title: "Professional Digital Handshake", description: "A vCard QR code on your business card lets prospects save your full contact details and LinkedIn in one scan." }, + { title: "Seminar Lead Capture", description: "Collect attendee contact details or drive consultation bookings from printed handouts and presentation slides." }, + { title: "Referral Tracking", description: "Give each referring partner a unique QR code so you know exactly which relationships drive the most business." } + ], + useCases: [ + "Business cards with vCard QR code and booking link", + "Seminar and workshop handouts linking to a consultation form", + "Referral partner cards with unique tracking codes per partner", + "Printed guides and whitepapers with a download or follow-up link", + "Office signage linking to client portal or contact page" + ], + tools: ["vcard-qr-code", "url-qr-code", "email-qr-code"], + faq: [ + { question: "What should a financial advisor's QR code link to?", answer: "A calendar booking link for a free consultation is the highest-converting destination. Pair with a vCard QR on the same business card." }, + { question: "Are QR codes appropriate for a high-trust profession like finance?", answer: "Yes. A clean, professionally designed QR code signals that you're modern and efficient — qualities clients want in an advisor." }, + { question: "Can I track which referral sources generate the most leads?", answer: "Yes. Create a unique dynamic QR code for each referral partner. QR Master shows scans per code so you know exactly where leads come from." } + ], + placementTips: [ + "Print on business cards with a 'Book a free call' prompt alongside the QR code", + "Include in seminar slide decks and printed handouts at the top and bottom", + "Add to direct mail campaigns targeting high-net-worth residential addresses" + ] + }, + { + slug: "construction-companies", + name: "Construction Companies", + title: "QR Codes for Construction Companies", + metaTitle: "QR Codes for Construction Companies: Site Signage That Generates Leads", + metaDescription: "Help construction firms turn site hoardings, vehicle graphics, and project brochures into measurable lead generation assets with dynamic QR codes.", + headline: "QR Codes for Construction Companies: Your Site Hoarding Should Be Selling", + subheadline: "Turn every project site, company vehicle, and brochure into an active lead channel with scannable dynamic QR codes.", + heroImage: "/marketing/industries/construction-companies.png", + statistics: [ + { value: "60%", label: "of construction leads start with an online search for local contractors" }, + { value: "8x", label: "ROI on site hoarding QR codes vs static contact details alone" }, + { value: "55%", label: "of project inquiries come from neighbors noticing active build sites" } + ], + benefits: [ + { title: "Site Hoarding That Converts", description: "A QR code on every hoarding drives neighbors and passersby to your project portfolio, estimate form, or contact page." }, + { title: "Fleet and Equipment Visibility", description: "Branded QR codes on plant and vehicles generate awareness and inquiries across every area you work in." }, + { title: "Proposal and Brochure Tracking", description: "Know which clients engaged with your PDF proposal by using a unique QR code per prospect." } + ], + useCases: [ + "Site hoarding and boarding QR codes linking to company portfolio", + "Vehicle and plant graphics with scannable quote request links", + "Project brochures with unique tracking QR codes per prospect", + "Safety signage linking to RAMS documents and accreditations", + "Subcontractor and supply chain recruitment via QR-coded adverts" + ], + tools: ["url-qr-code", "pdf-qr-code", "vcard-qr-code"], + faq: [ + { question: "What should a construction company's site hoarding QR code link to?", answer: "Your best project portfolio page or a simple inquiry form. Neighbors want to see your work quality before they call." }, + { question: "Can QR codes be used for health and safety documentation?", answer: "Yes. A QR code linking to RAMS, COSHH sheets, or site induction materials saves paper and keeps documents current without reprinting." }, + { question: "How do I track which sites generate the most inquiries?", answer: "Create a unique dynamic QR code per site hoarding. QR Master's scan analytics show date, device, and location for each code." } + ], + placementTips: [ + "Place prominently on site hoarding at pedestrian eye level with a clear CTA", + "Apply to the rear and sides of all company vehicles and plant equipment", + "Include in tender documents and proposals with a unique code per submission" + ] + }, + { + slug: "cleaning-services", + name: "Cleaning Services", + title: "QR Codes for Cleaning Services", + metaTitle: "QR Codes for Cleaning Services: Bookings from Flyers and Vehicle Signage", + metaDescription: "Help cleaning businesses turn door drops, vehicle graphics, and referral cards into instant online bookings with dynamic QR codes.", + headline: "QR Codes for Cleaning Services: Every Door Drop Should Book a Job", + subheadline: "Turn flyers, van graphics, and completion cards into a 24/7 booking engine with one scannable QR code.", + heroImage: "/marketing/industries/cleaning-services.png", + statistics: [ + { value: "65%", label: "of cleaning clients book based on neighbor recommendations" }, + { value: "3x", label: "Booking rate from door drops with QR codes vs phone-only flyers" }, + { value: "45%", label: "of recurring cleaning clients came from a single positive review" } + ], + benefits: [ + { title: "Instant Online Booking", description: "A scan on your flyer takes customers straight to your booking form — removing every barrier between interest and conversion." }, + { title: "Neighborhood Expansion", description: "Leave door-drop cards after completing a job. Neighbors who see your branded vehicle are already warm prospects." }, + { title: "Review Generation", description: "A QR code on completion cards linking to your Google review page turns satisfied customers into your best marketing." } + ], + useCases: [ + "Door-drop flyers with a 'Scan to book your first clean' QR code", + "Van graphics with a scannable booking or contact link", + "Completion cards left after each job with a review QR code", + "Referral cards for existing clients to share with neighbors", + "Building lobby flyers targeting apartment and office managers" + ], + tools: ["url-qr-code", "call-qr-code-generator", "email-qr-code"], + faq: [ + { question: "What should a cleaning company's QR code link to?", answer: "An online booking form or instant quote calculator. The fewer steps between scanning and booking, the higher your conversion rate." }, + { question: "Should I use different QR codes for different areas?", answer: "Yes. Create a unique code per neighborhood and track scan data to identify which areas respond best to your flyers." }, + { question: "How do QR codes help with recurring bookings?", answer: "A follow-up card left after each clean with a QR code to rebook or refer a friend increases both retention and word-of-mouth." } + ], + placementTips: [ + "Door-drop cards in residential streets where you regularly work", + "Van rear and side panels with a high-contrast booking prompt", + "Completion cards placed on kitchen counters or front doors after each job" + ] + }, + { + slug: "auto-repair", + name: "Auto Repair Shops", + title: "QR Codes for Auto Repair Shops", + metaTitle: "QR Codes for Auto Repair Shops: Book More Services Without Extra Staff", + metaDescription: "Help auto repair shops turn waiting room posters, invoices, and vehicle handouts into booking requests and 5-star reviews with dynamic QR codes.", + headline: "QR Codes for Auto Repair Shops: Turn Your Waiting Room Into a Booking Tool", + subheadline: "From service reminders to review requests, dynamic QR codes keep customers coming back and spread the word for you.", + heroImage: "/marketing/industries/auto-repair.png", + statistics: [ + { value: "70%", label: "of car owners use the same garage for 3+ years if satisfied" }, + { value: "88%", label: "of customers trust online reviews as much as personal recommendations" }, + { value: "40%", label: "of auto repair bookings now happen outside business hours" } + ], + benefits: [ + { title: "After-Hours Bookings", description: "A QR code on your invoice links to your online booking page so customers can schedule their next service at midnight if they want." }, + { title: "Review Collection", description: "A scan-to-review QR on every completed job paperwork turns happy customers into a steady flow of Google reviews." }, + { title: "Service Reminders Without Printing New Material", description: "Update your dynamic QR code destination to a seasonal promotion or MOT reminder without reprinting any in-garage signage." } + ], + useCases: [ + "Invoices and job cards with a QR code to book next service", + "Waiting room posters linking to service menu and pricing", + "Windscreen stickers with service due date and a rebooking link", + "Post-job review request cards with a Google review QR code", + "Flyers for local businesses with fleet vehicle servicing offers" + ], + tools: ["url-qr-code", "call-qr-code-generator", "email-qr-code"], + faq: [ + { question: "What is the best QR code placement for a garage?", answer: "Job completion paperwork and waiting room posters are the highest-engagement placements. Customers have time to scan while waiting." }, + { question: "Can I put a QR code on a windscreen service sticker?", answer: "Yes. A small dynamic QR code on a service reminder sticker linking to your booking page is one of the most effective retention tools." }, + { question: "How do QR codes help with fleet clients?", answer: "Give fleet managers a unique QR code linking to a dedicated booking portal or account manager contact so they can log service requests instantly." } + ], + placementTips: [ + "Print on every job card and invoice at the bottom with a rebooking prompt", + "Post A3 posters in the waiting area with service menu and booking QR", + "Apply QR-coded service reminder stickers to windscreens at job completion" + ] + }, + { + slug: "landscaping", + name: "Landscaping Companies", + title: "QR Codes for Landscaping Companies", + metaTitle: "QR Codes for Landscaping Companies: Leads from Signs and Vehicles", + metaDescription: "Help landscaping businesses turn yard signs, vehicle graphics, and flyers into instant quote requests with trackable dynamic QR codes.", + headline: "QR Codes for Landscaping Companies: Your Best Jobs Are in the Yards Next Door", + subheadline: "Every project site is a live portfolio. Make it work harder with a yard sign QR code that turns neighbors into the next booking.", + heroImage: "/marketing/industries/landscaping.png", + statistics: [ + { value: "67%", label: "of landscaping clients come from neighbor referrals or visible work" }, + { value: "5x", label: "More inquiries from job-site signs with QR codes vs phone only" }, + { value: "3x", label: "Higher retention rate when clients can rebook in under 60 seconds" } + ], + benefits: [ + { title: "Yard Signs That Generate Leads", description: "A QR code on job-site yard signs lets neighbors see your portfolio and request a quote instantly — no cold calling required." }, + { title: "Seasonal Campaign Swaps", description: "Update your QR destination from a spring planting offer to a winter clearance special without ordering new signs." }, + { title: "Before and After Portfolio", description: "Link QR codes to a visual before-and-after gallery for the exact type of garden you just transformed." } + ], + useCases: [ + "Yard signs at active job sites linking to portfolio and quote form", + "Vehicle and trailer graphics with a scannable estimate request", + "Post-job door hangers for neighboring properties", + "Flyers for seasonal services like lawn care, snow removal, or planting", + "Business cards with vCard and portfolio gallery link" + ], + tools: ["url-qr-code", "vcard-qr-code", "call-qr-code-generator"], + faq: [ + { question: "What should a landscaping yard sign QR code link to?", answer: "A project gallery showing work similar to the job in progress, plus a one-click quote request form. Visual proof converts best." }, + { question: "Can I use the same QR code on all my yard signs?", answer: "You can, but using unique codes per sign lets you measure which neighborhoods generate the most leads and focus your marketing accordingly." }, + { question: "How do seasonal promotions work with dynamic QR codes?", answer: "You update the link destination in QR Master's dashboard and all existing printed signs automatically point to the new page." } + ], + placementTips: [ + "Place yard signs at every active project site, visible from the street", + "Apply to trailer tailgates and vehicle sides on the passenger-facing side", + "Leave door hangers at the 5 properties on each side of every completed job" + ] + }, + { + slug: "tutors", + name: "Tutors", + title: "QR Codes for Tutors", + metaTitle: "QR Codes for Tutors: Fill Your Schedule from Flyers and School Boards", + metaDescription: "Help private tutors and tutoring centers convert notice board flyers, parent handouts, and social posts into bookings with dynamic QR codes.", + headline: "QR Codes for Tutors: Every Notice Board Flyer Should Be Booking Sessions", + subheadline: "Make it effortless for parents to check availability, read reviews, and book a trial session — from a single scan.", + heroImage: "/marketing/industries/tutors.png", + statistics: [ + { value: "78%", label: "of parents prefer to book services digitally rather than by phone" }, + { value: "4x", label: "Higher response rate from notice board flyers with QR booking links" }, + { value: "60%", label: "of tutoring referrals come from satisfied parents sharing contact details" } + ], + benefits: [ + { title: "Instant Booking from Flyers", description: "A QR code on every notice board flyer sends parents directly to your availability calendar — no phone tag needed." }, + { title: "Easy Referral Sharing", description: "A vCard QR code lets parents share your full contact details with one tap to another parent in the school car park." }, + { title: "Subject-Specific Campaigns", description: "Create one QR code per subject or year group and track which produces the most bookings across different schools." } + ], + useCases: [ + "School notice board flyers linking to booking calendar or inquiry form", + "Business cards with vCard QR for easy contact sharing between parents", + "PDF resource sheets for students with a follow-up QR code", + "End-of-term review requests sent via printed or digital card", + "Subject-specific flyers with unique tracking QR codes per campaign" + ], + tools: ["url-qr-code", "vcard-qr-code", "email-qr-code"], + faq: [ + { question: "What should a tutor's QR code link to?", answer: "A simple booking or inquiry form works best. Include your subjects, availability, and a brief bio so parents can qualify you before they reach out." }, + { question: "Can I track which schools send the most inquiries?", answer: "Yes. Use a unique dynamic QR code on flyers for each school and track scan data in QR Master's dashboard to see which locations perform best." }, + { question: "Should I add a QR code to printed worksheets?", answer: "Yes. A QR code at the bottom of student handouts linking to video explanations or supplementary resources adds value and keeps your brand visible to parents." } + ], + placementTips: [ + "Pin A5 flyers with booking QR code on notice boards at local schools and libraries", + "Print on business cards designed for parent-to-parent sharing", + "Add to printed worksheets and resource packs sent home with students" + ] + }, + { + slug: "dog-trainers", + name: "Dog Trainers", + title: "QR Codes for Dog Trainers", + metaTitle: "QR Codes for Dog Trainers: Fill Classes and Share Training Resources", + metaDescription: "Help dog trainers and training schools convert park flyers, vet referrals, and training handouts into bookings with dynamic QR codes.", + headline: "QR Codes for Dog Trainers: Reach New Clients Where Their Dogs Actually Are", + subheadline: "Parks, vet waiting rooms, and pet shop notice boards — put a scannable QR code in every place dog owners spend time.", + heroImage: "/marketing/industries/dog-trainers.png", + statistics: [ + { value: "72%", label: "of new dog owners seek professional training within the first 6 months" }, + { value: "85%", label: "of dog owner referrals happen in person, at parks or vet practices" }, + { value: "3x", label: "More class sign-ups from vet waiting room flyers with QR codes" } + ], + benefits: [ + { title: "Book Classes Instantly", description: "A QR code on your park flyer or business card takes new dog owners straight to your class schedule and booking form." }, + { title: "Share Training Resources", description: "Link QR codes on handouts to video guides, training tips, and homework assignments so clients practice between sessions." }, + { title: "Vet and Pet Shop Referrals", description: "Leave QR-coded referral cards with local vets and pet shops. A unique code per location tells you who sends the most clients." } + ], + useCases: [ + "Park and trail flyers linking to class schedule and booking", + "Vet waiting room cards with training package overview", + "Post-session handouts with QR links to training video resources", + "Business cards with vCard and booking link for park encounters", + "End-of-course review request QR codes on graduation certificates" + ], + tools: ["url-qr-code", "vcard-qr-code", "youtube-qr-code"], + faq: [ + { question: "Where should dog trainers distribute QR code flyers?", answer: "Dog parks, vet waiting rooms, pet shops, and grooming salons are your highest-intent locations. These are where motivated dog owners already spend time." }, + { question: "Can I share training videos via QR code?", answer: "Yes. Link a QR code on printed handouts to a YouTube playlist or private video library. Clients scan during the session or at home for reinforcement." }, + { question: "How do I track which referral partners send the most clients?", answer: "Give each vet or pet shop a unique dynamic QR code. QR Master tracks scans per code so you can thank and reward your best referral sources." } + ], + placementTips: [ + "Post A5 flyers at dog park notice boards and water stations", + "Leave referral cards with local veterinary practices and pet shops", + "Print on post-session handouts with links to homework video resources" + ] + }, + { + slug: "vacation-rentals", + name: "Vacation Rentals", + title: "QR Codes for Vacation Rentals", + metaTitle: "QR Codes for Vacation Rentals: Streamline Guest Check-In and House Guides", + metaDescription: "Help vacation rental owners deliver WiFi passwords, house manuals, local guides, and checkout instructions through a single scannable QR code.", + headline: "QR Codes for Vacation Rentals: Give Guests Everything They Need with One Scan", + subheadline: "Replace printed house manuals, WiFi cards, and welcome books with a dynamic QR code you can update between every stay.", + heroImage: "/marketing/industries/vacation-rentals.png", + statistics: [ + { value: "89%", label: "of guests check WiFi details within 10 minutes of arrival" }, + { value: "4x", label: "Fewer support messages when house rules are on a scannable guide" }, + { value: "35%", label: "of vacation rental reviews mention ease of check-in as a factor" } + ], + benefits: [ + { title: "Zero-Touch Check-In", description: "A welcome card with a QR code replaces printed manuals, sticky notes, and host messages — guests get everything in one scan." }, + { title: "Always Up to Date", description: "Dynamic QR codes mean you update the house guide or local restaurant list once, and it's live for every future guest without reprinting." }, + { title: "Review Collection", description: "A QR code left with the checkout card prompts guests to leave a review when their experience is freshest." } + ], + useCases: [ + "Welcome card with QR code linking to digital house guide", + "WiFi QR code printed on a framed card or fridge magnet", + "Local area guide with restaurant, activity, and emergency links", + "Checkout instructions checklist accessible via scan", + "Post-stay review request via QR on checkout reminder card" + ], + tools: ["wifi-qr-code", "url-qr-code", "pdf-qr-code"], + faq: [ + { question: "What should a vacation rental QR code link to?", answer: "A digital welcome guide covering WiFi, house rules, appliance instructions, local recommendations, and emergency contacts covers 90% of guest questions." }, + { question: "Can I use the same QR code for multiple properties?", answer: "Create a unique code per property so each links to the correct guide. With dynamic codes you can update the guide content without replacing the printed cards." }, + { question: "How do QR codes reduce guest messages?", answer: "Most guest messages ask the same questions — WiFi, checkout time, bin collection. A scannable guide that answers all of these cuts support messages significantly." } + ], + placementTips: [ + "Frame a WiFi QR code card and place on the kitchen counter or entry table", + "Add a house guide QR code to the welcome card included with keys", + "Leave a checkout reminder card with a review QR code on the dining table" + ] + }, + { + slug: "massage-therapists", + name: "Massage Therapists", + title: "QR Codes for Massage Therapists", + metaTitle: "QR Codes for Massage Therapists: Rebook Clients Before They Leave", + metaDescription: "Help massage therapists and clinics use dynamic QR codes for rebooking, aftercare guides, review collection, and gift voucher promotions.", + headline: "QR Codes for Massage Therapists: The Easiest Rebook Starts Right After the Session", + subheadline: "A QR code on your aftercare card turns a relaxed, satisfied client into a confirmed repeat booking before they leave the room.", + heroImage: "/marketing/industries/massage-therapists.png", + statistics: [ + { value: "65%", label: "of clients who rebook do so within 48 hours of their last session" }, + { value: "4x", label: "Higher rebook rate when clients leave with a QR-coded aftercare card" }, + { value: "80%", label: "of massage clients come from word-of-mouth and reviews" } + ], + benefits: [ + { title: "Instant Rebooking", description: "A QR code on your aftercare card linked to your online booking calendar turns every completed session into the next one." }, + { title: "Aftercare and Treatment Information", description: "Share post-treatment advice, hydration tips, and what to expect — all linked from a single scannable code on a printed card." }, + { title: "Gift Voucher Promotion", description: "A QR code on a branded card or display stand links to your gift voucher page — perfect for holiday and birthday gift traffic." } + ], + useCases: [ + "Aftercare cards with rebooking QR code and treatment notes", + "Reception desk signage linking to online booking and treatment menu", + "Gift voucher cards with QR code for purchase or redemption", + "Review request QR on checkout receipts and follow-up texts", + "Referral cards for clients to share with friends and family" + ], + tools: ["url-qr-code", "vcard-qr-code", "email-qr-code"], + faq: [ + { question: "What is the best way to use QR codes as a massage therapist?", answer: "An aftercare card with a rebooking QR code is the single highest-converting use case. Clients are relaxed and receptive right after a session." }, + { question: "Should I link to my booking platform or my own website?", answer: "Link directly to your booking calendar — Calendly, Fresha, or your own system. Fewer clicks between the QR code and a confirmed appointment means more bookings." }, + { question: "How can QR codes help with gift voucher sales?", answer: "A framed QR code display at reception linking to your gift voucher purchase page generates passive sales, especially around Christmas, Valentine's Day, and Mother's Day." } + ], + placementTips: [ + "Include aftercare card with rebook QR in every treatment room", + "Place a framed QR code stand at reception for gift voucher purchases", + "Print on loyalty cards alongside a 'Refer a friend' QR for tracking referrals" + ] + }, + { + slug: "escape-rooms", + name: "Escape Rooms", + title: "QR Codes for Escape Rooms", + metaTitle: "QR Codes for Escape Rooms: More Bookings and Better Reviews", + metaDescription: "Help escape room businesses use QR codes for instant booking, post-game review requests, group offers, and in-game hint systems.", + headline: "QR Codes for Escape Rooms: From Booking to the Last Clue", + subheadline: "Use QR codes at every touchpoint — from street-level marketing to post-game review collection — to fill more sessions and grow your reputation.", + heroImage: "/marketing/industries/escape-rooms.png", + statistics: [ + { value: "74%", label: "of escape room bookings are made online or via mobile" }, + { value: "3x", label: "More reviews collected with a post-game QR card vs verbal requests" }, + { value: "65%", label: "of escape room customers come in groups of 3 or more" } + ], + benefits: [ + { title: "Instant Group Bookings", description: "A QR code on outdoor signage or flyers links directly to your booking calendar — groups can split the cost and book on the spot." }, + { title: "Post-Game Review Rush", description: "Hand every team a QR-coded feedback card as they exit. The adrenaline is still running — reviews written immediately are more enthusiastic." }, + { title: "In-Game Hint Systems", description: "Use QR codes within game rooms to link to optional hint videos, audio clues, or additional story context." } + ], + useCases: [ + "Outdoor and window signage linking to booking calendar", + "Post-game review request cards handed to every team", + "Group discount flyers distributed in nearby hospitality venues", + "In-game QR codes for optional hints or story additions", + "Gift voucher QR codes sold at reception or online" + ], + tools: ["url-qr-code", "youtube-qr-code", "event-qr-code"], + faq: [ + { question: "Where should escape rooms use QR codes for maximum bookings?", answer: "Outdoor street-level signage and nearby hospitality venue flyers capture walk-by and post-dinner impulse bookings, which are common for escape rooms." }, + { question: "Can QR codes be used inside the escape room itself?", answer: "Yes. QR codes linked to video hints, audio clues, or optional story elements add a digital layer to physical puzzles without breaking immersion." }, + { question: "How do I get more Google reviews from escape room customers?", answer: "A branded QR review card handed to every team right after their game, while the experience is fresh, consistently outperforms follow-up emails for review conversion." } + ], + placementTips: [ + "Place booking QR codes on A-frame signs outside the venue entrance", + "Hand every exiting team a review card with a QR code before they leave", + "Distribute group booking flyers in nearby restaurants and bowling alleys" + ] + }, + { + slug: "pilates-studios", + name: "Pilates Studios", + title: "QR Codes for Pilates Studios", + metaTitle: "QR Codes for Pilates Studios: Fill Classes and Retain Members", + metaDescription: "Help pilates studios use dynamic QR codes for class bookings, membership sign-ups, tutorial videos, and referral programs.", + headline: "QR Codes for Pilates Studios: Every Class Should Be Full and Every Member Should Feel Seen", + subheadline: "From first-time visitor flyers to member referral cards, dynamic QR codes make growing your studio effortless.", + heroImage: "/marketing/industries/pilates-studios.png", + statistics: [ + { value: "68%", label: "of pilates clients discover studios through friend referrals" }, + { value: "4x", label: "Higher class attendance when booking reminders include a QR rescheduling link" }, + { value: "55%", label: "of new members join within 2 weeks of a free trial class" } + ], + benefits: [ + { title: "Free Trial Conversions", description: "A QR code on your street-level poster links directly to a free trial class booking — reducing friction for first-time visitors." }, + { title: "Member Referral Tracking", description: "Give each member a unique QR referral card. Track which members bring in the most new clients and reward them accordingly." }, + { title: "Video Tutorial Library", description: "Link QR codes on printed training cards to a private video library of exercises and corrections for home practice." } + ], + useCases: [ + "Exterior signage and flyers with free trial class booking link", + "Member referral cards with unique per-member tracking codes", + "Training cards linking to video exercise demonstrations", + "Class timetable posters with a booking QR code", + "Post-class review request cards for Google and social platforms" + ], + tools: ["url-qr-code", "youtube-qr-code", "email-qr-code"], + faq: [ + { question: "What should a pilates studio's QR code link to?", answer: "A free trial class booking page is the highest-converting destination for new visitors. For existing members, link to the class schedule and rebook flow." }, + { question: "How can I use QR codes to reduce class no-shows?", answer: "Add a QR code to booking confirmation printouts linking to a rescheduling page. Making it easy to change reduces last-minute drops rather than simply losing the booking." }, + { question: "Are QR codes useful for in-studio printed materials?", answer: "Yes. Training cards with QR codes linking to form correction videos, breathing tutorials, and at-home practice guides extend the studio experience beyond class time." } + ], + placementTips: [ + "Post free trial QR flyers on studio windows and nearby community boards", + "Place booking QR codes on class timetable printouts at reception", + "Hand members referral cards with their name on them to personalise the ask" + ] + }, + { + slug: "wedding-venues", + name: "Wedding Venues", + title: "QR Codes for Wedding Venues", + metaTitle: "QR Codes for Wedding Venues: Show Off Your Venue and Book More Tours", + metaDescription: "Help wedding venues use dynamic QR codes on brochures, open day signage, and printed packs to drive virtual tours, inquiry forms, and availability checks.", + headline: "QR Codes for Wedding Venues: Every Brochure Should Book a Tour", + subheadline: "Turn printed venue brochures, open day displays, and wedding fair materials into interactive digital experiences with a single scan.", + heroImage: "/marketing/industries/wedding-venues.png", + statistics: [ + { value: "87%", label: "of couples research venues online before visiting in person" }, + { value: "3x", label: "More inquiry form completions from brochures with QR codes" }, + { value: "70%", label: "of venue bookings are made within 2 weeks of the first site visit" } + ], + benefits: [ + { title: "Virtual Tour on the Spot", description: "A QR code in your brochure links to a video walkthrough so couples can revisit the feeling of your venue at home." }, + { title: "Wedding Fair Lead Capture", description: "A branded QR code on your fair display captures couple details and books consultations without needing manual sign-up sheets." }, + { title: "Availability and Pricing on Demand", description: "Dynamic QR codes update to current availability calendars and pricing packages without reprinting any printed materials." } + ], + useCases: [ + "Printed brochures with QR links to virtual tours and photo galleries", + "Wedding fair display signage with inquiry form QR code", + "Site visit follow-up packs with a 'Check your date' availability link", + "Supplier partnership cards with a referral tracking QR code", + "Guest WiFi QR codes for couples to share on the day itself" + ], + tools: ["url-qr-code", "wifi-qr-code", "youtube-qr-code"], + faq: [ + { question: "What should a wedding venue's QR code link to?", answer: "A virtual tour or photo gallery linked from your brochure is most compelling. Pair it with a date availability checker for the highest inquiry conversion." }, + { question: "How do QR codes help at wedding fairs?", answer: "Replace paper sign-up sheets with a QR code linking to a simple consultation booking form. Couples submit details on their own phone — faster, cleaner, and better data." }, + { question: "Can I give couples a WiFi QR code for their wedding day?", answer: "Yes. A framed WiFi QR code is a popular detail that guests appreciate, and it keeps your venue branding visible in guest photos from the day." } + ], + placementTips: [ + "Print a QR code on the inside front cover of every printed venue brochure", + "Display a large format QR poster at wedding fair stands with a 'Book your tour' prompt", + "Include a QR availability link in every site visit follow-up pack sent to couples" + ] + }, + { + slug: "architects", + name: "Architects", + title: "QR Codes for Architects", + metaTitle: "QR Codes for Architects: Turn Site Hoardings and Proposals Into Portfolio Visits", + metaDescription: "Help architecture firms use dynamic QR codes on site hoardings, pitch documents, and business cards to showcase portfolios and capture project inquiries.", + headline: "QR Codes for Architects: Your Best Work Should Be One Scan Away", + subheadline: "Turn site hoardings, award entries, and proposal documents into living portfolio links with QR codes that update as your projects evolve.", + heroImage: "/marketing/industries/architects.png", + statistics: [ + { value: "82%", label: "of clients select an architect based on visible portfolio quality" }, + { value: "6x", label: "More portfolio views from QR-coded site hoardings vs URL text alone" }, + { value: "55%", label: "of architecture inquiries start with seeing an active project in a neighborhood" } + ], + benefits: [ + { title: "Site Hoardings as Portfolio Windows", description: "A QR code on every project hoarding lets passersby view your full portfolio of similar work and submit an inquiry on the spot." }, + { title: "Living Proposal Documents", description: "Link QR codes in pitch documents to CGI walkthroughs, specification sheets, and project timeline videos that update without reprinting." }, + { title: "Award and Press Coverage", description: "QR codes in printed press materials link journalists and judges directly to project photography, case studies, and contact details." } + ], + useCases: [ + "Site hoarding QR codes linking to portfolio and contact form", + "Proposal and tender documents with QR links to CGI and specification assets", + "Business cards with vCard and portfolio gallery link", + "Award submission materials with QR codes to project photography", + "Planning application notices with public consultation QR codes" + ], + tools: ["url-qr-code", "vcard-qr-code", "pdf-qr-code"], + faq: [ + { question: "What should an architect's site hoarding QR code link to?", answer: "A project page showing similar completed work in the same sector — residential, commercial, or heritage — converts browsers into inquirers most effectively." }, + { question: "Can I use QR codes in architectural proposal documents?", answer: "Yes. A QR code linking to a 3D walkthrough or specification video in a printed proposal significantly increases perceived quality and engagement." }, + { question: "How do QR codes help with public planning consultations?", answer: "A QR code on planning notices allows local residents to access consultation documents, submit feedback, and attend virtual Q&A sessions without searching online." } + ], + placementTips: [ + "Apply QR to all site hoardings at pedestrian eye level with a project preview prompt", + "Include QR codes inside proposal covers linking to CGI animations or project films", + "Print on award submission folders and press kits with a portfolio link" + ] + }, + { + slug: "hair-salons", + name: "Hair Salons", + title: "QR Codes for Hair Salons", + metaTitle: "QR Codes for Hair Salons: Rebook Clients and Collect More Reviews", + metaDescription: "Help hair salons use dynamic QR codes for rebooking, style lookbooks, WiFi access, and review collection to retain clients and attract new ones.", + headline: "QR Codes for Hair Salons: Every Client Should Leave With a Next Appointment", + subheadline: "From WiFi access to rebooking links, dynamic QR codes keep clients connected to your salon between visits.", + heroImage: "/marketing/industries/hair-salons.png", + statistics: [ + { value: "70%", label: "of salon clients who rebook do so within 6 weeks of their last visit" }, + { value: "88%", label: "of new salon clients check reviews before booking for the first time" }, + { value: "3x", label: "More repeat bookings when clients leave with a rebook QR card" } + ], + benefits: [ + { title: "Frictionless Rebooking", description: "A QR code on your appointment card links clients straight to your booking calendar before they've even left the chair." }, + { title: "Style Lookbook Access", description: "Display a QR code at stations linking to your Instagram or a curated gallery so clients can browse styles during their appointment." }, + { title: "WiFi Without Passwords", description: "A framed WiFi QR code at reception removes the awkward password conversation and improves the client experience instantly." } + ], + useCases: [ + "Appointment reminder cards with a rebook QR code", + "Reception desk WiFi QR code display", + "Mirror or station QR codes linking to style lookbook or Instagram", + "Post-visit review request QR on receipts or follow-up cards", + "Referral cards with a 'Give a friend 10% off' QR link" + ], + tools: ["wifi-qr-code", "url-qr-code", "instagram-qr-code"], + faq: [ + { question: "What QR codes work best for hair salons?", answer: "WiFi QR codes at reception and rebooking links on appointment cards are the two most impactful placements. Both improve the client experience directly." }, + { question: "Should I link my QR code to Instagram or my booking platform?", answer: "Use your QR code for your booking platform when the goal is rebooking. Reserve Instagram QR codes for style inspiration at the styling station." }, + { question: "How do QR codes help with salon referrals?", answer: "A referral card with a QR code linking to a discount for a friend makes it easy for satisfied clients to share your salon without needing to remember your details." } + ], + placementTips: [ + "Frame a WiFi QR code card on the reception desk or entry table", + "Print rebook QR codes on the back of every appointment card", + "Place style lookbook QR codes at each styling station mirror" + ] + }, + { + slug: "hostels", + name: "Hostels", + title: "QR Codes for Hostels", + metaTitle: "QR Codes for Hostels: Simplify Check-In and Delight Budget Travelers", + metaDescription: "Help hostels use QR codes for WiFi access, local area guides, check-in instructions, tour bookings, and review collection.", + headline: "QR Codes for Hostels: Give Every Guest Everything They Need the Moment They Arrive", + subheadline: "WiFi, local tips, tour bookings, and house rules — all in one scan. No printed guides. No repeated questions at reception.", + heroImage: "/marketing/industries/hostels.png", + statistics: [ + { value: "92%", label: "of hostel guests check WiFi details within minutes of arrival" }, + { value: "3x", label: "Fewer front desk interruptions when digital guest guides are QR-accessible" }, + { value: "78%", label: "of backpacker travelers discover activities through hostel recommendations" } + ], + benefits: [ + { title: "Self-Service Check-In", description: "A QR code at the entrance links guests to check-in instructions, room assignments, and house rules without queue time at reception." }, + { title: "Local Area Partner Revenue", description: "Link a local guide QR code to partner tour operators, restaurants, and activities — each click is a potential affiliate or commission booking." }, + { title: "Review Collection at Checkout", description: "A QR card left on every bed or in the common room prompts departing guests to leave a review before they even leave the building." } + ], + useCases: [ + "Dorm room WiFi QR code framed on the wall", + "Reception desk local area guide QR linking to activities and restaurants", + "Check-in instruction QR on entry door for self-check-in properties", + "Common room tour booking QR codes with partner operators", + "Checkout review request QR on thank-you card or whiteboard" + ], + tools: ["wifi-qr-code", "url-qr-code", "pdf-qr-code"], + faq: [ + { question: "What is the most valuable QR code placement in a hostel?", answer: "A WiFi QR code in every dorm room eliminates the most common guest question and removes the need to share passwords repeatedly." }, + { question: "Can I use QR codes to promote partner tours and activities?", answer: "Yes. A local guide QR code linking to vetted partner experiences turns guest interest into bookings — and can generate affiliate income for your hostel." }, + { question: "How do QR codes help with self-check-in hostels?", answer: "A QR code at the entrance linking to a step-by-step check-in guide, lockbox instructions, and room details allows fully unattended arrival with no staff required." } + ], + placementTips: [ + "Frame WiFi QR codes next to each set of bunk beds in dorm rooms", + "Post local guide QR codes in the common room, kitchen, and corridor noticeboards", + "Leave checkout review QR cards on beds during daily room refresh" + ] + }, + { + slug: "crossfit", + name: "CrossFit Gyms", + title: "QR Codes for CrossFit Gyms", + metaTitle: "QR Codes for CrossFit Gyms: Fill Classes and Build Community", + metaDescription: "Help CrossFit gyms and boxes use QR codes for free trial bookings, WOD tracking, member referrals, and competition sign-ups.", + headline: "QR Codes for CrossFit Gyms: Every Workout Should Build the Community, Not Just the Athletes", + subheadline: "Free trial sign-ups, WOD results, member referrals, and competition registrations — all accessible from a single scan on your box wall.", + heroImage: "/marketing/industries/crossfit.png", + statistics: [ + { value: "75%", label: "of CrossFit members joined after a free trial or friend referral" }, + { value: "4x", label: "Higher free trial conversion from flyers with QR booking links" }, + { value: "85%", label: "of CrossFit members follow their box on social media" } + ], + benefits: [ + { title: "Free Trial on the Spot", description: "A QR code on your exterior sign or flyer books a free trial class in under a minute — perfect for people walking past the box." }, + { title: "Member Referral Tracking", description: "Give each member a unique referral QR code. When friends scan and sign up, you know exactly who to reward." }, + { title: "WOD and Programming Access", description: "Link a wall-mounted QR code to daily programming, tracking sheets, or a private member app for easy in-box access." } + ], + useCases: [ + "Exterior sign QR code for free trial class booking", + "Member referral cards with unique per-member QR codes", + "Box whiteboard or wall QR linking to daily WOD and programming", + "Competition sign-up QR codes posted in the gym", + "Merchandise and apparel order QR code for member purchasing" + ], + tools: ["url-qr-code", "instagram-qr-code", "youtube-qr-code"], + faq: [ + { question: "What should a CrossFit box's QR code link to?", answer: "A free trial class booking page converts best for new member acquisition. For existing members, link to daily programming or the member portal." }, + { question: "How do I track which members refer the most new clients?", answer: "Create a unique dynamic QR code for each member referral card. QR Master's analytics show scans and conversions per code." }, + { question: "Can QR codes be used inside the CrossFit box?", answer: "Yes. Wall-mounted QR codes linking to daily WOD videos, lift technique tutorials, or scaling options are popular in well-run boxes." } + ], + placementTips: [ + "Apply QR free trial code to exterior window or A-frame sign facing foot traffic", + "Print member referral QR cards to hand out at milestone workouts and events", + "Mount a durable QR code near the whiteboard linking to programming and tracking" + ] + }, + { + slug: "sports-bars", + name: "Sports Bars", + title: "QR Codes for Sports Bars", + metaTitle: "QR Codes for Sports Bars: Digital Menus, Events, and Table Ordering", + metaDescription: "Help sports bars use QR codes for digital drinks menus, event schedules, table ordering, loyalty programs, and review collection.", + headline: "QR Codes for Sports Bars: Keep the Game on the Screen and the Orders Moving", + subheadline: "Digital menus, event schedules, and group booking links — scannable from every table so your staff can focus on service.", + heroImage: "/marketing/industries/sports-bars.png", + statistics: [ + { value: "42%", label: "Increase in drinks orders when digital menus include promotional items" }, + { value: "3x", label: "More event pre-bookings when game schedules are QR-accessible" }, + { value: "68%", label: "of sports bar regulars book big game seats in advance" } + ], + benefits: [ + { title: "Dynamic Drinks Menu", description: "Update daily specials, cocktail promotions, and game-day offers instantly without reprinting laminated menus on every table." }, + { title: "Event and Game Schedule", description: "A QR code linking to your upcoming fixtures list and table reservation form converts curious visitors into confirmed bookings." }, + { title: "Group Booking Engine", description: "Large groups scan once and access your group booking form, function room details, and set menu options without waiting for staff." } + ], + useCases: [ + "Table QR codes linking to digital drinks and food menu", + "Bar top and entrance signage with upcoming fixtures and booking link", + "Group booking QR codes on function room brochures", + "Loyalty program QR codes for scan-to-earn drink stamps", + "Post-event review request QR on receipts and closing announcements" + ], + tools: ["url-qr-code", "wifi-qr-code", "facebook-qr-code"], + faq: [ + { question: "What QR code placement drives the most revenue in a sports bar?", answer: "Table QR menus with promoted specials consistently increase average order values. Add a fixtures calendar QR at the entrance to drive advance bookings." }, + { question: "Can I update my drinks specials on the QR menu without reprinting?", answer: "Yes. A dynamic QR code lets you change the destination URL — point it to an updated specials page before every match day with no new print materials." }, + { question: "How do QR codes help with group bookings?", answer: "A dedicated group booking QR on your function brochures eliminates phone calls. Groups scan, see availability and packages, and submit a booking request instantly." } + ], + placementTips: [ + "Place QR table tents at every table and bar stool station", + "Post a large fixtures and booking QR poster near the entrance and main screen", + "Include group booking QR on every paper napkin or function inquiry card" + ] + }, + { + slug: "laundromats", + name: "Laundromats", + title: "QR Codes for Laundromats", + metaTitle: "QR Codes for Laundromats: Machine Instructions, WiFi, and Loyalty Programs", + metaDescription: "Help laundromats use QR codes for machine instructions, WiFi access, loyalty programs, maintenance reporting, and customer reviews.", + headline: "QR Codes for Laundromats: Make Waiting Time Work for Your Business", + subheadline: "Customers spend 45–90 minutes in your laundromat. QR codes on every machine and wall turn that dwell time into reviews, loyalty sign-ups, and referrals.", + heroImage: "/marketing/industries/laundromats.png", + statistics: [ + { value: "45 min", label: "Average customer dwell time — highest of any retail category" }, + { value: "3x", label: "More loyalty sign-ups from in-venue QR codes vs external campaigns" }, + { value: "60%", label: "of laundromat customers return weekly or more" } + ], + benefits: [ + { title: "Machine Instructions That Never Go Missing", description: "A QR code on every machine links to the correct video or PDF guide so customers help themselves and staff handle fewer interruptions." }, + { title: "Loyalty Program Enrollment", description: "Long dwell times make laundromats one of the highest-converting venues for QR-based loyalty sign-ups — customers have nothing but time." }, + { title: "Fault Reporting Without Staff", description: "A QR code linking to a simple fault report form on out-of-order or underperforming machines keeps maintenance up to date without relying on verbal reports." } + ], + useCases: [ + "Machine instruction QR codes linking to video guides per model", + "WiFi QR code displayed at the entrance and seating area", + "Loyalty program enrollment QR codes on posters and table cards", + "Fault reporting QR on every machine for maintenance tracking", + "Review request QR displayed near exit and on receipts" + ], + tools: ["wifi-qr-code", "url-qr-code", "youtube-qr-code"], + faq: [ + { question: "What is the best QR code use case for a laundromat?", answer: "Machine instruction QR codes reduce staff interruptions most. WiFi QR codes and loyalty program sign-ups are the next most valuable for customer experience and retention." }, + { question: "Can QR codes help with machine maintenance?", answer: "Yes. A fault reporting QR on every machine creates a digital paper trail for maintenance issues — faster to act on than verbal reports and useful for warranty claims." }, + { question: "How do I grow my laundromat loyalty program with QR codes?", answer: "Place QR enrollment codes at eye level on every machine and at the entrance. Customers waiting for a cycle are captive — conversion rates in laundromats are unusually high." } + ], + placementTips: [ + "Apply QR instruction stickers to the front panel of every washer and dryer", + "Frame a WiFi QR code at the entrance and seating area", + "Post loyalty sign-up QR codes at the detergent vending machine and folding tables" + ] + }, + { + slug: "aquariums", + name: "Aquariums", + title: "QR Codes for Aquariums", + metaTitle: "QR Codes for Aquariums: Interactive Exhibits and Visitor Engagement", + metaDescription: "Help aquariums use QR codes to deliver species information, audio guides, feeding schedules, ticketing, and membership sign-ups to visitors.", + headline: "QR Codes for Aquariums: Every Tank Should Tell a Story", + subheadline: "Species info, feeding times, audio guides, and conservation content — all accessible from a single scan next to every exhibit.", + heroImage: "/marketing/industries/aquariums.png", + statistics: [ + { value: "78%", label: "of aquarium visitors want more information about the species they see" }, + { value: "4x", label: "Longer exhibit engagement when interactive QR content is available" }, + { value: "35%", label: "of aquarium memberships are purchased after a positive first visit" } + ], + benefits: [ + { title: "Interactive Species Information", description: "Replace static plaques with QR codes linking to rich species profiles, video content, and conservation stories accessible on any smartphone." }, + { title: "Audio Guide Access", description: "A QR code near each exhibit entrance delivers a narrated audio guide without equipment rental desks or app downloads." }, + { title: "Membership Conversion on Site", description: "A QR code at the exit links directly to membership purchase — converting engaged visitors at the moment of peak enthusiasm." } + ], + useCases: [ + "Exhibit QR codes linking to species profiles and video content", + "Audio guide QR codes at each zone entrance", + "Feeding schedule QR codes at high-interest tanks", + "Membership purchase QR code at exit and gift shop", + "Conservation program donation QR codes on campaign signage" + ], + tools: ["url-qr-code", "youtube-qr-code", "pdf-qr-code"], + faq: [ + { question: "How do QR codes improve the aquarium visitor experience?", answer: "QR codes next to tanks deliver species details, conservation context, and feeding times on demand — far richer than static plaques and appreciated by curious visitors of all ages." }, + { question: "Can QR codes replace printed audio guide equipment?", answer: "Yes. A QR code linking to a web-based audio guide eliminates rental desk queues and equipment hygiene concerns while reducing operational costs." }, + { question: "How do I use QR codes to sell more memberships?", answer: "Place a membership QR code prominently at the exit and in the gift shop. Visitors who've just had a great experience are at peak conversion motivation." } + ], + placementTips: [ + "Mount QR codes at eye level next to every major tank and exhibit", + "Place audio guide QR codes at the entrance to each themed zone", + "Display membership QR codes prominently at the exit and gift shop checkout" + ] + }, + { + slug: "gift-shops", + name: "Gift Shops", + title: "QR Codes for Gift Shops", + metaTitle: "QR Codes for Gift Shops: Product Stories, Reviews, and Reorder Links", + metaDescription: "Help gift shops use QR codes on product tags, packaging, and displays to share product stories, collect reviews, and enable easy reordering.", + headline: "QR Codes for Gift Shops: Every Product Tag Should Be a Story", + subheadline: "Turn packaging and price tags into interactive experiences with QR codes that share provenance, inspire gifting ideas, and make reordering effortless.", + heroImage: "/marketing/industries/gift-shops.png", + statistics: [ + { value: "64%", label: "of gift buyers research product provenance before purchasing" }, + { value: "3x", label: "Higher review rates from QR-coded thank-you inserts vs email follow-ups" }, + { value: "45%", label: "of gift shop repeat purchases are driven by online reorder convenience" } + ], + benefits: [ + { title: "Product Story Tags", description: "A QR code on product tags links to the maker's story, ingredients, or craftsmanship details — the context that turns browsers into buyers." }, + { title: "Easy Reordering", description: "A QR code on packaging inserts links directly to the product page so gift recipients can reorder without searching." }, + { title: "Seasonal Collection Updates", description: "Dynamic QR codes on seasonal displays update to new collection pages without printing new signs for every rotation." } + ], + useCases: [ + "Product hang tags with QR codes linking to maker stories and provenance", + "Packaging inserts with reorder and 'discover more' QR codes", + "In-store display QR codes linking to full collection pages", + "Gift receipt inserts with an exchange or reorder QR link", + "Social follow QR codes at point of sale for Instagram and newsletter" + ], + tools: ["url-qr-code", "instagram-qr-code", "facebook-qr-code"], + faq: [ + { question: "What should a gift shop product tag QR code link to?", answer: "A product detail page with the story behind the item — maker, materials, care instructions, and related products. Context sells gifts more than price." }, + { question: "How do QR codes help with post-purchase retention?", answer: "An insert in every bag with a QR code linking to your newsletter sign-up, Instagram, or reorder page converts one-time buyers into repeat customers." }, + { question: "Can I use QR codes for seasonal promotions without reprinting signs?", answer: "Yes. Dynamic QR codes on in-store displays update to new collection pages or seasonal offers without new print materials — swap the content, not the sign." } + ], + placementTips: [ + "Print QR codes on product hang tags alongside the product name and price", + "Include a QR insert in every shopping bag or gift box", + "Place a social follow QR code at the register for post-purchase engagement" + ] + }, + { + slug: "bike-shops", + name: "Bike Shops", + title: "QR Codes for Bike Shops", + metaTitle: "QR Codes for Bike Shops: Service Bookings, Trail Maps, and Product Info", + metaDescription: "Help bike shops use QR codes for service bookings, trail guide downloads, product manuals, and post-repair review collection.", + headline: "QR Codes for Bike Shops: From the Workshop to the Trail", + subheadline: "Service booking links, trail maps, and product guides — give cyclists the information they need exactly where they need it.", + heroImage: "/marketing/industries/bike-shops.png", + statistics: [ + { value: "72%", label: "of cyclists research service options online before calling a shop" }, + { value: "3x", label: "Higher review rates from post-repair QR cards vs no follow-up" }, + { value: "65%", label: "of bike shop revenue comes from repeat service customers" } + ], + benefits: [ + { title: "Service Booking On Demand", description: "A QR code on your window or workshop board links directly to your online service booking form — no calls, no waiting." }, + { title: "Trail and Route Guides", description: "QR codes on local trail maps or in-store displays link to GPX files, elevation guides, and local club rides — adding value beyond the purchase." }, + { title: "Product Manual Access", description: "Replace lost paper manuals with QR codes on bike frames and component packaging linking to PDF guides and setup videos." } + ], + useCases: [ + "Window and workshop signage with a service booking QR code", + "Trail map displays linking to GPX downloads and route details", + "Post-service review request QR codes on repair invoices", + "Product hang tags linking to manuals, setup guides, and warranty registration", + "Local cycling event and club ride promotion via QR posters" + ], + tools: ["url-qr-code", "pdf-qr-code", "youtube-qr-code"], + faq: [ + { question: "What should a bike shop QR code link to?", answer: "A service booking form is the highest-converting destination. Trail guides and route maps are valuable for community building and in-store dwell time." }, + { question: "Can I add QR codes to bikes I've serviced?", answer: "Yes. A small QR sticker with the service date and a rebooking link on the frame or seatpost is a subtle but effective retention tool." }, + { question: "How do QR codes help sell accessories and components?", answer: "A QR code on component displays linking to compatibility guides, installation videos, and compatible model lists helps customers self-qualify purchases without staff intervention." } + ], + placementTips: [ + "Post a service booking QR code on the shop window and workshop entrance", + "Apply small QR rebooking stickers to frames after every completed service", + "Display trail guide QR codes next to local maps and ride planning resources" + ] + }, + { + slug: "ice-cream-shops", + name: "Ice Cream Shops", + title: "QR Codes for Ice Cream Shops", + metaTitle: "QR Codes for Ice Cream Shops: Daily Flavors, Loyalty, and Social Follows", + metaDescription: "Help ice cream shops use QR codes for daily flavor menus, loyalty program sign-ups, social media follows, and seasonal promotion campaigns.", + headline: "QR Codes for Ice Cream Shops: Let Customers Scan Today's Flavors Before They Queue", + subheadline: "Daily flavor menus, loyalty stamps, and social follows — all from a single scannable QR code on your window or counter.", + heroImage: "/marketing/industries/ice-cream-shops.png", + statistics: [ + { value: "58%", label: "of ice cream customers decide their order before joining the queue" }, + { value: "4x", label: "More social follows from in-store QR codes vs word-of-mouth alone" }, + { value: "45%", label: "of specialty ice cream customers are loyal to one shop" } + ], + benefits: [ + { title: "Daily Flavor Board Without a Chalkboard", description: "A dynamic QR code on your window links to today's flavor lineup — update it from your phone each morning before opening." }, + { title: "Loyalty Without the Card", description: "A QR code linking to a digital loyalty program eliminates lost stamp cards and lets customers track their progress on their phone." }, + { title: "Social Growth on Every Visit", description: "A framed Instagram QR code at the counter turns every photo-worthy visit into a new follower." } + ], + useCases: [ + "Window QR code linking to today's flavor menu", + "Counter Instagram QR code for social follows and user-generated content", + "Digital loyalty program sign-up QR on receipts and in-store signage", + "Seasonal special QR codes linking to limited edition flavor announcements", + "Review request QR on cups, bags, or receipts" + ], + tools: ["url-qr-code", "instagram-qr-code", "facebook-qr-code"], + faq: [ + { question: "What is the best QR code use for an ice cream shop?", answer: "A daily flavor menu QR on your window is the most immediately practical — it reduces queue confusion and lets customers plan before they arrive." }, + { question: "Can a QR code help grow my ice cream shop's Instagram?", answer: "Yes. An Instagram QR code at the counter next to a sign like 'Tag us and get a free scoop' drives follows and user-generated content simultaneously." }, + { question: "How do digital loyalty QR codes work for ice cream shops?", answer: "Link the QR code to your loyalty app or a simple stamp card system. Customers scan on each visit to earn rewards — no physical card to lose." } + ], + placementTips: [ + "Post a daily flavor QR code on the shop window at eye level before opening", + "Frame an Instagram QR code at the point of sale or selfie wall", + "Print loyalty QR codes on the bottom of every receipt" + ] + }, + { + slug: "delis", + name: "Delis", + title: "QR Codes for Delis", + metaTitle: "QR Codes for Delis: Daily Specials, Online Ordering, and Catering Inquiries", + metaDescription: "Help delis and specialty food shops use QR codes for daily specials menus, pre-order links, catering inquiries, and loyalty programs.", + headline: "QR Codes for Delis: Tell Customers What's Fresh Today Before They Walk In", + subheadline: "Daily specials, pre-order links, and catering menus — all accessible from a single QR code on your window or counter.", + heroImage: "/marketing/industries/delis.png", + statistics: [ + { value: "62%", label: "of deli customers decide on a special before arriving at the counter" }, + { value: "3x", label: "Higher catering inquiry rate from window QR menus vs phone-only displays" }, + { value: "55%", label: "of deli regulars visit weekly and prefer to pre-order" } + ], + benefits: [ + { title: "Daily Specials Without a Sandwich Board", description: "Update your specials page from your phone each morning and your window QR code always shows today's menu." }, + { title: "Catering Inquiry Capture", description: "A QR code linking to your catering menu and inquiry form converts curious office managers and event planners into leads." }, + { title: "Pre-Order and Skip the Queue", description: "Link your QR code to an online pre-order system so regulars can pick up without waiting — improving throughput at peak times." } + ], + useCases: [ + "Window QR code linking to daily specials and pre-order form", + "Counter catering menu QR for office and event inquiries", + "Loyalty card QR for digital stamp collection", + "Provenance and maker story QR codes on artisan product labels", + "Review request QR on bags, wrapping, and receipts" + ], + tools: ["url-qr-code", "pdf-qr-code", "instagram-qr-code"], + faq: [ + { question: "What should a deli's window QR code link to?", answer: "A daily specials page updated each morning and a pre-order link. Customers who can plan ahead are more likely to commit to a purchase before they arrive." }, + { question: "How can QR codes help with catering sales?", answer: "A QR code linking to your catering menu and a simple inquiry form on your counter and website converts browsing office workers into catering clients." }, + { question: "Can QR codes replace printed menus in a deli?", answer: "For daily-changing specials, yes. A dynamic QR menu is always current, looks clean, and saves daily printing costs without sacrificing the handcrafted feel of a good deli." } + ], + placementTips: [ + "Post a daily specials QR code on the front window at eye level", + "Display a catering inquiry QR prominently on the counter and near artisan products", + "Print loyalty QR codes on every bag and receipt" + ] + }, + { + slug: "resorts", + name: "Resorts", + title: "QR Codes for Resorts", + metaTitle: "QR Codes for Resorts: Guest Guides, Activity Booking, and In-Room Services", + metaDescription: "Help resorts use QR codes for digital welcome guides, activity bookings, in-room service menus, WiFi access, and guest feedback collection.", + headline: "QR Codes for Resorts: Every Guest Touch Point Should Be Seamlessly Connected", + subheadline: "From arrival to checkout, dynamic QR codes deliver the right information and booking options exactly when guests need them.", + heroImage: "/marketing/industries/resorts.png", + statistics: [ + { value: "91%", label: "of resort guests consult in-room materials for activity and dining options" }, + { value: "4x", label: "More activity bookings when QR codes are placed at poolside and in rooms" }, + { value: "38%", label: "of resort reviews mention quality of information and ease of access" } + ], + benefits: [ + { title: "Paperless Guest Compendium", description: "Replace thick in-room binders with a single QR code on the bedside table linking to a digital guest guide — always current, never outdated." }, + { title: "Activity and Dining Upsells", description: "QR codes at the pool, spa, and reception desk linking to activity booking pages consistently increase ancillary revenue per guest." }, + { title: "Instant Feedback Collection", description: "A QR code on the checkout invoice captures feedback at departure — before the review motivation fades on the journey home." } + ], + useCases: [ + "In-room QR codes replacing printed guest compendiums", + "Pool and spa signage linking to activity and treatment bookings", + "WiFi QR codes framed at reception and in every room", + "Restaurant and bar QR menus at tables and poolside", + "Checkout feedback QR codes on invoice cards" + ], + tools: ["wifi-qr-code", "url-qr-code", "pdf-qr-code"], + faq: [ + { question: "What is the best QR code use case for a resort?", answer: "An in-room digital compendium QR code replacing the printed binder delivers the most operational savings and guest satisfaction improvement simultaneously." }, + { question: "How do QR codes increase resort ancillary revenue?", answer: "QR codes placed at high-dwell locations — pool loungers, spa waiting areas, restaurant tables — drive spontaneous activity and treatment bookings that guests wouldn't otherwise make." }, + { question: "Can QR codes be used for checkout feedback at resorts?", answer: "Yes. A QR code on the checkout invoice linking to a brief satisfaction survey captures feedback at the highest-motivation moment before guests disperse." } + ], + placementTips: [ + "Place in-room compendium QR codes on the bedside table and minibar area", + "Mount activity booking QR codes at pool entrances and spa reception", + "Include WiFi QR codes in every room — framed cards are most professional" + ] + }, + { + slug: "toy-stores", + name: "Toy Stores", + title: "QR Codes for Toy Stores", + metaTitle: "QR Codes for Toy Stores: Age Guides, Gift Ideas, and Assembly Instructions", + metaDescription: "Help toy stores use QR codes on displays and packaging to deliver age guides, gift recommendations, video demos, and assembly instructions.", + headline: "QR Codes for Toy Stores: Help Parents Find the Perfect Gift Without Asking Staff", + subheadline: "Age guides, video demos, and gift recommendation quizzes — QR codes on every display let parents self-serve and buy with confidence.", + heroImage: "/marketing/industries/toy-stores.png", + statistics: [ + { value: "76%", label: "of toy purchases are made by parents uncertain about age suitability" }, + { value: "3x", label: "Higher conversion when video demos are linked from product displays" }, + { value: "55%", label: "of toy store customers are gift buyers visiting without the recipient" } + ], + benefits: [ + { title: "Age Suitability Guides", description: "A QR code on display shelves links to age-by-age gift guides — removing the most common hesitation that prevents a purchase." }, + { title: "Video Demos That Sell", description: "Link product display QR codes to unboxing and play demonstration videos — letting the toy sell itself without staff involvement." }, + { title: "Assembly Instructions On Demand", description: "A QR code on packaging linking to step-by-step assembly videos reduces returns and post-purchase frustration." } + ], + useCases: [ + "Shelf and display QR codes linking to age guides and gift recommendations", + "Product packaging QR codes with video unboxings and demos", + "Assembly instruction QR codes replacing printed manuals", + "In-store gift quiz QR linking to curated gift recommendation tool", + "Post-purchase review QR codes on receipts and inserts" + ], + tools: ["url-qr-code", "youtube-qr-code", "pdf-qr-code"], + faq: [ + { question: "How do QR codes help sell more toys?", answer: "Video demonstrations linked from product displays are the most effective QR use case in toy retail — seeing a toy in action converts hesitant buyers faster than any product description." }, + { question: "Can QR codes reduce toy returns?", answer: "Yes. Assembly instruction QR codes linking to video guides reduce setup frustration, which is one of the most common reasons for returns of complex toys." }, + { question: "What QR content works best for gift buyers in toy stores?", answer: "Age-based gift guides and curated recommendation quizzes address the core anxiety of gift buyers who don't know the child well. These convert browsers into confident purchasers." } + ], + placementTips: [ + "Place QR age guide codes at eye level on every shelf section organized by age group", + "Apply video demo QR codes to the front of product display boxes", + "Include assembly instruction QR codes on packaging inserts and gift receipts" + ] + }, + { + slug: "sporting-goods", + name: "Sporting Goods Stores", + title: "QR Codes for Sporting Goods Stores", + metaTitle: "QR Codes for Sporting Goods Stores: Size Guides, Demos, and Expert Advice", + metaDescription: "Help sporting goods retailers use QR codes on displays and product tags to deliver size guides, video demos, expert reviews, and warranty registration.", + headline: "QR Codes for Sporting Goods Stores: Give Every Shopper Access to Expert Knowledge", + subheadline: "Size guides, fit advisors, and performance comparison videos — QR codes on every product let serious athletes self-qualify purchases without staff.", + heroImage: "/marketing/industries/sporting-goods.png", + statistics: [ + { value: "82%", label: "of sporting goods buyers research specifications before visiting a store" }, + { value: "4x", label: "Higher purchase confidence when size guides are QR-accessible in store" }, + { value: "60%", label: "of athletic equipment purchases involve a comparison with at least one competitor" } + ], + benefits: [ + { title: "In-Store Size and Fit Guides", description: "A QR code on shoe walls and apparel racks links to precise sizing guides, width charts, and fit recommendations — reducing returns and staff interruptions." }, + { title: "Performance Comparison Content", description: "Link display QR codes to product comparison videos and expert reviews so technically-minded shoppers get the depth they need without monopolizing staff time." }, + { title: "Warranty and Registration", description: "A QR code inside equipment packaging links directly to warranty registration, removing post-purchase friction and building a direct customer relationship." } + ], + useCases: [ + "Shoe and apparel wall QR codes linking to size guides and fit tools", + "Equipment display QR codes with performance comparison videos", + "Product packaging QR links to warranty registration pages", + "Clearance section QR codes linking to remaining size availability online", + "Club and team sales QR codes for bulk order inquiries" + ], + tools: ["url-qr-code", "youtube-qr-code", "pdf-qr-code"], + faq: [ + { question: "What sporting goods QR code placement drives the most sales?", answer: "Shoe wall size guide QR codes have the highest measurable impact — fit uncertainty is the number one reason athletic footwear purchases are abandoned in store." }, + { question: "Can QR codes help with team and club bulk orders?", answer: "Yes. A QR code on team equipment displays linking to a bulk order inquiry form captures club purchasing decisions that would otherwise require a sales call." }, + { question: "How do QR codes reduce sporting goods returns?", answer: "Size guide and fit advisor QR codes on apparel and footwear displays address the most common return reason. Customers who buy the right size don't return it." } + ], + placementTips: [ + "Apply QR size guide codes to shoe display walls at eye level per category", + "Place performance comparison QR codes on premium equipment shelf-edge labels", + "Include warranty registration QR codes on packaging inserts for all major equipment" + ] + }, +``` + +--- + +## Remaining Tier 2 (build after above) + +conferences, personal-trainers, music-schools, language-schools, seminars, marketing-agencies, nonprofits, musicians, sports-clubs, interior-designers, nutritionists, life-coaches, dance-schools, real-estate-developers, online-courses, childcare, recruitment-agencies + +--- + +## Hub Page Updates Needed + +Add new slugs to `/qr-code-for/page.tsx` under existing or new categories: + +### New category: "Fitness, Wellness & Active Services" +``` +pilates-studios, crossfit, massage-therapists, dog-trainers +``` + +### Extend "Food, Hospitality, and Guest Experience" +``` +ice-cream-shops, delis, resorts, vacation-rentals, hostels +``` + +### Extend "Services, Real Estate, and Lead Capture" +``` +plumbers, electricians, roofing-companies, moving-companies, cleaning-services, +auto-repair, landscaping, construction-companies, financial-advisors, architects +``` + +### Extend "Retail, Packaging, and Product Discovery" +``` +gift-shops, toy-stores, bike-shops, sporting-goods +``` + +### Extend "Education, Culture, and Public Spaces" +``` +escape-rooms, aquariums, tutors +``` + +### Add to "Services" or new "Hospitality & Lifestyle" +``` +hair-salons, wedding-venues, hostels, sports-bars, laundromats +``` + +--- + +## CTA Map (add to `[industry]/page.tsx`) + +```ts +// industryPrimaryCtas additions +"plumbers": { href: "/tools/call-qr-code-generator", label: "Create a Call QR Code for Your Van" }, +"roofing-companies": { href: "/tools/url-qr-code", label: "Create a Yard Sign QR Code" }, +"electricians": { href: "/tools/call-qr-code-generator", label: "Create a Call QR Code" }, +"moving-companies": { href: "/qr-code-tracking", label: "Track Flyer and Truck QR Scans" }, +"financial-advisors": { href: "/tools/vcard-qr-code", label: "Create a vCard QR Code" }, +"construction-companies": { href: "/qr-code-tracking", label: "Track Site Hoarding QR Scans" }, +"cleaning-services": { href: "/tools/url-qr-code", label: "Create a Booking QR Code" }, +"auto-repair": { href: "/tools/url-qr-code", label: "Create a Service Booking QR Code" }, +"landscaping": { href: "/tools/url-qr-code", label: "Create a Yard Sign QR Code" }, +"tutors": { href: "/tools/url-qr-code", label: "Create a Booking QR Code" }, +"dog-trainers": { href: "/tools/url-qr-code", label: "Create a Class Booking QR Code" }, +"vacation-rentals": { href: "/tools/wifi-qr-code", label: "Create a WiFi QR Code" }, +"massage-therapists": { href: "/tools/url-qr-code", label: "Create a Rebooking QR Code" }, +"escape-rooms": { href: "/tools/url-qr-code", label: "Create a Booking QR Code" }, +"pilates-studios": { href: "/tools/url-qr-code", label: "Create a Free Trial Booking QR Code" }, +"wedding-venues": { href: "/tools/url-qr-code", label: "Create a Tour Booking QR Code" }, +"architects": { href: "/tools/vcard-qr-code", label: "Create a Portfolio vCard QR Code" }, +"hair-salons": { href: "/tools/wifi-qr-code", label: "Create a Salon WiFi QR Code" }, +"hostels": { href: "/tools/wifi-qr-code", label: "Create a Hostel WiFi QR Code" }, +"crossfit": { href: "/tools/url-qr-code", label: "Create a Free Trial QR Code" }, +"sports-bars": { href: "/tools/url-qr-code", label: "Create a Menu QR Code" }, +"laundromats": { href: "/tools/wifi-qr-code", label: "Create a WiFi QR Code" }, +"aquariums": { href: "/tools/url-qr-code", label: "Create an Exhibit QR Code" }, +"gift-shops": { href: "/tools/url-qr-code", label: "Create a Product QR Code" }, +"bike-shops": { href: "/tools/url-qr-code", label: "Create a Service Booking QR Code" }, +"ice-cream-shops": { href: "/tools/url-qr-code", label: "Create a Daily Menu QR Code" }, +"delis": { href: "/tools/url-qr-code", label: "Create a Daily Specials QR Code" }, +"resorts": { href: "/tools/wifi-qr-code", label: "Create a Resort WiFi QR Code" }, +"toy-stores": { href: "/tools/url-qr-code", label: "Create a Product Demo QR Code" }, +"sporting-goods": { href: "/tools/url-qr-code", label: "Create a Size Guide QR Code" }, +``` + +--- + +## Notes + +- `heroImage` paths follow pattern `/marketing/industries/[slug].png` — images need to be added to `/public/marketing/industries/` +- All `germanKeyword` fields omitted — add if German SEO pages are in scope +- `industryPages` export in `industry-pages.ts` should export `allIndustries` (check current export alias) diff --git a/AI-SEO-CONTENT-PRIORITIES.md b/AI-SEO-CONTENT-PRIORITIES.md index a29c196..76c1e36 100644 --- a/AI-SEO-CONTENT-PRIORITIES.md +++ b/AI-SEO-CONTENT-PRIORITIES.md @@ -1,48 +1,48 @@ -# AI SEO Content Priorities - -Last updated: 2026-04-14 - -Purpose: prioritize the next content pass after the raw rollout, visible freshness fix, and `llms.txt` expansion. - -## Priority 1 - -1. `qr-code-scan-statistics-2026` -Reason: strongest citation potential because statistics pages are the easiest source type for LLMs to quote. -Next move: verify every stat has a current primary source and an explicit inline citation in the article body. - -2. `qr-code-analytics` -Reason: high commercial intent and strong fit for QR Master's differentiation around measurement and ROI. -Next move: sharpen answer blocks around scan metrics, dashboards, and campaign decisions. - -3. `qr-code-marketing` -Reason: bridges informational and product-intent queries around campaign ROI, CTAs, and tracking. -Next move: tighten the first-screen answer and add more comparative guidance for common campaign use cases. - -4. `free-vs-paid-qr-generator` -Reason: strong comparison intent and a natural path into dynamic QR, tracking, and upgrade logic. -Next move: strengthen side-by-side comparison blocks and source any claims about reliability or limits. - -## Priority 2 - -5. `best-qr-code-generator-2026` -Reason: "best" queries are heavily represented in AI answers but need balanced, defensible comparisons. -Next move: review neutrality, keep claims sourced, and make evaluation criteria more explicit. - -6. `bulk-qr-code-generator-excel` -Reason: strong workflow intent and direct fit with a high-value product capability. -Next move: improve step extraction and source support for operational best practices where possible. - -7. `qr-code-events` -Reason: clear use-case page with practical intent and good overlap with tracking and dynamic QR value. -Next move: add stronger answer passages around tickets, check-in, UTMs, and event ROI. - -8. `qr-code-security` -Reason: security content earns citations when it is current, specific, and source-heavy. -Next move: validate the quishing data points and make safe-deployment recommendations easier to quote. - -## Review Criteria - -- The first 40 to 60 words should answer the core query directly. -- Major claims should point to a primary source, not an unsourced assertion. -- Comparison and checklist content should prefer tables or tightly structured blocks over long prose. -- Posts that support product evaluation should link clearly into the relevant QR Master marketing pages. +# AI SEO Content Priorities + +Last updated: 2026-04-14 + +Purpose: prioritize the next content pass after the raw rollout, visible freshness fix, and `llms.txt` expansion. + +## Priority 1 + +1. `qr-code-scan-statistics-2026` +Reason: strongest citation potential because statistics pages are the easiest source type for LLMs to quote. +Next move: verify every stat has a current primary source and an explicit inline citation in the article body. + +2. `qr-code-analytics` +Reason: high commercial intent and strong fit for QR Master's differentiation around measurement and ROI. +Next move: sharpen answer blocks around scan metrics, dashboards, and campaign decisions. + +3. `qr-code-marketing` +Reason: bridges informational and product-intent queries around campaign ROI, CTAs, and tracking. +Next move: tighten the first-screen answer and add more comparative guidance for common campaign use cases. + +4. `free-vs-paid-qr-generator` +Reason: strong comparison intent and a natural path into dynamic QR, tracking, and upgrade logic. +Next move: strengthen side-by-side comparison blocks and source any claims about reliability or limits. + +## Priority 2 + +5. `best-qr-code-generator-2026` +Reason: "best" queries are heavily represented in AI answers but need balanced, defensible comparisons. +Next move: review neutrality, keep claims sourced, and make evaluation criteria more explicit. + +6. `bulk-qr-code-generator-excel` +Reason: strong workflow intent and direct fit with a high-value product capability. +Next move: improve step extraction and source support for operational best practices where possible. + +7. `qr-code-events` +Reason: clear use-case page with practical intent and good overlap with tracking and dynamic QR value. +Next move: add stronger answer passages around tickets, check-in, UTMs, and event ROI. + +8. `qr-code-security` +Reason: security content earns citations when it is current, specific, and source-heavy. +Next move: validate the quishing data points and make safe-deployment recommendations easier to quote. + +## Review Criteria + +- The first 40 to 60 words should answer the core query directly. +- Major claims should point to a primary source, not an unsourced assertion. +- Comparison and checklist content should prefer tables or tightly structured blocks over long prose. +- Posts that support product evaluation should link clearly into the relevant QR Master marketing pages. diff --git a/AI-SEO-TOP5-REWRITE-PLAN.md b/AI-SEO-TOP5-REWRITE-PLAN.md index e503466..95f03ab 100644 --- a/AI-SEO-TOP5-REWRITE-PLAN.md +++ b/AI-SEO-TOP5-REWRITE-PLAN.md @@ -1,419 +1,419 @@ -# AI SEO Top 5 Rewrite Plan - -Last updated: 2026-04-14 - -Method: `ai-seo` - -Goal: define the exact AEO/GEO rewrite moves for the five blog posts with the strongest combination of keyword demand, product fit, and AI citation potential. - -## 1. `dynamic-vs-static-qr-codes` - -File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:707) - -### Target queries - -- `dynamic qr code` -- `dynamic qr code generator` -- `create dynamic qr code` -- `static qr codes` -- `editable qr code` - -### What already works - -- Strong `quickAnswer` -- Clear FAQ intent -- Good internal link path into tracking and comparison content -- Sources already exist - -### Exact sections to change - -1. Replace the opening body paragraph with a direct definition + decision summary. -Current issue: the intro starts with a conversational framing instead of a highly extractable answer block. -Change to: a 40 to 60 word paragraph that answers: -"A static QR code cannot be edited after printing. A dynamic QR code can be updated, tracked, and reused. For business campaigns, menus, and promotions, dynamic QR codes are usually the better choice because they prevent reprints and enable analytics." - -2. Add an early comparison table directly after the intro. -New section: -`## Static vs Dynamic QR Code Comparison` -Include rows for: -- editable after printing -- analytics -- best use case -- risk of reprint cost -- ideal for marketing -- ideal for permanent utility use - -3. Add a decision section that maps user intent to format choice. -New section: -`## When To Use Static QR Codes` -New section: -`## When To Use Dynamic QR Codes` -Each section should open with a one-sentence answer, then 3 to 5 bullets. - -4. Add a cost/risk section. -New section: -`## Why Dynamic QR Codes Save Money` -This should translate product value into a business outcome: -- changed menu URL -- campaign landing page update -- print correction avoidance - -5. Expand FAQ to cover high-intent objections. -Add: -- "Are dynamic QR codes worth paying for?" -- "Can a dynamic QR code become inactive?" -- "Is a static QR code ever better than a dynamic one?" - -### AEO focus - -- Make the first screen answer self-contained. -- Prefer table + decision logic over generic prose. -- Keep the distinction between "editable" and "trackable" explicit in every major section. - -### Authority upgrades - -- Add at least one explicit sourced statement in the intro or first comparison section. -- Where possible, cite original sources for adoption or tracking claims rather than broad vendor summaries. - -### Internal linking - -- Link to `/dynamic-qr-code-generator` -- Link to `/qr-code-tracking` -- Link to `/pricing` -- Keep links to `trackable-qr-codes` and `free-vs-paid-qr-generator` - -## 2. `qr-code-tracking-guide-2025` - -File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:653) - -### Target queries - -- `qr code tracking` -- `track qr scans` -- `dynamic qr code analytics` -- `google analytics qr` -- `utm qr codes` - -### What already works - -- High commercial relevance -- Strong `quickAnswer` -- Good `keySteps` -- FAQ already aligned to the query - -### Exact sections to change - -1. Replace `Why Track QR Codes?` with a sharper query-matching heading. -Rename to: -`## What Is QR Code Tracking?` -The first paragraph should define tracking in one extractable block: -"QR code tracking means measuring what happens after a scan. With a dynamic QR code, you can log scan time, device type, location, and destination performance. If you also add UTM parameters, you can measure campaign attribution in tools like GA4." - -2. Split "tracking" and "analytics" clearly. -New section: -`## QR Code Tracking vs QR Code Analytics` -Reason: this is already in the FAQ and deserves a visible answer block because it is highly citable. - -3. Add a metrics section with a structured list. -New section: -`## What Metrics Should You Track?` -Use a table with: -- total scans -- unique scans -- scan time -- device type -- location -- landing page conversions -- cost per conversion - -4. Add an implementation section for GA4 and UTMs. -New section: -`## How To Track QR Codes In Google Analytics 4` -Keep it procedural: -- create dynamic QR destination -- append UTM parameters -- define conversion event in GA4 -- compare placements - -5. Add a limitations section. -New section: -`## What QR Tracking Can And Cannot Measure` -This improves trust and helps citation because it sounds more rigorous. - -### AEO focus - -- The first H2 should match the core query exactly. -- One section should answer "Can I track a static QR code?" before the FAQ. -- Use one metric table instead of only prose. - -### Authority upgrades - -- Keep Bitly and Google Analytics references, but tighten them around specific claims. -- If scan or attribution claims are broad, attach dates and exact measurement context. - -### Internal linking - -- Link to `/qr-code-tracking` -- Link to `utm-parameter-qr-codes` -- Link to `qr-code-analytics` -- Link to `/dynamic-qr-code-generator` - -## 3. `bulk-qr-code-generator-excel` - -File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:759) - -### Target queries - -- `bulk qr code generator` -- `qr code generator bulk` -- `qr code generator excel` -- `qr codes from excel` -- `csv qr code generator` - -### What already works - -- Strong workflow intent -- Good step list -- Good FAQ coverage -- Strong product fit for a paid/business feature - -### Exact sections to change - -1. Rewrite the intro to answer the exact workflow query faster. -Current issue: the intro starts with narrative scale examples before the direct instruction. -Change to: -"To generate bulk QR codes from Excel, prepare a spreadsheet with one row per QR destination, export it as CSV, upload it to a bulk QR generator, and download the generated batch. This is the standard workflow for product labels, badges, inventory, and large campaigns." - -2. Add a file format section. -New section: -`## Excel vs CSV: Which Format Do You Actually Need?` -This should explicitly explain that CSV is usually the upload format even when users say Excel. - -3. Add a required-column section. -New section: -`## Recommended Spreadsheet Columns` -Use a table: -- `url` -- `label` -- `campaign` -- `utm_source` -- `utm_medium` -- `utm_campaign` -- optional `filename` - -4. Add a common-errors section. -New section: -`## Common Bulk QR Upload Errors` -Include: -- broken URLs -- inconsistent columns -- spaces in headers -- mixed protocols -- untested redirect destinations - -5. Add a dynamic-vs-static decision block for batches. -New section: -`## Should Bulk QR Codes Be Static Or Dynamic?` -This should explicitly tie bulk use cases to tracking, editing, and reprint risk. - -6. Add a QA checklist before production. -New section: -`## Pre-Print Quality Check` -Use a numbered list with 5 to 7 checks. - -### AEO focus - -- This post should behave like a procedural answer, not a generic guide. -- The column table and error list are likely the most citable parts. -- Make "Excel" and "CSV" relationship explicit because users search for Excel but often need CSV. - -### Authority upgrades - -- Existing sources are serviceable, but add at least one stronger operational source if available. -- Where no authoritative external source exists, use precise first-party workflow guidance without overclaiming. - -### Internal linking - -- Link to `/bulk-qr-code-generator` -- Link to `qr-code-print-size-guide` -- Link to `qr-code-tracking-guide-2025` -- Link to `dynamic-vs-static-qr-codes` - -## 4. `vcard-qr-code-generator` - -File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:504) - -### Target queries - -- `vcard qr code generator` -- `vcard qr code` -- `vcard generator` -- `vcard qr` -- `create vcard qr code` - -### What already works - -- Good keyword fit -- Good query-to-tool match -- Strong utility use case - -### Exact sections to change - -1. Tighten the opening definition. -The first paragraph should answer: -"A vCard QR code stores contact details such as name, phone number, email, company, and website. When someone scans it, they can save the contact directly to their phone without typing." - -2. Add a static-vs-dynamic contact section. -New section: -`## Static vs Dynamic vCard QR Codes` -Cover: -- when static is enough -- when dynamic is better -- when tracking matters - -3. Add a field breakdown section. -New section: -`## What Information Can A vCard QR Code Include?` -Use a compact list or table: -- full name -- phone -- email -- company -- job title -- website -- address -- social profile - -4. Add a use-case section. -New section: -`## Best Use Cases For vCard QR Codes` -Examples: -- business cards -- trade shows -- packaging inserts -- storefronts -- service professionals - -5. Add a scannability and contact-save section. -New section: -`## Best Practices For High Save Rates` -Focus on CTA language: -- scan to save contact -- add me instantly -- connect without typing - -### AEO focus - -- Treat this as a definitional + use-case post, not just a tool page. -- The definition block and field list are the most important extractable components. - -### Authority upgrades - -- If current sources are weak or missing, add at least one standards-oriented or platform-oriented source. -- Avoid unsupported claims around conversion unless sourced. - -### Internal linking - -- Link to the vCard tool page -- Link to `business-card-qr-code` -- Link to `dynamic-vs-static-qr-codes` -- Link to `/pricing` if dynamic/contact-management features are relevant - -## 5. `qr-code-print-size-guide` - -File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:604) - -### Target queries - -- `minimum qr code size` -- `qr code print size` -- `qr code size guide` -- `qr code scanning distance` - -### What already works - -- Very strong query structure -- Excellent snippet potential -- Good `quickAnswer` -- Good FAQ fit - -### Exact sections to change - -1. Keep the 10:1 rule, but make it the first body paragraph in exact answer form. -Suggested phrasing: -"The standard starting rule for QR print size is 10:1: the code should be about one-tenth of the expected scanning distance. A QR code scanned from 2 meters away should usually be around 20 centimeters wide." - -2. Add a distance-to-size table immediately after the intro. -New section: -`## QR Code Size Chart By Scanning Distance` -Include examples for: -- 20 cm -- 50 cm -- 1 m -- 2 m -- 5 m - -3. Add format-specific minimums. -New section: -`## Minimum QR Code Sizes For Common Print Formats` -Use rows for: -- business card -- flyer -- poster -- packaging -- menu stand -- window signage - -4. Add a density warning section. -New section: -`## Why More Data Requires A Larger QR Code` -Cover: -- long URLs -- vCard payloads -- WiFi payloads -- error correction tradeoffs - -5. Add a print-production checklist. -New section: -`## Print Checklist Before You Go Live` -Include: -- SVG preferred -- 300 DPI minimum for raster -- quiet zone intact -- strong contrast -- test in real lighting -- test with average phones, not only flagship devices - -### AEO focus - -- This post should be built around tables and formulas, not narrative. -- The size chart is likely the strongest snippet and AI Overview asset. -- Keep measurements concrete and example-heavy. - -### Authority upgrades - -- If possible, support the 10:1 rule with an external reference or state it clearly as an operational best-practice baseline. -- Avoid over-precision if it is based on heuristics rather than a standard. - -### Internal linking - -- Link to `business-card-qr-code` -- Link to `qr-code-restaurant-menu` -- Link to `bulk-qr-code-generator-excel` -- Link to relevant tool or generator pages - -## Execution Order - -1. `dynamic-vs-static-qr-codes` -2. `qr-code-tracking-guide-2025` -3. `bulk-qr-code-generator-excel` -4. `qr-code-print-size-guide` -5. `vcard-qr-code-generator` - -## Acceptance Criteria - -- The first paragraph on each post answers the target query directly. -- Each post includes at least one visibly structured block that is easy to quote: - table, checklist, comparison block, or metric summary. -- Claims that imply data, performance, or market adoption are tied to a source. -- The post clearly routes users into the relevant QR Master product or feature page. +# AI SEO Top 5 Rewrite Plan + +Last updated: 2026-04-14 + +Method: `ai-seo` + +Goal: define the exact AEO/GEO rewrite moves for the five blog posts with the strongest combination of keyword demand, product fit, and AI citation potential. + +## 1. `dynamic-vs-static-qr-codes` + +File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:707) + +### Target queries + +- `dynamic qr code` +- `dynamic qr code generator` +- `create dynamic qr code` +- `static qr codes` +- `editable qr code` + +### What already works + +- Strong `quickAnswer` +- Clear FAQ intent +- Good internal link path into tracking and comparison content +- Sources already exist + +### Exact sections to change + +1. Replace the opening body paragraph with a direct definition + decision summary. +Current issue: the intro starts with a conversational framing instead of a highly extractable answer block. +Change to: a 40 to 60 word paragraph that answers: +"A static QR code cannot be edited after printing. A dynamic QR code can be updated, tracked, and reused. For business campaigns, menus, and promotions, dynamic QR codes are usually the better choice because they prevent reprints and enable analytics." + +2. Add an early comparison table directly after the intro. +New section: +`## Static vs Dynamic QR Code Comparison` +Include rows for: +- editable after printing +- analytics +- best use case +- risk of reprint cost +- ideal for marketing +- ideal for permanent utility use + +3. Add a decision section that maps user intent to format choice. +New section: +`## When To Use Static QR Codes` +New section: +`## When To Use Dynamic QR Codes` +Each section should open with a one-sentence answer, then 3 to 5 bullets. + +4. Add a cost/risk section. +New section: +`## Why Dynamic QR Codes Save Money` +This should translate product value into a business outcome: +- changed menu URL +- campaign landing page update +- print correction avoidance + +5. Expand FAQ to cover high-intent objections. +Add: +- "Are dynamic QR codes worth paying for?" +- "Can a dynamic QR code become inactive?" +- "Is a static QR code ever better than a dynamic one?" + +### AEO focus + +- Make the first screen answer self-contained. +- Prefer table + decision logic over generic prose. +- Keep the distinction between "editable" and "trackable" explicit in every major section. + +### Authority upgrades + +- Add at least one explicit sourced statement in the intro or first comparison section. +- Where possible, cite original sources for adoption or tracking claims rather than broad vendor summaries. + +### Internal linking + +- Link to `/dynamic-qr-code-generator` +- Link to `/qr-code-tracking` +- Link to `/pricing` +- Keep links to `trackable-qr-codes` and `free-vs-paid-qr-generator` + +## 2. `qr-code-tracking-guide-2025` + +File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:653) + +### Target queries + +- `qr code tracking` +- `track qr scans` +- `dynamic qr code analytics` +- `google analytics qr` +- `utm qr codes` + +### What already works + +- High commercial relevance +- Strong `quickAnswer` +- Good `keySteps` +- FAQ already aligned to the query + +### Exact sections to change + +1. Replace `Why Track QR Codes?` with a sharper query-matching heading. +Rename to: +`## What Is QR Code Tracking?` +The first paragraph should define tracking in one extractable block: +"QR code tracking means measuring what happens after a scan. With a dynamic QR code, you can log scan time, device type, location, and destination performance. If you also add UTM parameters, you can measure campaign attribution in tools like GA4." + +2. Split "tracking" and "analytics" clearly. +New section: +`## QR Code Tracking vs QR Code Analytics` +Reason: this is already in the FAQ and deserves a visible answer block because it is highly citable. + +3. Add a metrics section with a structured list. +New section: +`## What Metrics Should You Track?` +Use a table with: +- total scans +- unique scans +- scan time +- device type +- location +- landing page conversions +- cost per conversion + +4. Add an implementation section for GA4 and UTMs. +New section: +`## How To Track QR Codes In Google Analytics 4` +Keep it procedural: +- create dynamic QR destination +- append UTM parameters +- define conversion event in GA4 +- compare placements + +5. Add a limitations section. +New section: +`## What QR Tracking Can And Cannot Measure` +This improves trust and helps citation because it sounds more rigorous. + +### AEO focus + +- The first H2 should match the core query exactly. +- One section should answer "Can I track a static QR code?" before the FAQ. +- Use one metric table instead of only prose. + +### Authority upgrades + +- Keep Bitly and Google Analytics references, but tighten them around specific claims. +- If scan or attribution claims are broad, attach dates and exact measurement context. + +### Internal linking + +- Link to `/qr-code-tracking` +- Link to `utm-parameter-qr-codes` +- Link to `qr-code-analytics` +- Link to `/dynamic-qr-code-generator` + +## 3. `bulk-qr-code-generator-excel` + +File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:759) + +### Target queries + +- `bulk qr code generator` +- `qr code generator bulk` +- `qr code generator excel` +- `qr codes from excel` +- `csv qr code generator` + +### What already works + +- Strong workflow intent +- Good step list +- Good FAQ coverage +- Strong product fit for a paid/business feature + +### Exact sections to change + +1. Rewrite the intro to answer the exact workflow query faster. +Current issue: the intro starts with narrative scale examples before the direct instruction. +Change to: +"To generate bulk QR codes from Excel, prepare a spreadsheet with one row per QR destination, export it as CSV, upload it to a bulk QR generator, and download the generated batch. This is the standard workflow for product labels, badges, inventory, and large campaigns." + +2. Add a file format section. +New section: +`## Excel vs CSV: Which Format Do You Actually Need?` +This should explicitly explain that CSV is usually the upload format even when users say Excel. + +3. Add a required-column section. +New section: +`## Recommended Spreadsheet Columns` +Use a table: +- `url` +- `label` +- `campaign` +- `utm_source` +- `utm_medium` +- `utm_campaign` +- optional `filename` + +4. Add a common-errors section. +New section: +`## Common Bulk QR Upload Errors` +Include: +- broken URLs +- inconsistent columns +- spaces in headers +- mixed protocols +- untested redirect destinations + +5. Add a dynamic-vs-static decision block for batches. +New section: +`## Should Bulk QR Codes Be Static Or Dynamic?` +This should explicitly tie bulk use cases to tracking, editing, and reprint risk. + +6. Add a QA checklist before production. +New section: +`## Pre-Print Quality Check` +Use a numbered list with 5 to 7 checks. + +### AEO focus + +- This post should behave like a procedural answer, not a generic guide. +- The column table and error list are likely the most citable parts. +- Make "Excel" and "CSV" relationship explicit because users search for Excel but often need CSV. + +### Authority upgrades + +- Existing sources are serviceable, but add at least one stronger operational source if available. +- Where no authoritative external source exists, use precise first-party workflow guidance without overclaiming. + +### Internal linking + +- Link to `/bulk-qr-code-generator` +- Link to `qr-code-print-size-guide` +- Link to `qr-code-tracking-guide-2025` +- Link to `dynamic-vs-static-qr-codes` + +## 4. `vcard-qr-code-generator` + +File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:504) + +### Target queries + +- `vcard qr code generator` +- `vcard qr code` +- `vcard generator` +- `vcard qr` +- `create vcard qr code` + +### What already works + +- Good keyword fit +- Good query-to-tool match +- Strong utility use case + +### Exact sections to change + +1. Tighten the opening definition. +The first paragraph should answer: +"A vCard QR code stores contact details such as name, phone number, email, company, and website. When someone scans it, they can save the contact directly to their phone without typing." + +2. Add a static-vs-dynamic contact section. +New section: +`## Static vs Dynamic vCard QR Codes` +Cover: +- when static is enough +- when dynamic is better +- when tracking matters + +3. Add a field breakdown section. +New section: +`## What Information Can A vCard QR Code Include?` +Use a compact list or table: +- full name +- phone +- email +- company +- job title +- website +- address +- social profile + +4. Add a use-case section. +New section: +`## Best Use Cases For vCard QR Codes` +Examples: +- business cards +- trade shows +- packaging inserts +- storefronts +- service professionals + +5. Add a scannability and contact-save section. +New section: +`## Best Practices For High Save Rates` +Focus on CTA language: +- scan to save contact +- add me instantly +- connect without typing + +### AEO focus + +- Treat this as a definitional + use-case post, not just a tool page. +- The definition block and field list are the most important extractable components. + +### Authority upgrades + +- If current sources are weak or missing, add at least one standards-oriented or platform-oriented source. +- Avoid unsupported claims around conversion unless sourced. + +### Internal linking + +- Link to the vCard tool page +- Link to `business-card-qr-code` +- Link to `dynamic-vs-static-qr-codes` +- Link to `/pricing` if dynamic/contact-management features are relevant + +## 5. `qr-code-print-size-guide` + +File reference: [src/lib/blog-data.ts](/abs/path/C:/Users/a931627/Documents/QRMASTER/src/lib/blog-data.ts:604) + +### Target queries + +- `minimum qr code size` +- `qr code print size` +- `qr code size guide` +- `qr code scanning distance` + +### What already works + +- Very strong query structure +- Excellent snippet potential +- Good `quickAnswer` +- Good FAQ fit + +### Exact sections to change + +1. Keep the 10:1 rule, but make it the first body paragraph in exact answer form. +Suggested phrasing: +"The standard starting rule for QR print size is 10:1: the code should be about one-tenth of the expected scanning distance. A QR code scanned from 2 meters away should usually be around 20 centimeters wide." + +2. Add a distance-to-size table immediately after the intro. +New section: +`## QR Code Size Chart By Scanning Distance` +Include examples for: +- 20 cm +- 50 cm +- 1 m +- 2 m +- 5 m + +3. Add format-specific minimums. +New section: +`## Minimum QR Code Sizes For Common Print Formats` +Use rows for: +- business card +- flyer +- poster +- packaging +- menu stand +- window signage + +4. Add a density warning section. +New section: +`## Why More Data Requires A Larger QR Code` +Cover: +- long URLs +- vCard payloads +- WiFi payloads +- error correction tradeoffs + +5. Add a print-production checklist. +New section: +`## Print Checklist Before You Go Live` +Include: +- SVG preferred +- 300 DPI minimum for raster +- quiet zone intact +- strong contrast +- test in real lighting +- test with average phones, not only flagship devices + +### AEO focus + +- This post should be built around tables and formulas, not narrative. +- The size chart is likely the strongest snippet and AI Overview asset. +- Keep measurements concrete and example-heavy. + +### Authority upgrades + +- If possible, support the 10:1 rule with an external reference or state it clearly as an operational best-practice baseline. +- Avoid over-precision if it is based on heuristics rather than a standard. + +### Internal linking + +- Link to `business-card-qr-code` +- Link to `qr-code-restaurant-menu` +- Link to `bulk-qr-code-generator-excel` +- Link to relevant tool or generator pages + +## Execution Order + +1. `dynamic-vs-static-qr-codes` +2. `qr-code-tracking-guide-2025` +3. `bulk-qr-code-generator-excel` +4. `qr-code-print-size-guide` +5. `vcard-qr-code-generator` + +## Acceptance Criteria + +- The first paragraph on each post answers the target query directly. +- Each post includes at least one visibly structured block that is easy to quote: + table, checklist, comparison block, or metric summary. +- Claims that imply data, performance, or market adoption are tied to a source. +- The post clearly routes users into the relevant QR Master product or feature page. diff --git a/DESIGN.md b/DESIGN.md index 2e73de5..635c1a6 100644 --- a/DESIGN.md +++ b/DESIGN.md @@ -1,322 +1,322 @@ -# Design System Inspired by Stripe - -## 1. Visual Theme & Atmosphere - -Stripe's website is the gold standard of fintech design -- a system that manages to feel simultaneously technical and luxurious, precise and warm. The page opens on a clean white canvas (`#ffffff`) with deep navy headings (`#061b31`) and a signature purple (`#533afd`) that functions as both brand anchor and interactive accent. This isn't the cold, clinical purple of enterprise software; it's a rich, saturated violet that reads as confident and premium. The overall impression is of a financial institution redesigned by a world-class type foundry. - -The custom `sohne-var` variable font is the defining element of Stripe's visual identity. Every text element enables the OpenType `"ss01"` stylistic set, which modifies character shapes for a distinctly geometric, modern feel. At display sizes (48px-56px), sohne-var runs at weight 300 -- an extraordinarily light weight for headlines that creates an ethereal, almost whispered authority. This is the opposite of the "bold hero headline" convention; Stripe's headlines feel like they don't need to shout. The negative letter-spacing (-1.4px at 56px, -0.96px at 48px) tightens the text into dense, engineered blocks. At smaller sizes, the system also uses weight 300 with proportionally reduced tracking, and tabular numerals via `"tnum"` for financial data display. - -What truly distinguishes Stripe is its shadow system. Rather than the flat or single-layer approach of most sites, Stripe uses multi-layer, blue-tinted shadows: the signature `rgba(50,50,93,0.25)` combined with `rgba(0,0,0,0.1)` creates shadows with a cool, almost atmospheric depth -- like elements are floating in a twilight sky. The blue-gray undertone of the primary shadow color (50,50,93) ties directly to the navy-purple brand palette, making even elevation feel on-brand. - -**Key Characteristics:** -- sohne-var with OpenType `"ss01"` on all text -- a custom stylistic set that defines the brand's letterforms -- Weight 300 as the signature headline weight -- light, confident, anti-convention -- Negative letter-spacing at display sizes (-1.4px at 56px, progressive relaxation downward) -- Blue-tinted multi-layer shadows using `rgba(50,50,93,0.25)` -- elevation that feels brand-colored -- Deep navy (`#061b31`) headings instead of black -- warm, premium, financial-grade -- Conservative border-radius (4px-8px) -- nothing pill-shaped, nothing harsh -- Ruby (`#ea2261`) and magenta (`#f96bee`) accents for gradient and decorative elements -- `SourceCodePro` as the monospace companion for code and technical labels - -## 2. Color Palette & Roles - -### Primary -- **Stripe Purple** (`#533afd`): Primary brand color, CTA backgrounds, link text, interactive highlights. A saturated blue-violet that anchors the entire system. -- **Deep Navy** (`#061b31`): `--hds-color-heading-solid`. Primary heading color. Not black, not gray -- a very dark blue that adds warmth and depth to text. -- **Pure White** (`#ffffff`): Page background, card surfaces, button text on dark backgrounds. - -### Brand & Dark -- **Brand Dark** (`#1c1e54`): `--hds-color-util-brand-900`. Deep indigo for dark sections, footer backgrounds, and immersive brand moments. -- **Dark Navy** (`#0d253d`): `--hds-color-core-neutral-975`. The darkest neutral -- almost-black with a blue undertone for maximum depth without harshness. - -### Accent Colors -- **Ruby** (`#ea2261`): `--hds-color-accentColorMode-ruby-icon-solid`. Warm red-pink for icons, alerts, and accent elements. -- **Magenta** (`#f96bee`): `--hds-color-accentColorMode-magenta-icon-gradientMiddle`. Vivid pink-purple for gradients and decorative highlights. -- **Magenta Light** (`#ffd7ef`): `--hds-color-util-accent-magenta-100`. Tinted surface for magenta-themed cards and badges. - -### Interactive -- **Primary Purple** (`#533afd`): Primary link color, active states, selected elements. -- **Purple Hover** (`#4434d4`): Darker purple for hover states on primary elements. -- **Purple Deep** (`#2e2b8c`): `--hds-color-button-ui-iconHover`. Dark purple for icon hover states. -- **Purple Light** (`#b9b9f9`): `--hds-color-action-bg-subduedHover`. Soft lavender for subdued hover backgrounds. -- **Purple Mid** (`#665efd`): `--hds-color-input-selector-text-range`. Range selector and input highlight color. - -### Neutral Scale -- **Heading** (`#061b31`): Primary headings, nav text, strong labels. -- **Label** (`#273951`): `--hds-color-input-text-label`. Form labels, secondary headings. -- **Body** (`#64748d`): Secondary text, descriptions, captions. -- **Success Green** (`#15be53`): Status badges, success indicators (with 0.2-0.4 alpha for backgrounds/borders). -- **Success Text** (`#108c3d`): Success badge text color. -- **Lemon** (`#9b6829`): `--hds-color-core-lemon-500`. Warning and highlight accent. - -### Surface & Borders -- **Border Default** (`#e5edf5`): Standard border color for cards, dividers, and containers. -- **Border Purple** (`#b9b9f9`): Active/selected state borders on buttons and inputs. -- **Border Soft Purple** (`#d6d9fc`): Subtle purple-tinted borders for secondary elements. -- **Border Magenta** (`#ffd7ef`): Pink-tinted borders for magenta-themed elements. -- **Border Dashed** (`#362baa`): Dashed borders for drop zones and placeholder elements. - -### Shadow Colors -- **Shadow Blue** (`rgba(50,50,93,0.25)`): The signature -- blue-tinted primary shadow color. -- **Shadow Dark Blue** (`rgba(3,3,39,0.25)`): Deeper blue shadow for elevated elements. -- **Shadow Black** (`rgba(0,0,0,0.1)`): Secondary shadow layer for depth reinforcement. -- **Shadow Ambient** (`rgba(23,23,23,0.08)`): Soft ambient shadow for subtle elevation. -- **Shadow Soft** (`rgba(23,23,23,0.06)`): Minimal ambient shadow for light lift. - -## 3. Typography Rules - -### Font Family -- **Primary**: `sohne-var`, with fallback: `SF Pro Display` -- **Monospace**: `SourceCodePro`, with fallback: `SFMono-Regular` -- **OpenType Features**: `"ss01"` enabled globally on all sohne-var text; `"tnum"` for tabular numbers on financial data and captions. - -### Hierarchy - -| Role | Font | Size | Weight | Line Height | Letter Spacing | Features | Notes | -|------|------|------|--------|-------------|----------------|----------|-------| -| Display Hero | sohne-var | 56px (3.50rem) | 300 | 1.03 (tight) | -1.4px | ss01 | Maximum size, whisper-weight authority | -| Display Large | sohne-var | 48px (3.00rem) | 300 | 1.15 (tight) | -0.96px | ss01 | Secondary hero headlines | -| Section Heading | sohne-var | 32px (2.00rem) | 300 | 1.10 (tight) | -0.64px | ss01 | Feature section titles | -| Sub-heading Large | sohne-var | 26px (1.63rem) | 300 | 1.12 (tight) | -0.26px | ss01 | Card headings, sub-sections | -| Sub-heading | sohne-var | 22px (1.38rem) | 300 | 1.10 (tight) | -0.22px | ss01 | Smaller section heads | -| Body Large | sohne-var | 18px (1.13rem) | 300 | 1.40 | normal | ss01 | Feature descriptions, intro text | -| Body | sohne-var | 16px (1.00rem) | 300-400 | 1.40 | normal | ss01 | Standard reading text | -| Button | sohne-var | 16px (1.00rem) | 400 | 1.00 (tight) | normal | ss01 | Primary button text | -| Button Small | sohne-var | 14px (0.88rem) | 400 | 1.00 (tight) | normal | ss01 | Secondary/compact buttons | -| Link | sohne-var | 14px (0.88rem) | 400 | 1.00 (tight) | normal | ss01 | Navigation links | -| Caption | sohne-var | 13px (0.81rem) | 400 | normal | normal | ss01 | Small labels, metadata | -| Caption Small | sohne-var | 12px (0.75rem) | 300-400 | 1.33-1.45 | normal | ss01 | Fine print, timestamps | -| Caption Tabular | sohne-var | 12px (0.75rem) | 300-400 | 1.33 | -0.36px | tnum | Financial data, numbers | -| Micro | sohne-var | 10px (0.63rem) | 300 | 1.15 (tight) | 0.1px | ss01 | Tiny labels, axis markers | -| Micro Tabular | sohne-var | 10px (0.63rem) | 300 | 1.15 (tight) | -0.3px | tnum | Chart data, small numbers | -| Nano | sohne-var | 8px (0.50rem) | 300 | 1.07 (tight) | normal | ss01 | Smallest labels | -| Code Body | SourceCodePro | 12px (0.75rem) | 500 | 2.00 (relaxed) | normal | -- | Code blocks, syntax | -| Code Bold | SourceCodePro | 12px (0.75rem) | 700 | 2.00 (relaxed) | normal | -- | Bold code, keywords | -| Code Label | SourceCodePro | 12px (0.75rem) | 500 | 2.00 (relaxed) | normal | uppercase | Technical labels | -| Code Micro | SourceCodePro | 9px (0.56rem) | 500 | 1.00 (tight) | normal | ss01 | Tiny code annotations | - -### Principles -- **Light weight as signature**: Weight 300 at display sizes is Stripe's most distinctive typographic choice. Where others use 600-700 to command attention, Stripe uses lightness as luxury -- the text is so confident it doesn't need weight to be authoritative. -- **ss01 everywhere**: The `"ss01"` stylistic set is non-negotiable. It modifies specific glyphs (likely alternate `a`, `g`, `l` forms) to create a more geometric, contemporary feel across all sohne-var text. -- **Two OpenType modes**: `"ss01"` for display/body text, `"tnum"` for tabular numerals in financial data. These never overlap -- a number in a paragraph uses ss01, a number in a data table uses tnum. -- **Progressive tracking**: Letter-spacing tightens proportionally with size: -1.4px at 56px, -0.96px at 48px, -0.64px at 32px, -0.26px at 26px, normal at 16px and below. -- **Two-weight simplicity**: Primarily 300 (body and headings) and 400 (UI/buttons). No bold (700) in the primary font -- SourceCodePro uses 500/700 for code contrast. - -## 4. Component Stylings - -### Buttons - -**Primary Purple** -- Background: `#533afd` -- Text: `#ffffff` -- Padding: 8px 16px -- Radius: 4px -- Font: 16px sohne-var weight 400, `"ss01"` -- Hover: `#4434d4` background -- Use: Primary CTA ("Start now", "Contact sales") - -**Ghost / Outlined** -- Background: transparent -- Text: `#533afd` -- Padding: 8px 16px -- Radius: 4px -- Border: `1px solid #b9b9f9` -- Font: 16px sohne-var weight 400, `"ss01"` -- Hover: background shifts to `rgba(83,58,253,0.05)` -- Use: Secondary actions - -**Transparent Info** -- Background: transparent -- Text: `#2874ad` -- Padding: 8px 16px -- Radius: 4px -- Border: `1px solid rgba(43,145,223,0.2)` -- Use: Tertiary/info-level actions - -**Neutral Ghost** -- Background: transparent (`rgba(255,255,255,0)`) -- Text: `rgba(16,16,16,0.3)` -- Padding: 8px 16px -- Radius: 4px -- Outline: `1px solid rgb(212,222,233)` -- Use: Disabled or muted actions - -### Cards & Containers -- Background: `#ffffff` -- Border: `1px solid #e5edf5` (standard) or `1px solid #061b31` (dark accent) -- Radius: 4px (tight), 5px (standard), 6px (comfortable), 8px (featured) -- Shadow (standard): `rgba(50,50,93,0.25) 0px 30px 45px -30px, rgba(0,0,0,0.1) 0px 18px 36px -18px` -- Shadow (ambient): `rgba(23,23,23,0.08) 0px 15px 35px 0px` -- Hover: shadow intensifies, often adding the blue-tinted layer - -### Badges / Tags / Pills -**Neutral Pill** -- Background: `#ffffff` -- Text: `#000000` -- Padding: 0px 6px -- Radius: 4px -- Border: `1px solid #f6f9fc` -- Font: 11px weight 400 - -**Success Badge** -- Background: `rgba(21,190,83,0.2)` -- Text: `#108c3d` -- Padding: 1px 6px -- Radius: 4px -- Border: `1px solid rgba(21,190,83,0.4)` -- Font: 10px weight 300 - -### Inputs & Forms -- Border: `1px solid #e5edf5` -- Radius: 4px -- Focus: `1px solid #533afd` or purple ring -- Label: `#273951`, 14px sohne-var -- Text: `#061b31` -- Placeholder: `#64748d` - -### Navigation -- Clean horizontal nav on white, sticky with blur backdrop -- Brand logotype left-aligned -- Links: sohne-var 14px weight 400, `#061b31` text with `"ss01"` -- Radius: 6px on nav container -- CTA: purple button right-aligned ("Sign in", "Start now") -- Mobile: hamburger toggle with 6px radius - -### Decorative Elements -**Dashed Borders** -- `1px dashed #362baa` (purple) for placeholder/drop zones -- `1px dashed #ffd7ef` (magenta) for magenta-themed decorative borders - -**Gradient Accents** -- Ruby-to-magenta gradients (`#ea2261` to `#f96bee`) for hero decorations -- Brand dark sections use `#1c1e54` backgrounds with white text - -## 5. Layout Principles - -### Spacing System -- Base unit: 8px -- Scale: 1px, 2px, 4px, 6px, 8px, 10px, 11px, 12px, 14px, 16px, 18px, 20px -- Notable: The scale is dense at the small end (every 2px from 4-12), reflecting Stripe's precision-oriented UI for financial data - -### Grid & Container -- Max content width: approximately 1080px -- Hero: centered single-column with generous padding, lightweight headlines -- Feature sections: 2-3 column grids for feature cards -- Full-width dark sections with `#1c1e54` background for brand immersion -- Code/dashboard previews as contained cards with blue-tinted shadows - -### Whitespace Philosophy -- **Precision spacing**: Unlike the vast emptiness of minimalist systems, Stripe uses measured, purposeful whitespace. Every gap is a deliberate typographic choice. -- **Dense data, generous chrome**: Financial data displays (tables, charts) are tightly packed, but the UI chrome around them is generously spaced. This creates a sense of controlled density -- like a well-organized spreadsheet in a beautiful frame. -- **Section rhythm**: White sections alternate with dark brand sections (`#1c1e54`), creating a dramatic light/dark cadence that prevents monotony without introducing arbitrary color. - -### Border Radius Scale -- Micro (1px): Fine-grained elements, subtle rounding -- Standard (4px): Buttons, inputs, badges, cards -- the workhorse -- Comfortable (5px): Standard card containers -- Relaxed (6px): Navigation, larger interactive elements -- Large (8px): Featured cards, hero elements -- Compound: `0px 0px 6px 6px` for bottom-rounded containers (tab panels, dropdown footers) - -## 6. Depth & Elevation - -| Level | Treatment | Use | -|-------|-----------|-----| -| Flat (Level 0) | No shadow | Page background, inline text | -| Ambient (Level 1) | `rgba(23,23,23,0.06) 0px 3px 6px` | Subtle card lift, hover hints | -| Standard (Level 2) | `rgba(23,23,23,0.08) 0px 15px 35px` | Standard cards, content panels | -| Elevated (Level 3) | `rgba(50,50,93,0.25) 0px 30px 45px -30px, rgba(0,0,0,0.1) 0px 18px 36px -18px` | Featured cards, dropdowns, popovers | -| Deep (Level 4) | `rgba(3,3,39,0.25) 0px 14px 21px -14px, rgba(0,0,0,0.1) 0px 8px 17px -8px` | Modals, floating panels | -| Ring (Accessibility) | `2px solid #533afd` outline | Keyboard focus ring | - -**Shadow Philosophy**: Stripe's shadow system is built on a principle of chromatic depth. Where most design systems use neutral gray or black shadows, Stripe's primary shadow color (`rgba(50,50,93,0.25)`) is a deep blue-gray that echoes the brand's navy palette. This creates shadows that don't just add depth -- they add brand atmosphere. The multi-layer approach pairs this blue-tinted shadow with a pure black secondary layer (`rgba(0,0,0,0.1)`) at a different offset, creating a parallax-like depth where the branded shadow sits farther from the element and the neutral shadow sits closer. The negative spread values (-30px, -18px) ensure shadows don't extend beyond the element's footprint horizontally, keeping elevation vertical and controlled. - -### Decorative Depth -- Dark brand sections (`#1c1e54`) create immersive depth through background color contrast -- Gradient overlays with ruby-to-magenta transitions for hero decorations -- Shadow color `rgba(0,55,112,0.08)` (`--hds-color-shadow-sm-top`) for top-edge shadows on sticky elements - -## 7. Do's and Don'ts - -### Do -- Use sohne-var with `"ss01"` on every text element -- the stylistic set IS the brand -- Use weight 300 for all headlines and body text -- lightness is the signature -- Apply blue-tinted shadows (`rgba(50,50,93,0.25)`) for all elevated elements -- Use `#061b31` (deep navy) for headings instead of `#000000` -- the warmth matters -- Keep border-radius between 4px-8px -- conservative rounding is intentional -- Use `"tnum"` for any tabular/financial number display -- Layer shadows: blue-tinted far + neutral close for depth parallax -- Use `#533afd` purple as the primary interactive/CTA color - -### Don't -- Don't use weight 600-700 for sohne-var headlines -- weight 300 is the brand voice -- Don't use large border-radius (12px+, pill shapes) on cards or buttons -- Stripe is conservative -- Don't use neutral gray shadows -- always tint with blue (`rgba(50,50,93,...)`) -- Don't skip `"ss01"` on any sohne-var text -- the alternate glyphs define the personality -- Don't use pure black (`#000000`) for headings -- always `#061b31` deep navy -- Don't use warm accent colors (orange, yellow) for interactive elements -- purple is primary -- Don't apply positive letter-spacing at display sizes -- Stripe tracks tight -- Don't use the magenta/ruby accents for buttons or links -- they're decorative/gradient only - -## 8. Responsive Behavior - -### Breakpoints -| Name | Width | Key Changes | -|------|-------|-------------| -| Mobile | <640px | Single column, reduced heading sizes, stacked cards | -| Tablet | 640-1024px | 2-column grids, moderate padding | -| Desktop | 1024-1280px | Full layout, 3-column feature grids | -| Large Desktop | >1280px | Centered content with generous margins | - -### Touch Targets -- Buttons use comfortable padding (8px-16px vertical) -- Navigation links at 14px with adequate spacing -- Badges have 6px horizontal padding minimum for tap targets -- Mobile nav toggle with 6px radius button - -### Collapsing Strategy -- Hero: 56px display -> 32px on mobile, weight 300 maintained -- Navigation: horizontal links + CTAs -> hamburger toggle -- Feature cards: 3-column -> 2-column -> single column stacked -- Dark brand sections: maintain full-width treatment, reduce internal padding -- Financial data tables: horizontal scroll on mobile -- Section spacing: 64px+ -> 40px on mobile -- Typography scale compresses: 56px -> 48px -> 32px hero sizes across breakpoints - -### Image Behavior -- Dashboard/product screenshots maintain blue-tinted shadow at all sizes -- Hero gradient decorations simplify on mobile -- Code blocks maintain `SourceCodePro` treatment, may horizontally scroll -- Card images maintain consistent 4px-6px border-radius - -## 9. Agent Prompt Guide - -### Quick Color Reference -- Primary CTA: Stripe Purple (`#533afd`) -- CTA Hover: Purple Dark (`#4434d4`) -- Background: Pure White (`#ffffff`) -- Heading text: Deep Navy (`#061b31`) -- Body text: Slate (`#64748d`) -- Label text: Dark Slate (`#273951`) -- Border: Soft Blue (`#e5edf5`) -- Link: Stripe Purple (`#533afd`) -- Dark section: Brand Dark (`#1c1e54`) -- Success: Green (`#15be53`) -- Accent decorative: Ruby (`#ea2261`), Magenta (`#f96bee`) - -### Example Component Prompts -- "Create a hero section on white background. Headline at 48px sohne-var weight 300, line-height 1.15, letter-spacing -0.96px, color #061b31, font-feature-settings 'ss01'. Subtitle at 18px weight 300, line-height 1.40, color #64748d. Purple CTA button (#533afd, 4px radius, 8px 16px padding, white text) and ghost button (transparent, 1px solid #b9b9f9, #533afd text, 4px radius)." -- "Design a card: white background, 1px solid #e5edf5 border, 6px radius. Shadow: rgba(50,50,93,0.25) 0px 30px 45px -30px, rgba(0,0,0,0.1) 0px 18px 36px -18px. Title at 22px sohne-var weight 300, letter-spacing -0.22px, color #061b31, 'ss01'. Body at 16px weight 300, #64748d." -- "Build a success badge: rgba(21,190,83,0.2) background, #108c3d text, 4px radius, 1px 6px padding, 10px sohne-var weight 300, border 1px solid rgba(21,190,83,0.4)." -- "Create navigation: white sticky header with backdrop-filter blur(12px). sohne-var 14px weight 400 for links, #061b31 text, 'ss01'. Purple CTA 'Start now' right-aligned (#533afd bg, white text, 4px radius). Nav container 6px radius." -- "Design a dark brand section: #1c1e54 background, white text. Headline 32px sohne-var weight 300, letter-spacing -0.64px, 'ss01'. Body 16px weight 300, rgba(255,255,255,0.7). Cards inside use rgba(255,255,255,0.1) border with 6px radius." - -### Iteration Guide -1. Always enable `font-feature-settings: "ss01"` on sohne-var text -- this is the brand's typographic DNA -2. Weight 300 is the default; use 400 only for buttons/links/navigation -3. Shadow formula: `rgba(50,50,93,0.25) 0px Y1 B1 -S1, rgba(0,0,0,0.1) 0px Y2 B2 -S2` where Y1/B1 are larger (far shadow) and Y2/B2 are smaller (near shadow) -4. Heading color is `#061b31` (deep navy), body is `#64748d` (slate), labels are `#273951` (dark slate) -5. Border-radius stays in the 4px-8px range -- never use pill shapes or large rounding -6. Use `"tnum"` for any numbers in tables, charts, or financial displays -7. Dark sections use `#1c1e54` -- not black, not gray, but a deep branded indigo -8. SourceCodePro for code at 12px/500 with 2.00 line-height (very generous for readability) +# Design System Inspired by Stripe + +## 1. Visual Theme & Atmosphere + +Stripe's website is the gold standard of fintech design -- a system that manages to feel simultaneously technical and luxurious, precise and warm. The page opens on a clean white canvas (`#ffffff`) with deep navy headings (`#061b31`) and a signature purple (`#533afd`) that functions as both brand anchor and interactive accent. This isn't the cold, clinical purple of enterprise software; it's a rich, saturated violet that reads as confident and premium. The overall impression is of a financial institution redesigned by a world-class type foundry. + +The custom `sohne-var` variable font is the defining element of Stripe's visual identity. Every text element enables the OpenType `"ss01"` stylistic set, which modifies character shapes for a distinctly geometric, modern feel. At display sizes (48px-56px), sohne-var runs at weight 300 -- an extraordinarily light weight for headlines that creates an ethereal, almost whispered authority. This is the opposite of the "bold hero headline" convention; Stripe's headlines feel like they don't need to shout. The negative letter-spacing (-1.4px at 56px, -0.96px at 48px) tightens the text into dense, engineered blocks. At smaller sizes, the system also uses weight 300 with proportionally reduced tracking, and tabular numerals via `"tnum"` for financial data display. + +What truly distinguishes Stripe is its shadow system. Rather than the flat or single-layer approach of most sites, Stripe uses multi-layer, blue-tinted shadows: the signature `rgba(50,50,93,0.25)` combined with `rgba(0,0,0,0.1)` creates shadows with a cool, almost atmospheric depth -- like elements are floating in a twilight sky. The blue-gray undertone of the primary shadow color (50,50,93) ties directly to the navy-purple brand palette, making even elevation feel on-brand. + +**Key Characteristics:** +- sohne-var with OpenType `"ss01"` on all text -- a custom stylistic set that defines the brand's letterforms +- Weight 300 as the signature headline weight -- light, confident, anti-convention +- Negative letter-spacing at display sizes (-1.4px at 56px, progressive relaxation downward) +- Blue-tinted multi-layer shadows using `rgba(50,50,93,0.25)` -- elevation that feels brand-colored +- Deep navy (`#061b31`) headings instead of black -- warm, premium, financial-grade +- Conservative border-radius (4px-8px) -- nothing pill-shaped, nothing harsh +- Ruby (`#ea2261`) and magenta (`#f96bee`) accents for gradient and decorative elements +- `SourceCodePro` as the monospace companion for code and technical labels + +## 2. Color Palette & Roles + +### Primary +- **Stripe Purple** (`#533afd`): Primary brand color, CTA backgrounds, link text, interactive highlights. A saturated blue-violet that anchors the entire system. +- **Deep Navy** (`#061b31`): `--hds-color-heading-solid`. Primary heading color. Not black, not gray -- a very dark blue that adds warmth and depth to text. +- **Pure White** (`#ffffff`): Page background, card surfaces, button text on dark backgrounds. + +### Brand & Dark +- **Brand Dark** (`#1c1e54`): `--hds-color-util-brand-900`. Deep indigo for dark sections, footer backgrounds, and immersive brand moments. +- **Dark Navy** (`#0d253d`): `--hds-color-core-neutral-975`. The darkest neutral -- almost-black with a blue undertone for maximum depth without harshness. + +### Accent Colors +- **Ruby** (`#ea2261`): `--hds-color-accentColorMode-ruby-icon-solid`. Warm red-pink for icons, alerts, and accent elements. +- **Magenta** (`#f96bee`): `--hds-color-accentColorMode-magenta-icon-gradientMiddle`. Vivid pink-purple for gradients and decorative highlights. +- **Magenta Light** (`#ffd7ef`): `--hds-color-util-accent-magenta-100`. Tinted surface for magenta-themed cards and badges. + +### Interactive +- **Primary Purple** (`#533afd`): Primary link color, active states, selected elements. +- **Purple Hover** (`#4434d4`): Darker purple for hover states on primary elements. +- **Purple Deep** (`#2e2b8c`): `--hds-color-button-ui-iconHover`. Dark purple for icon hover states. +- **Purple Light** (`#b9b9f9`): `--hds-color-action-bg-subduedHover`. Soft lavender for subdued hover backgrounds. +- **Purple Mid** (`#665efd`): `--hds-color-input-selector-text-range`. Range selector and input highlight color. + +### Neutral Scale +- **Heading** (`#061b31`): Primary headings, nav text, strong labels. +- **Label** (`#273951`): `--hds-color-input-text-label`. Form labels, secondary headings. +- **Body** (`#64748d`): Secondary text, descriptions, captions. +- **Success Green** (`#15be53`): Status badges, success indicators (with 0.2-0.4 alpha for backgrounds/borders). +- **Success Text** (`#108c3d`): Success badge text color. +- **Lemon** (`#9b6829`): `--hds-color-core-lemon-500`. Warning and highlight accent. + +### Surface & Borders +- **Border Default** (`#e5edf5`): Standard border color for cards, dividers, and containers. +- **Border Purple** (`#b9b9f9`): Active/selected state borders on buttons and inputs. +- **Border Soft Purple** (`#d6d9fc`): Subtle purple-tinted borders for secondary elements. +- **Border Magenta** (`#ffd7ef`): Pink-tinted borders for magenta-themed elements. +- **Border Dashed** (`#362baa`): Dashed borders for drop zones and placeholder elements. + +### Shadow Colors +- **Shadow Blue** (`rgba(50,50,93,0.25)`): The signature -- blue-tinted primary shadow color. +- **Shadow Dark Blue** (`rgba(3,3,39,0.25)`): Deeper blue shadow for elevated elements. +- **Shadow Black** (`rgba(0,0,0,0.1)`): Secondary shadow layer for depth reinforcement. +- **Shadow Ambient** (`rgba(23,23,23,0.08)`): Soft ambient shadow for subtle elevation. +- **Shadow Soft** (`rgba(23,23,23,0.06)`): Minimal ambient shadow for light lift. + +## 3. Typography Rules + +### Font Family +- **Primary**: `sohne-var`, with fallback: `SF Pro Display` +- **Monospace**: `SourceCodePro`, with fallback: `SFMono-Regular` +- **OpenType Features**: `"ss01"` enabled globally on all sohne-var text; `"tnum"` for tabular numbers on financial data and captions. + +### Hierarchy + +| Role | Font | Size | Weight | Line Height | Letter Spacing | Features | Notes | +|------|------|------|--------|-------------|----------------|----------|-------| +| Display Hero | sohne-var | 56px (3.50rem) | 300 | 1.03 (tight) | -1.4px | ss01 | Maximum size, whisper-weight authority | +| Display Large | sohne-var | 48px (3.00rem) | 300 | 1.15 (tight) | -0.96px | ss01 | Secondary hero headlines | +| Section Heading | sohne-var | 32px (2.00rem) | 300 | 1.10 (tight) | -0.64px | ss01 | Feature section titles | +| Sub-heading Large | sohne-var | 26px (1.63rem) | 300 | 1.12 (tight) | -0.26px | ss01 | Card headings, sub-sections | +| Sub-heading | sohne-var | 22px (1.38rem) | 300 | 1.10 (tight) | -0.22px | ss01 | Smaller section heads | +| Body Large | sohne-var | 18px (1.13rem) | 300 | 1.40 | normal | ss01 | Feature descriptions, intro text | +| Body | sohne-var | 16px (1.00rem) | 300-400 | 1.40 | normal | ss01 | Standard reading text | +| Button | sohne-var | 16px (1.00rem) | 400 | 1.00 (tight) | normal | ss01 | Primary button text | +| Button Small | sohne-var | 14px (0.88rem) | 400 | 1.00 (tight) | normal | ss01 | Secondary/compact buttons | +| Link | sohne-var | 14px (0.88rem) | 400 | 1.00 (tight) | normal | ss01 | Navigation links | +| Caption | sohne-var | 13px (0.81rem) | 400 | normal | normal | ss01 | Small labels, metadata | +| Caption Small | sohne-var | 12px (0.75rem) | 300-400 | 1.33-1.45 | normal | ss01 | Fine print, timestamps | +| Caption Tabular | sohne-var | 12px (0.75rem) | 300-400 | 1.33 | -0.36px | tnum | Financial data, numbers | +| Micro | sohne-var | 10px (0.63rem) | 300 | 1.15 (tight) | 0.1px | ss01 | Tiny labels, axis markers | +| Micro Tabular | sohne-var | 10px (0.63rem) | 300 | 1.15 (tight) | -0.3px | tnum | Chart data, small numbers | +| Nano | sohne-var | 8px (0.50rem) | 300 | 1.07 (tight) | normal | ss01 | Smallest labels | +| Code Body | SourceCodePro | 12px (0.75rem) | 500 | 2.00 (relaxed) | normal | -- | Code blocks, syntax | +| Code Bold | SourceCodePro | 12px (0.75rem) | 700 | 2.00 (relaxed) | normal | -- | Bold code, keywords | +| Code Label | SourceCodePro | 12px (0.75rem) | 500 | 2.00 (relaxed) | normal | uppercase | Technical labels | +| Code Micro | SourceCodePro | 9px (0.56rem) | 500 | 1.00 (tight) | normal | ss01 | Tiny code annotations | + +### Principles +- **Light weight as signature**: Weight 300 at display sizes is Stripe's most distinctive typographic choice. Where others use 600-700 to command attention, Stripe uses lightness as luxury -- the text is so confident it doesn't need weight to be authoritative. +- **ss01 everywhere**: The `"ss01"` stylistic set is non-negotiable. It modifies specific glyphs (likely alternate `a`, `g`, `l` forms) to create a more geometric, contemporary feel across all sohne-var text. +- **Two OpenType modes**: `"ss01"` for display/body text, `"tnum"` for tabular numerals in financial data. These never overlap -- a number in a paragraph uses ss01, a number in a data table uses tnum. +- **Progressive tracking**: Letter-spacing tightens proportionally with size: -1.4px at 56px, -0.96px at 48px, -0.64px at 32px, -0.26px at 26px, normal at 16px and below. +- **Two-weight simplicity**: Primarily 300 (body and headings) and 400 (UI/buttons). No bold (700) in the primary font -- SourceCodePro uses 500/700 for code contrast. + +## 4. Component Stylings + +### Buttons + +**Primary Purple** +- Background: `#533afd` +- Text: `#ffffff` +- Padding: 8px 16px +- Radius: 4px +- Font: 16px sohne-var weight 400, `"ss01"` +- Hover: `#4434d4` background +- Use: Primary CTA ("Start now", "Contact sales") + +**Ghost / Outlined** +- Background: transparent +- Text: `#533afd` +- Padding: 8px 16px +- Radius: 4px +- Border: `1px solid #b9b9f9` +- Font: 16px sohne-var weight 400, `"ss01"` +- Hover: background shifts to `rgba(83,58,253,0.05)` +- Use: Secondary actions + +**Transparent Info** +- Background: transparent +- Text: `#2874ad` +- Padding: 8px 16px +- Radius: 4px +- Border: `1px solid rgba(43,145,223,0.2)` +- Use: Tertiary/info-level actions + +**Neutral Ghost** +- Background: transparent (`rgba(255,255,255,0)`) +- Text: `rgba(16,16,16,0.3)` +- Padding: 8px 16px +- Radius: 4px +- Outline: `1px solid rgb(212,222,233)` +- Use: Disabled or muted actions + +### Cards & Containers +- Background: `#ffffff` +- Border: `1px solid #e5edf5` (standard) or `1px solid #061b31` (dark accent) +- Radius: 4px (tight), 5px (standard), 6px (comfortable), 8px (featured) +- Shadow (standard): `rgba(50,50,93,0.25) 0px 30px 45px -30px, rgba(0,0,0,0.1) 0px 18px 36px -18px` +- Shadow (ambient): `rgba(23,23,23,0.08) 0px 15px 35px 0px` +- Hover: shadow intensifies, often adding the blue-tinted layer + +### Badges / Tags / Pills +**Neutral Pill** +- Background: `#ffffff` +- Text: `#000000` +- Padding: 0px 6px +- Radius: 4px +- Border: `1px solid #f6f9fc` +- Font: 11px weight 400 + +**Success Badge** +- Background: `rgba(21,190,83,0.2)` +- Text: `#108c3d` +- Padding: 1px 6px +- Radius: 4px +- Border: `1px solid rgba(21,190,83,0.4)` +- Font: 10px weight 300 + +### Inputs & Forms +- Border: `1px solid #e5edf5` +- Radius: 4px +- Focus: `1px solid #533afd` or purple ring +- Label: `#273951`, 14px sohne-var +- Text: `#061b31` +- Placeholder: `#64748d` + +### Navigation +- Clean horizontal nav on white, sticky with blur backdrop +- Brand logotype left-aligned +- Links: sohne-var 14px weight 400, `#061b31` text with `"ss01"` +- Radius: 6px on nav container +- CTA: purple button right-aligned ("Sign in", "Start now") +- Mobile: hamburger toggle with 6px radius + +### Decorative Elements +**Dashed Borders** +- `1px dashed #362baa` (purple) for placeholder/drop zones +- `1px dashed #ffd7ef` (magenta) for magenta-themed decorative borders + +**Gradient Accents** +- Ruby-to-magenta gradients (`#ea2261` to `#f96bee`) for hero decorations +- Brand dark sections use `#1c1e54` backgrounds with white text + +## 5. Layout Principles + +### Spacing System +- Base unit: 8px +- Scale: 1px, 2px, 4px, 6px, 8px, 10px, 11px, 12px, 14px, 16px, 18px, 20px +- Notable: The scale is dense at the small end (every 2px from 4-12), reflecting Stripe's precision-oriented UI for financial data + +### Grid & Container +- Max content width: approximately 1080px +- Hero: centered single-column with generous padding, lightweight headlines +- Feature sections: 2-3 column grids for feature cards +- Full-width dark sections with `#1c1e54` background for brand immersion +- Code/dashboard previews as contained cards with blue-tinted shadows + +### Whitespace Philosophy +- **Precision spacing**: Unlike the vast emptiness of minimalist systems, Stripe uses measured, purposeful whitespace. Every gap is a deliberate typographic choice. +- **Dense data, generous chrome**: Financial data displays (tables, charts) are tightly packed, but the UI chrome around them is generously spaced. This creates a sense of controlled density -- like a well-organized spreadsheet in a beautiful frame. +- **Section rhythm**: White sections alternate with dark brand sections (`#1c1e54`), creating a dramatic light/dark cadence that prevents monotony without introducing arbitrary color. + +### Border Radius Scale +- Micro (1px): Fine-grained elements, subtle rounding +- Standard (4px): Buttons, inputs, badges, cards -- the workhorse +- Comfortable (5px): Standard card containers +- Relaxed (6px): Navigation, larger interactive elements +- Large (8px): Featured cards, hero elements +- Compound: `0px 0px 6px 6px` for bottom-rounded containers (tab panels, dropdown footers) + +## 6. Depth & Elevation + +| Level | Treatment | Use | +|-------|-----------|-----| +| Flat (Level 0) | No shadow | Page background, inline text | +| Ambient (Level 1) | `rgba(23,23,23,0.06) 0px 3px 6px` | Subtle card lift, hover hints | +| Standard (Level 2) | `rgba(23,23,23,0.08) 0px 15px 35px` | Standard cards, content panels | +| Elevated (Level 3) | `rgba(50,50,93,0.25) 0px 30px 45px -30px, rgba(0,0,0,0.1) 0px 18px 36px -18px` | Featured cards, dropdowns, popovers | +| Deep (Level 4) | `rgba(3,3,39,0.25) 0px 14px 21px -14px, rgba(0,0,0,0.1) 0px 8px 17px -8px` | Modals, floating panels | +| Ring (Accessibility) | `2px solid #533afd` outline | Keyboard focus ring | + +**Shadow Philosophy**: Stripe's shadow system is built on a principle of chromatic depth. Where most design systems use neutral gray or black shadows, Stripe's primary shadow color (`rgba(50,50,93,0.25)`) is a deep blue-gray that echoes the brand's navy palette. This creates shadows that don't just add depth -- they add brand atmosphere. The multi-layer approach pairs this blue-tinted shadow with a pure black secondary layer (`rgba(0,0,0,0.1)`) at a different offset, creating a parallax-like depth where the branded shadow sits farther from the element and the neutral shadow sits closer. The negative spread values (-30px, -18px) ensure shadows don't extend beyond the element's footprint horizontally, keeping elevation vertical and controlled. + +### Decorative Depth +- Dark brand sections (`#1c1e54`) create immersive depth through background color contrast +- Gradient overlays with ruby-to-magenta transitions for hero decorations +- Shadow color `rgba(0,55,112,0.08)` (`--hds-color-shadow-sm-top`) for top-edge shadows on sticky elements + +## 7. Do's and Don'ts + +### Do +- Use sohne-var with `"ss01"` on every text element -- the stylistic set IS the brand +- Use weight 300 for all headlines and body text -- lightness is the signature +- Apply blue-tinted shadows (`rgba(50,50,93,0.25)`) for all elevated elements +- Use `#061b31` (deep navy) for headings instead of `#000000` -- the warmth matters +- Keep border-radius between 4px-8px -- conservative rounding is intentional +- Use `"tnum"` for any tabular/financial number display +- Layer shadows: blue-tinted far + neutral close for depth parallax +- Use `#533afd` purple as the primary interactive/CTA color + +### Don't +- Don't use weight 600-700 for sohne-var headlines -- weight 300 is the brand voice +- Don't use large border-radius (12px+, pill shapes) on cards or buttons -- Stripe is conservative +- Don't use neutral gray shadows -- always tint with blue (`rgba(50,50,93,...)`) +- Don't skip `"ss01"` on any sohne-var text -- the alternate glyphs define the personality +- Don't use pure black (`#000000`) for headings -- always `#061b31` deep navy +- Don't use warm accent colors (orange, yellow) for interactive elements -- purple is primary +- Don't apply positive letter-spacing at display sizes -- Stripe tracks tight +- Don't use the magenta/ruby accents for buttons or links -- they're decorative/gradient only + +## 8. Responsive Behavior + +### Breakpoints +| Name | Width | Key Changes | +|------|-------|-------------| +| Mobile | <640px | Single column, reduced heading sizes, stacked cards | +| Tablet | 640-1024px | 2-column grids, moderate padding | +| Desktop | 1024-1280px | Full layout, 3-column feature grids | +| Large Desktop | >1280px | Centered content with generous margins | + +### Touch Targets +- Buttons use comfortable padding (8px-16px vertical) +- Navigation links at 14px with adequate spacing +- Badges have 6px horizontal padding minimum for tap targets +- Mobile nav toggle with 6px radius button + +### Collapsing Strategy +- Hero: 56px display -> 32px on mobile, weight 300 maintained +- Navigation: horizontal links + CTAs -> hamburger toggle +- Feature cards: 3-column -> 2-column -> single column stacked +- Dark brand sections: maintain full-width treatment, reduce internal padding +- Financial data tables: horizontal scroll on mobile +- Section spacing: 64px+ -> 40px on mobile +- Typography scale compresses: 56px -> 48px -> 32px hero sizes across breakpoints + +### Image Behavior +- Dashboard/product screenshots maintain blue-tinted shadow at all sizes +- Hero gradient decorations simplify on mobile +- Code blocks maintain `SourceCodePro` treatment, may horizontally scroll +- Card images maintain consistent 4px-6px border-radius + +## 9. Agent Prompt Guide + +### Quick Color Reference +- Primary CTA: Stripe Purple (`#533afd`) +- CTA Hover: Purple Dark (`#4434d4`) +- Background: Pure White (`#ffffff`) +- Heading text: Deep Navy (`#061b31`) +- Body text: Slate (`#64748d`) +- Label text: Dark Slate (`#273951`) +- Border: Soft Blue (`#e5edf5`) +- Link: Stripe Purple (`#533afd`) +- Dark section: Brand Dark (`#1c1e54`) +- Success: Green (`#15be53`) +- Accent decorative: Ruby (`#ea2261`), Magenta (`#f96bee`) + +### Example Component Prompts +- "Create a hero section on white background. Headline at 48px sohne-var weight 300, line-height 1.15, letter-spacing -0.96px, color #061b31, font-feature-settings 'ss01'. Subtitle at 18px weight 300, line-height 1.40, color #64748d. Purple CTA button (#533afd, 4px radius, 8px 16px padding, white text) and ghost button (transparent, 1px solid #b9b9f9, #533afd text, 4px radius)." +- "Design a card: white background, 1px solid #e5edf5 border, 6px radius. Shadow: rgba(50,50,93,0.25) 0px 30px 45px -30px, rgba(0,0,0,0.1) 0px 18px 36px -18px. Title at 22px sohne-var weight 300, letter-spacing -0.22px, color #061b31, 'ss01'. Body at 16px weight 300, #64748d." +- "Build a success badge: rgba(21,190,83,0.2) background, #108c3d text, 4px radius, 1px 6px padding, 10px sohne-var weight 300, border 1px solid rgba(21,190,83,0.4)." +- "Create navigation: white sticky header with backdrop-filter blur(12px). sohne-var 14px weight 400 for links, #061b31 text, 'ss01'. Purple CTA 'Start now' right-aligned (#533afd bg, white text, 4px radius). Nav container 6px radius." +- "Design a dark brand section: #1c1e54 background, white text. Headline 32px sohne-var weight 300, letter-spacing -0.64px, 'ss01'. Body 16px weight 300, rgba(255,255,255,0.7). Cards inside use rgba(255,255,255,0.1) border with 6px radius." + +### Iteration Guide +1. Always enable `font-feature-settings: "ss01"` on sohne-var text -- this is the brand's typographic DNA +2. Weight 300 is the default; use 400 only for buttons/links/navigation +3. Shadow formula: `rgba(50,50,93,0.25) 0px Y1 B1 -S1, rgba(0,0,0,0.1) 0px Y2 B2 -S2` where Y1/B1 are larger (far shadow) and Y2/B2 are smaller (near shadow) +4. Heading color is `#061b31` (deep navy), body is `#64748d` (slate), labels are `#273951` (dark slate) +5. Border-radius stays in the 4px-8px range -- never use pill shapes or large rounding +6. Use `"tnum"` for any numbers in tables, charts, or financial displays +7. Dark sections use `#1c1e54` -- not black, not gray, but a deep branded indigo +8. SourceCodePro for code at 12px/500 with 2.00 line-height (very generous for readability) diff --git a/FINAL_DELIVERY_PACKAGE_TIMO.md b/FINAL_DELIVERY_PACKAGE_TIMO.md index f5f23ce..4f7684f 100644 --- a/FINAL_DELIVERY_PACKAGE_TIMO.md +++ b/FINAL_DELIVERY_PACKAGE_TIMO.md @@ -1,157 +1,157 @@ -# FINAL DELIVERY PACKAGE — QR Master Outreach - -> [!IMPORTANT] -> **Recipient:** knuth.timo@gmail.com -> **Sender:** Antigravity AI -> **Date:** 2026-04-13 -> -> This document contains all the outreach emails, guest post pitches, and corresponding articles prepared for the QR Master SEO and content marketing campaign. -> -> **Note:** I cannot send emails directly from this interface. Please copy the content below into your email client to send to the respective targets. - ---- - -## Table of Contents -1. [Guest Post Pitches & Articles](#1-guest-post-pitches--articles) - - [DigitalGpoint](#digitalgpoint) - - [Techdee](#techdee) - - [SEO Sandwitch](#seo-sandwitch) -2. [Web 2.0 & Self-Publishing Articles](#2-web-20--self-publishing-articles) - - [Medium](#medium) - - [LinkedIn Pulse](#linkedin-pulse) - - [Substack Series](#substack-series) -3. [Resource Outreach Emails (10 Targets)](#3-resource-outreach-emails-10-targets) - ---- - -## 1. Guest Post Pitches & Articles - -### DigitalGpoint -**Recipent:** digitalgpoint.webmail@gmail.com -**Article Type:** Guest Post - -#### Submission Email -**Subject:** Solving the "print gap" for small businesses - -Hi [Name], - -I’ve noticed DigitalGpoint covers a lot of practical tools for business growth. One area that often gets overlooked is the bridge between physical marketing (flyers, menus, signage) and digital analytics. - -I’ve put together a practical guide on "Managing the Move from Static to Dynamic Print." It explains how small business owners are using dynamic redirect layers to make their physical materials editable after printing—saving them from costly reprints when a URL or price changes. - -It’s a straightforward, workflow-focused piece that I believe your readers would find highly actionable. - -Would you be open to reviewing a draft for a guest contribution? - -Best, - -Timo -(Writer & Strategist) - -#### Accompanying Article: "Every Print Order Feels Final (Until You Use a Dynamic Layer)" -[View full article content in digitalGpoint-dynamic-vs-static-qr-codes.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/digitalGpoint-dynamic-vs-static-qr-codes.md) - ---- - -### Techdee -**Recipient:** Blayget@gmail.com -**Article Type:** Guest Post (Tier 2) - -#### Submission Email -**Subject:** Offline-to-Online marketing workflows - -Hi [Name], - -I’ve been following Techdee’s tech and marketing tutorials for some time. - -I’m currently finalizing a piece titled: **"Beyond the Scan: 5 Professional QR Strategies for Modern Marketing."** - -The article moves past the basic "link a code to a site" approach and explores practical technical workflows: using dynamic redirects to avoid reprints, pulling scan data into GA4 for attribution, and managing bulk physical assets. - -It’s a 700-word, list-style tutorial that fits your current format. Is this something you'd like to see for a guest contribution? - -Best, - -Timo -(Writer & Strategist) - -#### Accompanying Article: "Beyond the Scan: 5 Professional QR Strategies for Modern Marketing" -[View full article content in techdee-5-qr-code-strategies.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/techdee-5-qr-code-strategies.md) - ---- - -### SEO Sandwitch -**Recipient:** joydeep@seosandwitch.com -**Article Type:** Guest Post (Tier 1 - High Value) - -#### Submission Email -**Subject:** Attribution blind spots in physical marketing - -Hi Joydeep, - -I’ve been following SEO Sandwitch for a while—your recent piece on AI SEO and GEO was excellent. - -I’m reaching out because I’ve been working on a technical deep-dive that explores a massive attribution blind spot: physical marketing campaigns. - -The piece, **"QR Codes as an Offline-to-Online Signal,"** breaks down how marketers can pull scan data from flyers, packaging, and OOH materials into GA4 to finally close the loop on offline attribution. - -It covers: -- Using dynamic redirect layers as an attribution signal. -- The indirect impact of physical touchpoints on branded search volume. -- Technical setup for UTM-tagged dynamic codes. - -It’s not a superficial "marketing tips" post; it’s a strategist-level look at attribution data. - -I have a ~2,000 word draft ready. Would you be open to taking a look for a potential guest contribution? - -Best, - -Timo -(Writer & Strategist) - -#### Accompanying Article: "QR Codes as an Offline-to-Online Signal" -[View full article content in seosandwitch-qr-codes-offline-attribution.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/seosandwitch-qr-codes-offline-attribution.md) - ---- - -## 2. Web 2.0 & Self-Publishing Articles - -### Medium -**Target Platform:** Medium.com -**Publication:** Self-publish or submit to a marketing pub (e.g., Better Marketing) - -#### Article: "Beyond the Menu: 5 Practical Ways to Use QR Codes for Business Growth" -[View full article content in medium-5-underrated-qr-use-cases.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/medium-5-underrated-qr-use-cases.md) - ---- - -### LinkedIn Pulse -**Target Platform:** LinkedIn Personal Account - -#### Article: "Why Your Business Card Still Needs a QR Code in 2025" -[View full article content in linkedin-business-card-qr.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/linkedin-business-card-qr.md) - ---- - -### Substack Series -**Target Platform:** Substack Newsletter ("The QR Code Playbook") - -#### Content: 3-Issue Intro Series -[View full issues content in substack-playbook-series.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/substack-playbook-series.md) - ---- - -## 3. Resource Outreach Emails (10 Targets) - -These are short link-request emails targeting sites that list QR tools or marketing resources. - -**Targets & Templates:** -[View all 10 target details and templates in outreach-seo-emails.md](file:///c:/Users/a931627/Documents/QRMASTER/outreach-seo-emails.md) - ---- - -> [!TIP] -> **Next Steps:** -> 1. Start with **Web 2.0 publishing** (Medium, LinkedIn, Substack) to build topical authority. -> 2. Send the **Guest Post Pitches** (DigitalGpoint, Techdee, SEO Sandwitch) once the Web 2.0 posts are live so editors can see your writing quality. -> 3. Send the **Resource Outreach** emails in a batch of 5-10 per week. +# FINAL DELIVERY PACKAGE — QR Master Outreach + +> [!IMPORTANT] +> **Recipient:** knuth.timo@gmail.com +> **Sender:** Antigravity AI +> **Date:** 2026-04-13 +> +> This document contains all the outreach emails, guest post pitches, and corresponding articles prepared for the QR Master SEO and content marketing campaign. +> +> **Note:** I cannot send emails directly from this interface. Please copy the content below into your email client to send to the respective targets. + +--- + +## Table of Contents +1. [Guest Post Pitches & Articles](#1-guest-post-pitches--articles) + - [DigitalGpoint](#digitalgpoint) + - [Techdee](#techdee) + - [SEO Sandwitch](#seo-sandwitch) +2. [Web 2.0 & Self-Publishing Articles](#2-web-20--self-publishing-articles) + - [Medium](#medium) + - [LinkedIn Pulse](#linkedin-pulse) + - [Substack Series](#substack-series) +3. [Resource Outreach Emails (10 Targets)](#3-resource-outreach-emails-10-targets) + +--- + +## 1. Guest Post Pitches & Articles + +### DigitalGpoint +**Recipent:** digitalgpoint.webmail@gmail.com +**Article Type:** Guest Post + +#### Submission Email +**Subject:** Solving the "print gap" for small businesses + +Hi [Name], + +I’ve noticed DigitalGpoint covers a lot of practical tools for business growth. One area that often gets overlooked is the bridge between physical marketing (flyers, menus, signage) and digital analytics. + +I’ve put together a practical guide on "Managing the Move from Static to Dynamic Print." It explains how small business owners are using dynamic redirect layers to make their physical materials editable after printing—saving them from costly reprints when a URL or price changes. + +It’s a straightforward, workflow-focused piece that I believe your readers would find highly actionable. + +Would you be open to reviewing a draft for a guest contribution? + +Best, + +Timo +(Writer & Strategist) + +#### Accompanying Article: "Every Print Order Feels Final (Until You Use a Dynamic Layer)" +[View full article content in digitalGpoint-dynamic-vs-static-qr-codes.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/digitalGpoint-dynamic-vs-static-qr-codes.md) + +--- + +### Techdee +**Recipient:** Blayget@gmail.com +**Article Type:** Guest Post (Tier 2) + +#### Submission Email +**Subject:** Offline-to-Online marketing workflows + +Hi [Name], + +I’ve been following Techdee’s tech and marketing tutorials for some time. + +I’m currently finalizing a piece titled: **"Beyond the Scan: 5 Professional QR Strategies for Modern Marketing."** + +The article moves past the basic "link a code to a site" approach and explores practical technical workflows: using dynamic redirects to avoid reprints, pulling scan data into GA4 for attribution, and managing bulk physical assets. + +It’s a 700-word, list-style tutorial that fits your current format. Is this something you'd like to see for a guest contribution? + +Best, + +Timo +(Writer & Strategist) + +#### Accompanying Article: "Beyond the Scan: 5 Professional QR Strategies for Modern Marketing" +[View full article content in techdee-5-qr-code-strategies.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/techdee-5-qr-code-strategies.md) + +--- + +### SEO Sandwitch +**Recipient:** joydeep@seosandwitch.com +**Article Type:** Guest Post (Tier 1 - High Value) + +#### Submission Email +**Subject:** Attribution blind spots in physical marketing + +Hi Joydeep, + +I’ve been following SEO Sandwitch for a while—your recent piece on AI SEO and GEO was excellent. + +I’m reaching out because I’ve been working on a technical deep-dive that explores a massive attribution blind spot: physical marketing campaigns. + +The piece, **"QR Codes as an Offline-to-Online Signal,"** breaks down how marketers can pull scan data from flyers, packaging, and OOH materials into GA4 to finally close the loop on offline attribution. + +It covers: +- Using dynamic redirect layers as an attribution signal. +- The indirect impact of physical touchpoints on branded search volume. +- Technical setup for UTM-tagged dynamic codes. + +It’s not a superficial "marketing tips" post; it’s a strategist-level look at attribution data. + +I have a ~2,000 word draft ready. Would you be open to taking a look for a potential guest contribution? + +Best, + +Timo +(Writer & Strategist) + +#### Accompanying Article: "QR Codes as an Offline-to-Online Signal" +[View full article content in seosandwitch-qr-codes-offline-attribution.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/seosandwitch-qr-codes-offline-attribution.md) + +--- + +## 2. Web 2.0 & Self-Publishing Articles + +### Medium +**Target Platform:** Medium.com +**Publication:** Self-publish or submit to a marketing pub (e.g., Better Marketing) + +#### Article: "Beyond the Menu: 5 Practical Ways to Use QR Codes for Business Growth" +[View full article content in medium-5-underrated-qr-use-cases.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/medium-5-underrated-qr-use-cases.md) + +--- + +### LinkedIn Pulse +**Target Platform:** LinkedIn Personal Account + +#### Article: "Why Your Business Card Still Needs a QR Code in 2025" +[View full article content in linkedin-business-card-qr.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/linkedin-business-card-qr.md) + +--- + +### Substack Series +**Target Platform:** Substack Newsletter ("The QR Code Playbook") + +#### Content: 3-Issue Intro Series +[View full issues content in substack-playbook-series.md](file:///c:/Users/a931627/Documents/QRMASTER/articles/substack-playbook-series.md) + +--- + +## 3. Resource Outreach Emails (10 Targets) + +These are short link-request emails targeting sites that list QR tools or marketing resources. + +**Targets & Templates:** +[View all 10 target details and templates in outreach-seo-emails.md](file:///c:/Users/a931627/Documents/QRMASTER/outreach-seo-emails.md) + +--- + +> [!TIP] +> **Next Steps:** +> 1. Start with **Web 2.0 publishing** (Medium, LinkedIn, Substack) to build topical authority. +> 2. Send the **Guest Post Pitches** (DigitalGpoint, Techdee, SEO Sandwitch) once the Web 2.0 posts are live so editors can see your writing quality. +> 3. Send the **Resource Outreach** emails in a batch of 5-10 per week. diff --git a/PLAN_bulk_dynamic_and_barcode_.md b/PLAN_bulk_dynamic_and_barcode_.md index 62d8e9d..2b5a780 100644 --- a/PLAN_bulk_dynamic_and_barcode_.md +++ b/PLAN_bulk_dynamic_and_barcode_.md @@ -1,179 +1,179 @@ -# Feature Plan: Bulk Dynamic QR + Dynamic Barcode Generator - -## Feature 1: Bulk Generator → Dynamic QR freischalten - -### Ziel -Nutzer können beim Bulk-Import wählen ob sie statische oder dynamische QR-Codes erstellen. Dynamisch = DB-Einträge mit Slugs + Tracking. Nur für PRO/BUSINESS. - -### Aktueller Stand (Ist) -- `bulk-creation/page.tsx` generiert QR-Codes rein client-seitig (kein DB-Eintrag) -- `generateStaticQRCodes()` rendert SVGs lokal via `qrcode`-Library -- `saveQRCodesToDatabase()` sendet an `POST /api/qrs` mit `isStatic: true` — also immer statisch -- Kein Toggle Static/Dynamic vorhanden -- Kein Plan-Check für Dynamic im Bulk-Flow - -### Änderungen - -#### A) Frontend: `bulk-creation/page.tsx` - -1. **Toggle "Static / Dynamic" hinzufügen** (nach Plan-Check) - - Nur sichtbar/aktivierbar wenn `userPlan === 'PRO' || 'BUSINESS'` - - FREE-Nutzer sehen den Toggle gesperrt mit Upgrade-Hinweis - - State: `const [isDynamic, setIsDynamic] = useState(false)` - -2. **Interface erweitern** - ```ts - interface GeneratedQR { - title: string; - content: string; - svg: string; - slug?: string; // nur bei dynamic, nach API-Antwort gesetzt - redirectUrl?: string; // z.B. https://qrmaster.net/r/abc123 - } - ``` - -3. **Generierungslogik aufteilen** - - Static (wie bisher): client-seitig SVG generieren, kein DB-Eintrag nötig - - Dynamic: direkt `POST /api/qrs` pro Eintrag mit `isDynamic: true` → API gibt Slug zurück → QR encodiert `/r/[slug]` statt Original-URL - -4. **Preview-Spalte erweitern** - - Bei dynamic: Slug-Link anzeigen + "Ziel änderbar" Badge - - Download-ZIP enthält QR-SVGs die `/r/[slug]` encodieren - -5. **Limit-Anzeige** - - PRO: max 50 dynamic / Bulk-Run (entspricht QR-Limit) - - BUSINESS: max 500 - -#### B) Backend: `POST /api/qrs` - -Keine strukturelle Änderung nötig — der bestehende Endpunkt unterstützt bereits `isDynamic: false/true` und gibt `slug` zurück. Nur sicherstellen: - -- Plan-Limit-Check zählt korrekt bei Bulk-Erstellung (momentan prüft `POST /api/qrs` nur ob Gesamtanzahl < Limit — das bleibt so, aber Bulk erstellt X Requests nacheinander → ggf. Rate-Limit beachten) -- Evtl. neuen Endpunkt `POST /api/qrs/bulk` der ein Array entgegennimmt und in einer DB-Transaktion schreibt (besser als 500 Einzelrequests) - -#### C) Optionaler neuer Endpunkt: `POST /api/qrs/bulk` (empfohlen) - -```ts -// Body: { qrCodes: Array<{ title, content, contentType, isDynamic }>, plan } -// Response: { created: Array<{ id, slug, redirectUrl }>, failed: number } -// Vorteile: eine DB-Transaktion, ein CSRF-Check, schneller -``` - -Plan-Check: `if (isDynamic && plan === 'FREE') return 403` - ---- - -### Reihenfolge der Umsetzung - -1. Toggle + Plan-Check im Frontend -2. Dynamic-Generierungslogik (nutzt bestehenden `POST /api/qrs`) -3. (Optional) `POST /api/qrs/bulk` für Performance -4. ZIP-Download mit Redirect-URLs als Metadaten-CSV - ---- - -## Feature 2: Dynamischer Barcode Generator - -### Aufteilung: Landingpage (Marketing) + Dashboard (Funktion) - -**Wichtig:** "Dynamic" existiert nur im Dashboard `/create`. Die Landingpage erklärt das Konzept und treibt Nutzer zum Signup/Login — sie hat keinen eigenen Dynamic-Modus. - ---- - -### 2a) Landingpage: `/tools/dynamic-barcode-generator` - -**Ziel:** SEO-Traffic auf Keyword "barcode generator" (100k–1M, 0% Competition) konvertieren zu Signups. - -**Was die Landingpage NICHT hat:** -- Keinen Dynamic-Toggle -- Keine echte Dynamic-Funktionalität - -**Was die Landingpage HAT:** -- Bestehenden `BarcodeGeneratorClient` eingebettet (statischer Generator, unverändert) -- Erklärung was ein dynamischer Barcode ist + Vorteile -- Klarer CTA: "Create Dynamic Barcode → Sign up / Dashboard" - -**Aufbau** (`src/app/(main)/(marketing)/tools/dynamic-barcode-generator/page.tsx`): - -``` -Hero-Section - H1: "Dynamic Barcode Generator — Update Any Barcode Without Reprinting" - Subtext: Erklärt Tracking + Redirect-Konzept - CTA-Button: "Create Dynamic Barcode" → /login oder /signup - -Tool-Section - BarcodeGeneratorClient (statisch, wie bisher, keine Änderungen) - Banner darunter: "Want dynamic barcodes? Sign up free →" - -How It Works (3 Schritte) - 1. Sign up & create barcode in dashboard - 2. Print it once - 3. Update the destination anytime — no reprint needed - -Use Cases - Retail-Verpackungen, Logistik-Labels, Produktkataloge, Event-Badges - -FAQ-Section (schema.org FAQ markup) - - "Was ist ein dynamischer Barcode?" - - "Wie unterscheidet sich dynamisch von statisch?" - - "Welche Formate werden unterstützt?" - -RelatedTools-Komponente (bereits vorhanden) -``` - -**Metadata:** -```ts -title: 'Dynamic Barcode Generator — Trackable & Editable Barcodes' -description: 'Create dynamic barcodes that you can update without reprinting. Track scans, change destinations, and manage all barcodes from one dashboard.' -canonical: 'https://www.qrmaster.net/tools/dynamic-barcode-generator' -keywords: ['dynamic barcode generator', 'barcode generator', 'trackable barcode', 'editable barcode'] -``` - -**Sitemap:** `/tools/dynamic-barcode-generator` hinzufügen. - ---- - -### 2b) Dashboard `/create` — BARCODE als ContentType - -**Ziel:** Eingeloggte Nutzer können Barcodes (statisch oder dynamisch) im Dashboard erstellen, speichern und tracken. - -**DB-Änderung (kein migrate!):** -```sql --- Direkt gegen PostgreSQL ausführen (npm run docker:db) -ALTER TYPE "ContentType" ADD VALUE 'BARCODE'; -``` -Danach: `npx prisma generate` - -**Änderungen `create/page.tsx`:** -- BARCODE zu `contentTypes` Array hinzufügen -- `renderContentFields()` Case: Barcode-Wert + Format-Picker (CODE128, EAN13, UPC, etc.) -- Preview: `react-barcode` statt `QRCodeSVG` wenn ContentType === BARCODE -- QR-spezifische Optionen ausblenden bei BARCODE (Frames, Logo, Corner Style) -- Dynamic Barcode = encodiert `/r/[slug]` → nutzt bestehendes Redirect- + Tracking-System -- Static Barcode = encodiert Rohwert direkt - -**Kein neues Backend nötig** — `POST /api/qrs` + `/r/[slug]`-Redirect funktionieren bereits. - ---- - -### Reihenfolge der Umsetzung - -**Phase 1 — Landingpage (kein DB-Change):** -1. `page.tsx` unter `/tools/dynamic-barcode-generator` erstellen -2. Sitemap-Eintrag - -**Phase 2 — Dashboard BARCODE:** -1. SQL ausführen: `ALTER TYPE "ContentType" ADD VALUE 'BARCODE'` -2. `npx prisma generate` -3. `create/page.tsx` erweitern - ---- - -## Abhängigkeiten zwischen den Features - -| Feature | Hängt ab von | -|---------|-------------| -| Bulk Dynamic | Bestehendem `POST /api/qrs` (bereits fertig) | -| Bulk Dynamic (optional) | Neuem `POST /api/qrs/bulk` Endpunkt | -| Landingpage Dynamic Barcode | Bestehendem BarcodeGeneratorClient (keine Änderungen) | -| Dashboard BARCODE | SQL-Enum-Erweiterung + `prisma generate` | +# Feature Plan: Bulk Dynamic QR + Dynamic Barcode Generator + +## Feature 1: Bulk Generator → Dynamic QR freischalten + +### Ziel +Nutzer können beim Bulk-Import wählen ob sie statische oder dynamische QR-Codes erstellen. Dynamisch = DB-Einträge mit Slugs + Tracking. Nur für PRO/BUSINESS. + +### Aktueller Stand (Ist) +- `bulk-creation/page.tsx` generiert QR-Codes rein client-seitig (kein DB-Eintrag) +- `generateStaticQRCodes()` rendert SVGs lokal via `qrcode`-Library +- `saveQRCodesToDatabase()` sendet an `POST /api/qrs` mit `isStatic: true` — also immer statisch +- Kein Toggle Static/Dynamic vorhanden +- Kein Plan-Check für Dynamic im Bulk-Flow + +### Änderungen + +#### A) Frontend: `bulk-creation/page.tsx` + +1. **Toggle "Static / Dynamic" hinzufügen** (nach Plan-Check) + - Nur sichtbar/aktivierbar wenn `userPlan === 'PRO' || 'BUSINESS'` + - FREE-Nutzer sehen den Toggle gesperrt mit Upgrade-Hinweis + - State: `const [isDynamic, setIsDynamic] = useState(false)` + +2. **Interface erweitern** + ```ts + interface GeneratedQR { + title: string; + content: string; + svg: string; + slug?: string; // nur bei dynamic, nach API-Antwort gesetzt + redirectUrl?: string; // z.B. https://qrmaster.net/r/abc123 + } + ``` + +3. **Generierungslogik aufteilen** + - Static (wie bisher): client-seitig SVG generieren, kein DB-Eintrag nötig + - Dynamic: direkt `POST /api/qrs` pro Eintrag mit `isDynamic: true` → API gibt Slug zurück → QR encodiert `/r/[slug]` statt Original-URL + +4. **Preview-Spalte erweitern** + - Bei dynamic: Slug-Link anzeigen + "Ziel änderbar" Badge + - Download-ZIP enthält QR-SVGs die `/r/[slug]` encodieren + +5. **Limit-Anzeige** + - PRO: max 50 dynamic / Bulk-Run (entspricht QR-Limit) + - BUSINESS: max 500 + +#### B) Backend: `POST /api/qrs` + +Keine strukturelle Änderung nötig — der bestehende Endpunkt unterstützt bereits `isDynamic: false/true` und gibt `slug` zurück. Nur sicherstellen: + +- Plan-Limit-Check zählt korrekt bei Bulk-Erstellung (momentan prüft `POST /api/qrs` nur ob Gesamtanzahl < Limit — das bleibt so, aber Bulk erstellt X Requests nacheinander → ggf. Rate-Limit beachten) +- Evtl. neuen Endpunkt `POST /api/qrs/bulk` der ein Array entgegennimmt und in einer DB-Transaktion schreibt (besser als 500 Einzelrequests) + +#### C) Optionaler neuer Endpunkt: `POST /api/qrs/bulk` (empfohlen) + +```ts +// Body: { qrCodes: Array<{ title, content, contentType, isDynamic }>, plan } +// Response: { created: Array<{ id, slug, redirectUrl }>, failed: number } +// Vorteile: eine DB-Transaktion, ein CSRF-Check, schneller +``` + +Plan-Check: `if (isDynamic && plan === 'FREE') return 403` + +--- + +### Reihenfolge der Umsetzung + +1. Toggle + Plan-Check im Frontend +2. Dynamic-Generierungslogik (nutzt bestehenden `POST /api/qrs`) +3. (Optional) `POST /api/qrs/bulk` für Performance +4. ZIP-Download mit Redirect-URLs als Metadaten-CSV + +--- + +## Feature 2: Dynamischer Barcode Generator + +### Aufteilung: Landingpage (Marketing) + Dashboard (Funktion) + +**Wichtig:** "Dynamic" existiert nur im Dashboard `/create`. Die Landingpage erklärt das Konzept und treibt Nutzer zum Signup/Login — sie hat keinen eigenen Dynamic-Modus. + +--- + +### 2a) Landingpage: `/tools/dynamic-barcode-generator` + +**Ziel:** SEO-Traffic auf Keyword "barcode generator" (100k–1M, 0% Competition) konvertieren zu Signups. + +**Was die Landingpage NICHT hat:** +- Keinen Dynamic-Toggle +- Keine echte Dynamic-Funktionalität + +**Was die Landingpage HAT:** +- Bestehenden `BarcodeGeneratorClient` eingebettet (statischer Generator, unverändert) +- Erklärung was ein dynamischer Barcode ist + Vorteile +- Klarer CTA: "Create Dynamic Barcode → Sign up / Dashboard" + +**Aufbau** (`src/app/(main)/(marketing)/tools/dynamic-barcode-generator/page.tsx`): + +``` +Hero-Section + H1: "Dynamic Barcode Generator — Update Any Barcode Without Reprinting" + Subtext: Erklärt Tracking + Redirect-Konzept + CTA-Button: "Create Dynamic Barcode" → /login oder /signup + +Tool-Section + BarcodeGeneratorClient (statisch, wie bisher, keine Änderungen) + Banner darunter: "Want dynamic barcodes? Sign up free →" + +How It Works (3 Schritte) + 1. Sign up & create barcode in dashboard + 2. Print it once + 3. Update the destination anytime — no reprint needed + +Use Cases + Retail-Verpackungen, Logistik-Labels, Produktkataloge, Event-Badges + +FAQ-Section (schema.org FAQ markup) + - "Was ist ein dynamischer Barcode?" + - "Wie unterscheidet sich dynamisch von statisch?" + - "Welche Formate werden unterstützt?" + +RelatedTools-Komponente (bereits vorhanden) +``` + +**Metadata:** +```ts +title: 'Dynamic Barcode Generator — Trackable & Editable Barcodes' +description: 'Create dynamic barcodes that you can update without reprinting. Track scans, change destinations, and manage all barcodes from one dashboard.' +canonical: 'https://www.qrmaster.net/tools/dynamic-barcode-generator' +keywords: ['dynamic barcode generator', 'barcode generator', 'trackable barcode', 'editable barcode'] +``` + +**Sitemap:** `/tools/dynamic-barcode-generator` hinzufügen. + +--- + +### 2b) Dashboard `/create` — BARCODE als ContentType + +**Ziel:** Eingeloggte Nutzer können Barcodes (statisch oder dynamisch) im Dashboard erstellen, speichern und tracken. + +**DB-Änderung (kein migrate!):** +```sql +-- Direkt gegen PostgreSQL ausführen (npm run docker:db) +ALTER TYPE "ContentType" ADD VALUE 'BARCODE'; +``` +Danach: `npx prisma generate` + +**Änderungen `create/page.tsx`:** +- BARCODE zu `contentTypes` Array hinzufügen +- `renderContentFields()` Case: Barcode-Wert + Format-Picker (CODE128, EAN13, UPC, etc.) +- Preview: `react-barcode` statt `QRCodeSVG` wenn ContentType === BARCODE +- QR-spezifische Optionen ausblenden bei BARCODE (Frames, Logo, Corner Style) +- Dynamic Barcode = encodiert `/r/[slug]` → nutzt bestehendes Redirect- + Tracking-System +- Static Barcode = encodiert Rohwert direkt + +**Kein neues Backend nötig** — `POST /api/qrs` + `/r/[slug]`-Redirect funktionieren bereits. + +--- + +### Reihenfolge der Umsetzung + +**Phase 1 — Landingpage (kein DB-Change):** +1. `page.tsx` unter `/tools/dynamic-barcode-generator` erstellen +2. Sitemap-Eintrag + +**Phase 2 — Dashboard BARCODE:** +1. SQL ausführen: `ALTER TYPE "ContentType" ADD VALUE 'BARCODE'` +2. `npx prisma generate` +3. `create/page.tsx` erweitern + +--- + +## Abhängigkeiten zwischen den Features + +| Feature | Hängt ab von | +|---------|-------------| +| Bulk Dynamic | Bestehendem `POST /api/qrs` (bereits fertig) | +| Bulk Dynamic (optional) | Neuem `POST /api/qrs/bulk` Endpunkt | +| Landingpage Dynamic Barcode | Bestehendem BarcodeGeneratorClient (keine Änderungen) | +| Dashboard BARCODE | SQL-Enum-Erweiterung + `prisma generate` | diff --git a/PRODUCT.md b/PRODUCT.md index 8a4f4f1..91e7fa9 100644 --- a/PRODUCT.md +++ b/PRODUCT.md @@ -1,51 +1,51 @@ -# Product - -## Register - -brand - -## Users - -Two primary personas, both aesthetically-driven professionals who have outgrown generic tools: - -**Marketing / Agency Lead** — manages multiple client campaigns simultaneously. Needs organized folders, detailed analytics, and design output that doesn't betray itself as "internet freeware." They evaluate tools by how their outputs look to clients, not just how the tool works internally. - -**Modern Restaurateur** — owner of a boutique restaurant, cafe, or hotel. Their physical space is carefully designed; their digital touchpoints must match. They rely on Dynamic QR codes to swap menu PDFs and URLs seasonally without reprinting expensive acrylic table stands. Brand consistency between print and digital is non-negotiable for them. - -**Arrival context:** Both land on QR Master after being burned by "free" tools that expired, injected third-party ads, or looked visually cheap. They are actively comparing options and arrive skeptical. They're not discovering QR tools for the first time — they're looking for a permanent, professional home. - -## Product Purpose - -QR Master is a precision QR code platform — creation, dynamic editing, and analytics — for professionals who refuse to compromise on aesthetics. Success means users choose QR Master not because they have to, but because they want to: the tool itself feels like an extension of their creative workflow, not a clunky utility they tolerate. - -## Brand Personality - -**Confident, Minimal, Crafted.** - -"The Leica of QR Generators." A precision instrument that earns trust through intentionality, not decoration. Every pixel deliberate. Think Linear's pro-tool clarity, Raycast's utilitarian beauty, Framer's implied creative freedom — combined into something that feels high-performance without performing. - -Tone of voice: direct and assured. No hedging, no exclamation points for emphasis, no "Amazing!" copy. Let the product speak. Copy is short, specific, and treats the user as a professional. - -## Anti-references - -- **SEO ad farms** (QR-Code-Generator.com style): cluttered sidebars, aggressive upsell banners, walls of keyword-stuffed text. The opposite of QR Master. -- **Bubbly link-in-bio tools**: neon gradients, Gen-Z playfulness, the Linktree aesthetic. QR Master is for businesses, not social profiles. -- **Legacy enterprise software**: cold gray, mechanical, joyless. High-end is not the same as corporate. QR Master should feel premium, not bureaucratic. - -## Design Principles - -1. **Precision over decoration.** Every element earns its place. No UX furniture — no gratuitous dividers, decorative gradients, or filler icons. If removing it doesn't hurt, remove it. - -2. **Show, don't explain.** The product's quality is demonstrated by how the interface looks and behaves, not described in marketing copy. A beautifully rendered QR preview communicates more than three bullet points about "custom branding." - -3. **Premium through restraint.** Sophistication comes from what's removed. More whitespace, fewer words, tighter hierarchy. The instinct to add is the enemy of craft. - -4. **Trustworthy at a glance.** Clarity and professionalism must be instantaneous — users arriving skeptical decide in 5 seconds. No clever puzzles, no mystery-meat navigation. Confidence is expressed through legibility. - -5. **Tool-like beauty.** Functional elegance, like a well-made physical instrument. Interactions should feel responsive and precise. Animations are subtle cues, not performances. The UI should feel fast even when it isn't. - -## Accessibility & Inclusion - -- **Standard**: WCAG 2.1 AA -- **Reduced motion**: Full `prefers-reduced-motion` support. Animations (where used) default to subtle fades or scale shifts; no motion for motion's sake. -- **Color contrast**: Critical for a QR creation tool. The dashboard must warn users when foreground/background color combinations produce insufficient contrast — both for readability and QR scannability. This is a functional requirement, not a nice-to-have. +# Product + +## Register + +brand + +## Users + +Two primary personas, both aesthetically-driven professionals who have outgrown generic tools: + +**Marketing / Agency Lead** — manages multiple client campaigns simultaneously. Needs organized folders, detailed analytics, and design output that doesn't betray itself as "internet freeware." They evaluate tools by how their outputs look to clients, not just how the tool works internally. + +**Modern Restaurateur** — owner of a boutique restaurant, cafe, or hotel. Their physical space is carefully designed; their digital touchpoints must match. They rely on Dynamic QR codes to swap menu PDFs and URLs seasonally without reprinting expensive acrylic table stands. Brand consistency between print and digital is non-negotiable for them. + +**Arrival context:** Both land on QR Master after being burned by "free" tools that expired, injected third-party ads, or looked visually cheap. They are actively comparing options and arrive skeptical. They're not discovering QR tools for the first time — they're looking for a permanent, professional home. + +## Product Purpose + +QR Master is a precision QR code platform — creation, dynamic editing, and analytics — for professionals who refuse to compromise on aesthetics. Success means users choose QR Master not because they have to, but because they want to: the tool itself feels like an extension of their creative workflow, not a clunky utility they tolerate. + +## Brand Personality + +**Confident, Minimal, Crafted.** + +"The Leica of QR Generators." A precision instrument that earns trust through intentionality, not decoration. Every pixel deliberate. Think Linear's pro-tool clarity, Raycast's utilitarian beauty, Framer's implied creative freedom — combined into something that feels high-performance without performing. + +Tone of voice: direct and assured. No hedging, no exclamation points for emphasis, no "Amazing!" copy. Let the product speak. Copy is short, specific, and treats the user as a professional. + +## Anti-references + +- **SEO ad farms** (QR-Code-Generator.com style): cluttered sidebars, aggressive upsell banners, walls of keyword-stuffed text. The opposite of QR Master. +- **Bubbly link-in-bio tools**: neon gradients, Gen-Z playfulness, the Linktree aesthetic. QR Master is for businesses, not social profiles. +- **Legacy enterprise software**: cold gray, mechanical, joyless. High-end is not the same as corporate. QR Master should feel premium, not bureaucratic. + +## Design Principles + +1. **Precision over decoration.** Every element earns its place. No UX furniture — no gratuitous dividers, decorative gradients, or filler icons. If removing it doesn't hurt, remove it. + +2. **Show, don't explain.** The product's quality is demonstrated by how the interface looks and behaves, not described in marketing copy. A beautifully rendered QR preview communicates more than three bullet points about "custom branding." + +3. **Premium through restraint.** Sophistication comes from what's removed. More whitespace, fewer words, tighter hierarchy. The instinct to add is the enemy of craft. + +4. **Trustworthy at a glance.** Clarity and professionalism must be instantaneous — users arriving skeptical decide in 5 seconds. No clever puzzles, no mystery-meat navigation. Confidence is expressed through legibility. + +5. **Tool-like beauty.** Functional elegance, like a well-made physical instrument. Interactions should feel responsive and precise. Animations are subtle cues, not performances. The UI should feel fast even when it isn't. + +## Accessibility & Inclusion + +- **Standard**: WCAG 2.1 AA +- **Reduced motion**: Full `prefers-reduced-motion` support. Animations (where used) default to subtle fades or scale shifts; no motion for motion's sake. +- **Color contrast**: Critical for a QR creation tool. The dashboard must warn users when foreground/background color combinations produce insufficient contrast — both for readability and QR scannability. This is a functional requirement, not a nice-to-have. diff --git a/articles/bulk-qr-code-generator-excel-guide.md b/articles/bulk-qr-code-generator-excel-guide.md index 3400772..15cffa9 100644 --- a/articles/bulk-qr-code-generator-excel-guide.md +++ b/articles/bulk-qr-code-generator-excel-guide.md @@ -1,121 +1,121 @@ -# Bulk QR Code Generator Guide: Creating QR Codes from Excel & CSV - -If you need to generate hundreds or thousands of QR codes, creating them manually is no longer a realistic option. Whether you are managing product labels for a retail launch, printing badges for a large-scale event, or tracking inventory across multiple warehouses, the manual entry of data into a generator is time-consuming and prone to human error. - -The most efficient workflow is to prepare your data in a spreadsheet—Excel or CSV—and use a **Bulk QR Code Generator** to turn each row into a named, export-ready asset. This guide explains how to structure your files, choose the correct output formats, and follow technical best practices to ensure your codes are scanable and secure. - ---- - -## 1. Why Use a Bulk QR Code Generator? - -Industrializing your QR code workflow is about more than just speed; it is about data integrity. As the industry moves closer to the **GS1 Digital Link** standards—the global transition from 1D barcodes to 2D symbols—the complexity of the data embedded in QR codes has increased. - -A bulk generation workflow allows you to: -- **Minimize Errors:** Copy-pasting thousands of URLs or IDs into a spreadsheet is safer than manual entry into a web form. -- **Automate Naming:** You can assign specific filenames to each QR code based on SKU or ID, making it easy for design and print teams to find the right assets. -- **Maintain Consistency:** Standardize colors, error correction levels, and dimensions across an entire batch of assets. - ---- - -## 2. How to Structure Your Excel or CSV File for Bulk Generation - -The success of a bulk project depends entirely on the formatting of your source file. Most professional tools require a simple, tabular structure. - -### Column Mapping -At a minimum, your spreadsheet should include two primary columns: -1. **The Payload (Target URL/Data):** This is the information the scanner will read. It could be a website URL, a vCard string, or a product ID. -2. **The Filename (Identifier):** This column tells the generator how to name the exported image files. Use unique identifiers like SKUs or internal IDs (e.g., `SKU-9942`). - -### Data Formatting Rules -To prevent generation errors, follow these technical constraints: -- **Encoding special characters:** If your URLs contain localized characters or symbols, ensure your CSV is saved with **UTF-8 encoding**. -- **No empty rows:** Ensure there are no gaps in your data, as some automated engines may stop processing at the first empty cell. -- **Consistent protocol:** Always include the `https://` prefix for URLs to ensure they are recognized as links by mobile OS cameras. -- **Avoid duplicate identifiers:** If two rows have the same identifier in your "Filename" column, the second file may overwrite the first during the export process. - ---- - -## 3. Step-by-Step: From Spreadsheet to Production-Ready Assets - -Generating a batch of codes involves three critical phases: preparation, design application, and extraction. - -### Step 1: Data Validation -Before uploading your file to a tool like **QR Master**, perform a quick audit. Use Excel’s "Remove Duplicates" feature on your identifier column. If you are generating thousands of codes, verify that your browser has enough memory to handle the local processing; professional tools typically process generation in the browser to maintain data privacy. - -### Step 2: Choosing Design and Scanability Parameters -When applying a design in bulk, you are setting a global rule for all images: -- **Error Correction Level:** For bulk projects, we recommend **Level M (15%)** or **Level H (30%)**. This adds redundancy to the code, allowing it to remain scanable even if it is slightly damaged or partially obscured by a logo. -- **Color Contrast:** High contrast is the single most important factor for scanability. A dark foreground (usually black) on a white background remains the gold standard for universal compatibility. -- **Quiet Zones:** Modern scanners require a "quiet zone"—a small margin of empty space around the code—to identify the boundaries of the pattern. Ensure your design template respects this margin. - -### Step 3: Exporting and Organization -Once generated, the assets are usually provided in a single compressed ZIP file. Because you utilized a "Filename" column, the resulting folder will be organized by your internal IDs rather than generic numbers (e.g., `inventory_ID202.svg` instead of `qrcode_1.png`). - ---- - -## 4. Technical File Standards: SVG vs. PNG - -The choice of file format determines the quality of the final physical or digital product. - -### When to use SVG (Scalable Vector Graphics) -For any project involving **print**, SVG is the industry standard. -- **Infinite Scalability:** Vector files do not lose quality when resized. A code generated for a small product tag can be scaled to fit a shipping crate without pixelation. -- **Sharpness:** Printers can interpret the exact mathematical lines of a vector, resulting in sharper edges and higher scan success rates. -- **Small File Size:** Despite their high quality, vector files are often smaller in size than high-resolution rasters. - -### When to use PNG (Portable Network Graphics) -PNG should be reserved for **digital-first** applications. -- **Web and Email:** PNGs are universally supported by web browsers and email clients. -- **App Displays:** Use PNG when the QR code is intended to be displayed on screens, such as mobile tickets or digital menus. - ---- - -## 5. Security and Privacy: Critical Technical Requirements - -Bulk data often contains sensitive internal links or proprietary product information. In 2026, security standards for QR generators have become more stringent. - -### Browser-Side Generation -Browser-side generation is often the safest option for organizations looking to minimize the privacy footprint of a bulk workflow. By ensuring that sensitive spreadsheet data is processed locally on your machine and never sent to a third-party server, you can more effectively align with data privacy regulations like GDPR or CCPA. -Browser-side generation is often the preferred option for organizations looking to minimize the privacy footprint of a bulk workflow. By ensuring that sensitive spreadsheet data is processed locally on your machine and not transmitted to a third-party server, you can more effectively manage data handling requirements. - -### Avoiding Redirect Loops -If you are using a generator that tracks scans (Dynamic QR codes), ensure the service is reputable. If their servers go down, every code in your bulk batch will stop working. For mission-critical internal logistics or permanent packaging, **Static QR codes** are often the safer, stateless choice. - ---- - -## 6. Common Use Case Patterns - -### Inventory and Asset Tracking -Operations teams use bulk generation to label machinery, office equipment, or warehouse bins. By including unique batch IDs in the Excel file, they can generate thousands of individual tracking codes that link directly to their internal ERP or database. - -### Event Management and Ticketing -For large conferences, organizers use attendee lists to create unique vCard or entry codes. In this scenario, the "Filename" column is usually the attendee's registration number, allowing for easy integration into badge-printing software. - -### Retail and Smart Packaging -With the ongoing shift toward the GS1 Digital Link, brands are moving away from simple UPCs and toward unique-at-the-batch level QR codes. Bulk generation allows for the creation of unique labels that can track a product’s journey from the factory floor to the store shelf. - ---- - -## 7. Troubleshooting Technical Errors - -If your bulk batch fails to generate or scan correctly, check these common causes: - -### Why is my QR code not scanning? -- **Low Contrast:** The colors are too similar. Always favor a dark pattern on a light background. -- **Inverted Colors:** Many older scanners cannot read "negative" QR codes (white pattern on a black background). -- **Too much data:** If you encode a very long URL, the QR code squares become smaller and harder to scan. Use a URL shortener if necessary. - -### Why did my bulk upload fail? -- **Incorrect Delimiters:** Ensure your CSV uses commas (`,`) or semicolons (`;`) as expected by the tool. -- **Hidden Formatting:** Excel sometimes adds hidden formatting to cells. Clean your data using a "Paste as Values" operation before exporting to CSV. -- **UTF-8 Warnings:** If your tool returns an error about character encoding, re-save your file as "CSV UTF-8 (Comma delimited)". - ---- - -## Conclusion: Mastering Large-Scale QR Operations - -Once your spreadsheet is structured properly, bulk QR generation becomes a repeatable, high-integrity workflow rather than a manual design task. For teams working across print, packaging, events, or inventory, transitioning to a bulk process saves time, eliminates naming errors, and makes large deployments manageable. - -By focusing on high-contrast designs, vector outputs, and browser-side security, you can ensure that your mass QR code deployment is both technically sound and professional. - -**Ready to start? [Generate your first bulk batch with QR Master →](https://qrmaster.net)** +# Bulk QR Code Generator Guide: Creating QR Codes from Excel & CSV + +If you need to generate hundreds or thousands of QR codes, creating them manually is no longer a realistic option. Whether you are managing product labels for a retail launch, printing badges for a large-scale event, or tracking inventory across multiple warehouses, the manual entry of data into a generator is time-consuming and prone to human error. + +The most efficient workflow is to prepare your data in a spreadsheet—Excel or CSV—and use a **Bulk QR Code Generator** to turn each row into a named, export-ready asset. This guide explains how to structure your files, choose the correct output formats, and follow technical best practices to ensure your codes are scanable and secure. + +--- + +## 1. Why Use a Bulk QR Code Generator? + +Industrializing your QR code workflow is about more than just speed; it is about data integrity. As the industry moves closer to the **GS1 Digital Link** standards—the global transition from 1D barcodes to 2D symbols—the complexity of the data embedded in QR codes has increased. + +A bulk generation workflow allows you to: +- **Minimize Errors:** Copy-pasting thousands of URLs or IDs into a spreadsheet is safer than manual entry into a web form. +- **Automate Naming:** You can assign specific filenames to each QR code based on SKU or ID, making it easy for design and print teams to find the right assets. +- **Maintain Consistency:** Standardize colors, error correction levels, and dimensions across an entire batch of assets. + +--- + +## 2. How to Structure Your Excel or CSV File for Bulk Generation + +The success of a bulk project depends entirely on the formatting of your source file. Most professional tools require a simple, tabular structure. + +### Column Mapping +At a minimum, your spreadsheet should include two primary columns: +1. **The Payload (Target URL/Data):** This is the information the scanner will read. It could be a website URL, a vCard string, or a product ID. +2. **The Filename (Identifier):** This column tells the generator how to name the exported image files. Use unique identifiers like SKUs or internal IDs (e.g., `SKU-9942`). + +### Data Formatting Rules +To prevent generation errors, follow these technical constraints: +- **Encoding special characters:** If your URLs contain localized characters or symbols, ensure your CSV is saved with **UTF-8 encoding**. +- **No empty rows:** Ensure there are no gaps in your data, as some automated engines may stop processing at the first empty cell. +- **Consistent protocol:** Always include the `https://` prefix for URLs to ensure they are recognized as links by mobile OS cameras. +- **Avoid duplicate identifiers:** If two rows have the same identifier in your "Filename" column, the second file may overwrite the first during the export process. + +--- + +## 3. Step-by-Step: From Spreadsheet to Production-Ready Assets + +Generating a batch of codes involves three critical phases: preparation, design application, and extraction. + +### Step 1: Data Validation +Before uploading your file to a tool like **QR Master**, perform a quick audit. Use Excel’s "Remove Duplicates" feature on your identifier column. If you are generating thousands of codes, verify that your browser has enough memory to handle the local processing; professional tools typically process generation in the browser to maintain data privacy. + +### Step 2: Choosing Design and Scanability Parameters +When applying a design in bulk, you are setting a global rule for all images: +- **Error Correction Level:** For bulk projects, we recommend **Level M (15%)** or **Level H (30%)**. This adds redundancy to the code, allowing it to remain scanable even if it is slightly damaged or partially obscured by a logo. +- **Color Contrast:** High contrast is the single most important factor for scanability. A dark foreground (usually black) on a white background remains the gold standard for universal compatibility. +- **Quiet Zones:** Modern scanners require a "quiet zone"—a small margin of empty space around the code—to identify the boundaries of the pattern. Ensure your design template respects this margin. + +### Step 3: Exporting and Organization +Once generated, the assets are usually provided in a single compressed ZIP file. Because you utilized a "Filename" column, the resulting folder will be organized by your internal IDs rather than generic numbers (e.g., `inventory_ID202.svg` instead of `qrcode_1.png`). + +--- + +## 4. Technical File Standards: SVG vs. PNG + +The choice of file format determines the quality of the final physical or digital product. + +### When to use SVG (Scalable Vector Graphics) +For any project involving **print**, SVG is the industry standard. +- **Infinite Scalability:** Vector files do not lose quality when resized. A code generated for a small product tag can be scaled to fit a shipping crate without pixelation. +- **Sharpness:** Printers can interpret the exact mathematical lines of a vector, resulting in sharper edges and higher scan success rates. +- **Small File Size:** Despite their high quality, vector files are often smaller in size than high-resolution rasters. + +### When to use PNG (Portable Network Graphics) +PNG should be reserved for **digital-first** applications. +- **Web and Email:** PNGs are universally supported by web browsers and email clients. +- **App Displays:** Use PNG when the QR code is intended to be displayed on screens, such as mobile tickets or digital menus. + +--- + +## 5. Security and Privacy: Critical Technical Requirements + +Bulk data often contains sensitive internal links or proprietary product information. In 2026, security standards for QR generators have become more stringent. + +### Browser-Side Generation +Browser-side generation is often the safest option for organizations looking to minimize the privacy footprint of a bulk workflow. By ensuring that sensitive spreadsheet data is processed locally on your machine and never sent to a third-party server, you can more effectively align with data privacy regulations like GDPR or CCPA. +Browser-side generation is often the preferred option for organizations looking to minimize the privacy footprint of a bulk workflow. By ensuring that sensitive spreadsheet data is processed locally on your machine and not transmitted to a third-party server, you can more effectively manage data handling requirements. + +### Avoiding Redirect Loops +If you are using a generator that tracks scans (Dynamic QR codes), ensure the service is reputable. If their servers go down, every code in your bulk batch will stop working. For mission-critical internal logistics or permanent packaging, **Static QR codes** are often the safer, stateless choice. + +--- + +## 6. Common Use Case Patterns + +### Inventory and Asset Tracking +Operations teams use bulk generation to label machinery, office equipment, or warehouse bins. By including unique batch IDs in the Excel file, they can generate thousands of individual tracking codes that link directly to their internal ERP or database. + +### Event Management and Ticketing +For large conferences, organizers use attendee lists to create unique vCard or entry codes. In this scenario, the "Filename" column is usually the attendee's registration number, allowing for easy integration into badge-printing software. + +### Retail and Smart Packaging +With the ongoing shift toward the GS1 Digital Link, brands are moving away from simple UPCs and toward unique-at-the-batch level QR codes. Bulk generation allows for the creation of unique labels that can track a product’s journey from the factory floor to the store shelf. + +--- + +## 7. Troubleshooting Technical Errors + +If your bulk batch fails to generate or scan correctly, check these common causes: + +### Why is my QR code not scanning? +- **Low Contrast:** The colors are too similar. Always favor a dark pattern on a light background. +- **Inverted Colors:** Many older scanners cannot read "negative" QR codes (white pattern on a black background). +- **Too much data:** If you encode a very long URL, the QR code squares become smaller and harder to scan. Use a URL shortener if necessary. + +### Why did my bulk upload fail? +- **Incorrect Delimiters:** Ensure your CSV uses commas (`,`) or semicolons (`;`) as expected by the tool. +- **Hidden Formatting:** Excel sometimes adds hidden formatting to cells. Clean your data using a "Paste as Values" operation before exporting to CSV. +- **UTF-8 Warnings:** If your tool returns an error about character encoding, re-save your file as "CSV UTF-8 (Comma delimited)". + +--- + +## Conclusion: Mastering Large-Scale QR Operations + +Once your spreadsheet is structured properly, bulk QR generation becomes a repeatable, high-integrity workflow rather than a manual design task. For teams working across print, packaging, events, or inventory, transitioning to a bulk process saves time, eliminates naming errors, and makes large deployments manageable. + +By focusing on high-contrast designs, vector outputs, and browser-side security, you can ensure that your mass QR code deployment is both technically sound and professional. + +**Ready to start? [Generate your first bulk batch with QR Master →](https://qrmaster.net)** diff --git a/articles/dynamic-vs-static-decision-matrix.md b/articles/dynamic-vs-static-decision-matrix.md index 911ef2d..93844f2 100644 --- a/articles/dynamic-vs-static-decision-matrix.md +++ b/articles/dynamic-vs-static-decision-matrix.md @@ -1,181 +1,181 @@ -# Dynamic vs. Static QR Codes: The Professional Decision Matrix - -## The Shift from "Static Print" to "Digital Agility" - -In the traditional marketing and logistics era, the relationship between a physical asset and its digital counterpart was often viewed as a one-time deployment. You printed a code, it pointed to a URL, and that was the end of the lifecycle. However, as business cycles accelerate and data privacy regulations tighten, this "print and pray" approach is no longer sufficient. - -For enterprise architects, marketing directors, and logistics managers, the choice between **Static** and **Dynamic** QR codes is not merely a technical preference—it is a strategic decision that affects campaign longevity, data security, and operational scalability. This guide provides a technical and strategic framework for deciding which architecture fits your specific professional requirements. - ---- - -## 1. The Technical Foundation: How Data is Encoded - -To make an informed decision, one must first understand the fundamental engineering difference between the two formats. - -### Static QR Codes: Direct Data Encoding -A Static QR code encodes the payload directly into the data modules; Reed-Solomon error correction is added to improve recovery from damage. - -* **Pixel Density:** As the payload size increases (e.g., from a 20-character URL to a 200-character description), the "version" of the QR code increases, leading to a denser, more complex pixel grid. -* **Immutability:** Once the code is generated, the underlying data cannot be changed. The patterns are fixed geographically in the physical modules. -* **Zero Latency & Independence:** A static code does not require a central server to function. As long as a scanner can interpret the pattern, the data is retrieved locally. This is the ultimate "fail-safe" architecture. - -### Dynamic QR Codes: The Managed Redirect Layer -A Dynamic QR code typically encodes a short redirect URL that points to a destination managed on a server. - -* **Pixel Consistency:** Because only a short URL is encoded (regardless of the final destination's length), the pixel density remains low (usually Version 1 or 2). This maximizes scanning speed and reliability. -* **Flexibility:** The destination URL can be updated in the database at any time—even after thousands of stickers or brochures have been distributed. -* **Metadata Harvesting:** The intermediate redirect acts as a sentinel, capturing device operating systems, browser locales, and precise timestamps before the user is seamlessly passed to the final destination. - ---- - -## 2. The Case for Static QR Codes: Security and Stability - -Despite the obvious flexibility of dynamic codes, Static QR codes remain the gold standard for specific professional use cases. - -### Zero-Dependency Infrastructure -Static codes are entirely self-contained. They do not rely on an external service or a redirect server to function. For critical infrastructure or products with a 20-year shelf life, this zero-dependency profile is essential. If a redirect service goes out of business, every dynamic code pointing to its servers becomes a "dead" asset. Static codes, conversely, will work as long as the physical substrate exists. - -### Data Privacy and Security Nuances -Static codes avoid redirect-layer tracking; however, any analytics on the destination page still depend on the target system. No intermediate scan logs are created by a generator service, making them ideal for healthcare, government, or high-security internal logistics where data sovereignty is the absolute priority. - -### Latency Mitigation -While dynamic codes introduce a redirect, professional infrastructure can minimize this to negligible levels. -* **Edge-Cached Redirects:** Use providers that leverage global CDNs (Content Delivery Networks) to resolve the redirect at the edge server closest to the user. -* **TTFB Monitoring:** Monitor the **Time-to-First-Byte** of your redirect server. A high TTFB on a mobile connection can turn a 100ms redirect into a 5-second frustration. - -**Primary Use Cases for Static:** -* **Hardware Labels:** Serial numbers and technical specifications. -* **Asset Management:** Permanent inventory IDs for internal tracking. -* **Personal Data:** Plain text credentials or permanent WiFi configurations. - ---- - -## 3. The Power of Dynamic QR Codes: Agility and Attribution - -For marketing and customer-facing operations, the advantages of Dynamic QR codes are overwhelming. - -### The "Post-Print" Edit -Errors in URLs or changes in landing page strategy are inevitable. A dynamic code acts as an insurance policy. If a campaign landing page is retired, you simply update the redirect to a new URL. This eliminates the catastrophic cost of reprinting OOH (Out-of-Home) signage or packaging. - -### Granular Attribution (The "Offline Analytics" Gap) -In a professional campaign, "what gets measured gets managed." Dynamic codes provide a bridge between the physical world and your CRM or Analytics dashboard. -* **Geographic Insights:** Identifying which city or physical location is driving the most scans. -* **A/B Testing:** Sending 50% of scans to "Page A" and 50% to "Page B" to optimize conversion rates in real-time. - -### Short URL Scannability -Because the encoded data is always a short URL (e.g., `qr.master/x1z`), the QR module size can remain small. This allows for higher scan reliability even on small surfaces (like medicine bottles) or from long distances (like billboards). - ---- - -## 4. The Decision Matrix: A Professional Framework - -Use the following matrix to determine the correct architecture for your next deployment. - -```mermaid -graph TD - A[Start: New QR Deployment] --> B{Does the destination URL
have a 1% chance of changing?} - B -- Yes --> C[Dynamic QR Code] - B -- No --> D{Do you need scan analytics
or geographic data?} - D -- Yes --> C - D -- No --> E{Is the code part of
critical/permanent infrastructure?} - E -- Yes --> F[Static QR Code] - E -- No --> G{Is data privacy/GDPR compliance
the absolute priority?} - G -- Yes --> F - G -- No --> C -``` - -### Table 1: Comparative Metric Overview - -| Feature | Static QR Code | Dynamic QR Code | -| :--- | :--- | :--- | -| **Sustainability** | Infinite (Zero dependency) | Dependent on Redirect Provider | -| **Editability** | Immutable | Real-time Updates | -| **Scannability** | Denser with more data | Consistent & Low-density | -| **Privacy** | High (Internal/Self-contained) | Variable (Infrastructure dependent) | -| **Analytics** | Hard-coded (Off-platform) | Full Engagement Data | -| **Latency** | Instant | Infrastructure/Network Dependent | - ---- - -## 5. Strategic Implementation: Best Practices for Professionals - -### Resolving the "Vendor Lock-in" Risk -The biggest risk of Dynamic QR codes is being tied to a single provider. For enterprise-level deployments, mitigation is essential: -* **Custom Domain Hosting:** Use your own subdomain (e.g., `qr.yourcompany.com`). If you switch providers, you simply point your DNS to the new server, and existing codes remain functional. -* **The Self-Hosted Option:** For mission-critical environments, consider a self-hosted redirect layer (e.g., using **YOURLS** or a custom-built API). This ensures you own the "sentinel" that processes the scan. -* **Disaster Recovery:** Maintain an annual export of all redirect mappings (CSV/JSON). In a provider outage, this data allows for a rapid "emergency restore" to a secondary redirect service. - -### Dynamic QR Analytics: The GDPR Tightrope -While dynamic codes enable tracking, they also introduce a data processing layer. Professionals must ensure compliance through a "Privacy by Design" lens: -* **IP Anonymization:** Ensure your provider masks the last octet of IP addresses to prevent the collection of PII (Personally Identifiable Information). -* **DPA Enforcement:** Only work with providers that offer a clear **Data Processing Agreement (DPA)** under GDPR or CCPA. -* **Consent Management:** If the redirect landing page uses tracking scripts (e.g., Meta Pixel), ensure a cookie banner is triggered *before* data collection begins. For the "pure" redirect phase, minimize log retention to the absolute minimum required for deduplication. - -### Error Correction and Surface Geometry -In professional printing, always use at least **Level M (15%) or Level Q (25%)** Error Correction. This ensures that even if a code on a curved surface or a dusty warehouse floor is partially damaged, the data remains recoverable. - -### The "Quiet Zone" Rule -Professionals never ignore the Quiet Zone. A minimum of **4 modules (blocks)** of empty white space must surround the code on all sides. Cutting into this space for "aesthetic" reasons is the #1 cause of scan failures in professional environments. Scanners use this zone to "bracket" the code and calibrate the optical sensor; without it, the algorithms may fail to distinguish the code from surrounding background noise. - -### Reed-Solomon Error Correction Selection -For professional use, the choice of error correction (EC) level is critical. Higher EC levels allow for better recovery from physical damage but increase the code's version (size). - -| EC Level | Damage Tolerance | Practical Example | -| :--- | :--- | :--- | -| **L (7%)** | Minor scratches | Indoor brochures in controlled, clean environments | -| **M (15%)** | Moderate wear | Industry standard; outdoor posters, retail packaging | -| **Q (25%)** | Heavy damage | Warehouse labels, industrial assets, curved surfaces | -| **H (30%)** | Logo embedding | Branded QR codes with 20-30% logo coverage | - ---- - -## 6. The Hybrid Strategy: The "Static Fallback" Pattern - -Modern enterprise architecture often avoids the binary "Static vs. Dynamic" choice in favor of a hybrid approach. This maximizes both flexibility and reliability. - -### The "Dual-Payload" Pattern -Some QR payloads combine machine-readable static data with a URL field, giving scanners useful fallback information even if the online destination is unavailable. This pattern is common in vCards or complex sensor data strings. - -### Use Case: Critical Field Service -An industrial generator might have a QR code. -* **Static Data:** Hardware specs and emergency shutdown procedures (works even in a basement with zero signal). -* **Dynamic Data:** A link to a "Real-time Parts Order" page or the latest PDF manual. - ---- - -## 7. Enterprise Operations: Beyond the Redirect - -### Legacy Code Migration: The "Wrapper" Strategy -If you have deployed static codes that now need analytics, you do not necessarily need a reprint: -* **Custom Logging Logic:** Create a listener in your backend that parses the static payload scan results from your proprietary scan app. -* **Visual Recognition APIs:** Use computer vision to detect static codes and trigger background analytics calls in a controlled mobile app environment. -* **NFC Augmentation:** Deploy NFC tags alongside existing QR codes for dual-mode tracking without altering the original print. - -### Security Best Practices for Dynamic Redirects -* **HTTPS-Only:** Never use `http://` in redirect URLs to prevent man-in-the-middle attacks. -* **Rate Limiting:** Protect your short-link infrastructure from redirect-abuse and DDoS via "QR spam." -* **Expiration Management:** Set automatic expiration for time-sensitive marketing campaigns. -* **Redirect Validation:** Ensure no malicious intermediate redirects can be injected into your dashboard. - -### Cost Analysis: The ROI Perspective -| Scenario | Static Approach | Dynamic Approach | Break-Even Point | -| :--- | :--- | :--- | :--- | -| **1000 assets, 0 changes** | €50 (one-time) | Subscription costs | Never (Use Static) | -| **1000 assets, 1 URL fix** | €50 + €2,000 reprint | Subscription costs | After first change | -| **A/B Testing Campaign** | Impossible | Subscription costs | Immediate | - ---- - -## 8. Conclusion: Architecture for the Hybrid Era - -The choice between static and dynamic is not about which technology is "better," but about which architecture aligns with your project’s risk profile and measurement needs. - -* **Choose Static** when the code is part of a machine, a permanent archive, or a privacy-sensitive internal workflow. -* **Choose Dynamic** when the code is a gateway to a campaign, a product support page, or any asset where the digital destination is subject to the speed of business. - -Tools like **QR Master** are designed to support both workflows, providing the high-resolution exports and professional-grade security required for enterprise-level bridge-building between the physical and digital worlds. - ---- - -> [!TIP] -> **Pro Tip for Logistics Managers:** Use Static codes for internal bin tracking to ensure zero downtime, but use Dynamic codes for customer-facing return labels to allow for carrier or address updates on the fly. +# Dynamic vs. Static QR Codes: The Professional Decision Matrix + +## The Shift from "Static Print" to "Digital Agility" + +In the traditional marketing and logistics era, the relationship between a physical asset and its digital counterpart was often viewed as a one-time deployment. You printed a code, it pointed to a URL, and that was the end of the lifecycle. However, as business cycles accelerate and data privacy regulations tighten, this "print and pray" approach is no longer sufficient. + +For enterprise architects, marketing directors, and logistics managers, the choice between **Static** and **Dynamic** QR codes is not merely a technical preference—it is a strategic decision that affects campaign longevity, data security, and operational scalability. This guide provides a technical and strategic framework for deciding which architecture fits your specific professional requirements. + +--- + +## 1. The Technical Foundation: How Data is Encoded + +To make an informed decision, one must first understand the fundamental engineering difference between the two formats. + +### Static QR Codes: Direct Data Encoding +A Static QR code encodes the payload directly into the data modules; Reed-Solomon error correction is added to improve recovery from damage. + +* **Pixel Density:** As the payload size increases (e.g., from a 20-character URL to a 200-character description), the "version" of the QR code increases, leading to a denser, more complex pixel grid. +* **Immutability:** Once the code is generated, the underlying data cannot be changed. The patterns are fixed geographically in the physical modules. +* **Zero Latency & Independence:** A static code does not require a central server to function. As long as a scanner can interpret the pattern, the data is retrieved locally. This is the ultimate "fail-safe" architecture. + +### Dynamic QR Codes: The Managed Redirect Layer +A Dynamic QR code typically encodes a short redirect URL that points to a destination managed on a server. + +* **Pixel Consistency:** Because only a short URL is encoded (regardless of the final destination's length), the pixel density remains low (usually Version 1 or 2). This maximizes scanning speed and reliability. +* **Flexibility:** The destination URL can be updated in the database at any time—even after thousands of stickers or brochures have been distributed. +* **Metadata Harvesting:** The intermediate redirect acts as a sentinel, capturing device operating systems, browser locales, and precise timestamps before the user is seamlessly passed to the final destination. + +--- + +## 2. The Case for Static QR Codes: Security and Stability + +Despite the obvious flexibility of dynamic codes, Static QR codes remain the gold standard for specific professional use cases. + +### Zero-Dependency Infrastructure +Static codes are entirely self-contained. They do not rely on an external service or a redirect server to function. For critical infrastructure or products with a 20-year shelf life, this zero-dependency profile is essential. If a redirect service goes out of business, every dynamic code pointing to its servers becomes a "dead" asset. Static codes, conversely, will work as long as the physical substrate exists. + +### Data Privacy and Security Nuances +Static codes avoid redirect-layer tracking; however, any analytics on the destination page still depend on the target system. No intermediate scan logs are created by a generator service, making them ideal for healthcare, government, or high-security internal logistics where data sovereignty is the absolute priority. + +### Latency Mitigation +While dynamic codes introduce a redirect, professional infrastructure can minimize this to negligible levels. +* **Edge-Cached Redirects:** Use providers that leverage global CDNs (Content Delivery Networks) to resolve the redirect at the edge server closest to the user. +* **TTFB Monitoring:** Monitor the **Time-to-First-Byte** of your redirect server. A high TTFB on a mobile connection can turn a 100ms redirect into a 5-second frustration. + +**Primary Use Cases for Static:** +* **Hardware Labels:** Serial numbers and technical specifications. +* **Asset Management:** Permanent inventory IDs for internal tracking. +* **Personal Data:** Plain text credentials or permanent WiFi configurations. + +--- + +## 3. The Power of Dynamic QR Codes: Agility and Attribution + +For marketing and customer-facing operations, the advantages of Dynamic QR codes are overwhelming. + +### The "Post-Print" Edit +Errors in URLs or changes in landing page strategy are inevitable. A dynamic code acts as an insurance policy. If a campaign landing page is retired, you simply update the redirect to a new URL. This eliminates the catastrophic cost of reprinting OOH (Out-of-Home) signage or packaging. + +### Granular Attribution (The "Offline Analytics" Gap) +In a professional campaign, "what gets measured gets managed." Dynamic codes provide a bridge between the physical world and your CRM or Analytics dashboard. +* **Geographic Insights:** Identifying which city or physical location is driving the most scans. +* **A/B Testing:** Sending 50% of scans to "Page A" and 50% to "Page B" to optimize conversion rates in real-time. + +### Short URL Scannability +Because the encoded data is always a short URL (e.g., `qr.master/x1z`), the QR module size can remain small. This allows for higher scan reliability even on small surfaces (like medicine bottles) or from long distances (like billboards). + +--- + +## 4. The Decision Matrix: A Professional Framework + +Use the following matrix to determine the correct architecture for your next deployment. + +```mermaid +graph TD + A[Start: New QR Deployment] --> B{Does the destination URL
have a 1% chance of changing?} + B -- Yes --> C[Dynamic QR Code] + B -- No --> D{Do you need scan analytics
or geographic data?} + D -- Yes --> C + D -- No --> E{Is the code part of
critical/permanent infrastructure?} + E -- Yes --> F[Static QR Code] + E -- No --> G{Is data privacy/GDPR compliance
the absolute priority?} + G -- Yes --> F + G -- No --> C +``` + +### Table 1: Comparative Metric Overview + +| Feature | Static QR Code | Dynamic QR Code | +| :--- | :--- | :--- | +| **Sustainability** | Infinite (Zero dependency) | Dependent on Redirect Provider | +| **Editability** | Immutable | Real-time Updates | +| **Scannability** | Denser with more data | Consistent & Low-density | +| **Privacy** | High (Internal/Self-contained) | Variable (Infrastructure dependent) | +| **Analytics** | Hard-coded (Off-platform) | Full Engagement Data | +| **Latency** | Instant | Infrastructure/Network Dependent | + +--- + +## 5. Strategic Implementation: Best Practices for Professionals + +### Resolving the "Vendor Lock-in" Risk +The biggest risk of Dynamic QR codes is being tied to a single provider. For enterprise-level deployments, mitigation is essential: +* **Custom Domain Hosting:** Use your own subdomain (e.g., `qr.yourcompany.com`). If you switch providers, you simply point your DNS to the new server, and existing codes remain functional. +* **The Self-Hosted Option:** For mission-critical environments, consider a self-hosted redirect layer (e.g., using **YOURLS** or a custom-built API). This ensures you own the "sentinel" that processes the scan. +* **Disaster Recovery:** Maintain an annual export of all redirect mappings (CSV/JSON). In a provider outage, this data allows for a rapid "emergency restore" to a secondary redirect service. + +### Dynamic QR Analytics: The GDPR Tightrope +While dynamic codes enable tracking, they also introduce a data processing layer. Professionals must ensure compliance through a "Privacy by Design" lens: +* **IP Anonymization:** Ensure your provider masks the last octet of IP addresses to prevent the collection of PII (Personally Identifiable Information). +* **DPA Enforcement:** Only work with providers that offer a clear **Data Processing Agreement (DPA)** under GDPR or CCPA. +* **Consent Management:** If the redirect landing page uses tracking scripts (e.g., Meta Pixel), ensure a cookie banner is triggered *before* data collection begins. For the "pure" redirect phase, minimize log retention to the absolute minimum required for deduplication. + +### Error Correction and Surface Geometry +In professional printing, always use at least **Level M (15%) or Level Q (25%)** Error Correction. This ensures that even if a code on a curved surface or a dusty warehouse floor is partially damaged, the data remains recoverable. + +### The "Quiet Zone" Rule +Professionals never ignore the Quiet Zone. A minimum of **4 modules (blocks)** of empty white space must surround the code on all sides. Cutting into this space for "aesthetic" reasons is the #1 cause of scan failures in professional environments. Scanners use this zone to "bracket" the code and calibrate the optical sensor; without it, the algorithms may fail to distinguish the code from surrounding background noise. + +### Reed-Solomon Error Correction Selection +For professional use, the choice of error correction (EC) level is critical. Higher EC levels allow for better recovery from physical damage but increase the code's version (size). + +| EC Level | Damage Tolerance | Practical Example | +| :--- | :--- | :--- | +| **L (7%)** | Minor scratches | Indoor brochures in controlled, clean environments | +| **M (15%)** | Moderate wear | Industry standard; outdoor posters, retail packaging | +| **Q (25%)** | Heavy damage | Warehouse labels, industrial assets, curved surfaces | +| **H (30%)** | Logo embedding | Branded QR codes with 20-30% logo coverage | + +--- + +## 6. The Hybrid Strategy: The "Static Fallback" Pattern + +Modern enterprise architecture often avoids the binary "Static vs. Dynamic" choice in favor of a hybrid approach. This maximizes both flexibility and reliability. + +### The "Dual-Payload" Pattern +Some QR payloads combine machine-readable static data with a URL field, giving scanners useful fallback information even if the online destination is unavailable. This pattern is common in vCards or complex sensor data strings. + +### Use Case: Critical Field Service +An industrial generator might have a QR code. +* **Static Data:** Hardware specs and emergency shutdown procedures (works even in a basement with zero signal). +* **Dynamic Data:** A link to a "Real-time Parts Order" page or the latest PDF manual. + +--- + +## 7. Enterprise Operations: Beyond the Redirect + +### Legacy Code Migration: The "Wrapper" Strategy +If you have deployed static codes that now need analytics, you do not necessarily need a reprint: +* **Custom Logging Logic:** Create a listener in your backend that parses the static payload scan results from your proprietary scan app. +* **Visual Recognition APIs:** Use computer vision to detect static codes and trigger background analytics calls in a controlled mobile app environment. +* **NFC Augmentation:** Deploy NFC tags alongside existing QR codes for dual-mode tracking without altering the original print. + +### Security Best Practices for Dynamic Redirects +* **HTTPS-Only:** Never use `http://` in redirect URLs to prevent man-in-the-middle attacks. +* **Rate Limiting:** Protect your short-link infrastructure from redirect-abuse and DDoS via "QR spam." +* **Expiration Management:** Set automatic expiration for time-sensitive marketing campaigns. +* **Redirect Validation:** Ensure no malicious intermediate redirects can be injected into your dashboard. + +### Cost Analysis: The ROI Perspective +| Scenario | Static Approach | Dynamic Approach | Break-Even Point | +| :--- | :--- | :--- | :--- | +| **1000 assets, 0 changes** | €50 (one-time) | Subscription costs | Never (Use Static) | +| **1000 assets, 1 URL fix** | €50 + €2,000 reprint | Subscription costs | After first change | +| **A/B Testing Campaign** | Impossible | Subscription costs | Immediate | + +--- + +## 8. Conclusion: Architecture for the Hybrid Era + +The choice between static and dynamic is not about which technology is "better," but about which architecture aligns with your project’s risk profile and measurement needs. + +* **Choose Static** when the code is part of a machine, a permanent archive, or a privacy-sensitive internal workflow. +* **Choose Dynamic** when the code is a gateway to a campaign, a product support page, or any asset where the digital destination is subject to the speed of business. + +Tools like **QR Master** are designed to support both workflows, providing the high-resolution exports and professional-grade security required for enterprise-level bridge-building between the physical and digital worlds. + +--- + +> [!TIP] +> **Pro Tip for Logistics Managers:** Use Static codes for internal bin tracking to ensure zero downtime, but use Dynamic codes for customer-facing return labels to allow for carrier or address updates on the fly. diff --git a/articles/linkedin-business-card-qr.md b/articles/linkedin-business-card-qr.md index f6318a9..13a1432 100644 --- a/articles/linkedin-business-card-qr.md +++ b/articles/linkedin-business-card-qr.md @@ -1,35 +1,35 @@ -# Is Your Business Card a Dead End? - -Professional Scanning QR Business Card - - -I was at a local networking booth last week, and I collected about 20 business cards. When I sat down to follow up, I realized that 15 of them required me to manually type in a name, find them on LinkedIn, or search for their website. - -In a world where attention spans are measured in seconds, that’s a lot of friction. - -Adding a QR code to your business card isn’t just about "looking techy." It’s about making the leap from physical paper to digital connection as effortless as possible. - -But here’s the thing: most people do it wrong. - -### The 3 Biggest QR Mistakes on Business Cards - -1️⃣ **Using a Static Link** -If you print 500 cards with a direct link to your current portfolio, and you change your URL next month, you now have 500 pieces of expensive trash. **Always use a dynamic QR code.** You can change the destination URL anytime without reprinting. - -2️⃣ **Linking to Your Home Page** -Don't send me to a generic website where I have to search for your contact info. Link directly to a **vCard/Digital Business Card** or a specific landing page that says: "Add to Contacts." - -3️⃣ **The "Fine Print" Sizing** -If the code is too small or has zero border (the "quiet zone"), phone cameras will struggle to focus. If I have to try three times to scan it, I'm going to stop trying. - -### Why I think about this so much... - -I kept running into this problem often enough that I eventually built a small tool called **[QR Master](https://qrmaster.net)** to make dynamic QR codes easier to create and test. I wanted a way to create trackable codes without the baggage of monthly subscriptions or complex dashboards. - -If you’re still handing out plain paper cards, try adding a small dynamic square on the next batch. It turns a piece of cardstock into a portal. - -**Quit handing out dead-end cards. Start handing out connections.** - ---- - +# Is Your Business Card a Dead End? + +Professional Scanning QR Business Card + + +I was at a local networking booth last week, and I collected about 20 business cards. When I sat down to follow up, I realized that 15 of them required me to manually type in a name, find them on LinkedIn, or search for their website. + +In a world where attention spans are measured in seconds, that’s a lot of friction. + +Adding a QR code to your business card isn’t just about "looking techy." It’s about making the leap from physical paper to digital connection as effortless as possible. + +But here’s the thing: most people do it wrong. + +### The 3 Biggest QR Mistakes on Business Cards + +1️⃣ **Using a Static Link** +If you print 500 cards with a direct link to your current portfolio, and you change your URL next month, you now have 500 pieces of expensive trash. **Always use a dynamic QR code.** You can change the destination URL anytime without reprinting. + +2️⃣ **Linking to Your Home Page** +Don't send me to a generic website where I have to search for your contact info. Link directly to a **vCard/Digital Business Card** or a specific landing page that says: "Add to Contacts." + +3️⃣ **The "Fine Print" Sizing** +If the code is too small or has zero border (the "quiet zone"), phone cameras will struggle to focus. If I have to try three times to scan it, I'm going to stop trying. + +### Why I think about this so much... + +I kept running into this problem often enough that I eventually built a small tool called **[QR Master](https://qrmaster.net)** to make dynamic QR codes easier to create and test. I wanted a way to create trackable codes without the baggage of monthly subscriptions or complex dashboards. + +If you’re still handing out plain paper cards, try adding a small dynamic square on the next batch. It turns a piece of cardstock into a portal. + +**Quit handing out dead-end cards. Start handing out connections.** + +--- + #Networking #Marketing #B2B #DigitalTransformation #SmallBusiness #Productivity \ No newline at end of file diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index 2e8863a..b405f20 100644 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -1,8 +1,8 @@ -#!/bin/sh -set -eu - -echo "Applying Prisma migrations..." -npx prisma migrate deploy - -echo "Starting application..." -exec node server.js +#!/bin/sh +set -eu + +echo "Applying Prisma migrations..." +npx prisma migrate deploy + +echo "Starting application..." +exec node server.js diff --git a/docs/automations/README.md b/docs/automations/README.md index 0a9764d..55343ba 100644 --- a/docs/automations/README.md +++ b/docs/automations/README.md @@ -1,45 +1,45 @@ -# Codex Automation System - -This folder defines reusable Codex workflows for QRMaster and GreenLens Pro. -Use these as operating playbooks when asking Codex to run growth, SEO, content, -or app-store work. - -## Active Automations - -### QRMaster - -1. `qrmaster-pr-seo-review.md` - - Purpose: review every SEO, landing page, and conversion change before it is merged. - - Primary plugins/tools: GitHub, Codex. - - Primary skills: `ai-seo`, `content-strategy`, `careful`, `qa`. - -2. `qrmaster-seo-sprint-machine.md` - - Purpose: plan and produce a weekly SEO sprint from keyword backlog to PR-ready work. - - Primary plugins/tools: GitHub, Coupler or CSV exports, Codex. - - Primary skills: `content-strategy`, `ai-seo`, `copywriting`, `qa`. - -3. `qrmaster-broken-link-cta-checker.md` - - Purpose: catch broken internal links and broken CTAs after direct `main` - branch changes. - - Primary plugins/tools: Codex, GitHub Actions or local npm script. - - Primary skills: `qa`, `ai-seo`. - -### GreenLens Pro - -1. `greenlens-pain-mining-machine.md` - - Purpose: turn reviews, comments, competitor messaging, and search questions into - product, ASO, and content opportunities. - - Primary plugins/tools: Codex, Gmail, Coupler or CSV exports. - - Primary skills: `app-store-aso`, `content-strategy`, `copywriting`. - -2. `greenlens-viral-slideshow-machine.md` - - Purpose: turn validated plant pains into TikTok, Instagram, and Canva-ready - slideshow assets. - - Primary plugins/tools: Canva, Codex, Gmail/Fyxer for creator briefs. - - Primary skills: `content-strategy`, `copywriting`, `ad-creative`, `app-store-aso`. - -## Operating Rule - -Do not automate publishing directly. Automate drafts, PRs, reviews, and packaged -outputs first. A human should approve live SEO pages, store metadata, influencer -messages, and paid/conversion changes. +# Codex Automation System + +This folder defines reusable Codex workflows for QRMaster and GreenLens Pro. +Use these as operating playbooks when asking Codex to run growth, SEO, content, +or app-store work. + +## Active Automations + +### QRMaster + +1. `qrmaster-pr-seo-review.md` + - Purpose: review every SEO, landing page, and conversion change before it is merged. + - Primary plugins/tools: GitHub, Codex. + - Primary skills: `ai-seo`, `content-strategy`, `careful`, `qa`. + +2. `qrmaster-seo-sprint-machine.md` + - Purpose: plan and produce a weekly SEO sprint from keyword backlog to PR-ready work. + - Primary plugins/tools: GitHub, Coupler or CSV exports, Codex. + - Primary skills: `content-strategy`, `ai-seo`, `copywriting`, `qa`. + +3. `qrmaster-broken-link-cta-checker.md` + - Purpose: catch broken internal links and broken CTAs after direct `main` + branch changes. + - Primary plugins/tools: Codex, GitHub Actions or local npm script. + - Primary skills: `qa`, `ai-seo`. + +### GreenLens Pro + +1. `greenlens-pain-mining-machine.md` + - Purpose: turn reviews, comments, competitor messaging, and search questions into + product, ASO, and content opportunities. + - Primary plugins/tools: Codex, Gmail, Coupler or CSV exports. + - Primary skills: `app-store-aso`, `content-strategy`, `copywriting`. + +2. `greenlens-viral-slideshow-machine.md` + - Purpose: turn validated plant pains into TikTok, Instagram, and Canva-ready + slideshow assets. + - Primary plugins/tools: Canva, Codex, Gmail/Fyxer for creator briefs. + - Primary skills: `content-strategy`, `copywriting`, `ad-creative`, `app-store-aso`. + +## Operating Rule + +Do not automate publishing directly. Automate drafts, PRs, reviews, and packaged +outputs first. A human should approve live SEO pages, store metadata, influencer +messages, and paid/conversion changes. diff --git a/docs/automations/greenlens-pain-mining-machine.md b/docs/automations/greenlens-pain-mining-machine.md index 113c257..8c782b4 100644 --- a/docs/automations/greenlens-pain-mining-machine.md +++ b/docs/automations/greenlens-pain-mining-machine.md @@ -1,160 +1,160 @@ -# GreenLens Pro Pain Mining Machine - -## Goal - -Turn real plant-owner pains into content, ASO, influencer, landing page, and -product opportunities. - -## Why This Exists - -GreenLens Pro should be driven by what users actually worry about: -yellow leaves, brown spots, root rot, overwatering, underwatering, pests, -curling leaves, and not knowing what to do next. - -## Plugins And Skills - -| Need | Use | -|---|---| -| Review/comment exports | Coupler, CSV exports, Codex | -| App Store optimization | `app-store-aso` skill | -| Content clustering | `content-strategy` skill | -| Copy and hooks | `copywriting` skill | -| Support/outreach drafting | Gmail/Fyxer plugin | -| Product issue creation | GitHub plugin | - -## Data Sources - -Use any available source, but label the source for every pain: - -- App Store competitor reviews -- Google Play competitor reviews -- Reddit plant-care threads -- TikTok or Instagram comments -- Google autocomplete or People Also Ask exports -- Support emails or user feedback -- Existing GreenLens analytics or onboarding responses - -## Pain Taxonomy - -Cluster each item into one primary category: - -- Yellow leaves -- Brown spots -- Root rot -- Overwatering -- Underwatering -- Curling leaves -- Drooping leaves -- Pests -- Light problems -- Soil and repotting -- Beginner confusion -- Diagnosis trust -- Price/paywall objection -- App usability issue - -## Scoring Model - -Score each pain from 0-100: - -| Factor | Weight | -|---|---:| -| User urgency | 30 | -| App fit | 25 | -| Content virality | 20 | -| ASO/search value | 15 | -| Product learning value | 10 | - -Prioritize urgent, visual, diagnosis-driven pains where GreenLens can credibly -help the user decide what to check next. - -## Weekly Output - -Produce: - -1. Top 20 pains. -2. Top 10 social hooks. -3. Top 5 ASO keyword opportunities. -4. Top 5 blog or landing page ideas. -5. Top 5 product issues or feature hypotheses. -6. Top 10 influencer angles. - -## Codex Pain Mining Prompt - -```text -Run the GreenLens Pro Pain Mining Machine. - -Use: -- docs/automations/greenlens-pain-mining-machine.md -- app-store-aso skill -- content-strategy skill - -Input source: [reviews/comments/export/pasted text] -Market: [US / DE / global] -Platform focus: [iOS / Android / both] - -Tasks: -1. Extract raw plant-owner pains. -2. Cluster them into the GreenLens pain taxonomy. -3. Score each pain by urgency, app fit, virality, ASO value, and product learning. -4. Convert winners into: - - social hooks - - ASO keyword ideas - - blog/landing page ideas - - product issues - - influencer outreach angles - -Do not invent source quotes. If evidence is weak, label it as hypothesis. -``` - -## Output Template - -```markdown -# GreenLens Pain Mining Report - -## Source Summary - -## Top Pains -| Rank | Pain | Source | Score | Why it matters | -|---|---|---|---:|---| - -## Hook Backlog - -## ASO Opportunities - -## Product Issues - -## Influencer Angles - -## Next Actions -``` - -## Product Issue Template - -```markdown -Title: [Feature or improvement] - -User pain: -[What the user is struggling with] - -Hypothesis: -If GreenLens [change], users will [outcome]. - -Acceptance criteria: -- [criterion] -- [criterion] -- [criterion] - -Measurement: -- activation -- scan completion -- paywall conversion -- retention -``` - -## Success Criteria - -- Every recommendation traces back to a real pain or explicitly marked hypothesis. -- Top pains can feed both ASO and social content. -- Product issues are concrete enough for GitHub. - +# GreenLens Pro Pain Mining Machine + +## Goal + +Turn real plant-owner pains into content, ASO, influencer, landing page, and +product opportunities. + +## Why This Exists + +GreenLens Pro should be driven by what users actually worry about: +yellow leaves, brown spots, root rot, overwatering, underwatering, pests, +curling leaves, and not knowing what to do next. + +## Plugins And Skills + +| Need | Use | +|---|---| +| Review/comment exports | Coupler, CSV exports, Codex | +| App Store optimization | `app-store-aso` skill | +| Content clustering | `content-strategy` skill | +| Copy and hooks | `copywriting` skill | +| Support/outreach drafting | Gmail/Fyxer plugin | +| Product issue creation | GitHub plugin | + +## Data Sources + +Use any available source, but label the source for every pain: + +- App Store competitor reviews +- Google Play competitor reviews +- Reddit plant-care threads +- TikTok or Instagram comments +- Google autocomplete or People Also Ask exports +- Support emails or user feedback +- Existing GreenLens analytics or onboarding responses + +## Pain Taxonomy + +Cluster each item into one primary category: + +- Yellow leaves +- Brown spots +- Root rot +- Overwatering +- Underwatering +- Curling leaves +- Drooping leaves +- Pests +- Light problems +- Soil and repotting +- Beginner confusion +- Diagnosis trust +- Price/paywall objection +- App usability issue + +## Scoring Model + +Score each pain from 0-100: + +| Factor | Weight | +|---|---:| +| User urgency | 30 | +| App fit | 25 | +| Content virality | 20 | +| ASO/search value | 15 | +| Product learning value | 10 | + +Prioritize urgent, visual, diagnosis-driven pains where GreenLens can credibly +help the user decide what to check next. + +## Weekly Output + +Produce: + +1. Top 20 pains. +2. Top 10 social hooks. +3. Top 5 ASO keyword opportunities. +4. Top 5 blog or landing page ideas. +5. Top 5 product issues or feature hypotheses. +6. Top 10 influencer angles. + +## Codex Pain Mining Prompt + +```text +Run the GreenLens Pro Pain Mining Machine. + +Use: +- docs/automations/greenlens-pain-mining-machine.md +- app-store-aso skill +- content-strategy skill + +Input source: [reviews/comments/export/pasted text] +Market: [US / DE / global] +Platform focus: [iOS / Android / both] + +Tasks: +1. Extract raw plant-owner pains. +2. Cluster them into the GreenLens pain taxonomy. +3. Score each pain by urgency, app fit, virality, ASO value, and product learning. +4. Convert winners into: + - social hooks + - ASO keyword ideas + - blog/landing page ideas + - product issues + - influencer outreach angles + +Do not invent source quotes. If evidence is weak, label it as hypothesis. +``` + +## Output Template + +```markdown +# GreenLens Pain Mining Report + +## Source Summary + +## Top Pains +| Rank | Pain | Source | Score | Why it matters | +|---|---|---|---:|---| + +## Hook Backlog + +## ASO Opportunities + +## Product Issues + +## Influencer Angles + +## Next Actions +``` + +## Product Issue Template + +```markdown +Title: [Feature or improvement] + +User pain: +[What the user is struggling with] + +Hypothesis: +If GreenLens [change], users will [outcome]. + +Acceptance criteria: +- [criterion] +- [criterion] +- [criterion] + +Measurement: +- activation +- scan completion +- paywall conversion +- retention +``` + +## Success Criteria + +- Every recommendation traces back to a real pain or explicitly marked hypothesis. +- Top pains can feed both ASO and social content. +- Product issues are concrete enough for GitHub. + diff --git a/docs/automations/greenlens-viral-slideshow-machine.md b/docs/automations/greenlens-viral-slideshow-machine.md index 0c079a4..5b09fe1 100644 --- a/docs/automations/greenlens-viral-slideshow-machine.md +++ b/docs/automations/greenlens-viral-slideshow-machine.md @@ -1,139 +1,139 @@ -# GreenLens Pro Viral Slideshow Machine - -## Goal - -Convert validated plant pains into TikTok, Instagram, and Canva-ready slideshow -assets that drive awareness and app downloads. - -## Plugins And Skills - -| Need | Use | -|---|---| -| Creative generation | Canva plugin | -| Hook and caption writing | `copywriting`, `ad-creative` skills | -| Content planning | `content-strategy` skill | -| ASO alignment | `app-store-aso` skill | -| Creator briefs and outreach | Gmail/Fyxer plugin | - -## Required Input - -Use outputs from `greenlens-pain-mining-machine.md`: - -- pain cluster -- urgency score -- source evidence -- target audience -- desired CTA -- app positioning angle - -## Content Pillars - -- Diagnosis before guessing -- Overwatering mistakes -- Yellow leaves -- Brown spots -- Root rot warnings -- Beginner plant rescue -- Plant symptoms explained -- "Do not water yet" warnings -- App scan/use-case demos - -## Slideshow Formula - -1. Hook: direct warning, contradiction, or curiosity. -2. Problem: show the common wrong assumption. -3. Explanation: simple plant-care reason. -4. Check: what the user should inspect first. -5. Risk: what happens if they guess. -6. GreenLens bridge: scan or diagnose before acting. -7. CTA: download, scan, or save. - -## Hook Patterns - -- "Do not water your plant before checking this." -- "Yellow leaves do not always mean your plant is thirsty." -- "Brown spots can mean more than sunburn." -- "Your plant was warning you before it started dying." -- "Overwatering often looks like underwatering." -- "Scan before you guess." - -## Canva Direction - -Use GreenLens as a calm diagnosis-first plant app: - -- natural plant photography or close-up symptom imagery -- clear readable overlay text -- botanical but not decorative-only -- show symptoms clearly -- app screenshot or phone mockup only when it explains the action -- avoid vague wellness aesthetics that do not show the plant problem - -## Codex Slideshow Prompt - -```text -Run the GreenLens Pro Viral Slideshow Machine. - -Use: -- docs/automations/greenlens-pain-mining-machine.md -- docs/automations/greenlens-viral-slideshow-machine.md -- app-store-aso skill -- content-strategy skill -- copywriting/ad-creative skills - -Input pain cluster: [pain] -Audience: [beginner plant owners / plant rescue followers / houseplant collectors] -CTA: [Download GreenLens Pro / Scan your plant / Save this checklist] -Channel: [TikTok / Instagram / both] -Quantity: [number] - -Return for each concept: -1. hook -2. 5-7 slide script -3. visual direction per slide -4. Canva prompt -5. caption -6. hashtags -7. ASO keyword tie-in -8. creator brief version - -Rules: -- Keep claims educational, not medical/certain beyond evidence. -- Do not promise perfect diagnosis. -- Make the symptom visually inspectable. -- The app CTA should feel like the next practical step, not a hard sell. -``` - -## Output Template - -```markdown -# GreenLens Slideshow Pack: [Pain Cluster] - -## Concept 1: [Hook] - -### Slides -1. [text] -- [visual] -2. [text] -- [visual] -3. [text] -- [visual] -4. [text] -- [visual] -5. [text] -- [visual] -6. [text] -- [visual] -7. [text] -- [visual] - -### Canva Prompt - -### Caption - -### Hashtags - -### ASO Tie-In - -### Creator Brief -``` - -## Quality Bar - -- The first slide must be understandable in under 2 seconds. -- Every slide should be shorter than 12 words when possible. -- The visual must show the symptom or action, not just a plant mood shot. -- The final CTA should match the pain: scan, check, save, or download. - +# GreenLens Pro Viral Slideshow Machine + +## Goal + +Convert validated plant pains into TikTok, Instagram, and Canva-ready slideshow +assets that drive awareness and app downloads. + +## Plugins And Skills + +| Need | Use | +|---|---| +| Creative generation | Canva plugin | +| Hook and caption writing | `copywriting`, `ad-creative` skills | +| Content planning | `content-strategy` skill | +| ASO alignment | `app-store-aso` skill | +| Creator briefs and outreach | Gmail/Fyxer plugin | + +## Required Input + +Use outputs from `greenlens-pain-mining-machine.md`: + +- pain cluster +- urgency score +- source evidence +- target audience +- desired CTA +- app positioning angle + +## Content Pillars + +- Diagnosis before guessing +- Overwatering mistakes +- Yellow leaves +- Brown spots +- Root rot warnings +- Beginner plant rescue +- Plant symptoms explained +- "Do not water yet" warnings +- App scan/use-case demos + +## Slideshow Formula + +1. Hook: direct warning, contradiction, or curiosity. +2. Problem: show the common wrong assumption. +3. Explanation: simple plant-care reason. +4. Check: what the user should inspect first. +5. Risk: what happens if they guess. +6. GreenLens bridge: scan or diagnose before acting. +7. CTA: download, scan, or save. + +## Hook Patterns + +- "Do not water your plant before checking this." +- "Yellow leaves do not always mean your plant is thirsty." +- "Brown spots can mean more than sunburn." +- "Your plant was warning you before it started dying." +- "Overwatering often looks like underwatering." +- "Scan before you guess." + +## Canva Direction + +Use GreenLens as a calm diagnosis-first plant app: + +- natural plant photography or close-up symptom imagery +- clear readable overlay text +- botanical but not decorative-only +- show symptoms clearly +- app screenshot or phone mockup only when it explains the action +- avoid vague wellness aesthetics that do not show the plant problem + +## Codex Slideshow Prompt + +```text +Run the GreenLens Pro Viral Slideshow Machine. + +Use: +- docs/automations/greenlens-pain-mining-machine.md +- docs/automations/greenlens-viral-slideshow-machine.md +- app-store-aso skill +- content-strategy skill +- copywriting/ad-creative skills + +Input pain cluster: [pain] +Audience: [beginner plant owners / plant rescue followers / houseplant collectors] +CTA: [Download GreenLens Pro / Scan your plant / Save this checklist] +Channel: [TikTok / Instagram / both] +Quantity: [number] + +Return for each concept: +1. hook +2. 5-7 slide script +3. visual direction per slide +4. Canva prompt +5. caption +6. hashtags +7. ASO keyword tie-in +8. creator brief version + +Rules: +- Keep claims educational, not medical/certain beyond evidence. +- Do not promise perfect diagnosis. +- Make the symptom visually inspectable. +- The app CTA should feel like the next practical step, not a hard sell. +``` + +## Output Template + +```markdown +# GreenLens Slideshow Pack: [Pain Cluster] + +## Concept 1: [Hook] + +### Slides +1. [text] -- [visual] +2. [text] -- [visual] +3. [text] -- [visual] +4. [text] -- [visual] +5. [text] -- [visual] +6. [text] -- [visual] +7. [text] -- [visual] + +### Canva Prompt + +### Caption + +### Hashtags + +### ASO Tie-In + +### Creator Brief +``` + +## Quality Bar + +- The first slide must be understandable in under 2 seconds. +- Every slide should be shorter than 12 words when possible. +- The visual must show the symptom or action, not just a plant mood shot. +- The final CTA should match the pain: scan, check, save, or download. + diff --git a/docs/automations/qrmaster-broken-link-cta-checker.md b/docs/automations/qrmaster-broken-link-cta-checker.md index 800a47a..43a7750 100644 --- a/docs/automations/qrmaster-broken-link-cta-checker.md +++ b/docs/automations/qrmaster-broken-link-cta-checker.md @@ -1,57 +1,57 @@ -# QRMaster Broken Link + CTA Checker - -## Goal - -Catch broken internal links and broken conversion CTAs on `main`, especially -after direct edits without a pull request. - -## What It Checks - -- Static internal `href` values in source files. -- Static `router.push("/...")` destinations. -- Internal links against known Next.js app routes and files in `public/`. -- CTA-like links such as "Get started", "Create QR", "Start free", - "Generate QR", "Pricing", and "Upgrade". -- Pages that appear to have no obvious CTA link. - -## Command - -```bash -npm run check:links -``` - -The command prints a JSON report. It exits with a non-zero status if broken -internal links or broken CTA links are found. - -## Known Limits - -- Dynamic CMS/blog slugs are allowed by prefix and not fully validated. -- Runtime-only links built from variables are skipped. -- External links are not checked by this local script. -- This is a fast safety check, not a full crawl of the deployed website. - -## Codex Automation Prompt - -```text -Run the QRMaster Broken Link + CTA Checker. - -Use: -- docs/automations/qrmaster-broken-link-cta-checker.md -- scripts/check-links-and-ctas.js - -Run npm run check:links. Review the JSON report and summarize: -1. broken internal links -2. broken CTA links -3. important pages without obvious CTAs -4. concrete fixes with file paths - -If the script fails, inspect the listed files and propose the smallest safe fix. -Do not modify production configuration automatically. -``` - -## Success Criteria - -- No broken internal links. -- No broken CTA links. -- Important marketing, tool, and pricing pages have a clear CTA. - +# QRMaster Broken Link + CTA Checker + +## Goal + +Catch broken internal links and broken conversion CTAs on `main`, especially +after direct edits without a pull request. + +## What It Checks + +- Static internal `href` values in source files. +- Static `router.push("/...")` destinations. +- Internal links against known Next.js app routes and files in `public/`. +- CTA-like links such as "Get started", "Create QR", "Start free", + "Generate QR", "Pricing", and "Upgrade". +- Pages that appear to have no obvious CTA link. + +## Command + +```bash +npm run check:links +``` + +The command prints a JSON report. It exits with a non-zero status if broken +internal links or broken CTA links are found. + +## Known Limits + +- Dynamic CMS/blog slugs are allowed by prefix and not fully validated. +- Runtime-only links built from variables are skipped. +- External links are not checked by this local script. +- This is a fast safety check, not a full crawl of the deployed website. + +## Codex Automation Prompt + +```text +Run the QRMaster Broken Link + CTA Checker. + +Use: +- docs/automations/qrmaster-broken-link-cta-checker.md +- scripts/check-links-and-ctas.js + +Run npm run check:links. Review the JSON report and summarize: +1. broken internal links +2. broken CTA links +3. important pages without obvious CTAs +4. concrete fixes with file paths + +If the script fails, inspect the listed files and propose the smallest safe fix. +Do not modify production configuration automatically. +``` + +## Success Criteria + +- No broken internal links. +- No broken CTA links. +- Important marketing, tool, and pricing pages have a clear CTA. + diff --git a/docs/automations/qrmaster-pr-seo-review.md b/docs/automations/qrmaster-pr-seo-review.md index 8336535..477e380 100644 --- a/docs/automations/qrmaster-pr-seo-review.md +++ b/docs/automations/qrmaster-pr-seo-review.md @@ -1,163 +1,163 @@ -# QRMaster PR SEO Review - -## Goal - -Catch SEO, conversion, content-quality, and technical issues before a QRMaster -page change is merged. - -## Use When - -- A PR changes landing pages, tool pages, comparison pages, blog posts, metadata, - schema, sitemap behavior, internal links, pricing copy, or CTAs. -- Codex generated new SEO pages from `marketing/programmatic-seo-top-50.md`. -- Existing pages were refreshed from Google Search Console or keyword data. - -## Plugins And Skills - -| Need | Use | -|---|---| -| Diff and PR review | GitHub plugin | -| Code/content inspection | Codex | -| SEO/AEO review | `ai-seo` skill | -| Content intent and cluster fit | `content-strategy` skill | -| Build/lint verification | GitHub Actions, `qa` skill | -| Careful merge decision | `careful` skill | - -## Review Checklist - -### 1. Technical SEO - -- Exactly one H1 on the rendered page. -- Meta title exists and is specific to the page intent. -- Meta title places the primary keyword near the start where natural. -- Meta title stays under roughly 60 characters unless there is a clear reason. -- Meta description exists and promises the right outcome. -- Meta description includes the target keyword naturally, states the user benefit, - and stays concise enough to avoid likely truncation. -- Canonical URL is correct. -- Page is not accidentally noindexed. -- FAQ, Article, Product, Breadcrumb, or HowTo schema is valid where used. -- Sitemap and internal routing include the page where required. -- No broken internal links or CTA links. -- Language and locale are consistent. -- URL slug is short, descriptive, hyphenated, and does not include stale dates. -- Meaningful images have descriptive alt text and useful filenames where local - image handling allows it. -- Large visual assets are compressed or already optimized. -- Mobile layout is readable and CTAs are tappable. -- The page does not introduce obvious Core Web Vitals risks. -- Robots rules do not block important pages or desired AI/search crawlers. - -### 2. Search Intent - -- The first screen makes it obvious the page answers the target query. -- The opening paragraph states the problem directly. -- The page matches one primary intent only. -- The content is not a generic rewrite of another QRMaster page. -- The page includes concrete examples for its audience or use case. -- The target keyword intent is labeled as informational, commercial, - transactional, or navigational. -- The page covers the related subtopics a search or AI system would fan out to - for the main query. -- Each H2/H3 section answers the heading directly in the first sentence before - adding background or nuance. - -### 3. QRMaster Conversion Fit - -- Primary CTA is visible early. -- CTA copy matches the use case, not just generic "Get started". -- The page explains why dynamic QR codes matter when links change after printing. -- Scan analytics or tracking is mentioned when relevant. -- Privacy/GDPR positioning is included where tracking is discussed. -- The copy avoids unsupported claims. - -### 4. Internal Linking - -- New page links to the relevant money page: - - `/dynamic-qr-code-generator` - - `/qr-code-tracking` - - `/bulk-qr-code-generator` - - `/pricing` - - relevant `/tools/...` page -- Existing related pages should link back to the new page. -- Anchor text is natural and varied. - -### 5. AI Search Extractability - -- Important answer blocks are self-contained. -- Comparison content uses tables where useful. -- FAQ questions are written in natural user language. -- Definitions answer the query in 40-60 words when possible. -- Claims that need evidence include a source or are framed as product positioning. -- Sections are focused on one question or subtopic at a time. -- Bullet lists, tables, and short paragraphs are used where they improve - extraction and scanning. -- The page can be cited by AI systems without relying on surrounding context. - -### 6. E-E-A-T And Quality - -- Content is accurate, current, and not copied from competitors. -- Any competitor, pricing, legal, privacy, or compliance claim is verified or - clearly avoided. -- The page adds QRMaster-specific value, examples, workflows, or product context. -- The tone stays direct, useful, and trustworthy. - -## Codex Review Prompt - -```text -Review this QRMaster PR as an SEO, conversion, and technical quality gate. - -Use: -- docs/automations/qrmaster-pr-seo-review.md -- .agents/product-marketing-context.md -- marketing/programmatic-seo-top-50.md - -Check the diff for: -1. technical SEO issues -2. search intent mismatch -3. weak or missing CTA -4. duplicate/thin content -5. missing internal links -6. invalid or missing schema -7. weak AI/agentic-search extractability -8. missing visual/mobile/performance considerations -9. build/lint risks - -Return findings ordered by severity. For each finding include: -- file path -- exact line if possible -- why it matters -- concrete fix - -Also include: -- merge recommendation: approve / request changes -- required follow-up tasks -``` - -## Review Output Format - -```markdown -## QRMaster PR SEO Review - -Decision: Request changes - -### Findings -1. [High] Missing internal link to `/dynamic-qr-code-generator` -2. [Medium] CTA is too generic for the target intent -3. [Low] FAQ question overlaps with another page - -### Required Fixes -- Add contextual link from the "after printing" section to `/dynamic-qr-code-generator`. -- Change CTA from "Get started" to "Create an editable QR code for your flyer". - -### Verification -- Build: -- Lint: -- Link/schema check: -``` - -## Success Criteria - -- No high-severity SEO or conversion findings remain. -- Build and lint pass. -- The PR has a clear human approval before merge. +# QRMaster PR SEO Review + +## Goal + +Catch SEO, conversion, content-quality, and technical issues before a QRMaster +page change is merged. + +## Use When + +- A PR changes landing pages, tool pages, comparison pages, blog posts, metadata, + schema, sitemap behavior, internal links, pricing copy, or CTAs. +- Codex generated new SEO pages from `marketing/programmatic-seo-top-50.md`. +- Existing pages were refreshed from Google Search Console or keyword data. + +## Plugins And Skills + +| Need | Use | +|---|---| +| Diff and PR review | GitHub plugin | +| Code/content inspection | Codex | +| SEO/AEO review | `ai-seo` skill | +| Content intent and cluster fit | `content-strategy` skill | +| Build/lint verification | GitHub Actions, `qa` skill | +| Careful merge decision | `careful` skill | + +## Review Checklist + +### 1. Technical SEO + +- Exactly one H1 on the rendered page. +- Meta title exists and is specific to the page intent. +- Meta title places the primary keyword near the start where natural. +- Meta title stays under roughly 60 characters unless there is a clear reason. +- Meta description exists and promises the right outcome. +- Meta description includes the target keyword naturally, states the user benefit, + and stays concise enough to avoid likely truncation. +- Canonical URL is correct. +- Page is not accidentally noindexed. +- FAQ, Article, Product, Breadcrumb, or HowTo schema is valid where used. +- Sitemap and internal routing include the page where required. +- No broken internal links or CTA links. +- Language and locale are consistent. +- URL slug is short, descriptive, hyphenated, and does not include stale dates. +- Meaningful images have descriptive alt text and useful filenames where local + image handling allows it. +- Large visual assets are compressed or already optimized. +- Mobile layout is readable and CTAs are tappable. +- The page does not introduce obvious Core Web Vitals risks. +- Robots rules do not block important pages or desired AI/search crawlers. + +### 2. Search Intent + +- The first screen makes it obvious the page answers the target query. +- The opening paragraph states the problem directly. +- The page matches one primary intent only. +- The content is not a generic rewrite of another QRMaster page. +- The page includes concrete examples for its audience or use case. +- The target keyword intent is labeled as informational, commercial, + transactional, or navigational. +- The page covers the related subtopics a search or AI system would fan out to + for the main query. +- Each H2/H3 section answers the heading directly in the first sentence before + adding background or nuance. + +### 3. QRMaster Conversion Fit + +- Primary CTA is visible early. +- CTA copy matches the use case, not just generic "Get started". +- The page explains why dynamic QR codes matter when links change after printing. +- Scan analytics or tracking is mentioned when relevant. +- Privacy/GDPR positioning is included where tracking is discussed. +- The copy avoids unsupported claims. + +### 4. Internal Linking + +- New page links to the relevant money page: + - `/dynamic-qr-code-generator` + - `/qr-code-tracking` + - `/bulk-qr-code-generator` + - `/pricing` + - relevant `/tools/...` page +- Existing related pages should link back to the new page. +- Anchor text is natural and varied. + +### 5. AI Search Extractability + +- Important answer blocks are self-contained. +- Comparison content uses tables where useful. +- FAQ questions are written in natural user language. +- Definitions answer the query in 40-60 words when possible. +- Claims that need evidence include a source or are framed as product positioning. +- Sections are focused on one question or subtopic at a time. +- Bullet lists, tables, and short paragraphs are used where they improve + extraction and scanning. +- The page can be cited by AI systems without relying on surrounding context. + +### 6. E-E-A-T And Quality + +- Content is accurate, current, and not copied from competitors. +- Any competitor, pricing, legal, privacy, or compliance claim is verified or + clearly avoided. +- The page adds QRMaster-specific value, examples, workflows, or product context. +- The tone stays direct, useful, and trustworthy. + +## Codex Review Prompt + +```text +Review this QRMaster PR as an SEO, conversion, and technical quality gate. + +Use: +- docs/automations/qrmaster-pr-seo-review.md +- .agents/product-marketing-context.md +- marketing/programmatic-seo-top-50.md + +Check the diff for: +1. technical SEO issues +2. search intent mismatch +3. weak or missing CTA +4. duplicate/thin content +5. missing internal links +6. invalid or missing schema +7. weak AI/agentic-search extractability +8. missing visual/mobile/performance considerations +9. build/lint risks + +Return findings ordered by severity. For each finding include: +- file path +- exact line if possible +- why it matters +- concrete fix + +Also include: +- merge recommendation: approve / request changes +- required follow-up tasks +``` + +## Review Output Format + +```markdown +## QRMaster PR SEO Review + +Decision: Request changes + +### Findings +1. [High] Missing internal link to `/dynamic-qr-code-generator` +2. [Medium] CTA is too generic for the target intent +3. [Low] FAQ question overlaps with another page + +### Required Fixes +- Add contextual link from the "after printing" section to `/dynamic-qr-code-generator`. +- Change CTA from "Get started" to "Create an editable QR code for your flyer". + +### Verification +- Build: +- Lint: +- Link/schema check: +``` + +## Success Criteria + +- No high-severity SEO or conversion findings remain. +- Build and lint pass. +- The PR has a clear human approval before merge. diff --git a/docs/automations/qrmaster-seo-sprint-2026-05-11.md b/docs/automations/qrmaster-seo-sprint-2026-05-11.md index de63f7e..c439a98 100644 --- a/docs/automations/qrmaster-seo-sprint-2026-05-11.md +++ b/docs/automations/qrmaster-seo-sprint-2026-05-11.md @@ -1,158 +1,158 @@ -# QRMaster SEO Sprint: Tracking and Analytics - -Run date: 2026-05-11 -Automation: QRMaster SEO Sprint Machine -Status: Recommendation package only; do not publish without human approval. - -## Input Notes - -- Used `docs/automations/qrmaster-seo-sprint-machine.md`, `docs/automations/qrmaster-pr-seo-review.md`, `.agents/product-marketing-context.md`, `marketing/programmatic-seo-top-50.md`, `seo-plan-april.md`, and `seo-keywords.csv`. -- `marketing/keyword-strategy-seo-plan.md` was not present in this worktree. `seo-plan-april.md` appears to be the local keyword strategy fallback and includes the same cluster-level keyword data. -- Existing routing redirects selected legacy `/guide/...` paths to `/learn/...`, so this sprint should avoid creating duplicate guide URLs without a clear canonical/routing decision. - -## Cluster Scoring - -| Cluster | Product fit /30 | Commercial intent /25 | Differentiation /15 | Cluster leverage /10 | Winability /10 | Effort /10 | Score | Decision | -|---|---:|---:|---:|---:|---:|---:|---:|---| -| Tracking and analytics | 29 | 24 | 15 | 10 | 8 | 8 | 94 | Select | -| Dynamic QR buying decision | 30 | 24 | 13 | 10 | 7 | 7 | 91 | Next best | -| Bulk QR generation | 27 | 19 | 14 | 8 | 9 | 8 | 85 | Hold for later | -| Commercial alternatives | 22 | 25 | 12 | 8 | 6 | 5 | 78 | Needs current competitor verification | -| Restaurant/menu QR | 25 | 16 | 12 | 8 | 7 | 7 | 75 | Good vertical support, weaker immediate demand | -| Custom/design QR | 20 | 18 | 9 | 8 | 8 | 8 | 71 | Tool-led, less differentiated | -| Print reliability | 21 | 13 | 10 | 7 | 9 | 8 | 68 | Useful support content, weaker commercial pull | - -## Rationale - -Tracking and analytics is the highest-fit weekly cluster because it maps directly to QRMaster's differentiators: dynamic QR redirects, scan analytics, placement comparison, and privacy-first reporting. The keyword set includes `qr code tracking` at 1k-10k monthly volume with +900% 3-month YoY trend, `track qr code scans` with +900% 3-month trend, and `trackable qr code` with the highest CPC ceiling in the file at EUR 34.25. The cluster also has strong internal-link leverage into `/dynamic-qr-code-generator`, `/qr-code-analytics`, `/qr-code-tracking`, `/qr-code-for-marketing-campaigns`, pricing, and use-case pages. - -## Selected Work - -| Type | URL | Score | Reason | -|---|---|---:|---| -| Refresh | `/qr-code-tracking` | 94 | Money page for `qr code tracking`, `track qr code scans`, and `trackable qr code`; already has schema but should strengthen privacy and placement examples. | -| Refresh | `/qr-code-analytics` | 90 | Needs clearer separation from tracking: analytics should own dashboard interpretation, ROI, and performance insights. | -| Refresh | `/blog/trackable-qr-codes` | 88 | Existing support article should capture `trackable qr code` and link strongly to `/qr-code-tracking`. | -| Refresh | `/blog/utm-parameter-qr-codes` | 86 | Existing support article should capture fan-out intent around GA4, UTM naming, placement comparison, and offline attribution. | -| New support page | `/use-cases/qr-codes-for-review-collection` | 86 | Existing backlog item with natural tracking CTA; use as a measurable review funnel page, not a generic Google reviews tool duplicate. | - -## Keyword Intent And Fan-Out - -| URL | Primary keyword | Intent | Fan-out subtopics | -|---|---|---|---| -| `/qr-code-tracking` | `qr code tracking` | Commercial | What can be tracked, static vs dynamic tracking, scan count vs unique scans, device/location/time context, privacy/GDPR, placement comparison, UTM pairing, dashboard workflow, pricing limits. | -| `/qr-code-analytics` | `qr code analytics` | Commercial | Analytics dashboard, ROI interpretation, campaign attribution, useful metrics vs vanity metrics, offline-to-online measurement, reporting cadence, route naming, export/share needs. | -| `/blog/trackable-qr-codes` | `trackable qr code` | Informational-commercial | Definition, how tracking works, dynamic redirect layer, privacy limits, examples by placement, pros/cons, setup checklist, when not to track. | -| `/blog/utm-parameter-qr-codes` | `qr code UTM tracking` | Informational | GA4 source/medium/campaign/content conventions, examples for flyers/events/packaging, common mistakes, naming templates, QR destination testing. | -| `/use-cases/qr-codes-for-review-collection` | `QR codes for review collection` | Commercial | Google review link workflow, in-store placement, happy-path routing, feedback triage, scan tracking, QR privacy, dynamic destination updates. | - -## 2026 On-Page And Agentic-Search Rules - -- Titles/H1s should put the target keyword near the start: - - `/qr-code-tracking`: `QR Code Tracking: Track QR Code Scans` - - `/qr-code-analytics`: `QR Code Analytics: Measure Offline Campaigns` - - `/blog/trackable-qr-codes`: `Trackable QR Codes: What You Can Measure` - - `/blog/utm-parameter-qr-codes`: `QR Code UTM Tracking: GA4 Setup Guide` - - `/use-cases/qr-codes-for-review-collection`: `QR Codes for Review Collection` -- Each H2 should start with a direct answer in the first sentence. -- Add compact tables for `static vs dynamic`, `tracking vs analytics`, and `UTM examples by placement`. -- Add FAQ schema to refreshed informational pages where the existing blog system supports it; preserve SoftwareApplication and HowTo schema on money pages. -- Use self-contained answer blocks of roughly 40-60 words for definitions and "can you track..." questions. -- Visuals should be meaningful: dashboard screenshot/mockup, placement comparison example, UTM naming table, and review-flow diagram. -- Robots/indexing: current `robots.ts` allows major search/AI crawlers and disallows private app/API paths. Keep these pages indexed, sitemap-included, and canonicalized to their final URLs. -- Mobile/speed risks: avoid heavy dashboard imagery; use compressed static images and keep tables horizontally readable on mobile. - -## Recommended New Page - -### `/use-cases/qr-codes-for-review-collection` - -Purpose: Create a commercially useful support page for restaurants, cafes, retail, hotels, and service businesses that want measurable review capture. - -Required sections: - -1. Direct answer: a review-collection QR code sends satisfied customers to the right review or feedback flow and lets teams measure which physical prompts get scanned. -2. Workflow: in-store sign, receipt, table card, counter card, packaging insert. -3. Dynamic vs static: use dynamic if the review platform, routing rule, or offer changes. -4. Tracking angle: compare scan volume by placement, store, or campaign. -5. Privacy note: describe scan analytics without promising personally identifiable tracking. -6. CTA: `Create a trackable review QR code` to `/qr-code-tracking` or `/signup`. -7. Internal links: `/tools/google-review-qr-code`, `/qr-code-tracking`, `/dynamic-qr-code-generator`, `/restaurants`, `/use-cases/feedback-qr-codes`. -8. Schema: FAQPage + BreadcrumbList; consider HowTo if step-by-step content is included. - -## Recommended Page Refreshes - -### `/qr-code-tracking` - -- Strengthen first-screen answer: "QR code tracking uses a dynamic redirect to record scan time, device context, and approximate location before sending the scanner to the final destination." -- Add a privacy-first section explaining hashed/anonymized IP positioning from QRMaster. -- Add a table: "What QRMaster tracks / what it does not track." -- Add examples for flyer, menu, event booth, packaging, and review collection. -- Link to `/qr-code-analytics`, `/blog/utm-parameter-qr-codes`, `/reprint-calculator`, `/pricing`, and the new review-collection page. - -### `/qr-code-analytics` - -- Separate from tracking: tracking collects scan events; analytics helps interpret placement and campaign performance. -- Add an "analytics questions" table: which placement worked, when scans peaked, which destination converted, what to reprint. -- Add a section on useful metrics vs vanity metrics. -- Link back to `/qr-code-tracking`, `/qr-code-for-marketing-campaigns`, `/use-cases/flyer-qr-codes`, `/use-cases/packaging-qr-codes`, and `/pricing`. - -### `/blog/trackable-qr-codes` - -- Refresh title/meta around `trackable qr code`. -- Add a 40-60 word definition block near the top. -- Update FAQ to include "Can a static QR code be tracked?", "Are trackable QR codes GDPR-friendly?", and "Do trackable QR codes need a redirect?" -- Link early to `/qr-code-tracking` with anchor `track QR code scans`. - -### `/blog/utm-parameter-qr-codes` - -- Add a QR-specific UTM template table by placement. -- Add GA4 naming convention examples. -- Clarify when to use separate QR codes versus one QR with different `utm_content` values. -- Link to `/qr-code-analytics` and `/qr-code-tracking`. - -## Internal-Link Plan - -| Source | Destination | Anchor | -|---|---|---| -| `/dynamic-qr-code-generator` | `/qr-code-tracking` | `track QR code scans` | -| `/dynamic-qr-code-generator` | `/qr-code-analytics` | `QR code analytics dashboard` | -| `/qr-code-tracking` | `/qr-code-analytics` | `interpret QR scan analytics` | -| `/qr-code-tracking` | `/blog/utm-parameter-qr-codes` | `use UTMs with QR codes` | -| `/qr-code-analytics` | `/qr-code-tracking` | `collect QR scan data` | -| `/qr-code-analytics` | `/qr-code-for-marketing-campaigns` | `measure offline QR campaigns` | -| `/blog/trackable-qr-codes` | `/qr-code-tracking` | `QR code tracking` | -| `/blog/utm-parameter-qr-codes` | `/qr-code-analytics` | `QR code analytics` | -| `/use-cases/feedback-qr-codes` | `/use-cases/qr-codes-for-review-collection` | `review collection QR codes` | -| `/tools/google-review-qr-code` | `/use-cases/qr-codes-for-review-collection` | `review collection workflow` | - -## PR Plan - -1. Add the new review-collection use-case content in the existing use-case page data/routing pattern. -2. Refresh copy, FAQ, metadata, and link sections on `/qr-code-tracking` and `/qr-code-analytics`. -3. Refresh the two support blog entries without creating duplicate `/guide/...` pages. -4. Add internal links in both directions from money pages, blog support pages, and relevant use-case/tool pages. -5. Update sitemap data only if the new page is not automatically included by the existing use-case sitemap mapping. -6. Run the PR SEO review using `docs/automations/qrmaster-pr-seo-review.md`. - -## Verification Checklist - -- One H1 per rendered page. -- Primary keyword appears naturally in title, H1, intro, and metadata. -- Canonical URL points to the final public URL. -- Page is public in middleware and included in sitemap. -- No duplicate `/guide/...` URL is introduced without canonical strategy. -- FAQ/schema validates where used. -- Internal links resolve and use natural anchor text. -- Each section begins with a direct answer. -- Mobile tables do not overflow unreadably. -- Visual assets are compressed and include descriptive alt text. -- Robots rules continue to allow target pages and desired search/AI crawlers. -- Build/lint pass before PR. - -## Social And Outreach Follow-Up - -- LinkedIn post: "Most QR campaigns fail because teams only count scans. The useful question is which printed placement created action." -- X thread: "QR tracking setup in 5 steps: dynamic QR, placement naming, UTM convention, dashboard review, reprint decision." -- Short demo video: show flyer A vs flyer B scan comparison and a destination update without reprinting. -- Outreach angle for marketing newsletters: "Offline attribution checklist for QR campaigns." -- Community answer target: questions around "Can I track a static QR code?" and "How do I track QR codes in GA4?" +# QRMaster SEO Sprint: Tracking and Analytics + +Run date: 2026-05-11 +Automation: QRMaster SEO Sprint Machine +Status: Recommendation package only; do not publish without human approval. + +## Input Notes + +- Used `docs/automations/qrmaster-seo-sprint-machine.md`, `docs/automations/qrmaster-pr-seo-review.md`, `.agents/product-marketing-context.md`, `marketing/programmatic-seo-top-50.md`, `seo-plan-april.md`, and `seo-keywords.csv`. +- `marketing/keyword-strategy-seo-plan.md` was not present in this worktree. `seo-plan-april.md` appears to be the local keyword strategy fallback and includes the same cluster-level keyword data. +- Existing routing redirects selected legacy `/guide/...` paths to `/learn/...`, so this sprint should avoid creating duplicate guide URLs without a clear canonical/routing decision. + +## Cluster Scoring + +| Cluster | Product fit /30 | Commercial intent /25 | Differentiation /15 | Cluster leverage /10 | Winability /10 | Effort /10 | Score | Decision | +|---|---:|---:|---:|---:|---:|---:|---:|---| +| Tracking and analytics | 29 | 24 | 15 | 10 | 8 | 8 | 94 | Select | +| Dynamic QR buying decision | 30 | 24 | 13 | 10 | 7 | 7 | 91 | Next best | +| Bulk QR generation | 27 | 19 | 14 | 8 | 9 | 8 | 85 | Hold for later | +| Commercial alternatives | 22 | 25 | 12 | 8 | 6 | 5 | 78 | Needs current competitor verification | +| Restaurant/menu QR | 25 | 16 | 12 | 8 | 7 | 7 | 75 | Good vertical support, weaker immediate demand | +| Custom/design QR | 20 | 18 | 9 | 8 | 8 | 8 | 71 | Tool-led, less differentiated | +| Print reliability | 21 | 13 | 10 | 7 | 9 | 8 | 68 | Useful support content, weaker commercial pull | + +## Rationale + +Tracking and analytics is the highest-fit weekly cluster because it maps directly to QRMaster's differentiators: dynamic QR redirects, scan analytics, placement comparison, and privacy-first reporting. The keyword set includes `qr code tracking` at 1k-10k monthly volume with +900% 3-month YoY trend, `track qr code scans` with +900% 3-month trend, and `trackable qr code` with the highest CPC ceiling in the file at EUR 34.25. The cluster also has strong internal-link leverage into `/dynamic-qr-code-generator`, `/qr-code-analytics`, `/qr-code-tracking`, `/qr-code-for-marketing-campaigns`, pricing, and use-case pages. + +## Selected Work + +| Type | URL | Score | Reason | +|---|---|---:|---| +| Refresh | `/qr-code-tracking` | 94 | Money page for `qr code tracking`, `track qr code scans`, and `trackable qr code`; already has schema but should strengthen privacy and placement examples. | +| Refresh | `/qr-code-analytics` | 90 | Needs clearer separation from tracking: analytics should own dashboard interpretation, ROI, and performance insights. | +| Refresh | `/blog/trackable-qr-codes` | 88 | Existing support article should capture `trackable qr code` and link strongly to `/qr-code-tracking`. | +| Refresh | `/blog/utm-parameter-qr-codes` | 86 | Existing support article should capture fan-out intent around GA4, UTM naming, placement comparison, and offline attribution. | +| New support page | `/use-cases/qr-codes-for-review-collection` | 86 | Existing backlog item with natural tracking CTA; use as a measurable review funnel page, not a generic Google reviews tool duplicate. | + +## Keyword Intent And Fan-Out + +| URL | Primary keyword | Intent | Fan-out subtopics | +|---|---|---|---| +| `/qr-code-tracking` | `qr code tracking` | Commercial | What can be tracked, static vs dynamic tracking, scan count vs unique scans, device/location/time context, privacy/GDPR, placement comparison, UTM pairing, dashboard workflow, pricing limits. | +| `/qr-code-analytics` | `qr code analytics` | Commercial | Analytics dashboard, ROI interpretation, campaign attribution, useful metrics vs vanity metrics, offline-to-online measurement, reporting cadence, route naming, export/share needs. | +| `/blog/trackable-qr-codes` | `trackable qr code` | Informational-commercial | Definition, how tracking works, dynamic redirect layer, privacy limits, examples by placement, pros/cons, setup checklist, when not to track. | +| `/blog/utm-parameter-qr-codes` | `qr code UTM tracking` | Informational | GA4 source/medium/campaign/content conventions, examples for flyers/events/packaging, common mistakes, naming templates, QR destination testing. | +| `/use-cases/qr-codes-for-review-collection` | `QR codes for review collection` | Commercial | Google review link workflow, in-store placement, happy-path routing, feedback triage, scan tracking, QR privacy, dynamic destination updates. | + +## 2026 On-Page And Agentic-Search Rules + +- Titles/H1s should put the target keyword near the start: + - `/qr-code-tracking`: `QR Code Tracking: Track QR Code Scans` + - `/qr-code-analytics`: `QR Code Analytics: Measure Offline Campaigns` + - `/blog/trackable-qr-codes`: `Trackable QR Codes: What You Can Measure` + - `/blog/utm-parameter-qr-codes`: `QR Code UTM Tracking: GA4 Setup Guide` + - `/use-cases/qr-codes-for-review-collection`: `QR Codes for Review Collection` +- Each H2 should start with a direct answer in the first sentence. +- Add compact tables for `static vs dynamic`, `tracking vs analytics`, and `UTM examples by placement`. +- Add FAQ schema to refreshed informational pages where the existing blog system supports it; preserve SoftwareApplication and HowTo schema on money pages. +- Use self-contained answer blocks of roughly 40-60 words for definitions and "can you track..." questions. +- Visuals should be meaningful: dashboard screenshot/mockup, placement comparison example, UTM naming table, and review-flow diagram. +- Robots/indexing: current `robots.ts` allows major search/AI crawlers and disallows private app/API paths. Keep these pages indexed, sitemap-included, and canonicalized to their final URLs. +- Mobile/speed risks: avoid heavy dashboard imagery; use compressed static images and keep tables horizontally readable on mobile. + +## Recommended New Page + +### `/use-cases/qr-codes-for-review-collection` + +Purpose: Create a commercially useful support page for restaurants, cafes, retail, hotels, and service businesses that want measurable review capture. + +Required sections: + +1. Direct answer: a review-collection QR code sends satisfied customers to the right review or feedback flow and lets teams measure which physical prompts get scanned. +2. Workflow: in-store sign, receipt, table card, counter card, packaging insert. +3. Dynamic vs static: use dynamic if the review platform, routing rule, or offer changes. +4. Tracking angle: compare scan volume by placement, store, or campaign. +5. Privacy note: describe scan analytics without promising personally identifiable tracking. +6. CTA: `Create a trackable review QR code` to `/qr-code-tracking` or `/signup`. +7. Internal links: `/tools/google-review-qr-code`, `/qr-code-tracking`, `/dynamic-qr-code-generator`, `/restaurants`, `/use-cases/feedback-qr-codes`. +8. Schema: FAQPage + BreadcrumbList; consider HowTo if step-by-step content is included. + +## Recommended Page Refreshes + +### `/qr-code-tracking` + +- Strengthen first-screen answer: "QR code tracking uses a dynamic redirect to record scan time, device context, and approximate location before sending the scanner to the final destination." +- Add a privacy-first section explaining hashed/anonymized IP positioning from QRMaster. +- Add a table: "What QRMaster tracks / what it does not track." +- Add examples for flyer, menu, event booth, packaging, and review collection. +- Link to `/qr-code-analytics`, `/blog/utm-parameter-qr-codes`, `/reprint-calculator`, `/pricing`, and the new review-collection page. + +### `/qr-code-analytics` + +- Separate from tracking: tracking collects scan events; analytics helps interpret placement and campaign performance. +- Add an "analytics questions" table: which placement worked, when scans peaked, which destination converted, what to reprint. +- Add a section on useful metrics vs vanity metrics. +- Link back to `/qr-code-tracking`, `/qr-code-for-marketing-campaigns`, `/use-cases/flyer-qr-codes`, `/use-cases/packaging-qr-codes`, and `/pricing`. + +### `/blog/trackable-qr-codes` + +- Refresh title/meta around `trackable qr code`. +- Add a 40-60 word definition block near the top. +- Update FAQ to include "Can a static QR code be tracked?", "Are trackable QR codes GDPR-friendly?", and "Do trackable QR codes need a redirect?" +- Link early to `/qr-code-tracking` with anchor `track QR code scans`. + +### `/blog/utm-parameter-qr-codes` + +- Add a QR-specific UTM template table by placement. +- Add GA4 naming convention examples. +- Clarify when to use separate QR codes versus one QR with different `utm_content` values. +- Link to `/qr-code-analytics` and `/qr-code-tracking`. + +## Internal-Link Plan + +| Source | Destination | Anchor | +|---|---|---| +| `/dynamic-qr-code-generator` | `/qr-code-tracking` | `track QR code scans` | +| `/dynamic-qr-code-generator` | `/qr-code-analytics` | `QR code analytics dashboard` | +| `/qr-code-tracking` | `/qr-code-analytics` | `interpret QR scan analytics` | +| `/qr-code-tracking` | `/blog/utm-parameter-qr-codes` | `use UTMs with QR codes` | +| `/qr-code-analytics` | `/qr-code-tracking` | `collect QR scan data` | +| `/qr-code-analytics` | `/qr-code-for-marketing-campaigns` | `measure offline QR campaigns` | +| `/blog/trackable-qr-codes` | `/qr-code-tracking` | `QR code tracking` | +| `/blog/utm-parameter-qr-codes` | `/qr-code-analytics` | `QR code analytics` | +| `/use-cases/feedback-qr-codes` | `/use-cases/qr-codes-for-review-collection` | `review collection QR codes` | +| `/tools/google-review-qr-code` | `/use-cases/qr-codes-for-review-collection` | `review collection workflow` | + +## PR Plan + +1. Add the new review-collection use-case content in the existing use-case page data/routing pattern. +2. Refresh copy, FAQ, metadata, and link sections on `/qr-code-tracking` and `/qr-code-analytics`. +3. Refresh the two support blog entries without creating duplicate `/guide/...` pages. +4. Add internal links in both directions from money pages, blog support pages, and relevant use-case/tool pages. +5. Update sitemap data only if the new page is not automatically included by the existing use-case sitemap mapping. +6. Run the PR SEO review using `docs/automations/qrmaster-pr-seo-review.md`. + +## Verification Checklist + +- One H1 per rendered page. +- Primary keyword appears naturally in title, H1, intro, and metadata. +- Canonical URL points to the final public URL. +- Page is public in middleware and included in sitemap. +- No duplicate `/guide/...` URL is introduced without canonical strategy. +- FAQ/schema validates where used. +- Internal links resolve and use natural anchor text. +- Each section begins with a direct answer. +- Mobile tables do not overflow unreadably. +- Visual assets are compressed and include descriptive alt text. +- Robots rules continue to allow target pages and desired search/AI crawlers. +- Build/lint pass before PR. + +## Social And Outreach Follow-Up + +- LinkedIn post: "Most QR campaigns fail because teams only count scans. The useful question is which printed placement created action." +- X thread: "QR tracking setup in 5 steps: dynamic QR, placement naming, UTM convention, dashboard review, reprint decision." +- Short demo video: show flyer A vs flyer B scan comparison and a destination update without reprinting. +- Outreach angle for marketing newsletters: "Offline attribution checklist for QR campaigns." +- Community answer target: questions around "Can I track a static QR code?" and "How do I track QR codes in GA4?" diff --git a/docs/automations/qrmaster-seo-sprint-machine.md b/docs/automations/qrmaster-seo-sprint-machine.md index 395af6a..37e03de 100644 --- a/docs/automations/qrmaster-seo-sprint-machine.md +++ b/docs/automations/qrmaster-seo-sprint-machine.md @@ -1,211 +1,211 @@ -# QRMaster SEO Sprint Machine - -## Goal - -Run a weekly controlled SEO sprint that chooses the right pages, creates or -updates them, adds internal links, and ships through a reviewed PR. - -## Why This Exists - -QRMaster should not publish random daily content. The goal is to build -commercially useful SEO clusters around dynamic QR codes, tracking, tool pages, -comparison pages, and industry workflows. - -## Plugins And Skills - -| Need | Use | -|---|---| -| Repository changes and PRs | GitHub plugin | -| Keyword and performance imports | Coupler, CSV exports, Google Search Console export | -| Page creation and refactors | Codex | -| SEO/content planning | `content-strategy`, `ai-seo` skills | -| Copy generation | `copywriting` skill | -| Verification | GitHub Actions, `qa` skill | - -## Weekly Inputs - -- Current keyword backlog: - - `marketing/programmatic-seo-top-50.md` - - `marketing/keyword-strategy-seo-plan.md` - - `seo-keywords.csv` -- Existing product positioning: - - `.agents/product-marketing-context.md` -- Performance data when available: - - Google Search Console export - - signup/conversion report - - top landing pages by traffic -- Sprint focus: - - Dynamic QR - - Tracking/analytics - - Restaurant/menu QR - - Print marketing - - Bulk QR - - Comparison/alternatives - -## Scoring Model - -Score each candidate from 0-100: - -| Factor | Weight | -|---|---:| -| Product fit | 30 | -| Commercial intent | 25 | -| Differentiation potential | 15 | -| Cluster leverage | 10 | -| Search winability | 10 | -| Production effort | 10 | - -Do not select pages only because they have volume. Prefer pages where QRMaster -can naturally sell dynamic QR, scan tracking, bulk creation, or privacy-first -analytics. - -## On-Page And Agentic Search Rules - -Every new or refreshed page must follow these checks before review: - -- Identify the primary keyword and intent type: informational, commercial, - transactional, or navigational. -- Cover the query fan-out: list the related subtopics an AI/search system would - need to answer the query well. -- Put the primary keyword naturally near the start of the title tag and H1. -- Keep title tags under roughly 60 characters when possible. -- Keep meta descriptions concise, benefit-led, and naturally keyword-aligned. -- Use one clear H1 and a logical H2/H3 hierarchy. -- Start each section with a direct answer to the heading. -- Use short paragraphs, bullets, and comparison tables where they improve - scanning and AI extraction. -- Add descriptive internal links with natural anchor text. -- Add useful visuals, screenshots, or examples where the page needs them. -- Add schema when the page type supports it. -- Check mobile readability, CTA tap targets, and obvious speed risks. -- Verify robots/indexing assumptions for important SEO pages. - -## Default Weekly Sprint - -1. Select one cluster. -2. Create 3 new pages. -3. Refresh 2 existing pages with impressions, weak CTR, or position 8-20. -4. Add internal links in both directions. -5. Create one GitHub PR. -6. Run `qrmaster-pr-seo-review.md`. -7. Produce social and outreach drafts after the PR is ready. - -## Page Types - -### Tool Pages - -Examples: - -- `/tools/pdf-qr-code` -- `/tools/vcard-qr-code` -- `/tools/wifi-qr-code` -- `/tools/menu-qr-code` -- `/tools/google-review-qr-code` - -Must include: - -- direct tool-oriented hero -- use cases -- dynamic vs static guidance -- FAQ -- CTA into the app -- internal links to related use cases - -### Industry Workflow Pages - -Examples: - -- `/qr-code-for/restaurants/menu-updates` -- `/qr-code-for/events/check-in` -- `/qr-code-for/real-estate/open-house-flyers` - -Must include: - -- specific audience pain -- example workflow -- print-risk or tracking angle -- CTA matching the industry - -### Comparison Pages - -Examples: - -- `/compare/dynamic-vs-static-qr-codes` -- `/compare/free-vs-paid-qr-code-generator` -- `/compare/flowcode-alternative` - -Must include: - -- comparison table -- fair positioning -- current facts verified before publishing -- "who this is best for" section -- CTA to the best-fit QRMaster feature - -## Codex Sprint Prompt - -```text -Run the QRMaster SEO Sprint Machine. - -Use: -- docs/automations/qrmaster-seo-sprint-machine.md -- docs/automations/qrmaster-pr-seo-review.md -- .agents/product-marketing-context.md -- marketing/programmatic-seo-top-50.md -- marketing/keyword-strategy-seo-plan.md - -Sprint focus: [cluster] -Target output: 3 new SEO/tool pages, 2 page refreshes, internal links, and one PR-ready diff. - -Rules: -- Follow existing code and page patterns. -- Do not invent competitor pricing or claims. -- Prioritize dynamic QR, edit-after-print, analytics, bulk, and privacy-first messaging. -- Add metadata, FAQ/schema where local patterns support it. -- Apply the on-page and agentic search rules from the automation doc. -- Keep pages specific enough to avoid thin programmatic content. -- Run build/lint or explain why not. - -Return: -1. selected pages and scoring -2. target keyword, intent, and fan-out subtopics per page -3. files changed -4. internal links added -5. PR summary -6. SEO review status -7. follow-up social/outreach package -``` - -## Sprint Output Template - -```markdown -# QRMaster SEO Sprint: [Cluster] - -## Selected Work -| Type | URL | Score | Reason | -|---|---|---:|---| - -## Keyword Intent And Fan-Out - -| URL | Primary keyword | Intent | Fan-out subtopics | -|---|---|---|---| - -## New Pages - -## Updated Pages - -## Internal Links - -## PR Summary - -## Verification - -## Social/Outreach Follow-Up -``` - -## Success Criteria - -- Each new page has clear commercial intent or cluster leverage. -- Refreshed pages have a measurable reason for the update. -- Internal links support money pages. -- PR SEO Review passes before merge. +# QRMaster SEO Sprint Machine + +## Goal + +Run a weekly controlled SEO sprint that chooses the right pages, creates or +updates them, adds internal links, and ships through a reviewed PR. + +## Why This Exists + +QRMaster should not publish random daily content. The goal is to build +commercially useful SEO clusters around dynamic QR codes, tracking, tool pages, +comparison pages, and industry workflows. + +## Plugins And Skills + +| Need | Use | +|---|---| +| Repository changes and PRs | GitHub plugin | +| Keyword and performance imports | Coupler, CSV exports, Google Search Console export | +| Page creation and refactors | Codex | +| SEO/content planning | `content-strategy`, `ai-seo` skills | +| Copy generation | `copywriting` skill | +| Verification | GitHub Actions, `qa` skill | + +## Weekly Inputs + +- Current keyword backlog: + - `marketing/programmatic-seo-top-50.md` + - `marketing/keyword-strategy-seo-plan.md` + - `seo-keywords.csv` +- Existing product positioning: + - `.agents/product-marketing-context.md` +- Performance data when available: + - Google Search Console export + - signup/conversion report + - top landing pages by traffic +- Sprint focus: + - Dynamic QR + - Tracking/analytics + - Restaurant/menu QR + - Print marketing + - Bulk QR + - Comparison/alternatives + +## Scoring Model + +Score each candidate from 0-100: + +| Factor | Weight | +|---|---:| +| Product fit | 30 | +| Commercial intent | 25 | +| Differentiation potential | 15 | +| Cluster leverage | 10 | +| Search winability | 10 | +| Production effort | 10 | + +Do not select pages only because they have volume. Prefer pages where QRMaster +can naturally sell dynamic QR, scan tracking, bulk creation, or privacy-first +analytics. + +## On-Page And Agentic Search Rules + +Every new or refreshed page must follow these checks before review: + +- Identify the primary keyword and intent type: informational, commercial, + transactional, or navigational. +- Cover the query fan-out: list the related subtopics an AI/search system would + need to answer the query well. +- Put the primary keyword naturally near the start of the title tag and H1. +- Keep title tags under roughly 60 characters when possible. +- Keep meta descriptions concise, benefit-led, and naturally keyword-aligned. +- Use one clear H1 and a logical H2/H3 hierarchy. +- Start each section with a direct answer to the heading. +- Use short paragraphs, bullets, and comparison tables where they improve + scanning and AI extraction. +- Add descriptive internal links with natural anchor text. +- Add useful visuals, screenshots, or examples where the page needs them. +- Add schema when the page type supports it. +- Check mobile readability, CTA tap targets, and obvious speed risks. +- Verify robots/indexing assumptions for important SEO pages. + +## Default Weekly Sprint + +1. Select one cluster. +2. Create 3 new pages. +3. Refresh 2 existing pages with impressions, weak CTR, or position 8-20. +4. Add internal links in both directions. +5. Create one GitHub PR. +6. Run `qrmaster-pr-seo-review.md`. +7. Produce social and outreach drafts after the PR is ready. + +## Page Types + +### Tool Pages + +Examples: + +- `/tools/pdf-qr-code` +- `/tools/vcard-qr-code` +- `/tools/wifi-qr-code` +- `/tools/menu-qr-code` +- `/tools/google-review-qr-code` + +Must include: + +- direct tool-oriented hero +- use cases +- dynamic vs static guidance +- FAQ +- CTA into the app +- internal links to related use cases + +### Industry Workflow Pages + +Examples: + +- `/qr-code-for/restaurants/menu-updates` +- `/qr-code-for/events/check-in` +- `/qr-code-for/real-estate/open-house-flyers` + +Must include: + +- specific audience pain +- example workflow +- print-risk or tracking angle +- CTA matching the industry + +### Comparison Pages + +Examples: + +- `/compare/dynamic-vs-static-qr-codes` +- `/compare/free-vs-paid-qr-code-generator` +- `/compare/flowcode-alternative` + +Must include: + +- comparison table +- fair positioning +- current facts verified before publishing +- "who this is best for" section +- CTA to the best-fit QRMaster feature + +## Codex Sprint Prompt + +```text +Run the QRMaster SEO Sprint Machine. + +Use: +- docs/automations/qrmaster-seo-sprint-machine.md +- docs/automations/qrmaster-pr-seo-review.md +- .agents/product-marketing-context.md +- marketing/programmatic-seo-top-50.md +- marketing/keyword-strategy-seo-plan.md + +Sprint focus: [cluster] +Target output: 3 new SEO/tool pages, 2 page refreshes, internal links, and one PR-ready diff. + +Rules: +- Follow existing code and page patterns. +- Do not invent competitor pricing or claims. +- Prioritize dynamic QR, edit-after-print, analytics, bulk, and privacy-first messaging. +- Add metadata, FAQ/schema where local patterns support it. +- Apply the on-page and agentic search rules from the automation doc. +- Keep pages specific enough to avoid thin programmatic content. +- Run build/lint or explain why not. + +Return: +1. selected pages and scoring +2. target keyword, intent, and fan-out subtopics per page +3. files changed +4. internal links added +5. PR summary +6. SEO review status +7. follow-up social/outreach package +``` + +## Sprint Output Template + +```markdown +# QRMaster SEO Sprint: [Cluster] + +## Selected Work +| Type | URL | Score | Reason | +|---|---|---:|---| + +## Keyword Intent And Fan-Out + +| URL | Primary keyword | Intent | Fan-out subtopics | +|---|---|---|---| + +## New Pages + +## Updated Pages + +## Internal Links + +## PR Summary + +## Verification + +## Social/Outreach Follow-Up +``` + +## Success Criteria + +- Each new page has clear commercial intent or cluster leverage. +- Refreshed pages have a measurable reason for the update. +- Internal links support money pages. +- PR SEO Review passes before merge. diff --git a/guest-post-pitches.md b/guest-post-pitches.md index d62e86e..55f0f64 100644 --- a/guest-post-pitches.md +++ b/guest-post-pitches.md @@ -1,307 +1,307 @@ -# Guest Post Pitches — QR Master - ---- - -## Submitted / In Progress - ---- - -### DigitalGpoint — Guest Post Submission -- **Submit to:** digitalgpoint.webmail@gmail.com -- **Zielgruppe:** Small business, marketers, entrepreneurs (EN) -- **Segment:** Founders / Marketing -- **Tier:** 2 (niche tech blog, solid topical fit) - -**Submission Email:** - ---- - -**To:** digitalgpoint.webmail@gmail.com -**Subject:** Solving the "print gap" for small businesses - -Hi [Name], - -I’ve noticed DigitalGpoint covers a lot of practical tools for business growth. One area that often gets overlooked is the bridge between physical marketing (flyers, menus, signage) and digital analytics. - -I’ve put together a practical guide on "Managing the Move from Static to Dynamic Print." It explains how small business owners are using dynamic redirect layers to make their physical materials editable after printing—saving them from costly reprints when a URL or price changes. - -It’s a straightforward, workflow-focused piece that I believe your readers would find highly actionable. - -Would you be open to reviewing a draft for a guest contribution? - -Best, - -Timo -(Writer & Strategist) - ---- - -> 🔒 **INTERNAL — DO NOT INCLUDE IN SUBMISSION EMAIL** - -**Notes:** -- Word count: 1,200+ -- Tone: Practical, professional -- **Link Policy:** Bio-only link. No links or product mentions in the body or signature of the pitch email. Link to `qrmaster.net` in the author bio of the published article only. -- **Top SEO keywords:** `static qr codes`, `dynamic qr code`, `editable qr code` - ---- - -### Techdee — Guest Post Submission *(Tier 2 — High Priority)* -- **Submit to:** Blayget@gmail.com -- **Audience:** Tech enthusiasts, small business owners, marketers (EN) -- **Segment:** Founders / Marketing / Technology -- **Tier:** 2 — no editorial gatekeeping, do-follow, no sponsored label, fast turnaround -- **Requirements:** 500–1,000 words · Original · Max 3–4 links · 1 link per 300 words · Lists/tutorials preferred - -> 🚨 **TECHDEE PRE-FLIGHT CHECK** *(complete before investing time in draft)* -> - [ ] Does Techdee have real organic traffic? Check Similarweb/Ahrefs — DR alone is not enough -> - [ ] Are the last 20+ posts mostly guest posts with outbound money links? If yes → likely link farm, remove or downgrade to Tier 3 -> - [ ] Run `site:techdee.com` to confirm recent articles are indexed by Google -> - [ ] Is there a real editorial contact, or only a blanket Gmail? If Gmail-only and no standards → treat as low-ROI - -**Submission Email:** - ---- - -**To:** Blayget@gmail.com -**Subject:** Offline-to-Online marketing workflows - -Hi [Name], - -I’ve been following Techdee’s tech and marketing tutorials for some time. - -I’m currently finalizing a piece titled: **"Beyond the Scan: 5 Professional QR Strategies for Modern Marketing."** - -The article moves past the basic "link a code to a site" approach and explores practical technical workflows: using dynamic redirects to avoid reprints, pulling scan data into GA4 for attribution, and managing bulk physical assets. - -It’s a 700-word, list-style tutorial that fits your current format. Is this something you'd like to see for a guest contribution? - -Best, - -Timo -(Writer & Strategist) - ---- - -> 🔒 **INTERNAL — DO NOT INCLUDE IN SUBMISSION EMAIL** - -**Notes:** -- **Link Policy:** Bio-only link. No links or product mentions in the pitch email. -- **Primary link:** "free QR code generator" → `https://qrmaster.net` in Author Bio. -- **Secondary link:** "QR code tracking" → `https://qrmaster.net/analytics` (1K–10K vol · +900% YoY 🔥 · C_Analytics) -- **Top SEO keywords matched:** `qr code tracking` (+900%), `qr code generator for business`, `qr code generator with tracking`, `free qr code generator` -- External: 1 Statista/Forbes stat on QR adoption for authority signal -- No Techdee internal links required; add 1 opportunistically if they have a relevant article -- Follow up once after 7 days, then drop - ---- - -### SEO Sandwitch — Guest Post Submission *(Tier 1 — High Value)* -- **Submit to:** joydeep@seosandwitch.com -- **Audience:** SEO professionals, digital marketers, content strategists (EN) -- **Segment:** Marketing / SEO -- **Tier:** 1 — high DR, editorial audience, topically powerful if angle is right -- **Requirements:** 2,000+ words · Unique · No AI spam · Link to inner SEO Sandwitch pages · No images unless own screenshots · Grammarly-checked - -**Submission Email:** - ---- - -**To:** joydeep@seosandwitch.com -**Subject:** Attribution blind spots in physical marketing - -Hi Joydeep, - -I’ve been following SEO Sandwitch for a while—your recent piece on AI SEO and GEO was excellent. - -I’m reaching out because I’ve been working on a technical deep-dive that explores a massive attribution blind spot: physical marketing campaigns. - -The piece, **"QR Codes as an Offline-to-Online Signal,"** breaks down how marketers can pull scan data from flyers, packaging, and OOH materials into GA4 to finally close the loop on offline attribution. - -It covers: -- Using dynamic redirect layers as an attribution signal. -- The indirect impact of physical touchpoints on branded search volume. -- Technical setup for UTM-tagged dynamic codes. - -It’s not a superficial "marketing tips" post; it’s a strategist-level look at attribution data. - -I have a ~2,000 word draft ready. Would you be open to taking a look for a potential guest contribution? - -Best, - -Timo -(Writer & Strategist) - ---- - -> 🔒 **INTERNAL — DO NOT INCLUDE IN SUBMISSION EMAIL** - -**Notes:** -- **Link Policy:** Bio-only link. Strictly no links or product names in the pitch. Link to `qrmaster.net` in the author bio of the final article. -- Draft length target: 2,200–2,500 words -- Must link 2–3 inner SEO Sandwitch pages (check site for relevant attribution/content posts) -- No stock images — any visuals must be own screenshots of qrmaster.net or GA4 -- **Primary body link:** "QR code analytics" → `https://qrmaster.net/analytics` (C_Analytics · 100–1K vol) -- **Secondary body link:** "dynamic QR code generator" → `https://qrmaster.net/dynamic` (A_Dynamic · 1K–10K vol) -- **Top SEO keywords matched:** `qr code tracking` (+900% 🔥), `track qr code scans` (+900% 🔥), `qr code analytics`, `trackable qr code`, `dynamic qr code tracking` -- Follow up once after 10 days; offer to adjust the angle if needed - ---- - -### HubSpot Agency Blog / MarketingProfs — Status: SKIP -- **Reason:** Both require enterprise B2B marketing angles and have extremely long queues (2–4 months). HubSpot explicitly prohibits homepage/tool links in body copy. MarketingProfs is B2B/enterprise only with no SaaS tool coverage. -- **Revisit if:** QR Master has a published case study with measurable ROI data that could be framed as a B2B marketing success story. -- **Alternative:** Pitch the same SEO Sandwitch angle to similar mid-tier marketing blogs (SmartBizLoans, Startup Mindset, trickyenough.com — all on Charles Floate's list below) - ---- - -## Web 2.0 & Free Guest Posts — Charles Floate List (QR Master Filtered) -**Source:** presswhizz.com/blog — "My Top 100+ Free Guest Posting Sites For 2026" -**Filter criteria:** Tech tools / SaaS / Marketing / Small Business / Event / Startup niches — no gambling, adult, finance-only - ---- - -### PHASE A — Web 2.0 (Publish Immediately, No Editor Required) - -These 5 platforms require zero pitch approval. Create account → write → publish → link. Do these first as a supporting layer before editorial outreach. - -| Priority | Platform | DA | Link Type | Action | Anchor to Use | -|----------|----------|----|-----------|--------|---------------| -| 🟢 1 | **Medium.com** | 95 | No-follow (but crawled heavily) | Publish "5 underrated QR code use cases for small businesses" — 600–900 words | Partial match: "free QR code generator" | -| 🟢 2 | **LinkedIn Pulse** | 97 | No-follow | Publish thought leadership: "Why your business card still needs a QR code in 2025" — short-form 400–500 words | Branded: "QR Master" | -| 🟢 3 | **Substack** | 86 | Do-follow | Set up a mini newsletter: "The QR Code Playbook" — first 3 issues = offline-to-online basics, event use cases, dynamic code strategy | Contextual: "qrmaster.net" | -| 🟡 4 | **Tealfeed** | 59 | Do-follow (lenient) | Write a **fresh angle** — e.g. "Why Startups Should Use Dynamic QR Codes at Events" — NOT a reworded Medium post (duplicate/thin content risk). | Natural: "dynamic QR code tool" or branded "QR Master" — never exact-match same anchor as Medium post | -| 🟡 5 | **Vocal.Media** | 76 | Do-follow (relaxed moderation) | "How Restaurant Owners Use QR Codes to Cut Printing Costs" — niche use case, 700 words | Partial: "QR codes for restaurants" | - -**Web 2.0 Execution order:** Medium → LinkedIn → Substack (ongoing) → Tealfeed → Vocal -**Time investment:** ~3 hours total for all 5 -**Anchor rotation rule:** Never use the same exact-match anchor across posts — rotate: *"QR Master"* · *"qrmaster.net"* · *"dynamic QR code tool"* · *"free QR code generator"* · *"QR code analytics"* — one per post maximum. - ---- - -### PHASE B — Editorial Guest Posts (Pitch Required, High DR) - -Filtered from Charles Floate’s Top 20 + niche 70+ list. Sorted by fit + DR. - -> ✅ **Pre-Submission Quality Checklist — Tier 1 Articles** -> Run through this before any Tier 1 article ships: -> - [ ] Grammarly: 0 errors, no unresolved passive-voice flags on key claims -> - [ ] Every stat/claim has a source link (no “studies show” without a reference) -> - [ ] At least 1 original screenshot included (qrmaster.net UI or GA4 data) -> - [ ] 2–3 internal links from target site researched and woven into draft -> - [ ] Draft read cold by a second person before submission -> - [ ] Author bio finalised — LinkedIn or portfolio URL included -> - [ ] Confirmed article angle is NOT already covered by the target site recently - -#### 🟢 Tier 1 — Best Fit, Highest Authority - -| # | Site | DR | Traffic | Niche Match | Pitch Angle | URL | -|---|------|----|---------|-------------|-------------|-----| -| 1 | **Hackernoon** | 88 | 395K | Tech/startup founders | "QR Codes Are Having a Quiet Comeback — And It's More Interesting Than You Think" — data-driven, contrarian tech angle | hackernoon.com | -| 2 | **Techopedia** | 88 | 1.1M | Technology — responsive editorial | "Static vs. Dynamic QR Codes: A Developer's Guide to Choosing the Right Type" — technical, tool-comparison angle | techopedia.com | -| 3 | **G2 Learning Hub** ⚠️ *Long Shot* | 91 | 278K | SaaS tools/software reviews | "How to Pick a QR Code Generator: 7 Features That Actually Matter" — tool evaluation guide, high commercial intent. *Internal content team; rarely accepts external pitches without established brand track record.* | learn.g2.com | -| 4 | **Visme** ⚠️ *Long Shot* | 86 | 1.3M | Visual/marketing content | "How to Design QR Codes That Don’t Look Like an Eyesore" — visual + branding angle. *In-house editorial team; external submissions very rare. Pitch only if you have a strong writing portfolio.* | visme.co | -| 5 | **Smart Data Collective** | ~70 | Med | Data/analytics | "What QR Code Scan Data Tells You About Your Offline Campaigns" — analytics angle, ties into qrmaster.net scan tracking feature | smartdatacollective.com | - -#### 🟡 Tier 2 — Strong Fit, Mid Effort - -| # | Site | DR | Traffic | Niche Match | Pitch Angle | URL | -|---|------|----|---------|-------------|-------------|-----| -| 6 | **Startup Mindset** | ~60 | Med | Startup founders | "5 Physical Marketing Tools Still Worth Using in 2025 (And How to Make Them Digital)" — QR codes as bridge between offline/online | startupmindset.com | -| 7 | **Small Biz Daily** | ~55 | Med | Small business owners | "How Small Businesses Can Use QR Codes to Run Campaigns Without a Developer" — exact audience match | smallbizdaily.com | -| 8 | **MobileAppDaily** | 73 | 38K | Mobile/app/SaaS | "Best QR Code Generator Apps Reviewed: What to Look for in 2025" — app comparison article | mobileappdaily.com | -| 9 | **trickyenough.com** | ~50 | Med | Marketing/SEO | "QR Codes in Marketing: How to Track ROI From Print Campaigns" — UTM + QR code tracking guide | trickyenough.com | -| 10 | **Martech Series** | ~65 | Med | Marketing tech | "QR Codes as a MarTech Asset: Closing the Attribution Gap Between Print and Digital" — B2B marketing tech angle | martechseries.com | - -#### 🔵 Tier 3 — Niche Specific, Lower Effort - -| # | Site | DR | Niche Match | Pitch Angle | URL | -|---|------|----|-------------|-------------|-----| -| 11 | **PageFly** | 78 | eCommerce/Shopify | "How Shopify Stores Use QR Codes on Packaging to Boost Repeat Purchases" | pagefly.io | -| 12 | **SurveySparrow** | 80 | B2B/feedback tools | "How to Collect Event Feedback in Under 30 Seconds Using QR Codes" | surveysparrow.com | -| 13 | **Bplans (articles)** | ~75 | Business planning | "Adding QR Codes to Your Business Plan: The Physical-Digital Marketing Layer" | articles.bplans.com | -| 14 | **Innotech Today** | ~45 | Tech/innovation | "Dynamic QR Codes: The Quiet Innovation Reshaping Physical Marketing" | innotechtoday.com | -| 15 | **nichemarket.co.za** | ~40 | Small biz / emerging markets | "Why QR Codes Are the Cheapest Digital Marketing Tool for Local Businesses" | nichemarket.co.za | - ---- - -### SKIP LIST (from Floate's list — not suitable for QR Master) - -| Site | Reason | -|------|--------| -| ClickUp | Productivity-only, no tools/marketing content | -| Edutopia | K-12 education only, already covered in existing outreach | -| Outbrain | Native advertising platform, not accepting product content | -| FinancesOnline | Finance/SaaS review site, requires formal product listing | -| Clutch.co | Agency reviews only, no editorial content | -| DataScienceCentral | ML/AI/data science only — QR codes too shallow | -| OpenSource.com | Dev/open-source only — no marketing/tool angle | -| Fylehq | Corporate expense management only | -| All HR/Productivity sites | No QR code angle that isn't forced | -| All Finance/Fintech sites | Wrong audience entirely | -| All Security/Privacy sites | Wrong audience entirely | - ---- - -### Execution Plan — Charles Floate List - -> 🔍 **Contact Research Guide** — Complete *before* Woche-1 pitches go out. Hunter.io alone is insufficient for smaller blogs. -> -> | Method | When to use | -> |--------|-------------| -> | `site:domain.com "write for us"` | Always — check first | -> | `site:domain.com "contact" OR "editor"` | If no write-for-us page | -> | LinkedIn: search “[site name] editor” or “content manager” | Tier 1 always | -> | Hunter.io | Larger sites with company domains | -> | Whois + MXToolbox | Smaller/independent blogs | -> | Contact form on site | Fallback when no direct email | -> | LinkedIn DM to editor | Last resort for Tier 1 targets | -> -> **Goal: all Tier 1 contacts confirmed before the first pitch goes out.** - -**Week 1 (immediate):** -- [ ] Publish Medium post (Phase A #1) -- [ ] Publish LinkedIn Pulse post (Phase A #2) -- [ ] Set up Substack, publish first issue (Phase A #3) -- [ ] Send pitch to Hackernoon (Tier 1 #1) -- [ ] Send pitch to Techopedia (Tier 1 #2) - -**Week 2:** -- [ ] Publish Tealfeed + Vocal posts (Phase A #4–5) -- [ ] Send pitch to G2 Learning Hub (Tier 1 #3) -- [ ] Send pitch to Visme (Tier 1 #4) -- [ ] Send pitch to Startup Mindset (Tier 2 #6) - -**Week 3:** -- [ ] Follow up on Week 1 pitches (if no reply) -- [ ] Send pitches to Tier 2 targets: Small Biz Daily, MobileAppDaily, trickyenough -- [ ] Send pitch to Smart Data Collective + Martech Series - -**Week 4:** -- [ ] Follow up on Week 2 pitches -- [ ] Begin Tier 3 pitches (PageFly, SurveySparrow, Bplans) - ---- - -### Guest Post Tracking — Charles Floate List - -| Tier | Site | Contact | Sent | Reply | Status | -|------|------|---------|------|-------|--------| -| Web 2.0 | Medium | — (self-publish) | — | — | — | -| Web 2.0 | LinkedIn Pulse | — (self-publish) | — | — | — | -| Web 2.0 | Substack | — (self-publish) | — | — | — | -| Web 2.0 | Tealfeed | — (self-publish) | — | — | — | -| Web 2.0 | Vocal.Media | — (self-publish) | — | — | — | -| 1 | Hackernoon | editorial@hackernoon.com | — | — | — | -| 1 | Techopedia | (find via Hunter.io) | — | — | — | -| 1 | G2 Learning Hub | (find via Hunter.io) | — | — | — | -| 1 | Visme | (find via Hunter.io) | — | — | — | -| 1 | Smart Data Collective | (find via Hunter.io) | — | — | — | -| 2 | Startup Mindset | (find via Hunter.io) | — | — | — | -| 2 | Small Biz Daily | (find via site contact) | — | — | — | -| 2 | MobileAppDaily | (find via Hunter.io) | — | — | — | -| 2 | trickyenough.com | (find via site contact) | — | — | — | -| 2 | Martech Series | (find via Hunter.io) | — | — | — | -| 3 | PageFly | (find via Hunter.io) | — | — | — | -| 3 | SurveySparrow | (find via Hunter.io) | — | — | — | -| 3 | Bplans | (find via Hunter.io) | — | — | — | +# Guest Post Pitches — QR Master + +--- + +## Submitted / In Progress + +--- + +### DigitalGpoint — Guest Post Submission +- **Submit to:** digitalgpoint.webmail@gmail.com +- **Zielgruppe:** Small business, marketers, entrepreneurs (EN) +- **Segment:** Founders / Marketing +- **Tier:** 2 (niche tech blog, solid topical fit) + +**Submission Email:** + +--- + +**To:** digitalgpoint.webmail@gmail.com +**Subject:** Solving the "print gap" for small businesses + +Hi [Name], + +I’ve noticed DigitalGpoint covers a lot of practical tools for business growth. One area that often gets overlooked is the bridge between physical marketing (flyers, menus, signage) and digital analytics. + +I’ve put together a practical guide on "Managing the Move from Static to Dynamic Print." It explains how small business owners are using dynamic redirect layers to make their physical materials editable after printing—saving them from costly reprints when a URL or price changes. + +It’s a straightforward, workflow-focused piece that I believe your readers would find highly actionable. + +Would you be open to reviewing a draft for a guest contribution? + +Best, + +Timo +(Writer & Strategist) + +--- + +> 🔒 **INTERNAL — DO NOT INCLUDE IN SUBMISSION EMAIL** + +**Notes:** +- Word count: 1,200+ +- Tone: Practical, professional +- **Link Policy:** Bio-only link. No links or product mentions in the body or signature of the pitch email. Link to `qrmaster.net` in the author bio of the published article only. +- **Top SEO keywords:** `static qr codes`, `dynamic qr code`, `editable qr code` + +--- + +### Techdee — Guest Post Submission *(Tier 2 — High Priority)* +- **Submit to:** Blayget@gmail.com +- **Audience:** Tech enthusiasts, small business owners, marketers (EN) +- **Segment:** Founders / Marketing / Technology +- **Tier:** 2 — no editorial gatekeeping, do-follow, no sponsored label, fast turnaround +- **Requirements:** 500–1,000 words · Original · Max 3–4 links · 1 link per 300 words · Lists/tutorials preferred + +> 🚨 **TECHDEE PRE-FLIGHT CHECK** *(complete before investing time in draft)* +> - [ ] Does Techdee have real organic traffic? Check Similarweb/Ahrefs — DR alone is not enough +> - [ ] Are the last 20+ posts mostly guest posts with outbound money links? If yes → likely link farm, remove or downgrade to Tier 3 +> - [ ] Run `site:techdee.com` to confirm recent articles are indexed by Google +> - [ ] Is there a real editorial contact, or only a blanket Gmail? If Gmail-only and no standards → treat as low-ROI + +**Submission Email:** + +--- + +**To:** Blayget@gmail.com +**Subject:** Offline-to-Online marketing workflows + +Hi [Name], + +I’ve been following Techdee’s tech and marketing tutorials for some time. + +I’m currently finalizing a piece titled: **"Beyond the Scan: 5 Professional QR Strategies for Modern Marketing."** + +The article moves past the basic "link a code to a site" approach and explores practical technical workflows: using dynamic redirects to avoid reprints, pulling scan data into GA4 for attribution, and managing bulk physical assets. + +It’s a 700-word, list-style tutorial that fits your current format. Is this something you'd like to see for a guest contribution? + +Best, + +Timo +(Writer & Strategist) + +--- + +> 🔒 **INTERNAL — DO NOT INCLUDE IN SUBMISSION EMAIL** + +**Notes:** +- **Link Policy:** Bio-only link. No links or product mentions in the pitch email. +- **Primary link:** "free QR code generator" → `https://qrmaster.net` in Author Bio. +- **Secondary link:** "QR code tracking" → `https://qrmaster.net/analytics` (1K–10K vol · +900% YoY 🔥 · C_Analytics) +- **Top SEO keywords matched:** `qr code tracking` (+900%), `qr code generator for business`, `qr code generator with tracking`, `free qr code generator` +- External: 1 Statista/Forbes stat on QR adoption for authority signal +- No Techdee internal links required; add 1 opportunistically if they have a relevant article +- Follow up once after 7 days, then drop + +--- + +### SEO Sandwitch — Guest Post Submission *(Tier 1 — High Value)* +- **Submit to:** joydeep@seosandwitch.com +- **Audience:** SEO professionals, digital marketers, content strategists (EN) +- **Segment:** Marketing / SEO +- **Tier:** 1 — high DR, editorial audience, topically powerful if angle is right +- **Requirements:** 2,000+ words · Unique · No AI spam · Link to inner SEO Sandwitch pages · No images unless own screenshots · Grammarly-checked + +**Submission Email:** + +--- + +**To:** joydeep@seosandwitch.com +**Subject:** Attribution blind spots in physical marketing + +Hi Joydeep, + +I’ve been following SEO Sandwitch for a while—your recent piece on AI SEO and GEO was excellent. + +I’m reaching out because I’ve been working on a technical deep-dive that explores a massive attribution blind spot: physical marketing campaigns. + +The piece, **"QR Codes as an Offline-to-Online Signal,"** breaks down how marketers can pull scan data from flyers, packaging, and OOH materials into GA4 to finally close the loop on offline attribution. + +It covers: +- Using dynamic redirect layers as an attribution signal. +- The indirect impact of physical touchpoints on branded search volume. +- Technical setup for UTM-tagged dynamic codes. + +It’s not a superficial "marketing tips" post; it’s a strategist-level look at attribution data. + +I have a ~2,000 word draft ready. Would you be open to taking a look for a potential guest contribution? + +Best, + +Timo +(Writer & Strategist) + +--- + +> 🔒 **INTERNAL — DO NOT INCLUDE IN SUBMISSION EMAIL** + +**Notes:** +- **Link Policy:** Bio-only link. Strictly no links or product names in the pitch. Link to `qrmaster.net` in the author bio of the final article. +- Draft length target: 2,200–2,500 words +- Must link 2–3 inner SEO Sandwitch pages (check site for relevant attribution/content posts) +- No stock images — any visuals must be own screenshots of qrmaster.net or GA4 +- **Primary body link:** "QR code analytics" → `https://qrmaster.net/analytics` (C_Analytics · 100–1K vol) +- **Secondary body link:** "dynamic QR code generator" → `https://qrmaster.net/dynamic` (A_Dynamic · 1K–10K vol) +- **Top SEO keywords matched:** `qr code tracking` (+900% 🔥), `track qr code scans` (+900% 🔥), `qr code analytics`, `trackable qr code`, `dynamic qr code tracking` +- Follow up once after 10 days; offer to adjust the angle if needed + +--- + +### HubSpot Agency Blog / MarketingProfs — Status: SKIP +- **Reason:** Both require enterprise B2B marketing angles and have extremely long queues (2–4 months). HubSpot explicitly prohibits homepage/tool links in body copy. MarketingProfs is B2B/enterprise only with no SaaS tool coverage. +- **Revisit if:** QR Master has a published case study with measurable ROI data that could be framed as a B2B marketing success story. +- **Alternative:** Pitch the same SEO Sandwitch angle to similar mid-tier marketing blogs (SmartBizLoans, Startup Mindset, trickyenough.com — all on Charles Floate's list below) + +--- + +## Web 2.0 & Free Guest Posts — Charles Floate List (QR Master Filtered) +**Source:** presswhizz.com/blog — "My Top 100+ Free Guest Posting Sites For 2026" +**Filter criteria:** Tech tools / SaaS / Marketing / Small Business / Event / Startup niches — no gambling, adult, finance-only + +--- + +### PHASE A — Web 2.0 (Publish Immediately, No Editor Required) + +These 5 platforms require zero pitch approval. Create account → write → publish → link. Do these first as a supporting layer before editorial outreach. + +| Priority | Platform | DA | Link Type | Action | Anchor to Use | +|----------|----------|----|-----------|--------|---------------| +| 🟢 1 | **Medium.com** | 95 | No-follow (but crawled heavily) | Publish "5 underrated QR code use cases for small businesses" — 600–900 words | Partial match: "free QR code generator" | +| 🟢 2 | **LinkedIn Pulse** | 97 | No-follow | Publish thought leadership: "Why your business card still needs a QR code in 2025" — short-form 400–500 words | Branded: "QR Master" | +| 🟢 3 | **Substack** | 86 | Do-follow | Set up a mini newsletter: "The QR Code Playbook" — first 3 issues = offline-to-online basics, event use cases, dynamic code strategy | Contextual: "qrmaster.net" | +| 🟡 4 | **Tealfeed** | 59 | Do-follow (lenient) | Write a **fresh angle** — e.g. "Why Startups Should Use Dynamic QR Codes at Events" — NOT a reworded Medium post (duplicate/thin content risk). | Natural: "dynamic QR code tool" or branded "QR Master" — never exact-match same anchor as Medium post | +| 🟡 5 | **Vocal.Media** | 76 | Do-follow (relaxed moderation) | "How Restaurant Owners Use QR Codes to Cut Printing Costs" — niche use case, 700 words | Partial: "QR codes for restaurants" | + +**Web 2.0 Execution order:** Medium → LinkedIn → Substack (ongoing) → Tealfeed → Vocal +**Time investment:** ~3 hours total for all 5 +**Anchor rotation rule:** Never use the same exact-match anchor across posts — rotate: *"QR Master"* · *"qrmaster.net"* · *"dynamic QR code tool"* · *"free QR code generator"* · *"QR code analytics"* — one per post maximum. + +--- + +### PHASE B — Editorial Guest Posts (Pitch Required, High DR) + +Filtered from Charles Floate’s Top 20 + niche 70+ list. Sorted by fit + DR. + +> ✅ **Pre-Submission Quality Checklist — Tier 1 Articles** +> Run through this before any Tier 1 article ships: +> - [ ] Grammarly: 0 errors, no unresolved passive-voice flags on key claims +> - [ ] Every stat/claim has a source link (no “studies show” without a reference) +> - [ ] At least 1 original screenshot included (qrmaster.net UI or GA4 data) +> - [ ] 2–3 internal links from target site researched and woven into draft +> - [ ] Draft read cold by a second person before submission +> - [ ] Author bio finalised — LinkedIn or portfolio URL included +> - [ ] Confirmed article angle is NOT already covered by the target site recently + +#### 🟢 Tier 1 — Best Fit, Highest Authority + +| # | Site | DR | Traffic | Niche Match | Pitch Angle | URL | +|---|------|----|---------|-------------|-------------|-----| +| 1 | **Hackernoon** | 88 | 395K | Tech/startup founders | "QR Codes Are Having a Quiet Comeback — And It's More Interesting Than You Think" — data-driven, contrarian tech angle | hackernoon.com | +| 2 | **Techopedia** | 88 | 1.1M | Technology — responsive editorial | "Static vs. Dynamic QR Codes: A Developer's Guide to Choosing the Right Type" — technical, tool-comparison angle | techopedia.com | +| 3 | **G2 Learning Hub** ⚠️ *Long Shot* | 91 | 278K | SaaS tools/software reviews | "How to Pick a QR Code Generator: 7 Features That Actually Matter" — tool evaluation guide, high commercial intent. *Internal content team; rarely accepts external pitches without established brand track record.* | learn.g2.com | +| 4 | **Visme** ⚠️ *Long Shot* | 86 | 1.3M | Visual/marketing content | "How to Design QR Codes That Don’t Look Like an Eyesore" — visual + branding angle. *In-house editorial team; external submissions very rare. Pitch only if you have a strong writing portfolio.* | visme.co | +| 5 | **Smart Data Collective** | ~70 | Med | Data/analytics | "What QR Code Scan Data Tells You About Your Offline Campaigns" — analytics angle, ties into qrmaster.net scan tracking feature | smartdatacollective.com | + +#### 🟡 Tier 2 — Strong Fit, Mid Effort + +| # | Site | DR | Traffic | Niche Match | Pitch Angle | URL | +|---|------|----|---------|-------------|-------------|-----| +| 6 | **Startup Mindset** | ~60 | Med | Startup founders | "5 Physical Marketing Tools Still Worth Using in 2025 (And How to Make Them Digital)" — QR codes as bridge between offline/online | startupmindset.com | +| 7 | **Small Biz Daily** | ~55 | Med | Small business owners | "How Small Businesses Can Use QR Codes to Run Campaigns Without a Developer" — exact audience match | smallbizdaily.com | +| 8 | **MobileAppDaily** | 73 | 38K | Mobile/app/SaaS | "Best QR Code Generator Apps Reviewed: What to Look for in 2025" — app comparison article | mobileappdaily.com | +| 9 | **trickyenough.com** | ~50 | Med | Marketing/SEO | "QR Codes in Marketing: How to Track ROI From Print Campaigns" — UTM + QR code tracking guide | trickyenough.com | +| 10 | **Martech Series** | ~65 | Med | Marketing tech | "QR Codes as a MarTech Asset: Closing the Attribution Gap Between Print and Digital" — B2B marketing tech angle | martechseries.com | + +#### 🔵 Tier 3 — Niche Specific, Lower Effort + +| # | Site | DR | Niche Match | Pitch Angle | URL | +|---|------|----|-------------|-------------|-----| +| 11 | **PageFly** | 78 | eCommerce/Shopify | "How Shopify Stores Use QR Codes on Packaging to Boost Repeat Purchases" | pagefly.io | +| 12 | **SurveySparrow** | 80 | B2B/feedback tools | "How to Collect Event Feedback in Under 30 Seconds Using QR Codes" | surveysparrow.com | +| 13 | **Bplans (articles)** | ~75 | Business planning | "Adding QR Codes to Your Business Plan: The Physical-Digital Marketing Layer" | articles.bplans.com | +| 14 | **Innotech Today** | ~45 | Tech/innovation | "Dynamic QR Codes: The Quiet Innovation Reshaping Physical Marketing" | innotechtoday.com | +| 15 | **nichemarket.co.za** | ~40 | Small biz / emerging markets | "Why QR Codes Are the Cheapest Digital Marketing Tool for Local Businesses" | nichemarket.co.za | + +--- + +### SKIP LIST (from Floate's list — not suitable for QR Master) + +| Site | Reason | +|------|--------| +| ClickUp | Productivity-only, no tools/marketing content | +| Edutopia | K-12 education only, already covered in existing outreach | +| Outbrain | Native advertising platform, not accepting product content | +| FinancesOnline | Finance/SaaS review site, requires formal product listing | +| Clutch.co | Agency reviews only, no editorial content | +| DataScienceCentral | ML/AI/data science only — QR codes too shallow | +| OpenSource.com | Dev/open-source only — no marketing/tool angle | +| Fylehq | Corporate expense management only | +| All HR/Productivity sites | No QR code angle that isn't forced | +| All Finance/Fintech sites | Wrong audience entirely | +| All Security/Privacy sites | Wrong audience entirely | + +--- + +### Execution Plan — Charles Floate List + +> 🔍 **Contact Research Guide** — Complete *before* Woche-1 pitches go out. Hunter.io alone is insufficient for smaller blogs. +> +> | Method | When to use | +> |--------|-------------| +> | `site:domain.com "write for us"` | Always — check first | +> | `site:domain.com "contact" OR "editor"` | If no write-for-us page | +> | LinkedIn: search “[site name] editor” or “content manager” | Tier 1 always | +> | Hunter.io | Larger sites with company domains | +> | Whois + MXToolbox | Smaller/independent blogs | +> | Contact form on site | Fallback when no direct email | +> | LinkedIn DM to editor | Last resort for Tier 1 targets | +> +> **Goal: all Tier 1 contacts confirmed before the first pitch goes out.** + +**Week 1 (immediate):** +- [ ] Publish Medium post (Phase A #1) +- [ ] Publish LinkedIn Pulse post (Phase A #2) +- [ ] Set up Substack, publish first issue (Phase A #3) +- [ ] Send pitch to Hackernoon (Tier 1 #1) +- [ ] Send pitch to Techopedia (Tier 1 #2) + +**Week 2:** +- [ ] Publish Tealfeed + Vocal posts (Phase A #4–5) +- [ ] Send pitch to G2 Learning Hub (Tier 1 #3) +- [ ] Send pitch to Visme (Tier 1 #4) +- [ ] Send pitch to Startup Mindset (Tier 2 #6) + +**Week 3:** +- [ ] Follow up on Week 1 pitches (if no reply) +- [ ] Send pitches to Tier 2 targets: Small Biz Daily, MobileAppDaily, trickyenough +- [ ] Send pitch to Smart Data Collective + Martech Series + +**Week 4:** +- [ ] Follow up on Week 2 pitches +- [ ] Begin Tier 3 pitches (PageFly, SurveySparrow, Bplans) + +--- + +### Guest Post Tracking — Charles Floate List + +| Tier | Site | Contact | Sent | Reply | Status | +|------|------|---------|------|-------|--------| +| Web 2.0 | Medium | — (self-publish) | — | — | — | +| Web 2.0 | LinkedIn Pulse | — (self-publish) | — | — | — | +| Web 2.0 | Substack | — (self-publish) | — | — | — | +| Web 2.0 | Tealfeed | — (self-publish) | — | — | — | +| Web 2.0 | Vocal.Media | — (self-publish) | — | — | — | +| 1 | Hackernoon | editorial@hackernoon.com | — | — | — | +| 1 | Techopedia | (find via Hunter.io) | — | — | — | +| 1 | G2 Learning Hub | (find via Hunter.io) | — | — | — | +| 1 | Visme | (find via Hunter.io) | — | — | — | +| 1 | Smart Data Collective | (find via Hunter.io) | — | — | — | +| 2 | Startup Mindset | (find via Hunter.io) | — | — | — | +| 2 | Small Biz Daily | (find via site contact) | — | — | — | +| 2 | MobileAppDaily | (find via Hunter.io) | — | — | — | +| 2 | trickyenough.com | (find via site contact) | — | — | — | +| 2 | Martech Series | (find via Hunter.io) | — | — | — | +| 3 | PageFly | (find via Hunter.io) | — | — | — | +| 3 | SurveySparrow | (find via Hunter.io) | — | — | — | +| 3 | Bplans | (find via Hunter.io) | — | — | — | diff --git a/linear.app/DESIGN.md b/linear.app/DESIGN.md index 1589d6d..f457dec 100644 --- a/linear.app/DESIGN.md +++ b/linear.app/DESIGN.md @@ -1,548 +1,548 @@ ---- -version: alpha -name: Linear -description: "A near-black product-focused marketing canvas built around #010102 (the deepest dark surface of any tool in this collection), light gray text (#f7f8f8), and the signature Linear lavender-blue (#5e6ad2) used as the single chromatic accent. The system reads as software-craft documentation: dense, technical, and quietly luxurious. Display type is set in the Linear custom sans (SF Pro Display fallback) at 500–700 with measured negative tracking. Cards live as charcoal panels (#0f1011) with hairline borders. The accent lavender appears on the brand mark, focus rings, and a few intentional CTAs — never decoratively. Page rhythm leans on product UI screenshots framed in dark panels rather than atmospheric color." - -colors: - primary: "#5e6ad2" - on-primary: "#ffffff" - primary-hover: "#828fff" - primary-focus: "#5e69d1" - ink: "#f7f8f8" - ink-muted: "#d0d6e0" - ink-subtle: "#8a8f98" - ink-tertiary: "#62666d" - canvas: "#010102" - surface-1: "#0f1011" - surface-2: "#141516" - surface-3: "#18191a" - surface-4: "#191a1b" - hairline: "#23252a" - hairline-strong: "#34343a" - hairline-tertiary: "#3e3e44" - inverse-canvas: "#ffffff" - inverse-surface-1: "#f5f6f6" - inverse-surface-2: "#f6f7f7" - inverse-ink: "#000000" - brand-secure: "#7a7fad" - semantic-success: "#27a644" - semantic-overlay: "#000000" - -typography: - display-xl: - fontFamily: Linear Display - fontSize: 80px - fontWeight: 600 - lineHeight: 1.05 - letterSpacing: -3.0px - display-lg: - fontFamily: Linear Display - fontSize: 56px - fontWeight: 600 - lineHeight: 1.10 - letterSpacing: -1.8px - display-md: - fontFamily: Linear Display - fontSize: 40px - fontWeight: 600 - lineHeight: 1.15 - letterSpacing: -1.0px - headline: - fontFamily: Linear Display - fontSize: 28px - fontWeight: 600 - lineHeight: 1.20 - letterSpacing: -0.6px - card-title: - fontFamily: Linear Display - fontSize: 22px - fontWeight: 500 - lineHeight: 1.25 - letterSpacing: -0.4px - subhead: - fontFamily: Linear Display - fontSize: 20px - fontWeight: 400 - lineHeight: 1.40 - letterSpacing: -0.2px - body-lg: - fontFamily: Linear Text - fontSize: 18px - fontWeight: 400 - lineHeight: 1.50 - letterSpacing: -0.1px - body: - fontFamily: Linear Text - fontSize: 16px - fontWeight: 400 - lineHeight: 1.50 - letterSpacing: -0.05px - body-sm: - fontFamily: Linear Text - fontSize: 14px - fontWeight: 400 - lineHeight: 1.50 - letterSpacing: 0 - caption: - fontFamily: Linear Text - fontSize: 12px - fontWeight: 400 - lineHeight: 1.40 - letterSpacing: 0 - button: - fontFamily: Linear Text - fontSize: 14px - fontWeight: 500 - lineHeight: 1.20 - letterSpacing: 0 - eyebrow: - fontFamily: Linear Text - fontSize: 13px - fontWeight: 500 - lineHeight: 1.30 - letterSpacing: 0.4px - mono: - fontFamily: Linear Mono - fontSize: 13px - fontWeight: 400 - lineHeight: 1.50 - letterSpacing: 0 - -rounded: - xs: 4px - sm: 6px - md: 8px - lg: 12px - xl: 16px - xxl: 24px - pill: 9999px - full: 9999px - -spacing: - xxs: 4px - xs: 8px - sm: 12px - md: 16px - lg: 24px - xl: 32px - xxl: 48px - section: 96px - -components: - button-primary: - backgroundColor: "{colors.primary}" - textColor: "{colors.on-primary}" - typography: "{typography.button}" - rounded: "{rounded.md}" - padding: 8px 14px - button-primary-pressed: - backgroundColor: "{colors.primary-focus}" - textColor: "{colors.on-primary}" - typography: "{typography.button}" - rounded: "{rounded.md}" - button-primary-hover: - backgroundColor: "{colors.primary-hover}" - textColor: "{colors.on-primary}" - typography: "{typography.button}" - rounded: "{rounded.md}" - button-secondary: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.button}" - rounded: "{rounded.md}" - padding: 8px 14px - button-tertiary: - backgroundColor: "{colors.canvas}" - textColor: "{colors.ink}" - typography: "{typography.button}" - rounded: "{rounded.md}" - padding: 8px 14px - button-inverse: - backgroundColor: "{colors.inverse-canvas}" - textColor: "{colors.inverse-ink}" - typography: "{typography.button}" - rounded: "{rounded.md}" - padding: 8px 14px - pricing-card: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.body}" - rounded: "{rounded.lg}" - padding: 24px - pricing-card-featured: - backgroundColor: "{colors.surface-2}" - textColor: "{colors.ink}" - typography: "{typography.body}" - rounded: "{rounded.lg}" - padding: 24px - feature-card: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.body}" - rounded: "{rounded.lg}" - padding: 24px - product-screenshot-card: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.body}" - rounded: "{rounded.xl}" - padding: 24px - testimonial-card: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.body-lg}" - rounded: "{rounded.lg}" - padding: 32px - customer-logo-tile: - backgroundColor: "{colors.canvas}" - textColor: "{colors.ink-subtle}" - typography: "{typography.caption}" - rounded: "{rounded.xs}" - padding: 16px - text-input: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.body}" - rounded: "{rounded.md}" - padding: 8px 12px - text-input-focused: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.body}" - rounded: "{rounded.md}" - padding: 8px 12px - pricing-tab-default: - backgroundColor: "{colors.canvas}" - textColor: "{colors.ink-subtle}" - typography: "{typography.button}" - rounded: "{rounded.pill}" - padding: 6px 14px - pricing-tab-selected: - backgroundColor: "{colors.surface-2}" - textColor: "{colors.ink}" - typography: "{typography.button}" - rounded: "{rounded.pill}" - padding: 6px 14px - cta-banner: - backgroundColor: "{colors.surface-1}" - textColor: "{colors.ink}" - typography: "{typography.headline}" - rounded: "{rounded.lg}" - padding: 48px - changelog-row: - backgroundColor: "{colors.canvas}" - textColor: "{colors.ink}" - typography: "{typography.body}" - rounded: "{rounded.xs}" - padding: 24px 0 - status-badge: - backgroundColor: "{colors.surface-2}" - textColor: "{colors.ink-muted}" - typography: "{typography.caption}" - rounded: "{rounded.pill}" - padding: 2px 8px - top-nav: - backgroundColor: "{colors.canvas}" - textColor: "{colors.ink}" - typography: "{typography.body-sm}" - rounded: "{rounded.xs}" - height: 56px - footer: - backgroundColor: "{colors.canvas}" - textColor: "{colors.ink-subtle}" - typography: "{typography.caption}" - rounded: "{rounded.xs}" - padding: 64px 32px ---- - -## Overview - -Linear's marketing canvas is the deepest dark surface in this collection — `{colors.canvas}` is #010102, essentially pure black with a faint blue tint. On top sits a four-step surface ladder (`{colors.surface-1}` through `{colors.surface-4}`) for cards, panels, and lifted tiles, with hairline borders running from `{colors.hairline}` (#23252a) up through `{colors.hairline-strong}` and `{colors.hairline-tertiary}`. Light gray text (`{colors.ink}` #f7f8f8) carries the body and headlines. - -The single chromatic accent is **Linear lavender-blue** `{colors.primary}` (#5e6ad2) — used on the brand mark, focus rings, and the primary CTA button. A lighter hover state (`{colors.primary-hover}` #828fff) and a focus-tinted variant (`{colors.primary-focus}` #5e69d1) extend the same hue. Linear avoids saturated greens, oranges, reds, etc. on the marketing canvas — the only semantic color is `{colors.semantic-success}` (#27a644) for status pills and the rare success indicator. - -Display type runs Linear's custom sans (with `SF Pro Display` fallback) at weight 500–700 with negative letter-spacing scaling from -3.0px at 80px down to 0 at body. The body family is Linear's text cut, and a Linear Mono is reserved for code snippets in product screenshots. - -The page rhythm is **dense product screenshots** — Linear's marketing leads with high-fidelity captures of the product UI (issue list, project view, dashboard) framed in `{colors.surface-1}` panels with `{rounded.xl}` 16px corners. The chrome is intentionally minimal so the app screenshots can do the heavy lifting. - -**Key Characteristics:** -- **Dark-canvas marketing system** — `{colors.canvas}` (#010102) is the deepest dark in this collection. -- **Lavender-blue brand accent** (`{colors.primary}` #5e6ad2) — used scarcely on brand mark, focus, and the primary CTA. -- Four-step surface ladder (canvas → surface-1 → surface-2 → surface-3 → surface-4) carries hierarchy without shadow. -- Display tracking pulls aggressively negative (-3.0px at 80px); body holds at -0.05px. -- Cards use `{rounded.lg}` 12px corners with 1px hairline borders — never pill, rarely 16px. -- **Product UI screenshots** dominate the page. The marketing chrome is a dark frame for the app. -- No second chromatic color. No atmospheric gradients. No spotlight cards. - -## Colors - -> Source pages: linear.app (home), /intake, /pricing, /contact/sales, /build. - -### Brand & Accent -- **Lavender-Blue** ({colors.primary}): The signature Linear accent — primary CTA, brand mark, link emphasis. -- **Lavender Hover** ({colors.primary-hover}): Lighter lavender (#828fff) — hovered state of the primary CTA. -- **Lavender Focus** ({colors.primary-focus}): Focus-ring tint (#5e69d1) — focused inputs, focused buttons. -- **Brand Secure** ({colors.brand-secure}): Muted lavender-gray (#7a7fad) — used in "Linear Security" surfaces. - -### Surface -- **Canvas** ({colors.canvas}): Default page background — #010102, near-pure black with a faint blue tint. -- **Surface 1** ({colors.surface-1}): One step above canvas — feature cards, pricing cards, product screenshot panels. -- **Surface 2** ({colors.surface-2}): Two steps above — featured pricing card, hovered cards. -- **Surface 3** ({colors.surface-3}): Three steps above — line-tertiary backgrounds, sub-nav. -- **Surface 4** ({colors.surface-4}): Four steps above — bg-level-3, deepest lifted surface. -- **Hairline** ({colors.hairline}): 1px borders on cards and dividers. -- **Hairline Strong** ({colors.hairline-strong}): Stronger 1px borders — input focus rings. -- **Hairline Tertiary** ({colors.hairline-tertiary}): Tertiary borders for nested surfaces. -- **Inverse Canvas** ({colors.inverse-canvas}): Pure white — surface of the inverse pill CTA on a small set of section openers. -- **Inverse Surface 1** ({colors.inverse-surface-1}): One step above inverse canvas. -- **Inverse Surface 2** ({colors.inverse-surface-2}): Two steps above inverse canvas. - -### Text -- **Ink** ({colors.ink}): All headlines and emphasized body type — light gray #f7f8f8. -- **Ink Muted** ({colors.ink-muted}): Secondary type at #d0d6e0 — meta info on hero panels. -- **Ink Subtle** ({colors.ink-subtle}): Tertiary type at #8a8f98 — deselected pricing tabs, footer columns. -- **Ink Tertiary** ({colors.ink-tertiary}): Quaternary at #62666d — disabled, footnotes. - -### Semantic -- **Success Green** ({colors.semantic-success}): Status pills, success indicators. The only semantic color on marketing. -- **Overlay** ({colors.semantic-overlay}): Pure black overlay scrim for modals. - -## Typography - -### Font Family - -- **Linear Display** — Linear's custom display sans; fallback `SF Pro Display, -apple-system, system-ui, Segoe UI, Roboto`. Carries display-xl through subhead. -- **Linear Text** — Linear's custom text sans (a slightly different cut tuned for body sizes); same fallback stack. Carries body sizes, button labels, captions. -- **Linear Mono** — Linear's custom mono; fallback `ui-monospace, SF Mono, Menlo`. Used for code snippets in product screenshots and for status / ID tokens. - -The marketing surface treats Display and Text as one continuous voice; the family change is silent. - -### Hierarchy - -| Token | Size | Weight | Line Height | Letter Spacing | Use | -|---|---|---|---|---|---| -| `{typography.display-xl}` | 80px | 600 | 1.05 | -3.0px | Largest hero headline | -| `{typography.display-lg}` | 56px | 600 | 1.10 | -1.8px | Section opener headlines | -| `{typography.display-md}` | 40px | 600 | 1.15 | -1.0px | Sub-section headlines | -| `{typography.headline}` | 28px | 600 | 1.20 | -0.6px | Pricing tier titles, CTA banner heading | -| `{typography.card-title}` | 22px | 500 | 1.25 | -0.4px | Feature card title | -| `{typography.subhead}` | 20px | 400 | 1.40 | -0.2px | Lead body, intro paragraphs | -| `{typography.body-lg}` | 18px | 400 | 1.50 | -0.1px | Hero subhead, lead paragraphs | -| `{typography.body}` | 16px | 400 | 1.50 | -0.05px | Default body | -| `{typography.body-sm}` | 14px | 400 | 1.50 | 0 | Card body, footer columns | -| `{typography.caption}` | 12px | 400 | 1.40 | 0 | Captions, meta, status | -| `{typography.button}` | 14px | 500 | 1.20 | 0 | All button labels | -| `{typography.eyebrow}` | 13px | 500 | 1.30 | 0.4px | Section eyebrow (slight positive tracking) | -| `{typography.mono}` | 13px | 400 | 1.50 | 0 | Linear Mono for code in product screenshots | - -### Principles - -- **Aggressive negative tracking on display** (-3.0px at 80px ≈ 4% of size). -- **Single voice from display to body.** Display-xl at 600 → body at 400 — same family, narrower weights. -- **Eyebrow uses positive tracking** (+0.4px) — contrast against the negative-tracked display marks the eyebrow as taxonomy. -- **Mono only in code contexts.** Linear Mono lives inside product screenshots — not on marketing chrome. - -### Note on Font Substitutes - -Linear's custom typeface isn't publicly distributed; the documented fallback `SF Pro Display, -apple-system, system-ui` is the recommended substitute on macOS. For cross-platform implementation, **Inter** at weight 500 / 600 / 700 is the closest free substitute. **Geist Sans** is also viable. For mono, **JetBrains Mono** or **Geist Mono** at weight 400 closely approximates Linear Mono. - -## Layout - -### Spacing System - -- **Base unit**: 4px. -- **Tokens (front matter)**: `{spacing.xxs}` 4px · `{spacing.xs}` 8px · `{spacing.sm}` 12px · `{spacing.md}` 16px · `{spacing.lg}` 24px · `{spacing.xl}` 32px · `{spacing.xxl}` 48px · `{spacing.section}` 96px. -- Card interior padding: `{spacing.lg}` 24px on feature/pricing cards; `{spacing.xl}` 32px on testimonial cards; `{spacing.xxl}` 48px on CTA banners. -- Pill button padding: 8px vertical · 14px horizontal — Linear's compact button spec. -- Form input padding: 8px vertical · 12px horizontal. - -### Grid & Container - -- Max content width sits around 1280px. -- Card grids are 3-up at desktop, 2-up at tablet, 1-up at mobile. -- Pricing tier grid is 3-up; comparison strip below shows checkmarks per tier. -- Product screenshot panels span full content width — they're the protagonist. - -### Whitespace Philosophy - -The dark canvas IS the whitespace. Sections separate by lift onto surface-1 panels, not by gaps in white. Within a panel, generous `{spacing.lg}` 24px gaps between content blocks; `{spacing.section}` 96px between sections. - -## Elevation & Depth - -| Level | Treatment | Use | -|---|---|---| -| 0 (flat) | No shadow, no border | Default for body type, hero text, footer | -| 1 (charcoal lift) | `{colors.surface-1}` background on canvas, 1px `{colors.hairline}` | Default cards, product panels | -| 2 (surface-2 lift) | `{colors.surface-2}` background, 1px `{colors.hairline-strong}` | Featured pricing card, hovered cards | -| 3 (surface-3 lift) | `{colors.surface-3}` background | Sub-nav, dropdown menus | -| 4 (focus ring) | 2px `{colors.primary-focus}` outline at 50% opacity | Focused input, focused button | - -Linear's depth is carried by surface ladder + hairline borders. The brand resists drop shadows on dark almost entirely. - -### Decorative Depth - -- **Product UI screenshots** dominate as decorative depth. -- **No atmospheric gradients, no spotlight cards.** -- **Subtle white edge highlight** on the top edge of lifted panels — gives the dark surface a faint "pixel rendered" feel. - -## Shapes - -### Border Radius Scale - -| Token | Value | Use | -|---|---|---| -| `{rounded.xs}` | 4px | Small chips, status badges | -| `{rounded.sm}` | 6px | Inline tags | -| `{rounded.md}` | 8px | All buttons, form inputs | -| `{rounded.lg}` | 12px | Pricing cards, feature cards, testimonial cards | -| `{rounded.xl}` | 16px | Product screenshot panels | -| `{rounded.xxl}` | 24px | Oversized CTA banners (rare) | -| `{rounded.pill}` | 9999px | Pricing tab toggles, status pills | -| `{rounded.full}` | 9999px | Avatar circles | - -### Photography & Illustration Geometry - -- Product UI screenshots dominate; they sit in `{rounded.xl}` 16px tiles with `{spacing.lg}` 24px outer padding. -- Customer logo tiles render at small sizes (~24px logo height) on `{colors.canvas}` with no border. -- Avatar circles in testimonial cards use `{rounded.full}` at 32–40px sizes. - -## Components - -### Buttons - -**`button-primary`** — Lavender CTA. The default primary CTA across all pages. -- Background `{colors.primary}`, text `{colors.on-primary}`, type `{typography.button}`, padding 8px 14px, rounded `{rounded.md}`. -- Pressed state lives in `button-primary-pressed` (background shifts to `{colors.primary-focus}`). -- Hover state lives in `button-primary-hover` (background shifts to `{colors.primary-hover}` lighter lavender). - -**`button-secondary`** — Charcoal button. Used for secondary CTAs ("Sign in", "Read changelog"). -- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.button}`, padding 8px 14px, rounded `{rounded.md}`. 1px `{colors.hairline}` border. - -**`button-tertiary`** — Plain text button. -- Background `{colors.canvas}`, text `{colors.ink}`, type `{typography.button}`, rounded `{rounded.md}`, padding 8px 14px. - -**`button-inverse`** — White-on-dark inverse CTA. -- Background `{colors.inverse-canvas}`, text `{colors.inverse-ink}`, type `{typography.button}`, rounded `{rounded.md}`, padding 8px 14px. - -### Pricing Tabs - -**`pricing-tab-default`** + **`pricing-tab-selected`** — Pill-toggle on `/pricing`. -- Default: `{colors.canvas}` background, `{colors.ink-subtle}` text, rounded `{rounded.pill}`, padding 6px 14px. -- Selected: `{colors.surface-2}` background, `{colors.ink}` text — selected = surface lift. - -### Cards & Containers - -**`pricing-card`** — Each tier on `/pricing`. -- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.lg}`, padding 24px. 1px `{colors.hairline}` border. - -**`pricing-card-featured`** — Recommended tier — surface lift to surface-2. -- Background `{colors.surface-2}`, otherwise identical structure. - -**`feature-card`** — Generic feature highlight tile. -- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.lg}`, padding 24px. - -**`product-screenshot-card`** — The dominant card type — frames a high-fidelity Linear app UI screenshot. -- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.xl}`, padding 24px. - -**`testimonial-card`** — Customer quote with avatar + name + role. -- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body-lg}`, rounded `{rounded.lg}`, padding 32px. - -**`customer-logo-tile`** — Small tile in the customer marquee. -- Background `{colors.canvas}`, text `{colors.ink-subtle}`, type `{typography.caption}`, rounded `{rounded.xs}`, padding 16px. - -**`cta-banner`** — Closing CTA panel near page bottom. -- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.headline}`, rounded `{rounded.lg}`, padding 48px. - -### Inputs & Forms - -**`text-input`** + **`text-input-focused`** — Form fields on `/contact/sales` and signup overlays. -- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.md}`, padding 8px 12px. -- Focused state retains the same surface; the focus ring is a 2px `{colors.primary-focus}` outline at 50% opacity. - -### Status & Build Page - -**`changelog-row`** — Each row in `/build` (changelog page) listing version, date, and changes. -- Background `{colors.canvas}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.xs}`, padding 24px 0. 1px `{colors.hairline}` bottom rule. - -**`status-badge`** — Small status pill. -- Background `{colors.surface-2}`, text `{colors.ink-muted}`, type `{typography.caption}`, rounded `{rounded.pill}`, padding 2px 8px. - -### Navigation - -**`top-nav`** — Sticky dark bar with the Linear wordmark left, primary nav links centered, and a `button-secondary` ("Sign in") + `button-primary` ("Get started") pair right. -- Background `{colors.canvas}`, text `{colors.ink}`, type `{typography.body-sm}`, height 56px. - -### Footer - -**`footer`** — Dense link grid on `{colors.canvas}` with the Linear wordmark left. -- Background `{colors.canvas}`, text `{colors.ink-subtle}`, type `{typography.caption}`, padding 64px 32px. - -## Do's and Don'ts - -### Do - -- Reserve `{colors.canvas}` (#010102) as the system's anchor surface — the faint blue tint is intentional. -- Use `{colors.primary}` lavender ONLY for: brand mark, primary CTA, focus ring, link emphasis. -- Use the four-step surface ladder for hierarchy. Avoid skipping levels. -- Pair display weight 600 with body weight 400 — Linear resists 700+ display weights. -- Apply negative letter-spacing aggressively on display. -- Use product UI screenshots as the protagonist of every section. -- Compose CTAs as `{rounded.md}` 8px corners. - -### Don't - -- Don't ship a light-mode marketing page. -- Don't use lavender as a section background or card fill. -- Don't introduce a second chromatic accent (orange, pink, green for marketing). -- Don't add atmospheric gradients or spotlight cards. -- Don't pill-round CTAs. -- Don't use `#000000` true black as the canvas. -- Don't combine multiple bright accents in product screenshot mockups. - -## Responsive Behavior - -### Breakpoints - -| Name | Width | Key Changes | -|---|---|---| -| Desktop-XL | 1440px | Default desktop layout | -| Desktop | 1280px | Card grid 3-up maintained | -| Tablet | 1024px | Card grid 3-up → 2-up | -| Mobile-Lg | 768px | Pricing comparison becomes accordion; nav hamburger | -| Mobile | 480px | Single-column; display-xl scales 80px → ~36px | - -### Touch Targets - -- CTAs hold ≥40px tap height across viewports. -- Pricing tab pills hold ≥36px tap height; touch viewports grow to ≥44px. -- Form inputs hold ≥44px tap target on touch. - -### Collapsing Strategy - -- **Top nav**: links collapse to hamburger below 768px. -- **Card grids**: 3-up → 2-up at 1024px → 1-up below 768px. -- **Pricing comparison**: per-tier accordion below 768px. -- **Display type**: `{typography.display-xl}` 80px scales toward `{typography.display-md}` 40px on mobile. - -### Image Behavior - -- Product UI screenshots maintain aspect ratio and never crop. -- Customer logos in the marquee may collapse from 6-up to 3-up below 768px. - -## Iteration Guide - -1. Focus on ONE component at a time and reference it by its `components:` token name. -2. When introducing a section, decide first which surface lift it lives on. -3. Default body to `{typography.body}` at weight 400. -4. Run `npx @google/design.md lint DESIGN.md` after edits. -5. Add new variants as separate component entries. -6. Treat lavender as scarce: brand mark, primary CTA, focus, link emphasis. -7. Lead every section with a product UI screenshot. - -## Known Gaps - -- The four-step surface ladder values are extracted directly from Linear's `--color-bg-level-3`, `--color-line-tint`, etc. CSS variables; they are Linear's canonical surface spec. -- Form-field error and validation styling is not visible on the inspected pages. -- Light mode is not documented because the marketing site does not ship a light theme. -- Linear's actual product UI uses a richer color-tag palette (red, orange, yellow, green, blue, purple) for issue priorities and project labels — those colors live in the in-product surfaces shown in mockups. -- The custom display, text, and mono families are proprietary; an open-source substitute is acceptable. +--- +version: alpha +name: Linear +description: "A near-black product-focused marketing canvas built around #010102 (the deepest dark surface of any tool in this collection), light gray text (#f7f8f8), and the signature Linear lavender-blue (#5e6ad2) used as the single chromatic accent. The system reads as software-craft documentation: dense, technical, and quietly luxurious. Display type is set in the Linear custom sans (SF Pro Display fallback) at 500–700 with measured negative tracking. Cards live as charcoal panels (#0f1011) with hairline borders. The accent lavender appears on the brand mark, focus rings, and a few intentional CTAs — never decoratively. Page rhythm leans on product UI screenshots framed in dark panels rather than atmospheric color." + +colors: + primary: "#5e6ad2" + on-primary: "#ffffff" + primary-hover: "#828fff" + primary-focus: "#5e69d1" + ink: "#f7f8f8" + ink-muted: "#d0d6e0" + ink-subtle: "#8a8f98" + ink-tertiary: "#62666d" + canvas: "#010102" + surface-1: "#0f1011" + surface-2: "#141516" + surface-3: "#18191a" + surface-4: "#191a1b" + hairline: "#23252a" + hairline-strong: "#34343a" + hairline-tertiary: "#3e3e44" + inverse-canvas: "#ffffff" + inverse-surface-1: "#f5f6f6" + inverse-surface-2: "#f6f7f7" + inverse-ink: "#000000" + brand-secure: "#7a7fad" + semantic-success: "#27a644" + semantic-overlay: "#000000" + +typography: + display-xl: + fontFamily: Linear Display + fontSize: 80px + fontWeight: 600 + lineHeight: 1.05 + letterSpacing: -3.0px + display-lg: + fontFamily: Linear Display + fontSize: 56px + fontWeight: 600 + lineHeight: 1.10 + letterSpacing: -1.8px + display-md: + fontFamily: Linear Display + fontSize: 40px + fontWeight: 600 + lineHeight: 1.15 + letterSpacing: -1.0px + headline: + fontFamily: Linear Display + fontSize: 28px + fontWeight: 600 + lineHeight: 1.20 + letterSpacing: -0.6px + card-title: + fontFamily: Linear Display + fontSize: 22px + fontWeight: 500 + lineHeight: 1.25 + letterSpacing: -0.4px + subhead: + fontFamily: Linear Display + fontSize: 20px + fontWeight: 400 + lineHeight: 1.40 + letterSpacing: -0.2px + body-lg: + fontFamily: Linear Text + fontSize: 18px + fontWeight: 400 + lineHeight: 1.50 + letterSpacing: -0.1px + body: + fontFamily: Linear Text + fontSize: 16px + fontWeight: 400 + lineHeight: 1.50 + letterSpacing: -0.05px + body-sm: + fontFamily: Linear Text + fontSize: 14px + fontWeight: 400 + lineHeight: 1.50 + letterSpacing: 0 + caption: + fontFamily: Linear Text + fontSize: 12px + fontWeight: 400 + lineHeight: 1.40 + letterSpacing: 0 + button: + fontFamily: Linear Text + fontSize: 14px + fontWeight: 500 + lineHeight: 1.20 + letterSpacing: 0 + eyebrow: + fontFamily: Linear Text + fontSize: 13px + fontWeight: 500 + lineHeight: 1.30 + letterSpacing: 0.4px + mono: + fontFamily: Linear Mono + fontSize: 13px + fontWeight: 400 + lineHeight: 1.50 + letterSpacing: 0 + +rounded: + xs: 4px + sm: 6px + md: 8px + lg: 12px + xl: 16px + xxl: 24px + pill: 9999px + full: 9999px + +spacing: + xxs: 4px + xs: 8px + sm: 12px + md: 16px + lg: 24px + xl: 32px + xxl: 48px + section: 96px + +components: + button-primary: + backgroundColor: "{colors.primary}" + textColor: "{colors.on-primary}" + typography: "{typography.button}" + rounded: "{rounded.md}" + padding: 8px 14px + button-primary-pressed: + backgroundColor: "{colors.primary-focus}" + textColor: "{colors.on-primary}" + typography: "{typography.button}" + rounded: "{rounded.md}" + button-primary-hover: + backgroundColor: "{colors.primary-hover}" + textColor: "{colors.on-primary}" + typography: "{typography.button}" + rounded: "{rounded.md}" + button-secondary: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.button}" + rounded: "{rounded.md}" + padding: 8px 14px + button-tertiary: + backgroundColor: "{colors.canvas}" + textColor: "{colors.ink}" + typography: "{typography.button}" + rounded: "{rounded.md}" + padding: 8px 14px + button-inverse: + backgroundColor: "{colors.inverse-canvas}" + textColor: "{colors.inverse-ink}" + typography: "{typography.button}" + rounded: "{rounded.md}" + padding: 8px 14px + pricing-card: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.body}" + rounded: "{rounded.lg}" + padding: 24px + pricing-card-featured: + backgroundColor: "{colors.surface-2}" + textColor: "{colors.ink}" + typography: "{typography.body}" + rounded: "{rounded.lg}" + padding: 24px + feature-card: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.body}" + rounded: "{rounded.lg}" + padding: 24px + product-screenshot-card: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.body}" + rounded: "{rounded.xl}" + padding: 24px + testimonial-card: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.body-lg}" + rounded: "{rounded.lg}" + padding: 32px + customer-logo-tile: + backgroundColor: "{colors.canvas}" + textColor: "{colors.ink-subtle}" + typography: "{typography.caption}" + rounded: "{rounded.xs}" + padding: 16px + text-input: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.body}" + rounded: "{rounded.md}" + padding: 8px 12px + text-input-focused: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.body}" + rounded: "{rounded.md}" + padding: 8px 12px + pricing-tab-default: + backgroundColor: "{colors.canvas}" + textColor: "{colors.ink-subtle}" + typography: "{typography.button}" + rounded: "{rounded.pill}" + padding: 6px 14px + pricing-tab-selected: + backgroundColor: "{colors.surface-2}" + textColor: "{colors.ink}" + typography: "{typography.button}" + rounded: "{rounded.pill}" + padding: 6px 14px + cta-banner: + backgroundColor: "{colors.surface-1}" + textColor: "{colors.ink}" + typography: "{typography.headline}" + rounded: "{rounded.lg}" + padding: 48px + changelog-row: + backgroundColor: "{colors.canvas}" + textColor: "{colors.ink}" + typography: "{typography.body}" + rounded: "{rounded.xs}" + padding: 24px 0 + status-badge: + backgroundColor: "{colors.surface-2}" + textColor: "{colors.ink-muted}" + typography: "{typography.caption}" + rounded: "{rounded.pill}" + padding: 2px 8px + top-nav: + backgroundColor: "{colors.canvas}" + textColor: "{colors.ink}" + typography: "{typography.body-sm}" + rounded: "{rounded.xs}" + height: 56px + footer: + backgroundColor: "{colors.canvas}" + textColor: "{colors.ink-subtle}" + typography: "{typography.caption}" + rounded: "{rounded.xs}" + padding: 64px 32px +--- + +## Overview + +Linear's marketing canvas is the deepest dark surface in this collection — `{colors.canvas}` is #010102, essentially pure black with a faint blue tint. On top sits a four-step surface ladder (`{colors.surface-1}` through `{colors.surface-4}`) for cards, panels, and lifted tiles, with hairline borders running from `{colors.hairline}` (#23252a) up through `{colors.hairline-strong}` and `{colors.hairline-tertiary}`. Light gray text (`{colors.ink}` #f7f8f8) carries the body and headlines. + +The single chromatic accent is **Linear lavender-blue** `{colors.primary}` (#5e6ad2) — used on the brand mark, focus rings, and the primary CTA button. A lighter hover state (`{colors.primary-hover}` #828fff) and a focus-tinted variant (`{colors.primary-focus}` #5e69d1) extend the same hue. Linear avoids saturated greens, oranges, reds, etc. on the marketing canvas — the only semantic color is `{colors.semantic-success}` (#27a644) for status pills and the rare success indicator. + +Display type runs Linear's custom sans (with `SF Pro Display` fallback) at weight 500–700 with negative letter-spacing scaling from -3.0px at 80px down to 0 at body. The body family is Linear's text cut, and a Linear Mono is reserved for code snippets in product screenshots. + +The page rhythm is **dense product screenshots** — Linear's marketing leads with high-fidelity captures of the product UI (issue list, project view, dashboard) framed in `{colors.surface-1}` panels with `{rounded.xl}` 16px corners. The chrome is intentionally minimal so the app screenshots can do the heavy lifting. + +**Key Characteristics:** +- **Dark-canvas marketing system** — `{colors.canvas}` (#010102) is the deepest dark in this collection. +- **Lavender-blue brand accent** (`{colors.primary}` #5e6ad2) — used scarcely on brand mark, focus, and the primary CTA. +- Four-step surface ladder (canvas → surface-1 → surface-2 → surface-3 → surface-4) carries hierarchy without shadow. +- Display tracking pulls aggressively negative (-3.0px at 80px); body holds at -0.05px. +- Cards use `{rounded.lg}` 12px corners with 1px hairline borders — never pill, rarely 16px. +- **Product UI screenshots** dominate the page. The marketing chrome is a dark frame for the app. +- No second chromatic color. No atmospheric gradients. No spotlight cards. + +## Colors + +> Source pages: linear.app (home), /intake, /pricing, /contact/sales, /build. + +### Brand & Accent +- **Lavender-Blue** ({colors.primary}): The signature Linear accent — primary CTA, brand mark, link emphasis. +- **Lavender Hover** ({colors.primary-hover}): Lighter lavender (#828fff) — hovered state of the primary CTA. +- **Lavender Focus** ({colors.primary-focus}): Focus-ring tint (#5e69d1) — focused inputs, focused buttons. +- **Brand Secure** ({colors.brand-secure}): Muted lavender-gray (#7a7fad) — used in "Linear Security" surfaces. + +### Surface +- **Canvas** ({colors.canvas}): Default page background — #010102, near-pure black with a faint blue tint. +- **Surface 1** ({colors.surface-1}): One step above canvas — feature cards, pricing cards, product screenshot panels. +- **Surface 2** ({colors.surface-2}): Two steps above — featured pricing card, hovered cards. +- **Surface 3** ({colors.surface-3}): Three steps above — line-tertiary backgrounds, sub-nav. +- **Surface 4** ({colors.surface-4}): Four steps above — bg-level-3, deepest lifted surface. +- **Hairline** ({colors.hairline}): 1px borders on cards and dividers. +- **Hairline Strong** ({colors.hairline-strong}): Stronger 1px borders — input focus rings. +- **Hairline Tertiary** ({colors.hairline-tertiary}): Tertiary borders for nested surfaces. +- **Inverse Canvas** ({colors.inverse-canvas}): Pure white — surface of the inverse pill CTA on a small set of section openers. +- **Inverse Surface 1** ({colors.inverse-surface-1}): One step above inverse canvas. +- **Inverse Surface 2** ({colors.inverse-surface-2}): Two steps above inverse canvas. + +### Text +- **Ink** ({colors.ink}): All headlines and emphasized body type — light gray #f7f8f8. +- **Ink Muted** ({colors.ink-muted}): Secondary type at #d0d6e0 — meta info on hero panels. +- **Ink Subtle** ({colors.ink-subtle}): Tertiary type at #8a8f98 — deselected pricing tabs, footer columns. +- **Ink Tertiary** ({colors.ink-tertiary}): Quaternary at #62666d — disabled, footnotes. + +### Semantic +- **Success Green** ({colors.semantic-success}): Status pills, success indicators. The only semantic color on marketing. +- **Overlay** ({colors.semantic-overlay}): Pure black overlay scrim for modals. + +## Typography + +### Font Family + +- **Linear Display** — Linear's custom display sans; fallback `SF Pro Display, -apple-system, system-ui, Segoe UI, Roboto`. Carries display-xl through subhead. +- **Linear Text** — Linear's custom text sans (a slightly different cut tuned for body sizes); same fallback stack. Carries body sizes, button labels, captions. +- **Linear Mono** — Linear's custom mono; fallback `ui-monospace, SF Mono, Menlo`. Used for code snippets in product screenshots and for status / ID tokens. + +The marketing surface treats Display and Text as one continuous voice; the family change is silent. + +### Hierarchy + +| Token | Size | Weight | Line Height | Letter Spacing | Use | +|---|---|---|---|---|---| +| `{typography.display-xl}` | 80px | 600 | 1.05 | -3.0px | Largest hero headline | +| `{typography.display-lg}` | 56px | 600 | 1.10 | -1.8px | Section opener headlines | +| `{typography.display-md}` | 40px | 600 | 1.15 | -1.0px | Sub-section headlines | +| `{typography.headline}` | 28px | 600 | 1.20 | -0.6px | Pricing tier titles, CTA banner heading | +| `{typography.card-title}` | 22px | 500 | 1.25 | -0.4px | Feature card title | +| `{typography.subhead}` | 20px | 400 | 1.40 | -0.2px | Lead body, intro paragraphs | +| `{typography.body-lg}` | 18px | 400 | 1.50 | -0.1px | Hero subhead, lead paragraphs | +| `{typography.body}` | 16px | 400 | 1.50 | -0.05px | Default body | +| `{typography.body-sm}` | 14px | 400 | 1.50 | 0 | Card body, footer columns | +| `{typography.caption}` | 12px | 400 | 1.40 | 0 | Captions, meta, status | +| `{typography.button}` | 14px | 500 | 1.20 | 0 | All button labels | +| `{typography.eyebrow}` | 13px | 500 | 1.30 | 0.4px | Section eyebrow (slight positive tracking) | +| `{typography.mono}` | 13px | 400 | 1.50 | 0 | Linear Mono for code in product screenshots | + +### Principles + +- **Aggressive negative tracking on display** (-3.0px at 80px ≈ 4% of size). +- **Single voice from display to body.** Display-xl at 600 → body at 400 — same family, narrower weights. +- **Eyebrow uses positive tracking** (+0.4px) — contrast against the negative-tracked display marks the eyebrow as taxonomy. +- **Mono only in code contexts.** Linear Mono lives inside product screenshots — not on marketing chrome. + +### Note on Font Substitutes + +Linear's custom typeface isn't publicly distributed; the documented fallback `SF Pro Display, -apple-system, system-ui` is the recommended substitute on macOS. For cross-platform implementation, **Inter** at weight 500 / 600 / 700 is the closest free substitute. **Geist Sans** is also viable. For mono, **JetBrains Mono** or **Geist Mono** at weight 400 closely approximates Linear Mono. + +## Layout + +### Spacing System + +- **Base unit**: 4px. +- **Tokens (front matter)**: `{spacing.xxs}` 4px · `{spacing.xs}` 8px · `{spacing.sm}` 12px · `{spacing.md}` 16px · `{spacing.lg}` 24px · `{spacing.xl}` 32px · `{spacing.xxl}` 48px · `{spacing.section}` 96px. +- Card interior padding: `{spacing.lg}` 24px on feature/pricing cards; `{spacing.xl}` 32px on testimonial cards; `{spacing.xxl}` 48px on CTA banners. +- Pill button padding: 8px vertical · 14px horizontal — Linear's compact button spec. +- Form input padding: 8px vertical · 12px horizontal. + +### Grid & Container + +- Max content width sits around 1280px. +- Card grids are 3-up at desktop, 2-up at tablet, 1-up at mobile. +- Pricing tier grid is 3-up; comparison strip below shows checkmarks per tier. +- Product screenshot panels span full content width — they're the protagonist. + +### Whitespace Philosophy + +The dark canvas IS the whitespace. Sections separate by lift onto surface-1 panels, not by gaps in white. Within a panel, generous `{spacing.lg}` 24px gaps between content blocks; `{spacing.section}` 96px between sections. + +## Elevation & Depth + +| Level | Treatment | Use | +|---|---|---| +| 0 (flat) | No shadow, no border | Default for body type, hero text, footer | +| 1 (charcoal lift) | `{colors.surface-1}` background on canvas, 1px `{colors.hairline}` | Default cards, product panels | +| 2 (surface-2 lift) | `{colors.surface-2}` background, 1px `{colors.hairline-strong}` | Featured pricing card, hovered cards | +| 3 (surface-3 lift) | `{colors.surface-3}` background | Sub-nav, dropdown menus | +| 4 (focus ring) | 2px `{colors.primary-focus}` outline at 50% opacity | Focused input, focused button | + +Linear's depth is carried by surface ladder + hairline borders. The brand resists drop shadows on dark almost entirely. + +### Decorative Depth + +- **Product UI screenshots** dominate as decorative depth. +- **No atmospheric gradients, no spotlight cards.** +- **Subtle white edge highlight** on the top edge of lifted panels — gives the dark surface a faint "pixel rendered" feel. + +## Shapes + +### Border Radius Scale + +| Token | Value | Use | +|---|---|---| +| `{rounded.xs}` | 4px | Small chips, status badges | +| `{rounded.sm}` | 6px | Inline tags | +| `{rounded.md}` | 8px | All buttons, form inputs | +| `{rounded.lg}` | 12px | Pricing cards, feature cards, testimonial cards | +| `{rounded.xl}` | 16px | Product screenshot panels | +| `{rounded.xxl}` | 24px | Oversized CTA banners (rare) | +| `{rounded.pill}` | 9999px | Pricing tab toggles, status pills | +| `{rounded.full}` | 9999px | Avatar circles | + +### Photography & Illustration Geometry + +- Product UI screenshots dominate; they sit in `{rounded.xl}` 16px tiles with `{spacing.lg}` 24px outer padding. +- Customer logo tiles render at small sizes (~24px logo height) on `{colors.canvas}` with no border. +- Avatar circles in testimonial cards use `{rounded.full}` at 32–40px sizes. + +## Components + +### Buttons + +**`button-primary`** — Lavender CTA. The default primary CTA across all pages. +- Background `{colors.primary}`, text `{colors.on-primary}`, type `{typography.button}`, padding 8px 14px, rounded `{rounded.md}`. +- Pressed state lives in `button-primary-pressed` (background shifts to `{colors.primary-focus}`). +- Hover state lives in `button-primary-hover` (background shifts to `{colors.primary-hover}` lighter lavender). + +**`button-secondary`** — Charcoal button. Used for secondary CTAs ("Sign in", "Read changelog"). +- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.button}`, padding 8px 14px, rounded `{rounded.md}`. 1px `{colors.hairline}` border. + +**`button-tertiary`** — Plain text button. +- Background `{colors.canvas}`, text `{colors.ink}`, type `{typography.button}`, rounded `{rounded.md}`, padding 8px 14px. + +**`button-inverse`** — White-on-dark inverse CTA. +- Background `{colors.inverse-canvas}`, text `{colors.inverse-ink}`, type `{typography.button}`, rounded `{rounded.md}`, padding 8px 14px. + +### Pricing Tabs + +**`pricing-tab-default`** + **`pricing-tab-selected`** — Pill-toggle on `/pricing`. +- Default: `{colors.canvas}` background, `{colors.ink-subtle}` text, rounded `{rounded.pill}`, padding 6px 14px. +- Selected: `{colors.surface-2}` background, `{colors.ink}` text — selected = surface lift. + +### Cards & Containers + +**`pricing-card`** — Each tier on `/pricing`. +- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.lg}`, padding 24px. 1px `{colors.hairline}` border. + +**`pricing-card-featured`** — Recommended tier — surface lift to surface-2. +- Background `{colors.surface-2}`, otherwise identical structure. + +**`feature-card`** — Generic feature highlight tile. +- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.lg}`, padding 24px. + +**`product-screenshot-card`** — The dominant card type — frames a high-fidelity Linear app UI screenshot. +- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.xl}`, padding 24px. + +**`testimonial-card`** — Customer quote with avatar + name + role. +- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body-lg}`, rounded `{rounded.lg}`, padding 32px. + +**`customer-logo-tile`** — Small tile in the customer marquee. +- Background `{colors.canvas}`, text `{colors.ink-subtle}`, type `{typography.caption}`, rounded `{rounded.xs}`, padding 16px. + +**`cta-banner`** — Closing CTA panel near page bottom. +- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.headline}`, rounded `{rounded.lg}`, padding 48px. + +### Inputs & Forms + +**`text-input`** + **`text-input-focused`** — Form fields on `/contact/sales` and signup overlays. +- Background `{colors.surface-1}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.md}`, padding 8px 12px. +- Focused state retains the same surface; the focus ring is a 2px `{colors.primary-focus}` outline at 50% opacity. + +### Status & Build Page + +**`changelog-row`** — Each row in `/build` (changelog page) listing version, date, and changes. +- Background `{colors.canvas}`, text `{colors.ink}`, type `{typography.body}`, rounded `{rounded.xs}`, padding 24px 0. 1px `{colors.hairline}` bottom rule. + +**`status-badge`** — Small status pill. +- Background `{colors.surface-2}`, text `{colors.ink-muted}`, type `{typography.caption}`, rounded `{rounded.pill}`, padding 2px 8px. + +### Navigation + +**`top-nav`** — Sticky dark bar with the Linear wordmark left, primary nav links centered, and a `button-secondary` ("Sign in") + `button-primary` ("Get started") pair right. +- Background `{colors.canvas}`, text `{colors.ink}`, type `{typography.body-sm}`, height 56px. + +### Footer + +**`footer`** — Dense link grid on `{colors.canvas}` with the Linear wordmark left. +- Background `{colors.canvas}`, text `{colors.ink-subtle}`, type `{typography.caption}`, padding 64px 32px. + +## Do's and Don'ts + +### Do + +- Reserve `{colors.canvas}` (#010102) as the system's anchor surface — the faint blue tint is intentional. +- Use `{colors.primary}` lavender ONLY for: brand mark, primary CTA, focus ring, link emphasis. +- Use the four-step surface ladder for hierarchy. Avoid skipping levels. +- Pair display weight 600 with body weight 400 — Linear resists 700+ display weights. +- Apply negative letter-spacing aggressively on display. +- Use product UI screenshots as the protagonist of every section. +- Compose CTAs as `{rounded.md}` 8px corners. + +### Don't + +- Don't ship a light-mode marketing page. +- Don't use lavender as a section background or card fill. +- Don't introduce a second chromatic accent (orange, pink, green for marketing). +- Don't add atmospheric gradients or spotlight cards. +- Don't pill-round CTAs. +- Don't use `#000000` true black as the canvas. +- Don't combine multiple bright accents in product screenshot mockups. + +## Responsive Behavior + +### Breakpoints + +| Name | Width | Key Changes | +|---|---|---| +| Desktop-XL | 1440px | Default desktop layout | +| Desktop | 1280px | Card grid 3-up maintained | +| Tablet | 1024px | Card grid 3-up → 2-up | +| Mobile-Lg | 768px | Pricing comparison becomes accordion; nav hamburger | +| Mobile | 480px | Single-column; display-xl scales 80px → ~36px | + +### Touch Targets + +- CTAs hold ≥40px tap height across viewports. +- Pricing tab pills hold ≥36px tap height; touch viewports grow to ≥44px. +- Form inputs hold ≥44px tap target on touch. + +### Collapsing Strategy + +- **Top nav**: links collapse to hamburger below 768px. +- **Card grids**: 3-up → 2-up at 1024px → 1-up below 768px. +- **Pricing comparison**: per-tier accordion below 768px. +- **Display type**: `{typography.display-xl}` 80px scales toward `{typography.display-md}` 40px on mobile. + +### Image Behavior + +- Product UI screenshots maintain aspect ratio and never crop. +- Customer logos in the marquee may collapse from 6-up to 3-up below 768px. + +## Iteration Guide + +1. Focus on ONE component at a time and reference it by its `components:` token name. +2. When introducing a section, decide first which surface lift it lives on. +3. Default body to `{typography.body}` at weight 400. +4. Run `npx @google/design.md lint DESIGN.md` after edits. +5. Add new variants as separate component entries. +6. Treat lavender as scarce: brand mark, primary CTA, focus, link emphasis. +7. Lead every section with a product UI screenshot. + +## Known Gaps + +- The four-step surface ladder values are extracted directly from Linear's `--color-bg-level-3`, `--color-line-tint`, etc. CSS variables; they are Linear's canonical surface spec. +- Form-field error and validation styling is not visible on the inspected pages. +- Light mode is not documented because the marketing site does not ship a light theme. +- Linear's actual product UI uses a richer color-tag palette (red, orange, yellow, green, blue, purple) for issue priorities and project labels — those colors live in the in-product surfaces shown in mockups. +- The custom display, text, and mono families are proprietary; an open-source substitute is acceptable. diff --git a/marketing/apify-research-report.md b/marketing/apify-research-report.md index c6ce744..b0edc2a 100644 --- a/marketing/apify-research-report.md +++ b/marketing/apify-research-report.md @@ -1,25 +1,25 @@ -# QRMaster Content Research (Powered by Apify) - -## 💆 Spas & Wellness Centers -- **Core Use Cases:** - - **Seamless Booking:** QR codes on posters or reception desks for instant appointment scheduling. - - **Digital Guest Intake:** Contactless check-in via QR-linked intake forms to enhance safety and privacy. - - **Menu of Services:** Dynamic digital menus allowing for easy service selection without physical pamphlets. - - **Reviews & Feedback:** "Scan to Rate" prompts on mirrors or checkout to boost TripAdvisor and Google ratings. - -## 💄 Beauty Salons -- **Core Use Cases:** - - **Portfolio Showcasing:** QR codes at styling stations leading to "before and after" galleries on social media. - - **Loyalty Program:** Instant sign-up for digital reward systems upon scan. - - **Social Sharing:** "Scan to Tag Us" with integrated Instagram/TikTok handles to drive organic reach. - - **Product Upsell:** QR codes on retail display shelves linking to product tutorials and educational content. - -## 💈 Barbershops -- **Core Use Cases:** - - **Smart Waitlists:** Scan to join the queue from outside the shop, reducing crowded waiting areas. - - **Tip-to-Tap Integration:** Simplified tipping through QR leading directly to payment apps. - - **Aftercare Sales:** Selling hair waxes or beard oils through QR codes on receipts for easy re-ordering. - - **Community Building:** Linking to local events or barbershop blogs to foster neighborhood presence. - ---- -*Next Steps: Deep-diving into the remaining 40 industries to generate specific marketing content.* +# QRMaster Content Research (Powered by Apify) + +## 💆 Spas & Wellness Centers +- **Core Use Cases:** + - **Seamless Booking:** QR codes on posters or reception desks for instant appointment scheduling. + - **Digital Guest Intake:** Contactless check-in via QR-linked intake forms to enhance safety and privacy. + - **Menu of Services:** Dynamic digital menus allowing for easy service selection without physical pamphlets. + - **Reviews & Feedback:** "Scan to Rate" prompts on mirrors or checkout to boost TripAdvisor and Google ratings. + +## 💄 Beauty Salons +- **Core Use Cases:** + - **Portfolio Showcasing:** QR codes at styling stations leading to "before and after" galleries on social media. + - **Loyalty Program:** Instant sign-up for digital reward systems upon scan. + - **Social Sharing:** "Scan to Tag Us" with integrated Instagram/TikTok handles to drive organic reach. + - **Product Upsell:** QR codes on retail display shelves linking to product tutorials and educational content. + +## 💈 Barbershops +- **Core Use Cases:** + - **Smart Waitlists:** Scan to join the queue from outside the shop, reducing crowded waiting areas. + - **Tip-to-Tap Integration:** Simplified tipping through QR leading directly to payment apps. + - **Aftercare Sales:** Selling hair waxes or beard oils through QR codes on receipts for easy re-ordering. + - **Community Building:** Linking to local events or barbershop blogs to foster neighborhood presence. + +--- +*Next Steps: Deep-diving into the remaining 40 industries to generate specific marketing content.* diff --git a/marketing/industry-image-prompts.txt b/marketing/industry-image-prompts.txt index 3842b4a..20b2ea4 100644 --- a/marketing/industry-image-prompts.txt +++ b/marketing/industry-image-prompts.txt @@ -1,101 +1,101 @@ -FILENAME: spas.png -PROMPT: Clean, modern hero image for a QR code for spas and wellness centers landing page. Luxurious spa reception desk with white orchids, candles, rolled white towels, soft warm lighting, calming neutral palette, minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: beauty-salons.png -PROMPT: Clean, modern hero image for a QR code for beauty salons landing page. Stylish modern beauty salon interior with large illuminated mirror station, elegant product display, soft warm lighting, minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: barbershops.png -PROMPT: Clean, modern hero image for a QR code for barbershops landing page. Classic modern barbershop with leather barber chair, chrome tools on shelf, clean black and white tiled floor, warm lighting. Professional, no text. Premium aesthetic. - -FILENAME: nail-salons.png -PROMPT: Clean, modern hero image for a QR code for nail salons landing page. Elegant nail salon station with colorful nail polish bottles neatly arranged, manicure tools, soft pastel lighting, minimal clean composition. Professional, no text. Premium aesthetic. - -FILENAME: tattoo-studios.png -PROMPT: Clean, modern hero image for a QR code for tattoo studios landing page. Stylish tattoo studio interior with clean black bench, framed flash art on white walls, professional lighting, minimal edgy aesthetic. Professional, no text. Premium aesthetic. - -FILENAME: pharmacies.png -PROMPT: Clean, modern hero image for a QR code for pharmacies landing page. Clean modern pharmacy interior with white shelving, organized product displays, soft clinical lighting, minimal professional composition. Professional, no text. Premium aesthetic. - -FILENAME: clothing-stores.png -PROMPT: Clean, modern hero image for a QR code for clothing stores landing page. Elegant boutique clothing store with curated rack of garments, clean minimal interior, warm spotlighting, fitting room in background. Professional, no text. Premium aesthetic. - -FILENAME: car-dealerships.png -PROMPT: Clean, modern hero image for a QR code for car dealerships landing page. Sleek modern car showroom with a luxury vehicle on a polished floor, dramatic overhead lighting, minimal glass and chrome architecture. Professional, no text. Premium aesthetic. - -FILENAME: florists.png -PROMPT: Clean, modern hero image for a QR code for florists and flower shops landing page. Beautiful artisan florist shop with abundant colorful floral arrangements, rustic wooden counter, soft natural light. Professional, no text. Premium aesthetic. - -FILENAME: pet-stores.png -PROMPT: Clean, modern hero image for a QR code for pet stores and groomers landing page. Bright modern pet store interior with organized shelving, cute dog being groomed in foreground, warm friendly lighting. Professional, no text. Premium aesthetic. - -FILENAME: electronics-stores.png -PROMPT: Clean, modern hero image for a QR code for electronics stores landing page. Sleek modern electronics retail interior with backlit product displays, tablets and devices on clean white shelving, cool blue accent lighting. Professional, no text. Premium aesthetic. - -FILENAME: jewelry-stores.png -PROMPT: Clean, modern hero image for a QR code for jewelry stores landing page. Luxurious jewelry store interior with glass display counter, diamond rings and necklaces elegantly arranged, warm spotlight lighting, dark rich background. Professional, no text. Premium aesthetic. - -FILENAME: hardware-stores.png -PROMPT: Clean, modern hero image for a QR code for hardware and DIY stores landing page. Bright hardware store aisle with well-organized tools on shelving, clean modern signage, warm industrial lighting. Professional, no text. Premium aesthetic. - -FILENAME: bookstores.png -PROMPT: Clean, modern hero image for a QR code for bookstores landing page. Cozy independent bookstore interior with floor-to-ceiling wooden shelves of books, warm reading lamp light, inviting atmosphere. Professional, no text. Premium aesthetic. - -FILENAME: universities.png -PROMPT: Clean, modern hero image for a QR code for universities and colleges landing page. Impressive university campus building facade with students walking, classical architecture, blue sky, minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: schools.png -PROMPT: Clean, modern hero image for a QR code for schools landing page. Bright modern school corridor with lockers, natural light from windows, students walking, clean minimal educational environment. Professional, no text. Premium aesthetic. - -FILENAME: museums.png -PROMPT: Clean, modern hero image for a QR code for museums and exhibitions landing page. Grand museum hall with high ceilings, dramatic artifact display, dramatic lighting on exhibits, minimal modern architecture. Professional, no text. Premium aesthetic. - -FILENAME: libraries.png -PROMPT: Clean, modern hero image for a QR code for public libraries landing page. Stunning modern library interior with towering bookshelves, warm reading area, soft natural light from skylights, minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: theaters.png -PROMPT: Clean, modern hero image for a QR code for theaters and performing arts landing page. Elegant theater auditorium interior with red velvet seats, stage lit with warm spotlight, ornate architecture, dramatic ambiance. Professional, no text. Premium aesthetic. - -FILENAME: cinemas.png -PROMPT: Clean, modern hero image for a QR code for cinemas and movie theaters landing page. Modern cinema foyer with glowing box office, dramatic neon lighting accents, minimal sleek design, movie poster frames blurred in background. Professional, no text. Premium aesthetic. - -FILENAME: churches.png -PROMPT: Clean, modern hero image for a QR code for churches and places of worship landing page. Beautiful church interior with stained glass windows casting colored light, wooden pews, peaceful minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: art-galleries.png -PROMPT: Clean, modern hero image for a QR code for art galleries landing page. Clean white-walled contemporary art gallery with large paintings on walls, polished concrete floor, dramatic track lighting on artwork. Professional, no text. Premium aesthetic. - -FILENAME: stadiums.png -PROMPT: Clean, modern hero image for a QR code for stadiums and sports venues landing page. Aerial view of a large modern stadium at golden hour, dramatic scale, vibrant field, minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: wedding-planners.png -PROMPT: Clean, modern hero image for a QR code for wedding planners landing page. Elegant wedding reception venue setup with floral centerpieces, candlelight, white tablecloths, soft bokeh in background, romantic minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: photographers.png -PROMPT: Clean, modern hero image for a QR code for photography studios landing page. Professional photography studio with camera on tripod, softbox lighting setup, white seamless backdrop, minimal clean setup. Professional, no text. Premium aesthetic. - -FILENAME: trade-shows.png -PROMPT: Clean, modern hero image for a QR code for trade shows and exhibitions landing page. Large exhibition hall with branded stands, people networking, dramatic overhead lighting, minimal busy-but-clean composition. Professional, no text. Premium aesthetic. - -FILENAME: law-firms.png -PROMPT: Clean, modern hero image for a QR code for law firms landing page. Prestigious law firm office with dark wood shelving, legal books, leather chairs, clean executive desk, soft warm lighting. Professional, no text. Premium aesthetic. - -FILENAME: accountants.png -PROMPT: Clean, modern hero image for a QR code for accounting firms landing page. Clean modern accountancy office with sleek desk, laptop, neat files, large window with city view, minimal professional composition. Professional, no text. Premium aesthetic. - -FILENAME: insurance-agencies.png -PROMPT: Clean, modern hero image for a QR code for insurance agencies landing page. Professional insurance agency office with friendly advisor desk, clean modern interior, trust-inspiring warm neutral tones, minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: travel-agencies.png -PROMPT: Clean, modern hero image for a QR code for travel agencies landing page. Vibrant travel agency window display with destination cards, tropical beach and mountain imagery, warm inviting lighting, minimal composition. Professional, no text. Premium aesthetic. - -FILENAME: coworking-spaces.png -PROMPT: Clean, modern hero image for a QR code for coworking spaces landing page. Bright modern coworking office with open desk plan, natural light, plants, people working on laptops, minimal Scandinavian aesthetic. Professional, no text. Premium aesthetic. - -FILENAME: property-management.png -PROMPT: Clean, modern hero image for a QR code for property management landing page. Modern apartment building lobby with clean reception desk, architectural lighting, minimal contemporary interior design. Professional, no text. Premium aesthetic. - -FILENAME: airports.png -PROMPT: Clean, modern hero image for a QR code for airports and travel hubs landing page. Dramatic modern airport terminal interior with high glass ceilings, people with luggage walking, departure boards, minimal futuristic composition. Professional, no text. Premium aesthetic. - -FILENAME: dentists.png -PROMPT: Clean, modern hero image for a QR code for dental practices landing page. Clean modern dental practice waiting room with white interior, comfortable seating, reception desk, plants, calming warm lighting. Professional, no text. Premium aesthetic. +FILENAME: spas.png +PROMPT: Clean, modern hero image for a QR code for spas and wellness centers landing page. Luxurious spa reception desk with white orchids, candles, rolled white towels, soft warm lighting, calming neutral palette, minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: beauty-salons.png +PROMPT: Clean, modern hero image for a QR code for beauty salons landing page. Stylish modern beauty salon interior with large illuminated mirror station, elegant product display, soft warm lighting, minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: barbershops.png +PROMPT: Clean, modern hero image for a QR code for barbershops landing page. Classic modern barbershop with leather barber chair, chrome tools on shelf, clean black and white tiled floor, warm lighting. Professional, no text. Premium aesthetic. + +FILENAME: nail-salons.png +PROMPT: Clean, modern hero image for a QR code for nail salons landing page. Elegant nail salon station with colorful nail polish bottles neatly arranged, manicure tools, soft pastel lighting, minimal clean composition. Professional, no text. Premium aesthetic. + +FILENAME: tattoo-studios.png +PROMPT: Clean, modern hero image for a QR code for tattoo studios landing page. Stylish tattoo studio interior with clean black bench, framed flash art on white walls, professional lighting, minimal edgy aesthetic. Professional, no text. Premium aesthetic. + +FILENAME: pharmacies.png +PROMPT: Clean, modern hero image for a QR code for pharmacies landing page. Clean modern pharmacy interior with white shelving, organized product displays, soft clinical lighting, minimal professional composition. Professional, no text. Premium aesthetic. + +FILENAME: clothing-stores.png +PROMPT: Clean, modern hero image for a QR code for clothing stores landing page. Elegant boutique clothing store with curated rack of garments, clean minimal interior, warm spotlighting, fitting room in background. Professional, no text. Premium aesthetic. + +FILENAME: car-dealerships.png +PROMPT: Clean, modern hero image for a QR code for car dealerships landing page. Sleek modern car showroom with a luxury vehicle on a polished floor, dramatic overhead lighting, minimal glass and chrome architecture. Professional, no text. Premium aesthetic. + +FILENAME: florists.png +PROMPT: Clean, modern hero image for a QR code for florists and flower shops landing page. Beautiful artisan florist shop with abundant colorful floral arrangements, rustic wooden counter, soft natural light. Professional, no text. Premium aesthetic. + +FILENAME: pet-stores.png +PROMPT: Clean, modern hero image for a QR code for pet stores and groomers landing page. Bright modern pet store interior with organized shelving, cute dog being groomed in foreground, warm friendly lighting. Professional, no text. Premium aesthetic. + +FILENAME: electronics-stores.png +PROMPT: Clean, modern hero image for a QR code for electronics stores landing page. Sleek modern electronics retail interior with backlit product displays, tablets and devices on clean white shelving, cool blue accent lighting. Professional, no text. Premium aesthetic. + +FILENAME: jewelry-stores.png +PROMPT: Clean, modern hero image for a QR code for jewelry stores landing page. Luxurious jewelry store interior with glass display counter, diamond rings and necklaces elegantly arranged, warm spotlight lighting, dark rich background. Professional, no text. Premium aesthetic. + +FILENAME: hardware-stores.png +PROMPT: Clean, modern hero image for a QR code for hardware and DIY stores landing page. Bright hardware store aisle with well-organized tools on shelving, clean modern signage, warm industrial lighting. Professional, no text. Premium aesthetic. + +FILENAME: bookstores.png +PROMPT: Clean, modern hero image for a QR code for bookstores landing page. Cozy independent bookstore interior with floor-to-ceiling wooden shelves of books, warm reading lamp light, inviting atmosphere. Professional, no text. Premium aesthetic. + +FILENAME: universities.png +PROMPT: Clean, modern hero image for a QR code for universities and colleges landing page. Impressive university campus building facade with students walking, classical architecture, blue sky, minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: schools.png +PROMPT: Clean, modern hero image for a QR code for schools landing page. Bright modern school corridor with lockers, natural light from windows, students walking, clean minimal educational environment. Professional, no text. Premium aesthetic. + +FILENAME: museums.png +PROMPT: Clean, modern hero image for a QR code for museums and exhibitions landing page. Grand museum hall with high ceilings, dramatic artifact display, dramatic lighting on exhibits, minimal modern architecture. Professional, no text. Premium aesthetic. + +FILENAME: libraries.png +PROMPT: Clean, modern hero image for a QR code for public libraries landing page. Stunning modern library interior with towering bookshelves, warm reading area, soft natural light from skylights, minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: theaters.png +PROMPT: Clean, modern hero image for a QR code for theaters and performing arts landing page. Elegant theater auditorium interior with red velvet seats, stage lit with warm spotlight, ornate architecture, dramatic ambiance. Professional, no text. Premium aesthetic. + +FILENAME: cinemas.png +PROMPT: Clean, modern hero image for a QR code for cinemas and movie theaters landing page. Modern cinema foyer with glowing box office, dramatic neon lighting accents, minimal sleek design, movie poster frames blurred in background. Professional, no text. Premium aesthetic. + +FILENAME: churches.png +PROMPT: Clean, modern hero image for a QR code for churches and places of worship landing page. Beautiful church interior with stained glass windows casting colored light, wooden pews, peaceful minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: art-galleries.png +PROMPT: Clean, modern hero image for a QR code for art galleries landing page. Clean white-walled contemporary art gallery with large paintings on walls, polished concrete floor, dramatic track lighting on artwork. Professional, no text. Premium aesthetic. + +FILENAME: stadiums.png +PROMPT: Clean, modern hero image for a QR code for stadiums and sports venues landing page. Aerial view of a large modern stadium at golden hour, dramatic scale, vibrant field, minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: wedding-planners.png +PROMPT: Clean, modern hero image for a QR code for wedding planners landing page. Elegant wedding reception venue setup with floral centerpieces, candlelight, white tablecloths, soft bokeh in background, romantic minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: photographers.png +PROMPT: Clean, modern hero image for a QR code for photography studios landing page. Professional photography studio with camera on tripod, softbox lighting setup, white seamless backdrop, minimal clean setup. Professional, no text. Premium aesthetic. + +FILENAME: trade-shows.png +PROMPT: Clean, modern hero image for a QR code for trade shows and exhibitions landing page. Large exhibition hall with branded stands, people networking, dramatic overhead lighting, minimal busy-but-clean composition. Professional, no text. Premium aesthetic. + +FILENAME: law-firms.png +PROMPT: Clean, modern hero image for a QR code for law firms landing page. Prestigious law firm office with dark wood shelving, legal books, leather chairs, clean executive desk, soft warm lighting. Professional, no text. Premium aesthetic. + +FILENAME: accountants.png +PROMPT: Clean, modern hero image for a QR code for accounting firms landing page. Clean modern accountancy office with sleek desk, laptop, neat files, large window with city view, minimal professional composition. Professional, no text. Premium aesthetic. + +FILENAME: insurance-agencies.png +PROMPT: Clean, modern hero image for a QR code for insurance agencies landing page. Professional insurance agency office with friendly advisor desk, clean modern interior, trust-inspiring warm neutral tones, minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: travel-agencies.png +PROMPT: Clean, modern hero image for a QR code for travel agencies landing page. Vibrant travel agency window display with destination cards, tropical beach and mountain imagery, warm inviting lighting, minimal composition. Professional, no text. Premium aesthetic. + +FILENAME: coworking-spaces.png +PROMPT: Clean, modern hero image for a QR code for coworking spaces landing page. Bright modern coworking office with open desk plan, natural light, plants, people working on laptops, minimal Scandinavian aesthetic. Professional, no text. Premium aesthetic. + +FILENAME: property-management.png +PROMPT: Clean, modern hero image for a QR code for property management landing page. Modern apartment building lobby with clean reception desk, architectural lighting, minimal contemporary interior design. Professional, no text. Premium aesthetic. + +FILENAME: airports.png +PROMPT: Clean, modern hero image for a QR code for airports and travel hubs landing page. Dramatic modern airport terminal interior with high glass ceilings, people with luggage walking, departure boards, minimal futuristic composition. Professional, no text. Premium aesthetic. + +FILENAME: dentists.png +PROMPT: Clean, modern hero image for a QR code for dental practices landing page. Clean modern dental practice waiting room with white interior, comfortable seating, reception desk, plants, calming warm lighting. Professional, no text. Premium aesthetic. diff --git a/marketing/programmatic-seo-1000-page-plan.md b/marketing/programmatic-seo-1000-page-plan.md index 4d219af..09b08fb 100644 --- a/marketing/programmatic-seo-1000-page-plan.md +++ b/marketing/programmatic-seo-1000-page-plan.md @@ -1,457 +1,457 @@ -# Programmatic SEO Plan: 1000 Pages for QR Master - -Date: 2026-03-31 -Owner: QR Master -Scope: Organic growth plan for roughly 1000 indexable SEO pages - -## Executive Decision - -Do not build `1000 blog posts`. - -For QR Master, the better model is: - -- `80-120` editorial blog posts -- `150-250` commercial tool pages -- `200-300` use-case and workflow pages -- `100-150` industry pages -- `150-250` comparison and alternative pages -- `150-250` support, glossary, template, and problem-solution pages - -That gets you to roughly `1000` pages without creating a thin-content footprint. - -## Why 1000 blog posts is the wrong move - -QR Master already has a stronger pSEO base than a typical blog-first site: - -- `22` blog posts in [src/lib/blog-data.ts](C:\Users\a931627\Documents\QRMASTER\src\lib\blog-data.ts) -- `20` tool pages in [src/app/sitemap.ts](C:\Users\a931627\Documents\QRMASTER\src\app\sitemap.ts) -- `9` use-case pages in [src/lib/growth-pages.ts](C:\Users\a931627\Documents\QRMASTER\src\lib\growth-pages.ts) -- `8` industry pages in [src/lib/industry-pages.ts](C:\Users\a931627\Documents\QRMASTER\src\lib\industry-pages.ts) -- static generation already exists for blog, use-cases, learn hubs, and industry pages - -The current architecture is already optimized for scalable landing pages, not for managing 1000 long-form editorial articles in one monolithic blog dataset. - -There is also a search-quality risk. Google explicitly warns against: - -- scaled content abuse -- doorway-style pages -- large volumes of low-value, near-duplicate content - -Relevant guidance: - -- Google spam policies: https://developers.google.com/search/docs/advanced/guidelines/auto-gen-content -- Google people-first content guidance: https://developers.google.com/search/docs/fundamentals/creating-helpful-content -- Google generative AI content guidance: https://developers.google.com/search/docs/fundamentals/using-gen-ai-content - -## What live SERPs suggest right now - -Spot checks on 2026-03-31 indicate that high-intent QR queries are mostly served by dedicated landing pages, generators, and comparison pages, not by generic blog posts. - -Examples: - -- restaurant menu QR: GustoQR, Menulizer, QRMake, Jampos, WebsitesQR -- WiFi QR: WiQRCode, Q-WiFi -- dynamic QR: GeckoQR, QRFlow, QRelix -- bulk QR: QRMass, TofuQR, BulkQRBarcode - -This means the highest-value SEO surface for QR Master is: - -- generator pages -- workflow pages -- industry pages -- comparison pages -- practical support content tied to specific jobs - -Not 1000 generic “what is” articles. - -## Recommended 1000-page mix - -### 1. Tool intent pages: 180 pages - -Goal: capture users searching for a specific QR type, format, or action. - -Current base: - -- `/tools/url-qr-code` -- `/tools/wifi-qr-code` -- `/tools/vcard-qr-code` -- `/tools/instagram-qr-code` -- etc. - -Expand with sub-intents around each tool: - -- format intent: `svg`, `png`, `pdf`, `eps` -- output intent: `for print`, `for stickers`, `for packaging` -- job intent: `for flyers`, `for tables`, `for business cards` -- modifier intent: `free`, `custom`, `dynamic`, `trackable` - -Example cluster: - -- `/tools/wifi-qr-code` -- `/tools/wifi-qr-code/for-restaurants` -- `/tools/wifi-qr-code/for-hotels` -- `/tools/wifi-qr-code/for-airbnb` -- `/tools/wifi-qr-code/print-size` -- `/tools/wifi-qr-code/svg` -- `/tools/wifi-qr-code/how-to` -- `/tools/wifi-qr-code/troubleshooting` - -Requirement: - -- every page must change the workflow, examples, FAQ, CTA, and placement guidance -- not just the H1 - -### 2. Use-case and workflow pages: 260 pages - -Goal: map product capabilities to specific offline-to-online jobs. - -Current base: - -- `/use-cases/restaurant-menu-qr-codes` -- `/use-cases/business-card-qr-codes` -- `/use-cases/event-qr-codes` -- etc. - -Expand by combining: - -- surface: table tent, flyer, poster, window, packaging, receipt, label, badge -- workflow: menu, reviews, payment, lead capture, coupon, check-in, support, manual, onboarding -- intent: editable, trackable, branded, bulk, privacy-safe - -Example patterns: - -- `/use-cases/qr-codes-for-product-packaging` -- `/use-cases/qr-codes-for-brochures` -- `/use-cases/qr-codes-for-trade-show-booths` -- `/use-cases/qr-codes-for-real-estate-flyers` -- `/use-cases/qr-codes-for-table-ordering` -- `/use-cases/qr-codes-for-manuals-and-inserts` -- `/use-cases/qr-codes-for-review-collection` - -### 3. Industry pages: 140 pages - -Goal: capture commercial intent by vertical. - -Current base: - -- restaurants -- cafes -- hotels -- real estate -- gyms -- doctors and dentists -- retail -- events - -Best expansion model: - -- industry hub -- industry plus workflow -- industry plus operational pain point - -Example patterns: - -- `/qr-code-for/restaurants` -- `/qr-code-for/restaurants/menu-updates` -- `/qr-code-for/restaurants/table-ordering` -- `/qr-code-for/restaurants/review-collection` -- `/qr-code-for/hotels/guest-wifi` -- `/qr-code-for/retail/packaging` -- `/qr-code-for/events/check-in` - -Important: - -- keep the base industry pages -- add second-level workflow pages only where search intent and product fit are strong - -### 4. Comparison and alternative pages: 180 pages - -Goal: capture bottom-funnel evaluation traffic. - -Patterns: - -- `[competitor] alternative` -- `[competitor] vs QR Master` -- `dynamic vs static` -- `free vs paid` -- `[feature A] vs [feature B]` - -Examples: - -- `/compare/qr-code-generator-com-alternative` -- `/compare/beaconstac-alternative` -- `/compare/flowcode-alternative` -- `/compare/qr-code-monkey-vs-qr-master` -- `/compare/dynamic-vs-static-qr-codes` -- `/compare/free-vs-paid-qr-code-generator` - -These pages should include: - -- actual comparison tables -- pricing logic -- use-case fit -- privacy and GDPR angle -- migration guidance - -### 5. Support, glossary, and problem-solution pages: 140 pages - -Goal: capture informational searches with strong product adjacency. - -Patterns: - -- how to -- troubleshooting -- best practices -- definitions -- safety and compliance - -Examples: - -- `/guide/qr-code-print-size` -- `/guide/why-my-qr-code-is-not-scanning` -- `/guide/how-to-track-qr-code-scans` -- `/guide/qr-code-gdpr` -- `/guide/qr-code-phishing` -- `/guide/how-to-create-a-vcard-qr-code` -- `/guide/how-to-use-utm-with-qr-codes` - -These are not filler pages. They should support tool, use-case, and comparison clusters. - -### 6. Editorial blog: 100 pages - -Goal: publish expert-led, citation-worthy content. - -Use blog posts for: - -- original research -- industry benchmarks -- deep tutorials -- opinionated comparisons -- campaign strategy examples -- security explainers - -Do not use the blog for every long-tail keyword variation. - -## URL architecture - -Stay with subfolders. Do not use subdomains. - -Recommended structure: - -- `/tools/[tool]` -- `/tools/[tool]/[modifier-or-job]` -- `/use-cases/[slug]` -- `/qr-code-for/[industry]` -- `/qr-code-for/[industry]/[workflow]` -- `/compare/[slug]` -- `/guide/[slug]` -- `/blog/[slug]` -- `/learn/[pillar]` - -This keeps topical authority consolidated under one domain and matches the existing app structure. - -## What makes each page unique - -Every indexable page should contain at least 3 of these: - -- unique quick answer -- workflow-specific steps -- vertical-specific FAQ -- placement guidance -- examples tied to the page context -- comparison logic -- recommended tool stack -- CTA matched to that exact query -- internal links to adjacent nodes -- proprietary insights from QR Master product usage once available - -If a page only swaps: - -- city -- industry -- social platform name -- file format - -then it is not ready to index. - -## The best programmatic page families for QR Master - -### Highest priority - -1. Tool x job-to-be-done -2. Industry x workflow -3. Use-case x printed surface -4. Comparison and alternative pages -5. Tracking, analytics, and GDPR support pages - -### Medium priority - -1. Glossary pages -2. Generator template pages -3. Print specification pages -4. Security and trust pages - -### Low priority - -1. city pages -2. country pages -3. “near me” pages -4. large-scale locale combinations - -Those are the most likely to drift into doorway territory for this product. - -## Data model recommendation - -Do not keep scaling everything inside one giant `blog-data.ts`. - -Instead, split content into typed datasets: - -- `src/lib/tool-pages.ts` -- `src/lib/use-case-pages.ts` -- `src/lib/industry-pages.ts` -- `src/lib/comparison-pages.ts` -- `src/lib/guide-pages.ts` -- `src/lib/blog-data.ts` - -Each record should support: - -- slug -- query intent -- primary CTA -- secondary CTA -- unique answer block -- unique workflow steps -- unique FAQ -- related links -- schema fields -- publish and update metadata - -## Internal linking model - -Every page should sit inside a clear cluster. - -Example cluster: - -- tool: `/tools/wifi-qr-code` -- industry: `/qr-code-for/hotels` -- workflow: `/qr-code-for/hotels/guest-wifi` -- guide: `/guide/how-to-create-a-wifi-qr-code` -- comparison: `/compare/free-vs-paid-qr-code-generator` -- commercial: `/dynamic-qr-code-generator` - -Rules: - -- hub links down to spoke pages -- spoke links back to hub -- spoke links sideways to 2-4 adjacent pages -- editorial blog links into commercial and programmatic pages -- every page should have breadcrumb schema - -## Indexation policy - -Do not index everything on day one. - -Recommended rollout: - -- launch first `100-150` strongest pages -- measure impressions, clicks, engagement, and conversions -- only expand page families that show traction -- noindex weak template variants until they have enough differentiated content - -This matters because a bad 1000-page rollout can lower perceived site quality faster than it grows traffic. - -## 90-day rollout - -### Phase 1: Foundation - -- keep current blog, tool, use-case, and industry system -- create new page-family schemas for `comparison` and `guide` -- move content datasets out of oversized single files where needed -- update sitemap generation to support multiple page families - -### Phase 2: First 150 pages - -- publish 40 tool-adjacent pages -- publish 40 industry-workflow pages -- publish 30 use-case surface pages -- publish 20 comparison pages -- publish 20 support and guide pages - -### Phase 3: Measure - -Track: - -- indexation rate -- impressions per page family -- click-through rate -- assisted signups -- free-to-paid influence -- pages with zero impressions after 60 days - -### Phase 4: Scale winners - -Double down only on page families that show: - -- meaningful impressions -- rankings entering top 20 -- conversion assistance -- internal-link engagement - -## Suggested page count by family - -| Family | Target | -|---|---:| -| Tool base pages | 20 | -| Tool modifiers and job pages | 160 | -| Use-case pages | 120 | -| Use-case surface and workflow expansions | 140 | -| Industry hubs | 20 | -| Industry workflow pages | 120 | -| Comparison pages | 180 | -| Guides and troubleshooting | 140 | -| Editorial blog | 100 | -| Hubs and utility pages | 20 | -| Total | 1000 | - -## What not to do - -Avoid: - -- 1000 AI-written blog posts targeting slight keyword variations -- city pages without local operations or local proof -- dozens of pages that all funnel to the same generic generator with no new value -- near-duplicate intros with only one variable changed -- indexable pages with no cluster context or internal links - -## Best next step for this codebase - -If the goal is execution, the best sequence is: - -1. add `comparison` and `guide` page families -2. restructure page content into typed datasets -3. ship the first `50-100` high-fit pages -4. measure what gets indexed and clicked -5. then scale toward `300`, `500`, and finally `1000` - -## Sources - -Live search spot checks on 2026-03-31: - -- https://www.gustoqr.com/ -- https://www.menulizer.com/ -- https://qrmake.io/menu-qr-code -- https://www.jampos.app/qr-generator -- https://www.websitesqr.com/menu-qr-code -- https://wiqrcode.com/ -- https://www.q-wifi.com/ -- https://www.geckoqr.com/ -- https://qrflow.co/ -- https://qrmass.com/ -- https://tofu-qr.com/qr-generator/bulk/ -- https://bulkqrbarcode.com/ - -Google guidance: - -- https://developers.google.com/search/docs/advanced/guidelines/auto-gen-content -- https://developers.google.com/search/docs/fundamentals/creating-helpful-content -- https://developers.google.com/search/docs/fundamentals/using-gen-ai-content +# Programmatic SEO Plan: 1000 Pages for QR Master + +Date: 2026-03-31 +Owner: QR Master +Scope: Organic growth plan for roughly 1000 indexable SEO pages + +## Executive Decision + +Do not build `1000 blog posts`. + +For QR Master, the better model is: + +- `80-120` editorial blog posts +- `150-250` commercial tool pages +- `200-300` use-case and workflow pages +- `100-150` industry pages +- `150-250` comparison and alternative pages +- `150-250` support, glossary, template, and problem-solution pages + +That gets you to roughly `1000` pages without creating a thin-content footprint. + +## Why 1000 blog posts is the wrong move + +QR Master already has a stronger pSEO base than a typical blog-first site: + +- `22` blog posts in [src/lib/blog-data.ts](C:\Users\a931627\Documents\QRMASTER\src\lib\blog-data.ts) +- `20` tool pages in [src/app/sitemap.ts](C:\Users\a931627\Documents\QRMASTER\src\app\sitemap.ts) +- `9` use-case pages in [src/lib/growth-pages.ts](C:\Users\a931627\Documents\QRMASTER\src\lib\growth-pages.ts) +- `8` industry pages in [src/lib/industry-pages.ts](C:\Users\a931627\Documents\QRMASTER\src\lib\industry-pages.ts) +- static generation already exists for blog, use-cases, learn hubs, and industry pages + +The current architecture is already optimized for scalable landing pages, not for managing 1000 long-form editorial articles in one monolithic blog dataset. + +There is also a search-quality risk. Google explicitly warns against: + +- scaled content abuse +- doorway-style pages +- large volumes of low-value, near-duplicate content + +Relevant guidance: + +- Google spam policies: https://developers.google.com/search/docs/advanced/guidelines/auto-gen-content +- Google people-first content guidance: https://developers.google.com/search/docs/fundamentals/creating-helpful-content +- Google generative AI content guidance: https://developers.google.com/search/docs/fundamentals/using-gen-ai-content + +## What live SERPs suggest right now + +Spot checks on 2026-03-31 indicate that high-intent QR queries are mostly served by dedicated landing pages, generators, and comparison pages, not by generic blog posts. + +Examples: + +- restaurant menu QR: GustoQR, Menulizer, QRMake, Jampos, WebsitesQR +- WiFi QR: WiQRCode, Q-WiFi +- dynamic QR: GeckoQR, QRFlow, QRelix +- bulk QR: QRMass, TofuQR, BulkQRBarcode + +This means the highest-value SEO surface for QR Master is: + +- generator pages +- workflow pages +- industry pages +- comparison pages +- practical support content tied to specific jobs + +Not 1000 generic “what is” articles. + +## Recommended 1000-page mix + +### 1. Tool intent pages: 180 pages + +Goal: capture users searching for a specific QR type, format, or action. + +Current base: + +- `/tools/url-qr-code` +- `/tools/wifi-qr-code` +- `/tools/vcard-qr-code` +- `/tools/instagram-qr-code` +- etc. + +Expand with sub-intents around each tool: + +- format intent: `svg`, `png`, `pdf`, `eps` +- output intent: `for print`, `for stickers`, `for packaging` +- job intent: `for flyers`, `for tables`, `for business cards` +- modifier intent: `free`, `custom`, `dynamic`, `trackable` + +Example cluster: + +- `/tools/wifi-qr-code` +- `/tools/wifi-qr-code/for-restaurants` +- `/tools/wifi-qr-code/for-hotels` +- `/tools/wifi-qr-code/for-airbnb` +- `/tools/wifi-qr-code/print-size` +- `/tools/wifi-qr-code/svg` +- `/tools/wifi-qr-code/how-to` +- `/tools/wifi-qr-code/troubleshooting` + +Requirement: + +- every page must change the workflow, examples, FAQ, CTA, and placement guidance +- not just the H1 + +### 2. Use-case and workflow pages: 260 pages + +Goal: map product capabilities to specific offline-to-online jobs. + +Current base: + +- `/use-cases/restaurant-menu-qr-codes` +- `/use-cases/business-card-qr-codes` +- `/use-cases/event-qr-codes` +- etc. + +Expand by combining: + +- surface: table tent, flyer, poster, window, packaging, receipt, label, badge +- workflow: menu, reviews, payment, lead capture, coupon, check-in, support, manual, onboarding +- intent: editable, trackable, branded, bulk, privacy-safe + +Example patterns: + +- `/use-cases/qr-codes-for-product-packaging` +- `/use-cases/qr-codes-for-brochures` +- `/use-cases/qr-codes-for-trade-show-booths` +- `/use-cases/qr-codes-for-real-estate-flyers` +- `/use-cases/qr-codes-for-table-ordering` +- `/use-cases/qr-codes-for-manuals-and-inserts` +- `/use-cases/qr-codes-for-review-collection` + +### 3. Industry pages: 140 pages + +Goal: capture commercial intent by vertical. + +Current base: + +- restaurants +- cafes +- hotels +- real estate +- gyms +- doctors and dentists +- retail +- events + +Best expansion model: + +- industry hub +- industry plus workflow +- industry plus operational pain point + +Example patterns: + +- `/qr-code-for/restaurants` +- `/qr-code-for/restaurants/menu-updates` +- `/qr-code-for/restaurants/table-ordering` +- `/qr-code-for/restaurants/review-collection` +- `/qr-code-for/hotels/guest-wifi` +- `/qr-code-for/retail/packaging` +- `/qr-code-for/events/check-in` + +Important: + +- keep the base industry pages +- add second-level workflow pages only where search intent and product fit are strong + +### 4. Comparison and alternative pages: 180 pages + +Goal: capture bottom-funnel evaluation traffic. + +Patterns: + +- `[competitor] alternative` +- `[competitor] vs QR Master` +- `dynamic vs static` +- `free vs paid` +- `[feature A] vs [feature B]` + +Examples: + +- `/compare/qr-code-generator-com-alternative` +- `/compare/beaconstac-alternative` +- `/compare/flowcode-alternative` +- `/compare/qr-code-monkey-vs-qr-master` +- `/compare/dynamic-vs-static-qr-codes` +- `/compare/free-vs-paid-qr-code-generator` + +These pages should include: + +- actual comparison tables +- pricing logic +- use-case fit +- privacy and GDPR angle +- migration guidance + +### 5. Support, glossary, and problem-solution pages: 140 pages + +Goal: capture informational searches with strong product adjacency. + +Patterns: + +- how to +- troubleshooting +- best practices +- definitions +- safety and compliance + +Examples: + +- `/guide/qr-code-print-size` +- `/guide/why-my-qr-code-is-not-scanning` +- `/guide/how-to-track-qr-code-scans` +- `/guide/qr-code-gdpr` +- `/guide/qr-code-phishing` +- `/guide/how-to-create-a-vcard-qr-code` +- `/guide/how-to-use-utm-with-qr-codes` + +These are not filler pages. They should support tool, use-case, and comparison clusters. + +### 6. Editorial blog: 100 pages + +Goal: publish expert-led, citation-worthy content. + +Use blog posts for: + +- original research +- industry benchmarks +- deep tutorials +- opinionated comparisons +- campaign strategy examples +- security explainers + +Do not use the blog for every long-tail keyword variation. + +## URL architecture + +Stay with subfolders. Do not use subdomains. + +Recommended structure: + +- `/tools/[tool]` +- `/tools/[tool]/[modifier-or-job]` +- `/use-cases/[slug]` +- `/qr-code-for/[industry]` +- `/qr-code-for/[industry]/[workflow]` +- `/compare/[slug]` +- `/guide/[slug]` +- `/blog/[slug]` +- `/learn/[pillar]` + +This keeps topical authority consolidated under one domain and matches the existing app structure. + +## What makes each page unique + +Every indexable page should contain at least 3 of these: + +- unique quick answer +- workflow-specific steps +- vertical-specific FAQ +- placement guidance +- examples tied to the page context +- comparison logic +- recommended tool stack +- CTA matched to that exact query +- internal links to adjacent nodes +- proprietary insights from QR Master product usage once available + +If a page only swaps: + +- city +- industry +- social platform name +- file format + +then it is not ready to index. + +## The best programmatic page families for QR Master + +### Highest priority + +1. Tool x job-to-be-done +2. Industry x workflow +3. Use-case x printed surface +4. Comparison and alternative pages +5. Tracking, analytics, and GDPR support pages + +### Medium priority + +1. Glossary pages +2. Generator template pages +3. Print specification pages +4. Security and trust pages + +### Low priority + +1. city pages +2. country pages +3. “near me” pages +4. large-scale locale combinations + +Those are the most likely to drift into doorway territory for this product. + +## Data model recommendation + +Do not keep scaling everything inside one giant `blog-data.ts`. + +Instead, split content into typed datasets: + +- `src/lib/tool-pages.ts` +- `src/lib/use-case-pages.ts` +- `src/lib/industry-pages.ts` +- `src/lib/comparison-pages.ts` +- `src/lib/guide-pages.ts` +- `src/lib/blog-data.ts` + +Each record should support: + +- slug +- query intent +- primary CTA +- secondary CTA +- unique answer block +- unique workflow steps +- unique FAQ +- related links +- schema fields +- publish and update metadata + +## Internal linking model + +Every page should sit inside a clear cluster. + +Example cluster: + +- tool: `/tools/wifi-qr-code` +- industry: `/qr-code-for/hotels` +- workflow: `/qr-code-for/hotels/guest-wifi` +- guide: `/guide/how-to-create-a-wifi-qr-code` +- comparison: `/compare/free-vs-paid-qr-code-generator` +- commercial: `/dynamic-qr-code-generator` + +Rules: + +- hub links down to spoke pages +- spoke links back to hub +- spoke links sideways to 2-4 adjacent pages +- editorial blog links into commercial and programmatic pages +- every page should have breadcrumb schema + +## Indexation policy + +Do not index everything on day one. + +Recommended rollout: + +- launch first `100-150` strongest pages +- measure impressions, clicks, engagement, and conversions +- only expand page families that show traction +- noindex weak template variants until they have enough differentiated content + +This matters because a bad 1000-page rollout can lower perceived site quality faster than it grows traffic. + +## 90-day rollout + +### Phase 1: Foundation + +- keep current blog, tool, use-case, and industry system +- create new page-family schemas for `comparison` and `guide` +- move content datasets out of oversized single files where needed +- update sitemap generation to support multiple page families + +### Phase 2: First 150 pages + +- publish 40 tool-adjacent pages +- publish 40 industry-workflow pages +- publish 30 use-case surface pages +- publish 20 comparison pages +- publish 20 support and guide pages + +### Phase 3: Measure + +Track: + +- indexation rate +- impressions per page family +- click-through rate +- assisted signups +- free-to-paid influence +- pages with zero impressions after 60 days + +### Phase 4: Scale winners + +Double down only on page families that show: + +- meaningful impressions +- rankings entering top 20 +- conversion assistance +- internal-link engagement + +## Suggested page count by family + +| Family | Target | +|---|---:| +| Tool base pages | 20 | +| Tool modifiers and job pages | 160 | +| Use-case pages | 120 | +| Use-case surface and workflow expansions | 140 | +| Industry hubs | 20 | +| Industry workflow pages | 120 | +| Comparison pages | 180 | +| Guides and troubleshooting | 140 | +| Editorial blog | 100 | +| Hubs and utility pages | 20 | +| Total | 1000 | + +## What not to do + +Avoid: + +- 1000 AI-written blog posts targeting slight keyword variations +- city pages without local operations or local proof +- dozens of pages that all funnel to the same generic generator with no new value +- near-duplicate intros with only one variable changed +- indexable pages with no cluster context or internal links + +## Best next step for this codebase + +If the goal is execution, the best sequence is: + +1. add `comparison` and `guide` page families +2. restructure page content into typed datasets +3. ship the first `50-100` high-fit pages +4. measure what gets indexed and clicked +5. then scale toward `300`, `500`, and finally `1000` + +## Sources + +Live search spot checks on 2026-03-31: + +- https://www.gustoqr.com/ +- https://www.menulizer.com/ +- https://qrmake.io/menu-qr-code +- https://www.jampos.app/qr-generator +- https://www.websitesqr.com/menu-qr-code +- https://wiqrcode.com/ +- https://www.q-wifi.com/ +- https://www.geckoqr.com/ +- https://qrflow.co/ +- https://qrmass.com/ +- https://tofu-qr.com/qr-generator/bulk/ +- https://bulkqrbarcode.com/ + +Google guidance: + +- https://developers.google.com/search/docs/advanced/guidelines/auto-gen-content +- https://developers.google.com/search/docs/fundamentals/creating-helpful-content +- https://developers.google.com/search/docs/fundamentals/using-gen-ai-content diff --git a/marketing/programmatic-seo-top-50.md b/marketing/programmatic-seo-top-50.md index 8029e89..42be5e9 100644 --- a/marketing/programmatic-seo-top-50.md +++ b/marketing/programmatic-seo-top-50.md @@ -1,155 +1,155 @@ -# Programmatic SEO Top 50 Backlog - -Date: 2026-03-31 -Project: QR Master -Purpose: Prioritized first-wave backlog for the new `comparison` and `guide` families plus adjacent high-fit commercial clusters. - -## Scoring Model - -Each URL idea is scored from `0-100`. - -Weights: - -- Commercial intent: `30` -- Product fit: `25` -- Differentiation potential: `15` -- Cluster leverage: `10` -- SERP winability: `10` -- Production effort: `10` - -Interpretation: - -- `90+`: ship immediately -- `85-89`: first-wave priority -- `80-84`: second-wave after initial measurement -- `<80`: hold until stronger cluster support exists - -## Top 50 - -| Rank | URL | Family | Score | Primary CTA | -|---|---|---|---:|---| -| 1 | `/compare/dynamic-vs-static-qr-codes` | comparison | 93 | `/dynamic-qr-code-generator` | -| 2 | `/compare/free-vs-paid-qr-code-generator` | comparison | 92 | `/pricing` | -| 3 | `/guide/how-to-track-qr-code-scans` | guide-problem | 91 | `/qr-code-tracking` | -| 4 | `/guide/why-my-qr-code-is-not-scanning` | guide-problem | 91 | `/custom-qr-code-generator` | -| 5 | `/guide/qr-code-print-size` | guide-problem | 90 | `/custom-qr-code-generator` | -| 6 | `/compare/qr-code-monkey-vs-qr-master` | comparison | 90 | `/dynamic-qr-code-generator` | -| 7 | `/compare/flowcode-alternative` | comparison | 89 | `/qr-code-tracking` | -| 8 | `/compare/beaconstac-alternative` | comparison | 89 | `/dynamic-qr-code-generator` | -| 9 | `/guide/how-to-use-utm-with-qr-codes` | guide-problem | 89 | `/qr-code-tracking` | -| 10 | `/guide/dynamic-qr-code-best-practices` | guide-strategic | 88 | `/dynamic-qr-code-generator` | -| 11 | `/guide/qr-code-gdpr` | guide-strategic | 88 | `/qr-code-tracking` | -| 12 | `/compare/bulk-qr-generator-vs-single-qr-generator` | comparison | 88 | `/bulk-qr-code-generator` | -| 13 | `/qr-code-for/restaurants/menu-updates` | industry-workflow | 88 | `/dynamic-qr-code-generator` | -| 14 | `/qr-code-for/restaurants/review-collection` | industry-workflow | 87 | `/qr-code-tracking` | -| 15 | `/tools/wifi-qr-code/for-hotels` | tool-job | 87 | `/tools/wifi-qr-code` | -| 16 | `/guide/how-to-create-a-vcard-qr-code` | guide-problem | 87 | `/tools/vcard-qr-code` | -| 17 | `/qr-code-for/hotels/guest-wifi` | industry-workflow | 87 | `/tools/wifi-qr-code` | -| 18 | `/use-cases/qr-codes-for-product-packaging` | use-case | 87 | `/bulk-qr-code-generator` | -| 19 | `/qr-code-for/retail/packaging` | industry-workflow | 86 | `/bulk-qr-code-generator` | -| 20 | `/tools/url-qr-code/for-flyers` | tool-job | 86 | `/tools/url-qr-code` | -| 21 | `/guide/qr-code-security-best-practices` | guide-strategic | 86 | `/dynamic-qr-code-generator` | -| 22 | `/compare/qr-code-generator-com-alternative` | comparison | 86 | `/dynamic-qr-code-generator` | -| 23 | `/compare/bitly-qr-code-generator-alternative` | comparison | 86 | `/qr-code-tracking` | -| 24 | `/qr-code-for/events/check-in` | industry-workflow | 86 | `/tools/event-qr-code` | -| 25 | `/use-cases/qr-codes-for-review-collection` | use-case | 86 | `/qr-code-tracking` | -| 26 | `/tools/wifi-qr-code/for-restaurants` | tool-job | 85 | `/tools/wifi-qr-code` | -| 27 | `/tools/vcard-qr-code/for-business-cards` | tool-job | 85 | `/tools/vcard-qr-code` | -| 28 | `/guide/how-to-create-a-wifi-qr-code` | guide-problem | 85 | `/tools/wifi-qr-code` | -| 29 | `/guide/how-to-update-a-qr-code-after-printing` | guide-problem | 85 | `/dynamic-qr-code-generator` | -| 30 | `/compare/canva-qr-code-vs-qr-master` | comparison | 85 | `/custom-qr-code-generator` | -| 31 | `/qr-code-for/real-estate/open-house-flyers` | industry-workflow | 85 | `/qr-code-tracking` | -| 32 | `/use-cases/qr-codes-for-brochures` | use-case | 85 | `/dynamic-qr-code-generator` | -| 33 | `/tools/url-qr-code/for-packaging` | tool-job | 85 | `/tools/url-qr-code` | -| 34 | `/compare/uniqode-alternative` | comparison | 84 | `/qr-code-tracking` | -| 35 | `/compare/adobe-express-qr-code-vs-qr-master` | comparison | 84 | `/custom-qr-code-generator` | -| 36 | `/tools/whatsapp-qr-code/for-customer-support` | tool-job | 84 | `/tools/whatsapp-qr-code` | -| 37 | `/qr-code-for/cafes/loyalty-signups` | industry-workflow | 84 | `/tools/url-qr-code` | -| 38 | `/qr-code-for/events/booth-lead-capture` | industry-workflow | 84 | `/qr-code-tracking` | -| 39 | `/guide/qr-code-landing-page-best-practices` | guide-strategic | 84 | `/dynamic-qr-code-generator` | -| 40 | `/use-cases/qr-codes-for-table-ordering` | use-case | 84 | `/dynamic-qr-code-generator` | -| 41 | `/tools/pdf-qr-code/for-menus` | tool-job | 83 | `/dynamic-qr-code-generator` | -| 42 | `/guide/qr-code-analytics-for-offline-campaigns` | guide-strategic | 83 | `/qr-code-analytics` | -| 43 | `/compare/linktree-vs-qr-master-for-offline-campaigns` | comparison | 83 | `/qr-code-for-marketing-campaigns` | -| 44 | `/qr-code-for/doctors-dentists/intake-forms` | industry-workflow | 83 | `/tools/url-qr-code` | -| 45 | `/tools/paypal-qr-code/for-invoices` | tool-job | 82 | `/tools/paypal-qr-code` | -| 46 | `/guide/how-to-test-a-qr-code-before-printing` | guide-problem | 82 | `/custom-qr-code-generator` | -| 47 | `/use-cases/qr-codes-for-manuals-and-inserts` | use-case | 82 | `/bulk-qr-code-generator` | -| 48 | `/qr-code-for/retail/window-shopping` | industry-workflow | 81 | `/qr-code-for-marketing-campaigns` | -| 49 | `/tools/email-qr-code/for-event-follow-up` | tool-job | 81 | `/tools/email-qr-code` | -| 50 | `/guide/qr-code-branding-best-practices` | guide-strategic | 80 | `/custom-qr-code-generator` | - -## Shipment Mix For First 50 - -Recommended composition: - -- `15` comparison pages -- `15` guide pages -- `10` tool-job pages -- `10` industry-workflow or use-case pages - -This keeps the first wave biased toward: - -- bottom-funnel demand -- strong CTA fit -- cluster leverage into existing product pages - -## First 10 To Ship - -1. `/compare/dynamic-vs-static-qr-codes` -2. `/compare/free-vs-paid-qr-code-generator` -3. `/guide/how-to-track-qr-code-scans` -4. `/guide/why-my-qr-code-is-not-scanning` -5. `/guide/qr-code-print-size` -6. `/compare/qr-code-monkey-vs-qr-master` -7. `/compare/flowcode-alternative` -8. `/compare/beaconstac-alternative` -9. `/guide/how-to-use-utm-with-qr-codes` -10. `/guide/dynamic-qr-code-best-practices` - -## Cluster Notes - -### Cluster A: Dynamic QR buying decision - -- `/compare/dynamic-vs-static-qr-codes` -- `/compare/free-vs-paid-qr-code-generator` -- `/guide/dynamic-qr-code-best-practices` -- `/guide/how-to-update-a-qr-code-after-printing` -- `/dynamic-qr-code-generator` - -### Cluster B: Tracking and analytics - -- `/guide/how-to-track-qr-code-scans` -- `/guide/how-to-use-utm-with-qr-codes` -- `/guide/qr-code-analytics-for-offline-campaigns` -- `/qr-code-tracking` -- `/qr-code-analytics` - -### Cluster C: Print reliability - -- `/guide/why-my-qr-code-is-not-scanning` -- `/guide/qr-code-print-size` -- `/guide/how-to-test-a-qr-code-before-printing` -- `/custom-qr-code-generator` - -### Cluster D: Commercial alternatives - -- `/compare/qr-code-monkey-vs-qr-master` -- `/compare/flowcode-alternative` -- `/compare/beaconstac-alternative` -- `/compare/qr-code-generator-com-alternative` -- `/compare/uniqode-alternative` - -## Default Indexing Recommendation - -Default to `index` only when: - -- the page has a strong cluster position -- the CTA is specific and commercially coherent -- the page has distinct FAQs, workflow logic, and related links - -Default to `hold` or `noindex` when: - -- the page is still too close to an existing sibling -- the page has weak differentiation -- the cluster around it is not yet live +# Programmatic SEO Top 50 Backlog + +Date: 2026-03-31 +Project: QR Master +Purpose: Prioritized first-wave backlog for the new `comparison` and `guide` families plus adjacent high-fit commercial clusters. + +## Scoring Model + +Each URL idea is scored from `0-100`. + +Weights: + +- Commercial intent: `30` +- Product fit: `25` +- Differentiation potential: `15` +- Cluster leverage: `10` +- SERP winability: `10` +- Production effort: `10` + +Interpretation: + +- `90+`: ship immediately +- `85-89`: first-wave priority +- `80-84`: second-wave after initial measurement +- `<80`: hold until stronger cluster support exists + +## Top 50 + +| Rank | URL | Family | Score | Primary CTA | +|---|---|---|---:|---| +| 1 | `/compare/dynamic-vs-static-qr-codes` | comparison | 93 | `/dynamic-qr-code-generator` | +| 2 | `/compare/free-vs-paid-qr-code-generator` | comparison | 92 | `/pricing` | +| 3 | `/guide/how-to-track-qr-code-scans` | guide-problem | 91 | `/qr-code-tracking` | +| 4 | `/guide/why-my-qr-code-is-not-scanning` | guide-problem | 91 | `/custom-qr-code-generator` | +| 5 | `/guide/qr-code-print-size` | guide-problem | 90 | `/custom-qr-code-generator` | +| 6 | `/compare/qr-code-monkey-vs-qr-master` | comparison | 90 | `/dynamic-qr-code-generator` | +| 7 | `/compare/flowcode-alternative` | comparison | 89 | `/qr-code-tracking` | +| 8 | `/compare/beaconstac-alternative` | comparison | 89 | `/dynamic-qr-code-generator` | +| 9 | `/guide/how-to-use-utm-with-qr-codes` | guide-problem | 89 | `/qr-code-tracking` | +| 10 | `/guide/dynamic-qr-code-best-practices` | guide-strategic | 88 | `/dynamic-qr-code-generator` | +| 11 | `/guide/qr-code-gdpr` | guide-strategic | 88 | `/qr-code-tracking` | +| 12 | `/compare/bulk-qr-generator-vs-single-qr-generator` | comparison | 88 | `/bulk-qr-code-generator` | +| 13 | `/qr-code-for/restaurants/menu-updates` | industry-workflow | 88 | `/dynamic-qr-code-generator` | +| 14 | `/qr-code-for/restaurants/review-collection` | industry-workflow | 87 | `/qr-code-tracking` | +| 15 | `/tools/wifi-qr-code/for-hotels` | tool-job | 87 | `/tools/wifi-qr-code` | +| 16 | `/guide/how-to-create-a-vcard-qr-code` | guide-problem | 87 | `/tools/vcard-qr-code` | +| 17 | `/qr-code-for/hotels/guest-wifi` | industry-workflow | 87 | `/tools/wifi-qr-code` | +| 18 | `/use-cases/qr-codes-for-product-packaging` | use-case | 87 | `/bulk-qr-code-generator` | +| 19 | `/qr-code-for/retail/packaging` | industry-workflow | 86 | `/bulk-qr-code-generator` | +| 20 | `/tools/url-qr-code/for-flyers` | tool-job | 86 | `/tools/url-qr-code` | +| 21 | `/guide/qr-code-security-best-practices` | guide-strategic | 86 | `/dynamic-qr-code-generator` | +| 22 | `/compare/qr-code-generator-com-alternative` | comparison | 86 | `/dynamic-qr-code-generator` | +| 23 | `/compare/bitly-qr-code-generator-alternative` | comparison | 86 | `/qr-code-tracking` | +| 24 | `/qr-code-for/events/check-in` | industry-workflow | 86 | `/tools/event-qr-code` | +| 25 | `/use-cases/qr-codes-for-review-collection` | use-case | 86 | `/qr-code-tracking` | +| 26 | `/tools/wifi-qr-code/for-restaurants` | tool-job | 85 | `/tools/wifi-qr-code` | +| 27 | `/tools/vcard-qr-code/for-business-cards` | tool-job | 85 | `/tools/vcard-qr-code` | +| 28 | `/guide/how-to-create-a-wifi-qr-code` | guide-problem | 85 | `/tools/wifi-qr-code` | +| 29 | `/guide/how-to-update-a-qr-code-after-printing` | guide-problem | 85 | `/dynamic-qr-code-generator` | +| 30 | `/compare/canva-qr-code-vs-qr-master` | comparison | 85 | `/custom-qr-code-generator` | +| 31 | `/qr-code-for/real-estate/open-house-flyers` | industry-workflow | 85 | `/qr-code-tracking` | +| 32 | `/use-cases/qr-codes-for-brochures` | use-case | 85 | `/dynamic-qr-code-generator` | +| 33 | `/tools/url-qr-code/for-packaging` | tool-job | 85 | `/tools/url-qr-code` | +| 34 | `/compare/uniqode-alternative` | comparison | 84 | `/qr-code-tracking` | +| 35 | `/compare/adobe-express-qr-code-vs-qr-master` | comparison | 84 | `/custom-qr-code-generator` | +| 36 | `/tools/whatsapp-qr-code/for-customer-support` | tool-job | 84 | `/tools/whatsapp-qr-code` | +| 37 | `/qr-code-for/cafes/loyalty-signups` | industry-workflow | 84 | `/tools/url-qr-code` | +| 38 | `/qr-code-for/events/booth-lead-capture` | industry-workflow | 84 | `/qr-code-tracking` | +| 39 | `/guide/qr-code-landing-page-best-practices` | guide-strategic | 84 | `/dynamic-qr-code-generator` | +| 40 | `/use-cases/qr-codes-for-table-ordering` | use-case | 84 | `/dynamic-qr-code-generator` | +| 41 | `/tools/pdf-qr-code/for-menus` | tool-job | 83 | `/dynamic-qr-code-generator` | +| 42 | `/guide/qr-code-analytics-for-offline-campaigns` | guide-strategic | 83 | `/qr-code-analytics` | +| 43 | `/compare/linktree-vs-qr-master-for-offline-campaigns` | comparison | 83 | `/qr-code-for-marketing-campaigns` | +| 44 | `/qr-code-for/doctors-dentists/intake-forms` | industry-workflow | 83 | `/tools/url-qr-code` | +| 45 | `/tools/paypal-qr-code/for-invoices` | tool-job | 82 | `/tools/paypal-qr-code` | +| 46 | `/guide/how-to-test-a-qr-code-before-printing` | guide-problem | 82 | `/custom-qr-code-generator` | +| 47 | `/use-cases/qr-codes-for-manuals-and-inserts` | use-case | 82 | `/bulk-qr-code-generator` | +| 48 | `/qr-code-for/retail/window-shopping` | industry-workflow | 81 | `/qr-code-for-marketing-campaigns` | +| 49 | `/tools/email-qr-code/for-event-follow-up` | tool-job | 81 | `/tools/email-qr-code` | +| 50 | `/guide/qr-code-branding-best-practices` | guide-strategic | 80 | `/custom-qr-code-generator` | + +## Shipment Mix For First 50 + +Recommended composition: + +- `15` comparison pages +- `15` guide pages +- `10` tool-job pages +- `10` industry-workflow or use-case pages + +This keeps the first wave biased toward: + +- bottom-funnel demand +- strong CTA fit +- cluster leverage into existing product pages + +## First 10 To Ship + +1. `/compare/dynamic-vs-static-qr-codes` +2. `/compare/free-vs-paid-qr-code-generator` +3. `/guide/how-to-track-qr-code-scans` +4. `/guide/why-my-qr-code-is-not-scanning` +5. `/guide/qr-code-print-size` +6. `/compare/qr-code-monkey-vs-qr-master` +7. `/compare/flowcode-alternative` +8. `/compare/beaconstac-alternative` +9. `/guide/how-to-use-utm-with-qr-codes` +10. `/guide/dynamic-qr-code-best-practices` + +## Cluster Notes + +### Cluster A: Dynamic QR buying decision + +- `/compare/dynamic-vs-static-qr-codes` +- `/compare/free-vs-paid-qr-code-generator` +- `/guide/dynamic-qr-code-best-practices` +- `/guide/how-to-update-a-qr-code-after-printing` +- `/dynamic-qr-code-generator` + +### Cluster B: Tracking and analytics + +- `/guide/how-to-track-qr-code-scans` +- `/guide/how-to-use-utm-with-qr-codes` +- `/guide/qr-code-analytics-for-offline-campaigns` +- `/qr-code-tracking` +- `/qr-code-analytics` + +### Cluster C: Print reliability + +- `/guide/why-my-qr-code-is-not-scanning` +- `/guide/qr-code-print-size` +- `/guide/how-to-test-a-qr-code-before-printing` +- `/custom-qr-code-generator` + +### Cluster D: Commercial alternatives + +- `/compare/qr-code-monkey-vs-qr-master` +- `/compare/flowcode-alternative` +- `/compare/beaconstac-alternative` +- `/compare/qr-code-generator-com-alternative` +- `/compare/uniqode-alternative` + +## Default Indexing Recommendation + +Default to `index` only when: + +- the page has a strong cluster position +- the CTA is specific and commercially coherent +- the page has distinct FAQs, workflow logic, and related links + +Default to `hold` or `noindex` when: + +- the page is still too close to an existing sibling +- the page has weak differentiation +- the cluster around it is not yet live diff --git a/marketing/sales-deck-marketing-manager.md b/marketing/sales-deck-marketing-manager.md index e2bbcf8..f61c783 100644 --- a/marketing/sales-deck-marketing-manager.md +++ b/marketing/sales-deck-marketing-manager.md @@ -1,145 +1,145 @@ -# QR Master Sales Deck - -Audience: Marketing Manager -Use case: AE-led first demo / sales presentation -Stage: Discovery to first solution presentation -Format: 11-slide outline with presentation notes - -## Slide 1: Print Campaigns Should Not Go Dark After They Ship - -Body copy: -- Printed flyers, packaging, menus, and posters still drive action -- Static QR codes break the moment a link, offer, or landing page changes -- Marketing teams lose both flexibility and attribution - -Speaker notes: -Lead with the operational reality: print is still valuable, but static QR codes make it fragile. Position the problem as a marketing control issue, not just a design or ops issue. - -## Slide 2: The Cost of Static QR Codes Is Bigger Than Reprints - -Body copy: -- Reprints create direct waste every time a destination changes -- Campaign teams lose scan-level visibility into offline performance -- Manual updates slow launches and create avoidable errors - -Speaker notes: -Use the ROI angle here. QR Master already frames this as reprint waste plus lost measurement. If relevant, quantify with the prospect's own print budget and update frequency. - -## Slide 3: Marketing Teams Need Trackable Offline-to-Online Journeys - -Body copy: -- Offline campaigns now need the same measurement discipline as digital -- Teams want scan, device, and location insights without adding complexity -- Privacy expectations are higher, especially in Europe - -Speaker notes: -This is the urgency slide. The shift is not "QR codes are new" but "QR codes now need to behave like measurable campaign infrastructure." - -## Slide 4: QR Master Makes Printed Assets Editable, Trackable, and Privacy-First - -Body copy: -- Change QR destinations after printing with dynamic QR codes -- Track scans with analytics designed for marketing use cases -- Stay privacy-conscious with hashed IP handling and no PII-based tracking model - -Speaker notes: -Keep this simple. The core promise is control after print, measurable outcomes, and lower compliance anxiety. - -## Slide 5: Launch Campaign QR Codes Fast - -Body copy: -- Create dynamic or static QR codes in minutes -- Use specialized generators for URL, WiFi, menus, vCards, events, and more -- Download ready-to-use assets for print and packaging workflows - -Speaker notes: -Show speed to launch. This matters for marketers running many campaigns with changing assets and deadlines. - -## Slide 6: Update Destinations Without Reprinting - -Body copy: -- Swap landing pages, PDFs, menus, or promotions after distribution -- Keep the same printed QR code live while the destination evolves -- Reduce wasted inventory, signage, and packaging runs - -Speaker notes: -This is the core economic benefit. Tie it to seasonal campaigns, corrected links, changing offers, and localized landing pages. - -## Slide 7: Measure What Offline Campaigns Actually Drive - -Body copy: -- See scan activity, devices, and location patterns -- Understand which printed assets and campaigns create engagement -- Give marketing a better feedback loop for offline spend - -Speaker notes: -Frame analytics as decision support. The point is not dashboards for their own sake; it is knowing what to scale, fix, or stop. - -## Slide 8: Scale Beyond One-Off QR Campaigns - -Body copy: -- Business plan supports bulk QR creation up to 1,000 rows per upload -- Generate large batches for packaging, retail, events, and distributed campaigns -- Move from ad hoc QR creation to repeatable campaign operations - -Speaker notes: -Use this slide when the buyer has many SKUs, locations, or campaigns. For smaller teams, keep it brief and treat it as future-proofing. - -## Slide 9: Why Teams Choose QR Master - -Body copy: -- Privacy-first approach with hashed IPs and Do Not Track respect -- Bulk creation and advanced analytics in one platform -- More focused than generic design tools, simpler and more cost-conscious than enterprise-heavy alternatives - -Speaker notes: -This is where you position against free tools, Canva-style utilities, and more expensive enterprise QR platforms. Stay outcome-focused rather than feature-dense. - -## Slide 10: Value and Packaging - -Body copy: -- Free: 3 active dynamic QR codes and unlimited static QR codes -- Pro: EUR 9/month or EUR 90/year for 50 dynamic QR codes, advanced analytics, and branding -- Business: EUR 29/month or EUR 290/year for 500 dynamic QR codes, bulk creation, and priority support -- Enterprise: custom for larger rollouts - -Speaker notes: -Anchor pricing against reprint waste and attribution value, not against free QR generators. For many prospects, one avoided reprint can justify the upgrade. - -## Slide 11: Next Step - -Body copy: -- Start with one live campaign, menu, or packaging workflow -- Validate savings, scan visibility, and campaign agility -- Expand to broader printed assets once the first workflow is proven - -Speaker notes: -Push toward a concrete next step: free signup, guided walkthrough, or a pilot tied to one real campaign. Avoid vague closes. - -## Optional Proof Slide: Replace With Customer Evidence - -Use this only when you have real proof. - -Suggested content: -- Named customer logo -- Before / after workflow -- One quantified result -- One short buyer quote - -Current status: -- Replace composite examples with a real customer story before broad sales use -- Good first targets: restaurant groups, agencies, event operators, or retail packaging teams - -## Customization Notes For AEs - -- For restaurant buyers, emphasize menu changes and reprint savings earlier. -- For agency buyers, emphasize campaign measurement and client reporting. -- For operations or IT stakeholders, elevate privacy posture and workflow control. -- If the buyer is price-sensitive, open the reprint calculator before the pricing slide. - -## Missing Proof To Add Later - -- Named customer logos -- Verified customer quote -- Measured ROI or payback period from a live account -- Competitive win story versus Beaconstac, Flowcode, or generic free tools +# QR Master Sales Deck + +Audience: Marketing Manager +Use case: AE-led first demo / sales presentation +Stage: Discovery to first solution presentation +Format: 11-slide outline with presentation notes + +## Slide 1: Print Campaigns Should Not Go Dark After They Ship + +Body copy: +- Printed flyers, packaging, menus, and posters still drive action +- Static QR codes break the moment a link, offer, or landing page changes +- Marketing teams lose both flexibility and attribution + +Speaker notes: +Lead with the operational reality: print is still valuable, but static QR codes make it fragile. Position the problem as a marketing control issue, not just a design or ops issue. + +## Slide 2: The Cost of Static QR Codes Is Bigger Than Reprints + +Body copy: +- Reprints create direct waste every time a destination changes +- Campaign teams lose scan-level visibility into offline performance +- Manual updates slow launches and create avoidable errors + +Speaker notes: +Use the ROI angle here. QR Master already frames this as reprint waste plus lost measurement. If relevant, quantify with the prospect's own print budget and update frequency. + +## Slide 3: Marketing Teams Need Trackable Offline-to-Online Journeys + +Body copy: +- Offline campaigns now need the same measurement discipline as digital +- Teams want scan, device, and location insights without adding complexity +- Privacy expectations are higher, especially in Europe + +Speaker notes: +This is the urgency slide. The shift is not "QR codes are new" but "QR codes now need to behave like measurable campaign infrastructure." + +## Slide 4: QR Master Makes Printed Assets Editable, Trackable, and Privacy-First + +Body copy: +- Change QR destinations after printing with dynamic QR codes +- Track scans with analytics designed for marketing use cases +- Stay privacy-conscious with hashed IP handling and no PII-based tracking model + +Speaker notes: +Keep this simple. The core promise is control after print, measurable outcomes, and lower compliance anxiety. + +## Slide 5: Launch Campaign QR Codes Fast + +Body copy: +- Create dynamic or static QR codes in minutes +- Use specialized generators for URL, WiFi, menus, vCards, events, and more +- Download ready-to-use assets for print and packaging workflows + +Speaker notes: +Show speed to launch. This matters for marketers running many campaigns with changing assets and deadlines. + +## Slide 6: Update Destinations Without Reprinting + +Body copy: +- Swap landing pages, PDFs, menus, or promotions after distribution +- Keep the same printed QR code live while the destination evolves +- Reduce wasted inventory, signage, and packaging runs + +Speaker notes: +This is the core economic benefit. Tie it to seasonal campaigns, corrected links, changing offers, and localized landing pages. + +## Slide 7: Measure What Offline Campaigns Actually Drive + +Body copy: +- See scan activity, devices, and location patterns +- Understand which printed assets and campaigns create engagement +- Give marketing a better feedback loop for offline spend + +Speaker notes: +Frame analytics as decision support. The point is not dashboards for their own sake; it is knowing what to scale, fix, or stop. + +## Slide 8: Scale Beyond One-Off QR Campaigns + +Body copy: +- Business plan supports bulk QR creation up to 1,000 rows per upload +- Generate large batches for packaging, retail, events, and distributed campaigns +- Move from ad hoc QR creation to repeatable campaign operations + +Speaker notes: +Use this slide when the buyer has many SKUs, locations, or campaigns. For smaller teams, keep it brief and treat it as future-proofing. + +## Slide 9: Why Teams Choose QR Master + +Body copy: +- Privacy-first approach with hashed IPs and Do Not Track respect +- Bulk creation and advanced analytics in one platform +- More focused than generic design tools, simpler and more cost-conscious than enterprise-heavy alternatives + +Speaker notes: +This is where you position against free tools, Canva-style utilities, and more expensive enterprise QR platforms. Stay outcome-focused rather than feature-dense. + +## Slide 10: Value and Packaging + +Body copy: +- Free: 3 active dynamic QR codes and unlimited static QR codes +- Pro: EUR 9/month or EUR 90/year for 50 dynamic QR codes, advanced analytics, and branding +- Business: EUR 29/month or EUR 290/year for 500 dynamic QR codes, bulk creation, and priority support +- Enterprise: custom for larger rollouts + +Speaker notes: +Anchor pricing against reprint waste and attribution value, not against free QR generators. For many prospects, one avoided reprint can justify the upgrade. + +## Slide 11: Next Step + +Body copy: +- Start with one live campaign, menu, or packaging workflow +- Validate savings, scan visibility, and campaign agility +- Expand to broader printed assets once the first workflow is proven + +Speaker notes: +Push toward a concrete next step: free signup, guided walkthrough, or a pilot tied to one real campaign. Avoid vague closes. + +## Optional Proof Slide: Replace With Customer Evidence + +Use this only when you have real proof. + +Suggested content: +- Named customer logo +- Before / after workflow +- One quantified result +- One short buyer quote + +Current status: +- Replace composite examples with a real customer story before broad sales use +- Good first targets: restaurant groups, agencies, event operators, or retail packaging teams + +## Customization Notes For AEs + +- For restaurant buyers, emphasize menu changes and reprint savings earlier. +- For agency buyers, emphasize campaign measurement and client reporting. +- For operations or IT stakeholders, elevate privacy posture and workflow control. +- If the buyer is price-sensitive, open the reprint calculator before the pricing slide. + +## Missing Proof To Add Later + +- Named customer logos +- Verified customer quote +- Measured ROI or payback period from a live account +- Competitive win story versus Beaconstac, Flowcode, or generic free tools diff --git a/marketing/seo-outreach-top-20-emails.md b/marketing/seo-outreach-top-20-emails.md index 54ed9e1..cc42fc4 100644 --- a/marketing/seo-outreach-top-20-emails.md +++ b/marketing/seo-outreach-top-20-emails.md @@ -1,408 +1,408 @@ -# SEO Outreach Emails for Top 20 qrmaster.net Targets - -## Notes - -- Use a real sender name and personal email. -- Keep the signature plain. -- One follow-up after 5-7 days is enough. -- For weaker Tier 3 targets, send only if Tier 1 and Tier 2 are exhausted. - ---- - -## 1. Mailchimp -- URL: https://www.mailchimp.com/resources/startup-tools/ -- Contact: content@mailchimp.com -- Subject: startup tools - -Hi, - -Your startup tools page is strong on software founders use to run growth, but it skips one offline-to-online tool that shows up constantly in real campaigns: dynamic QR codes. - -Teams use them on flyers, packaging inserts, event signage, and direct mail when they need the destination to stay editable after print. That is the part most free QR generators do not handle well. - -qrmaster.net gives you free dynamic codes to start, plus tracking and bulk creation if a team needs to scale. - -Would that be worth considering for the list? - -Best, -[Your Name] - ---- - -## 2. Edutopia -- URL: https://www.edutopia.org/article/make-digital-classroom-tools-work-for-you/ -- Contact: community@edutopia.org -- Subject: classroom links - -Hi, - -Your piece on making digital classroom tools work is practical, especially around how teachers combine tools rather than add more noise. - -One missing piece is the handoff from paper to digital. Teachers still use printed worksheets, wall stations, and take-home sheets, and QR codes are often the cleanest way to get students from paper to the right resource without typing links. - -qrmaster.net is a simple QR tool with dynamic codes, so the destination can be updated later without reprinting the material. - -Could that be a useful addition to the article? - -Best, -[Your Name] - ---- - -## 3. Zendesk -- URL: https://www.zendesk.com/blog/startup-tools/ -- Contact: content@zendesk.com -- Subject: startup stack - -Hi, - -Your startup tools post covers the usual operating stack well. One category I expected to see but did not was dynamic QR codes. - -Founders end up using them for trade shows, one-pagers, packaging, retail counters, and printed onboarding material when they need a link that can still change after the asset is already out. - -qrmaster.net is built around that use case, with dynamic destinations, scan analytics, and bulk creation when a team moves beyond one-off codes. - -Would that fit the page? - -Best, -[Your Name] - ---- - -## 4. Eventbrite -- URL: https://www.eventbrite.com/blog/free-event-planning-software/ -- Contact: press@eventbrite.com -- Subject: event updates - -Hi, - -Your roundup of event planning software is useful, especially for people trying to avoid fragmented tools. - -One practical gap: a QR tool for printed signage, schedules, check-in pages, menus, or speaker updates when details change after assets are already printed. - -That is exactly where dynamic QR codes help. qrmaster.net lets event teams keep the printed code but update the destination later, which is useful when rooms, agendas, or landing pages change at the last minute. - -Would that be worth adding to the resource list? - -Best, -[Your Name] - ---- - -## 5. Cvent -- URL: https://www.cvent.com/en/blog/events/event-management-software-features -- Contact: blog@cvent.com -- Subject: event signage - -Hi, - -Your article on event management software features is grounded in actual event workflows, not generic feature talk. - -One adjacent tool worth including is a dynamic QR code generator. Event teams use it for printed agendas, venue signage, exhibitor material, and check-in flows when the target page may need to change after print. - -qrmaster.net was built for that kind of use: editable destinations, scan tracking, and bulk creation if an event needs many codes at once. - -Would that be relevant for the piece? - -Best, -[Your Name] - ---- - -## 6. t3n -- URL: https://t3n.de/news/kostenlose-tools-fuer-startups-608883/ -- Contact: redaktion@t3n.de -- Subject: startup tools - -Hallo, - -eure Liste mit kostenlosen Tools für Startups deckt viele typische SaaS-Kategorien ab. Was darin noch fehlt, ist ein sinnvoller QR-Code-Use-Case für Teams, die auch offline unterwegs sind. - -Startups nutzen QR-Codes inzwischen nicht nur auf Flyern, sondern auch auf Eventmaterial, Packaging, One-Pagern oder Print-Assets im Vertrieb. Relevant wird es vor allem dann, wenn sich die Zielseite nach dem Druck noch ändern können muss. - -qrmaster.net ist genau dafür gebaut: dynamische QR-Codes, Tracking und bei Bedarf Bulk-Erstellung. - -Wäre das eine sinnvolle Ergänzung für eure Liste? - -Viele Grüße -[Dein Name] - ---- - -## 7. Gründerszene -- URL: https://www.gruenderszene.de/business/startup-tools-marketing-vertrieb-it -- Contact: redaktion@gruenderszene.de -- Subject: marketing tools - -Hallo, - -in eurer Übersicht zu Startup-Tools für Marketing, Vertrieb und IT fehlt eine eher unscheinbare, aber in der Praxis oft genutzte Kategorie: dynamische QR-Codes. - -Gerade bei Events, Flyern, Print-Beilagen oder Sales-Unterlagen hilft ein QR-Code nur dann wirklich, wenn der Link später noch geändert werden kann. Sonst wird aus einem nützlichen Asset schnell ein Neudruck-Thema. - -qrmaster.net löst genau diesen Teil sauber, inklusive Tracking und Bulk-Erstellung für größere Kampagnen. - -Passt das als Ergänzung in euren Beitrag? - -Viele Grüße -[Dein Name] - ---- - -## 8. Common Sense Education -- URL: https://www.commonsense.org/education/articles/the-best-family-communication-platforms-for-teachers-and-schools -- Contact: editor@commonsense.org -- Subject: school handouts - -Hi, - -Your piece on family communication platforms is useful for the messaging layer between schools and families. - -One small tool that fits that workflow well is a QR code generator for printed handouts, take-home sheets, event reminders, and classroom notices. It gives schools a simple bridge from paper to the correct digital destination without asking families to type long links. - -qrmaster.net focuses on dynamic QR codes, so schools can update the destination later without reprinting the notice itself. - -Would that be a sensible addition to the article? - -Best, -[Your Name] - ---- - -## 9. Shopify -- URL: https://www.shopify.com/blog/startup-tools -- Contact: blog@shopify.com -- Subject: offline traffic - -Hi, - -Your startup tools piece covers the usual software stack well. One practical category that often gets missed is dynamic QR codes for offline traffic. - -Founders and small commerce teams use them on packaging, inserts, shelf talkers, retail posters, and pop-up event material when they want the printed asset to stay usable even if the destination changes later. - -qrmaster.net is built around that use case, with dynamic links, scan analytics, and bulk creation for larger campaigns. - -Worth a look for the list? - -Best, -[Your Name] - ---- - -## 10. Lehrer-Online -- URL: https://www.lehrer-online.de/unterricht/sekundarstufen/naturwissenschaften/informatik/ -- Contact: redaktion@lehrer-online.de -- Subject: unterricht links - -Hallo, - -eure Informatik-Ressourcen sind stark, vor allem weil sie direkt aus Unterrichtssituationen gedacht wirken. - -Ein Werkzeug, das dort noch gut hineinpasst, ist ein QR-Code-Generator für Arbeitsblätter, Stationen oder Aufgabenblätter mit digitalen Ergänzungen. Gerade im Unterricht spart das viel Reibung, weil niemand Links abtippen muss. - -qrmaster.net bietet dynamische QR-Codes, sodass Lehrkräfte den Ziel-Link später noch anpassen können, ohne Materialien neu zu drucken. - -Wäre das etwas für eure Ressourcen? - -Viele Grüße -[Dein Name] - ---- - -## 11. Fast Company -- URL: https://www.fastcompany.com/90645634/the-best-productivity-tools-for-small-business-owners -- Contact: tips@fastcompany.com -- Subject: small business tools - -Hi, - -Your productivity tools piece is broader than a standard startup roundup, which is why one omission stood out to me: dynamic QR codes. - -Small businesses use them in surprisingly practical ways, from printed menus and flyers to trade-show materials and packaging inserts. The useful part is not the code itself, it is being able to change the destination later without wasting the print run. - -qrmaster.net is focused on that exact job, with dynamic destinations and scan tracking built in. - -Would it be worth considering for the article? - -Best, -[Your Name] - ---- - -## 12. Canva -- URL: https://www.canva.com/learn/startup-tools/ -- Contact: content@canva.com -- Subject: printed campaigns - -Hi, - -Your startup tools page is useful for early teams that are assembling a practical stack, not just chasing shiny tools. - -One category that fits well there is dynamic QR codes for print-driven campaigns. Founders use them on postcards, brochures, packaging, event signage, and in-store material when they need the destination to stay editable after design work is already done. - -qrmaster.net handles that well, with dynamic links, scan analytics, and bulk generation when the use case grows beyond a single code. - -Could that fit the page? - -Best, -[Your Name] - ---- - -## 13. TechCrunch -- URL: https://www.techcrunch.com/2012/08/01/what-startups-should-do-before-they-get-into-the-vcs-office/ -- Contact: tips@techcrunch.com -- Subject: founder resources - -Hi, - -This is a slightly different angle than a typical software pitch. - -For founders doing events, investor meetings, demo days, and printed leave-behinds, dynamic QR codes are one of those low-profile tools that keep showing up because they make offline material measurable and editable after it is already in circulation. - -qrmaster.net is built for that, with dynamic destinations and scan tracking rather than just static code generation. - -Might be worth including anywhere you keep founder resource roundups. - -Best, -[Your Name] - ---- - -## 14. Notion -- URL: https://www.notion.so/blog/startup-tools-stack -- Contact: blog-team@makenotion.com -- Subject: startup ops - -Hi, - -Your startup stack article is close to how teams actually work, which is why this feels adjacent rather than random. - -One tool type that often belongs in that stack is dynamic QR codes for offline touchpoints: printed onboarding, trade-show assets, internal signage, product packaging, or field material that still needs an editable destination. - -qrmaster.net focuses on that layer, with dynamic links, scan analytics, and bulk creation if a team needs many codes at once. - -Would that be relevant for the piece? - -Best, -[Your Name] - ---- - -## 15. HubSpot -- URL: https://blog.hubspot.com/sales/entrepreneur-resources -- Contact: blog@hubspot.com -- Subject: entrepreneur resources - -Hi, - -Your entrepreneur resources page is broad enough that one missing category stood out: dynamic QR codes. - -Founders and small marketing teams use them on flyers, print inserts, trade-show handouts, and retail material when they need the destination to stay editable after the asset is out in the world. That is where a basic static QR generator usually stops being enough. - -qrmaster.net is built around that exact use case, with dynamic links, scan analytics, and bulk creation when campaigns expand. - -Would that be worth adding? - -Best, -[Your Name] - ---- - -## 16. Entrepreneur -- URL: https://www.entrepreneur.com/science-technology/10-essential-tools-for-every-startup-founder/336457 -- Contact: editorial@entrepreneur.com -- Subject: founder stack - -Hi, - -Your startup founder tools piece covers the standard software stack well. One practical category I expected to see was dynamic QR codes. - -They are useful anywhere founders still rely on physical touchpoints, whether that is an expo booth, a one-pager, packaging, or printed collateral. The important part is being able to update the destination later without reprinting. - -qrmaster.net focuses on that, with dynamic links, scan data, and bulk creation for larger sets of codes. - -Could that fit the article? - -Best, -[Your Name] - ---- - -## 17. Buffer -- URL: https://www.buffer.com/library/startup-tools/ -- Contact: hello@buffer.com -- Subject: startup list - -Hi, - -Your startup tools list is practical and readable, which is probably why one missing category stood out to me: dynamic QR codes. - -They are useful for more than events. Founders use them on packaging, printed promo material, customer onboarding cards, and offline campaigns when the link may need to change later. - -qrmaster.net is built for that layer, with dynamic destinations, tracking, and bulk creation when there are many codes to manage. - -Would that be worth adding to the list? - -Best, -[Your Name] - ---- - -## 18. Intercom -- URL: https://www.intercom.com/blog/startup-tools-for-growth/ -- Contact: blog@intercom.io -- Subject: growth tools - -Hi, - -Your startup growth tools piece is naturally focused on digital channels, but one useful edge case missing from the list is dynamic QR codes for offline growth touchpoints. - -Teams use them for packaging inserts, event materials, direct mail, posters, and printed onboarding flows when they want a link they can still update later and measure. - -qrmaster.net was built for that use case, with editable destinations, scan analytics, and bulk generation. - -Would that be relevant for the page? - -Best, -[Your Name] - ---- - -## 19. Inc. -- URL: https://www.inc.com/guides/2010/06/best-free-software-for-startups.html -- Contact: editorial@inc.com -- Subject: free software - -Hi, - -Your free software for startups guide is old enough to have room for one very practical update: dynamic QR codes. - -They are useful whenever a startup has printed material in market but still wants to change where people land later, whether that is a promo flyer, event handout, packaging insert, or storefront sign. - -qrmaster.net offers that in a straightforward way, with free dynamic codes to start and analytics if a team needs more than a static generator. - -Would it make sense as an addition? - -Best, -[Your Name] - ---- - -## 20. Forbes / Bernard Marr -- URL: https://www.forbes.com/sites/bernardmarr/2025/06/23/20-game-changing-ai-tools-every-small-business-leader-needs-now/ -- Contact: hello@bernardmarr.com -- Subject: small business tools - -Hi, - -Your roundup focuses on AI tools, so this is slightly adjacent rather than a direct category match. - -The reason I am reaching out anyway is that small business teams increasingly use dynamic QR codes anywhere print meets digital: brochures, packaging, event materials, menus, and in-store signage. The useful part is being able to change the destination after print and still measure scans. - -qrmaster.net is built around that use case. - -If you ever expand the list beyond AI-only tools, would that be relevant? - -Best, -[Your Name] +# SEO Outreach Emails for Top 20 qrmaster.net Targets + +## Notes + +- Use a real sender name and personal email. +- Keep the signature plain. +- One follow-up after 5-7 days is enough. +- For weaker Tier 3 targets, send only if Tier 1 and Tier 2 are exhausted. + +--- + +## 1. Mailchimp +- URL: https://www.mailchimp.com/resources/startup-tools/ +- Contact: content@mailchimp.com +- Subject: startup tools + +Hi, + +Your startup tools page is strong on software founders use to run growth, but it skips one offline-to-online tool that shows up constantly in real campaigns: dynamic QR codes. + +Teams use them on flyers, packaging inserts, event signage, and direct mail when they need the destination to stay editable after print. That is the part most free QR generators do not handle well. + +qrmaster.net gives you free dynamic codes to start, plus tracking and bulk creation if a team needs to scale. + +Would that be worth considering for the list? + +Best, +[Your Name] + +--- + +## 2. Edutopia +- URL: https://www.edutopia.org/article/make-digital-classroom-tools-work-for-you/ +- Contact: community@edutopia.org +- Subject: classroom links + +Hi, + +Your piece on making digital classroom tools work is practical, especially around how teachers combine tools rather than add more noise. + +One missing piece is the handoff from paper to digital. Teachers still use printed worksheets, wall stations, and take-home sheets, and QR codes are often the cleanest way to get students from paper to the right resource without typing links. + +qrmaster.net is a simple QR tool with dynamic codes, so the destination can be updated later without reprinting the material. + +Could that be a useful addition to the article? + +Best, +[Your Name] + +--- + +## 3. Zendesk +- URL: https://www.zendesk.com/blog/startup-tools/ +- Contact: content@zendesk.com +- Subject: startup stack + +Hi, + +Your startup tools post covers the usual operating stack well. One category I expected to see but did not was dynamic QR codes. + +Founders end up using them for trade shows, one-pagers, packaging, retail counters, and printed onboarding material when they need a link that can still change after the asset is already out. + +qrmaster.net is built around that use case, with dynamic destinations, scan analytics, and bulk creation when a team moves beyond one-off codes. + +Would that fit the page? + +Best, +[Your Name] + +--- + +## 4. Eventbrite +- URL: https://www.eventbrite.com/blog/free-event-planning-software/ +- Contact: press@eventbrite.com +- Subject: event updates + +Hi, + +Your roundup of event planning software is useful, especially for people trying to avoid fragmented tools. + +One practical gap: a QR tool for printed signage, schedules, check-in pages, menus, or speaker updates when details change after assets are already printed. + +That is exactly where dynamic QR codes help. qrmaster.net lets event teams keep the printed code but update the destination later, which is useful when rooms, agendas, or landing pages change at the last minute. + +Would that be worth adding to the resource list? + +Best, +[Your Name] + +--- + +## 5. Cvent +- URL: https://www.cvent.com/en/blog/events/event-management-software-features +- Contact: blog@cvent.com +- Subject: event signage + +Hi, + +Your article on event management software features is grounded in actual event workflows, not generic feature talk. + +One adjacent tool worth including is a dynamic QR code generator. Event teams use it for printed agendas, venue signage, exhibitor material, and check-in flows when the target page may need to change after print. + +qrmaster.net was built for that kind of use: editable destinations, scan tracking, and bulk creation if an event needs many codes at once. + +Would that be relevant for the piece? + +Best, +[Your Name] + +--- + +## 6. t3n +- URL: https://t3n.de/news/kostenlose-tools-fuer-startups-608883/ +- Contact: redaktion@t3n.de +- Subject: startup tools + +Hallo, + +eure Liste mit kostenlosen Tools für Startups deckt viele typische SaaS-Kategorien ab. Was darin noch fehlt, ist ein sinnvoller QR-Code-Use-Case für Teams, die auch offline unterwegs sind. + +Startups nutzen QR-Codes inzwischen nicht nur auf Flyern, sondern auch auf Eventmaterial, Packaging, One-Pagern oder Print-Assets im Vertrieb. Relevant wird es vor allem dann, wenn sich die Zielseite nach dem Druck noch ändern können muss. + +qrmaster.net ist genau dafür gebaut: dynamische QR-Codes, Tracking und bei Bedarf Bulk-Erstellung. + +Wäre das eine sinnvolle Ergänzung für eure Liste? + +Viele Grüße +[Dein Name] + +--- + +## 7. Gründerszene +- URL: https://www.gruenderszene.de/business/startup-tools-marketing-vertrieb-it +- Contact: redaktion@gruenderszene.de +- Subject: marketing tools + +Hallo, + +in eurer Übersicht zu Startup-Tools für Marketing, Vertrieb und IT fehlt eine eher unscheinbare, aber in der Praxis oft genutzte Kategorie: dynamische QR-Codes. + +Gerade bei Events, Flyern, Print-Beilagen oder Sales-Unterlagen hilft ein QR-Code nur dann wirklich, wenn der Link später noch geändert werden kann. Sonst wird aus einem nützlichen Asset schnell ein Neudruck-Thema. + +qrmaster.net löst genau diesen Teil sauber, inklusive Tracking und Bulk-Erstellung für größere Kampagnen. + +Passt das als Ergänzung in euren Beitrag? + +Viele Grüße +[Dein Name] + +--- + +## 8. Common Sense Education +- URL: https://www.commonsense.org/education/articles/the-best-family-communication-platforms-for-teachers-and-schools +- Contact: editor@commonsense.org +- Subject: school handouts + +Hi, + +Your piece on family communication platforms is useful for the messaging layer between schools and families. + +One small tool that fits that workflow well is a QR code generator for printed handouts, take-home sheets, event reminders, and classroom notices. It gives schools a simple bridge from paper to the correct digital destination without asking families to type long links. + +qrmaster.net focuses on dynamic QR codes, so schools can update the destination later without reprinting the notice itself. + +Would that be a sensible addition to the article? + +Best, +[Your Name] + +--- + +## 9. Shopify +- URL: https://www.shopify.com/blog/startup-tools +- Contact: blog@shopify.com +- Subject: offline traffic + +Hi, + +Your startup tools piece covers the usual software stack well. One practical category that often gets missed is dynamic QR codes for offline traffic. + +Founders and small commerce teams use them on packaging, inserts, shelf talkers, retail posters, and pop-up event material when they want the printed asset to stay usable even if the destination changes later. + +qrmaster.net is built around that use case, with dynamic links, scan analytics, and bulk creation for larger campaigns. + +Worth a look for the list? + +Best, +[Your Name] + +--- + +## 10. Lehrer-Online +- URL: https://www.lehrer-online.de/unterricht/sekundarstufen/naturwissenschaften/informatik/ +- Contact: redaktion@lehrer-online.de +- Subject: unterricht links + +Hallo, + +eure Informatik-Ressourcen sind stark, vor allem weil sie direkt aus Unterrichtssituationen gedacht wirken. + +Ein Werkzeug, das dort noch gut hineinpasst, ist ein QR-Code-Generator für Arbeitsblätter, Stationen oder Aufgabenblätter mit digitalen Ergänzungen. Gerade im Unterricht spart das viel Reibung, weil niemand Links abtippen muss. + +qrmaster.net bietet dynamische QR-Codes, sodass Lehrkräfte den Ziel-Link später noch anpassen können, ohne Materialien neu zu drucken. + +Wäre das etwas für eure Ressourcen? + +Viele Grüße +[Dein Name] + +--- + +## 11. Fast Company +- URL: https://www.fastcompany.com/90645634/the-best-productivity-tools-for-small-business-owners +- Contact: tips@fastcompany.com +- Subject: small business tools + +Hi, + +Your productivity tools piece is broader than a standard startup roundup, which is why one omission stood out to me: dynamic QR codes. + +Small businesses use them in surprisingly practical ways, from printed menus and flyers to trade-show materials and packaging inserts. The useful part is not the code itself, it is being able to change the destination later without wasting the print run. + +qrmaster.net is focused on that exact job, with dynamic destinations and scan tracking built in. + +Would it be worth considering for the article? + +Best, +[Your Name] + +--- + +## 12. Canva +- URL: https://www.canva.com/learn/startup-tools/ +- Contact: content@canva.com +- Subject: printed campaigns + +Hi, + +Your startup tools page is useful for early teams that are assembling a practical stack, not just chasing shiny tools. + +One category that fits well there is dynamic QR codes for print-driven campaigns. Founders use them on postcards, brochures, packaging, event signage, and in-store material when they need the destination to stay editable after design work is already done. + +qrmaster.net handles that well, with dynamic links, scan analytics, and bulk generation when the use case grows beyond a single code. + +Could that fit the page? + +Best, +[Your Name] + +--- + +## 13. TechCrunch +- URL: https://www.techcrunch.com/2012/08/01/what-startups-should-do-before-they-get-into-the-vcs-office/ +- Contact: tips@techcrunch.com +- Subject: founder resources + +Hi, + +This is a slightly different angle than a typical software pitch. + +For founders doing events, investor meetings, demo days, and printed leave-behinds, dynamic QR codes are one of those low-profile tools that keep showing up because they make offline material measurable and editable after it is already in circulation. + +qrmaster.net is built for that, with dynamic destinations and scan tracking rather than just static code generation. + +Might be worth including anywhere you keep founder resource roundups. + +Best, +[Your Name] + +--- + +## 14. Notion +- URL: https://www.notion.so/blog/startup-tools-stack +- Contact: blog-team@makenotion.com +- Subject: startup ops + +Hi, + +Your startup stack article is close to how teams actually work, which is why this feels adjacent rather than random. + +One tool type that often belongs in that stack is dynamic QR codes for offline touchpoints: printed onboarding, trade-show assets, internal signage, product packaging, or field material that still needs an editable destination. + +qrmaster.net focuses on that layer, with dynamic links, scan analytics, and bulk creation if a team needs many codes at once. + +Would that be relevant for the piece? + +Best, +[Your Name] + +--- + +## 15. HubSpot +- URL: https://blog.hubspot.com/sales/entrepreneur-resources +- Contact: blog@hubspot.com +- Subject: entrepreneur resources + +Hi, + +Your entrepreneur resources page is broad enough that one missing category stood out: dynamic QR codes. + +Founders and small marketing teams use them on flyers, print inserts, trade-show handouts, and retail material when they need the destination to stay editable after the asset is out in the world. That is where a basic static QR generator usually stops being enough. + +qrmaster.net is built around that exact use case, with dynamic links, scan analytics, and bulk creation when campaigns expand. + +Would that be worth adding? + +Best, +[Your Name] + +--- + +## 16. Entrepreneur +- URL: https://www.entrepreneur.com/science-technology/10-essential-tools-for-every-startup-founder/336457 +- Contact: editorial@entrepreneur.com +- Subject: founder stack + +Hi, + +Your startup founder tools piece covers the standard software stack well. One practical category I expected to see was dynamic QR codes. + +They are useful anywhere founders still rely on physical touchpoints, whether that is an expo booth, a one-pager, packaging, or printed collateral. The important part is being able to update the destination later without reprinting. + +qrmaster.net focuses on that, with dynamic links, scan data, and bulk creation for larger sets of codes. + +Could that fit the article? + +Best, +[Your Name] + +--- + +## 17. Buffer +- URL: https://www.buffer.com/library/startup-tools/ +- Contact: hello@buffer.com +- Subject: startup list + +Hi, + +Your startup tools list is practical and readable, which is probably why one missing category stood out to me: dynamic QR codes. + +They are useful for more than events. Founders use them on packaging, printed promo material, customer onboarding cards, and offline campaigns when the link may need to change later. + +qrmaster.net is built for that layer, with dynamic destinations, tracking, and bulk creation when there are many codes to manage. + +Would that be worth adding to the list? + +Best, +[Your Name] + +--- + +## 18. Intercom +- URL: https://www.intercom.com/blog/startup-tools-for-growth/ +- Contact: blog@intercom.io +- Subject: growth tools + +Hi, + +Your startup growth tools piece is naturally focused on digital channels, but one useful edge case missing from the list is dynamic QR codes for offline growth touchpoints. + +Teams use them for packaging inserts, event materials, direct mail, posters, and printed onboarding flows when they want a link they can still update later and measure. + +qrmaster.net was built for that use case, with editable destinations, scan analytics, and bulk generation. + +Would that be relevant for the page? + +Best, +[Your Name] + +--- + +## 19. Inc. +- URL: https://www.inc.com/guides/2010/06/best-free-software-for-startups.html +- Contact: editorial@inc.com +- Subject: free software + +Hi, + +Your free software for startups guide is old enough to have room for one very practical update: dynamic QR codes. + +They are useful whenever a startup has printed material in market but still wants to change where people land later, whether that is a promo flyer, event handout, packaging insert, or storefront sign. + +qrmaster.net offers that in a straightforward way, with free dynamic codes to start and analytics if a team needs more than a static generator. + +Would it make sense as an addition? + +Best, +[Your Name] + +--- + +## 20. Forbes / Bernard Marr +- URL: https://www.forbes.com/sites/bernardmarr/2025/06/23/20-game-changing-ai-tools-every-small-business-leader-needs-now/ +- Contact: hello@bernardmarr.com +- Subject: small business tools + +Hi, + +Your roundup focuses on AI tools, so this is slightly adjacent rather than a direct category match. + +The reason I am reaching out anyway is that small business teams increasingly use dynamic QR codes anywhere print meets digital: brochures, packaging, event materials, menus, and in-store signage. The useful part is being able to change the destination after print and still measure scans. + +qrmaster.net is built around that use case. + +If you ever expand the list beyond AI-only tools, would that be relevant? + +Best, +[Your Name] diff --git a/marketing/tiktok-slideshow-25-pack-prompts.md b/marketing/tiktok-slideshow-25-pack-prompts.md index 4f5af3b..eb25d4e 100644 --- a/marketing/tiktok-slideshow-25-pack-prompts.md +++ b/marketing/tiktok-slideshow-25-pack-prompts.md @@ -1,2150 +1,2150 @@ -# TikTok Slideshow 25-Pack Prompts for QR Master - -This document contains 25 TikTok slideshow prompt packs for QR Master. - -The pack is built for: -- educational discovery -- pain/problem awareness -- niche use-case validation -- light direct-response testing - -Distribution: -- 14 educational -- 7 pain/problem -- 4 direct selling - -These prompts follow the same premium visual direction as the existing QR Master slideshow files: -- Precision Editorial / "The Digital Architect" -- bright premium SaaS aesthetic -- intentional asymmetry -- tonal depth instead of hard borders -- soft glassmorphism and blue-lit gradients -- clean editorial hierarchy with strong headlines - -## Shared Global Prompt - -Use this global prompt before any slideshow pack: - -```text -Create a premium TikTok slideshow in vertical 9:16 format with built-in text overlay on every slide. -Style: bright, clean, modern, minimal editorial SaaS aesthetic. -Creative direction: Precision Editorial, high white space, intentional asymmetry, tonal depth, calm authority, premium digital craftsmanship. -Color palette: white, soft warm light gray, cobalt blue accents, subtle blue gradients, soft ambient navy-tinted shadows. -Lighting: bright studio daylight, soft glow, polished, airy. -Typography: bold modern sans-serif similar to Inter, large headline, very short text, clean spacing, high contrast, strong hierarchy. -Layout: editorial composition, asymmetrical but balanced, lots of negative space, QR code treated like a hero object. -Text placement: overlay text must be centered in the middle of the frame — not at the top, not at the bottom. -UI style: floating frosted panels, surface shifts instead of hard lines, soft glassmorphism, premium SaaS ad direction. -Important: -- Use exact overlay text provided for each slide. -- Keep text short and correctly spelled. -- Keep the text centered in the middle of the frame — never top-heavy, never bottom-heavy. -- No paragraph text. -- No clutter. -- No dark background. -- No generic stock-office look. -- No 1px hard borders. -- Use soft tonal transitions, ghost borders only if necessary. -- Slide 1 uses the avatar in an unbranded way only. -- The final slide is the only slide allowed to show QR Master branding. -- On slide 1, use the avatar as an unbranded character reference only, with no visible logo text on hat or hoodie. -- On the final slide, show the full branded avatar clearly. -- Keep every slide polished, premium, and TikTok-ready. -``` - -## Shared Negative Prompt - -```text -No dark theme, no messy backgrounds, no harsh shadows, no cheap cartoon look, no toy aesthetic, no cluttered desks, no random props, no heavy borders, no low-detail UI, no gibberish text blocks, no typo-filled posters, no loud neon colors, no generic corporate office scenes -``` - -## Shared Slide Logic - -- Slide 1: hook with unbranded avatar -- Middle slides: problem, use case, insight, or list progression -- Final slide: CTA with branded avatar - -## Suggested Testing Structure - -Run these in waves instead of publishing them randomly: - -1. Pain hooks first -2. Educational proof next -3. Niche use-case slideshows after that -4. Direct selling only after you know the strongest hooks - -When testing: -- keep the visual system stable -- change one messaging variable at a time -- compare only similar slideshow types inside the same wave - ---- - -## Slideshow 01 - Pain - -**Hook:** `One menu update should not mean one more reprint.` - -**Title:** `Menu Update Without Reprints` - -**Caption + Hashtags:** `Restaurants should not need a new print run every time a menu changes. Save this if you use QR menus. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #MenuDesign #QRMaster` - -### Slide 1 - -```text -Create a premium problem-first hook slide in vertical 9:16. -Scene: bright editorial white background, unbranded avatar beside a floating menu-style QR card, soft cobalt glow, premium restaurant-tech SaaS look. -Add large clean overlay text: -"One menu update should not mean one more reprint." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium hospitality pain slide in vertical 9:16. -Scene: elegant printed table menu and QR card in a bright minimal studio environment, soft tonal depth, calm premium composition. -Add large clean overlay text: -"Static menu QR codes lock you into one version." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium hospitality pain slide in vertical 9:16. -Scene: updated digital menu on a phone beside unchanged printed table collateral, white editorial environment, subtle mismatch. -Add large clean overlay text: -"One price change creates a print problem." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium solution-focused slide in vertical 9:16. -Scene: one menu QR card connected to editable destination panels, glowing blue lines, frosted UI cards, bright white premium background. -Add large clean overlay text: -"Keep the code. Update the menu." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a clean analytics-focused slide in vertical 9:16. -Scene: elegant dashboard cards with scan trends, location markers, device icons, central QR code, white background, soft blue glow. -Add large clean overlay text: -"See what guests actually scan." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt halo, spacious CTA composition. -Add large clean overlay text: -"Use QR Master for live menus" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 02 - Educational - -**Hook:** `How to change a QR destination after printing.` - -**Title:** `Change The Destination, Not The Print` - -**Caption + Hashtags:** `If you print QR codes on menus, flyers, or packaging, this is the workflow to know. qrmaster.net #QRCode #DynamicQRCode #PrintMarketing #MarketingTips #SmallBusiness #QRMaster` - -### Slide 1 - -```text -Create a premium educational hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar holding a phone and gesturing toward a floating QR card with subtle edit icon, soft glassmorphism accents. -Add large clean overlay text: -"How to change a QR destination after printing." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium explanatory slide in vertical 9:16. -Scene: elegant printed QR materials on one side and a fresh phone screen on the other, bright white environment, soft blue reflections. -Add large clean overlay text: -"Static codes lock the destination." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium workflow slide in vertical 9:16. -Scene: one central QR card shown like a gallery object, with subtle indicators that the target can change behind it, white premium background. -Add large clean overlay text: -"Dynamic codes separate print from destination." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium solution slide in vertical 9:16. -Scene: one floating QR card connected to multiple editable destinations, glowing blue lines, frosted interface cards, bright white background. -Add large clean overlay text: -"Print once. Update anytime." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium value slide in vertical 9:16. -Scene: elegant dashboard cards, scan analytics, location insight cards, central QR code, white background, soft cobalt glow. -Add large clean overlay text: -"And track the scans too." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar, bright premium white background, soft blue gradient halo, clean editorial spacing for CTA. -Add large clean overlay text: -"Start with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 03 - Educational - -**Hook:** `Top 5 signs your QR workflow is broken` - -**Title:** `Top 5 Broken QR Workflow Signs` - -**Caption + Hashtags:** `If your team prints QR codes, these are the warning signs to look for. Save this checklist. qrmaster.net #QRCode #DynamicQRCode #Operations #MarketingTips #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium checklist hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle warning UI markers, soft cobalt glow, calm premium SaaS look. -Add large clean overlay text: -"Top 5 signs your QR workflow is broken" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant print collateral and one static QR code in a bright white studio environment, soft tonal depth. -Add large clean overlay text: -"1. Every update needs a new print run" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: close-up of printed QR collateral beside a changed mobile destination, clean white editorial environment. -Add large clean overlay text: -"2. Old destinations keep going live" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: one QR code without surrounding analytics or insight panels, bright white premium background. -Add large clean overlay text: -"3. You cannot see what gets scanned" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: multiple mismatched printed QR assets shown across menu, flyer, and packaging objects, white background, subtle blue reflections. -Add large clean overlay text: -"4. Your team keeps creating duplicate codes" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: printed QR assets arranged without a central dashboard view, bright white environment, polished business-tech composition. -Add large clean overlay text: -"5. No one knows where the latest version lives" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt blue glow, spacious CTA layout. -Add large clean overlay text: -"Fix it with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 04 - Pain - -**Hook:** `Flyer QR codes do not fail because the code is broken.` - -**Title:** `Why Flyer QR Codes Fail` - -**Caption + Hashtags:** `Most flyer QR codes fail because the destination changes, not because the QR itself breaks. qrmaster.net #FlyerMarketing #QRCode #DynamicQRCode #CampaignTips #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium pain hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar next to a floating flyer-style QR panel, soft blue glow, premium SaaS ad style. -Add large clean overlay text: -"Flyer QR codes do not fail because the code is broken." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium pain slide in vertical 9:16. -Scene: elegant flyer cards on a bright white set with soft shadows and tonal layering, clean print-marketing composition. -Add large clean overlay text: -"They fail when the destination changes later." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium consequence slide in vertical 9:16. -Scene: printed flyer with QR code in the foreground and an outdated campaign page on a phone behind it, subtle mismatch, white editorial environment. -Add large clean overlay text: -"The scan still works. The journey does not." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium solution slide in vertical 9:16. -Scene: one floating flyer QR card connected to editable destinations, glowing blue connection lines, frosted UI panels, bright white background. -Add large clean overlay text: -"Keep the printed code. Fix the destination." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a clean analytics-focused slide in vertical 9:16. -Scene: elegant dashboard cards, scan analytics, campaign metrics, central QR code, white background, soft blue glow. -Add large clean overlay text: -"And measure flyer performance." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar, bright premium white background, soft cobalt halo, clean ad layout with ample CTA space. -Add large clean overlay text: -"Keep flyers useful with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 05 - Educational - -**Hook:** `Before you print 1,000 QR codes, check this first.` - -**Title:** `Before Bulk Printing QR Codes` - -**Caption + Hashtags:** `Bulk QR creation is powerful, but only if the workflow stays manageable after launch. qrmaster.net #BulkQRCode #QRCode #DynamicQRCode #Operations #BusinessTools #QRMaster` - -### Slide 1 - -```text -Create a premium warning-style hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR grid and subtle checklist markers, soft cobalt glow, premium operations-tech look. -Add large clean overlay text: -"Before you print 1,000 QR codes, check this first." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium educational slide in vertical 9:16. -Scene: elegant grid of QR labels or package cards arranged on a bright white surface, soft tonal depth, calm studio composition. -Add large clean overlay text: -"Bulk creation solves speed." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium educational slide in vertical 9:16. -Scene: clean dashboard environment with many QR assets shown in structured groups, white premium background, soft blue reflections. -Add large clean overlay text: -"But management becomes the real challenge." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium educational slide in vertical 9:16. -Scene: one bulk QR workflow connected to editable destinations, import sheets, and grouped dashboard panels, bright white background, glassy UI style. -Add large clean overlay text: -"You need editable destinations and one dashboard." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium value slide in vertical 9:16. -Scene: organized bulk dashboard cards with scan analytics and grouped QR assets, white premium environment, soft blue glow. -Add large clean overlay text: -"That is how bulk stays usable at scale." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt gradient halo, spacious CTA layout. -Add large clean overlay text: -"Scale with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 06 - Educational - -**Hook:** `Top 5 QR code use cases for restaurants` - -**Title:** `Top 5 Restaurant QR Use Cases` - -**Caption + Hashtags:** `Restaurants can do much more with QR codes than just digital menus. Save this for ideas. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #RestaurantTips #QRMaster` - -### Slide 1 - -```text -Create a premium niche hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating menu-style QR card, soft blue glow, calm restaurant-tech SaaS aesthetic. -Add large clean overlay text: -"Top 5 QR code use cases for restaurants" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant table menu QR setup on a bright white studio set, soft shadows, clean premium composition. -Add large clean overlay text: -"1. Live digital menus" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: refined table card with WiFi-style QR presentation, white editorial background, subtle blue reflections, minimal hospitality-tech look. -Add large clean overlay text: -"2. Guest WiFi access" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant feedback QR card in a bright white premium environment, soft ambient shadow, editorial spacing. -Add large clean overlay text: -"3. Reviews and feedback" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: promotional table card and campaign flyer with QR code in a bright modular setup, white background, soft cobalt glow. -Add large clean overlay text: -"4. Seasonal offers" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: loyalty or contact card concept built around one central QR code, bright white premium background, glassy UI touches, polished SaaS look. -Add large clean overlay text: -"5. Loyalty journeys" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt blue halo, strong restaurant-tech campaign composition. -Add large clean overlay text: -"Restaurants can start with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 07 - Pain - -**Hook:** `Packaging QR codes need a smarter workflow.` - -**Title:** `Packaging QR Needs Flexibility` - -**Caption + Hashtags:** `Packaging lives longer than campaigns. Your QR workflow should account for that. qrmaster.net #PackagingDesign #QRCode #DynamicQRCode #RetailMarketing #Operations #QRMaster` - -### Slide 1 - -```text -Create a premium packaging hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating product-package QR card, soft blue glow, premium retail-tech SaaS feel. -Add large clean overlay text: -"Packaging QR codes need a smarter workflow." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium packaging pain slide in vertical 9:16. -Scene: elegant packaging labels and boxes with QR codes arranged in a bright white product-shot setup, soft tonal depth. -Add large clean overlay text: -"Packaging outlives short campaigns." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium packaging pain slide in vertical 9:16. -Scene: printed package QR in foreground and an outdated mobile destination behind it, white editorial environment, subtle visual mismatch. -Add large clean overlay text: -"That is where static codes start losing value." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium solution-focused slide in vertical 9:16. -Scene: one central packaging QR card connected to editable product destinations, glowing blue lines, frosted UI panels, bright white background. -Add large clean overlay text: -"One package. Many future updates." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium value slide in vertical 9:16. -Scene: elegant dashboard cards showing scan analytics, campaign insights, QR code at center, white background, soft cobalt glow. -Add large clean overlay text: -"And better scan data over time." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar with phone and QR code, bright premium white background, soft blue halo, strong CTA layout. -Add large clean overlay text: -"Build packaging workflows with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 08 - Educational - -**Hook:** `Top 5 flyer QR mistakes businesses still make` - -**Title:** `Top 5 Flyer QR Mistakes` - -**Caption + Hashtags:** `Flyer campaigns fail faster when the QR workflow is static. Save this before your next print batch. qrmaster.net #FlyerMarketing #QRCode #DynamicQRCode #CampaignTips #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium list hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar pointing toward a floating flyer-style QR card and subtle numbered UI markers, soft cobalt glow. -Add large clean overlay text: -"Top 5 flyer QR mistakes businesses still make" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant flyer cards in a bright white studio environment, soft tonal layering, premium print-marketing composition. -Add large clean overlay text: -"1. Using one fixed destination" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: printed flyer with QR beside a phone showing a changed campaign page, white editorial background, subtle mismatch. -Add large clean overlay text: -"2. Launching without real-device testing" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: one flyer QR setup without analytics panels, bright white premium background, minimalist business composition. -Add large clean overlay text: -"3. Tracking nothing after the scan" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: multiple flyers with different QR assets arranged in a scattered but polished layout, white background, soft blue reflections. -Add large clean overlay text: -"4. Creating new codes for every update" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: printed flyer assets arranged without a central dashboard, white environment, soft ambient shadows, polished editorial spacing. -Add large clean overlay text: -"5. Managing campaigns across scattered tools" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue gradient halo, spacious CTA composition. -Add large clean overlay text: -"Run smarter flyer campaigns with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 09 - Educational - -**Hook:** `Event QR codes should never be static.` - -**Title:** `Event QR Codes Need Flexibility` - -**Caption + Hashtags:** `Events change fast. QR codes for schedules, maps, and offers should stay editable. qrmaster.net #EventMarketing #QRCode #DynamicQRCode #EventPlanning #MarketingTips #QRMaster` - -### Slide 1 - -```text -Create a premium niche hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating event-style QR card and subtle schedule markers, soft cobalt glow, premium event-tech SaaS style. -Add large clean overlay text: -"Event QR codes should never be static." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium event slide in vertical 9:16. -Scene: elegant poster, badge, and table card with QR code arranged in a bright white studio setup, soft shadows, editorial spacing. -Add large clean overlay text: -"Schedules move." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium event slide in vertical 9:16. -Scene: event map card and phone screen with updated event details, white premium environment, subtle visual shift. -Add large clean overlay text: -"Rooms change." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium event slide in vertical 9:16. -Scene: promotional QR poster and refreshed mobile destination on a phone, bright white editorial background, soft cobalt glow. -Add large clean overlay text: -"Offers update." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium solution slide in vertical 9:16. -Scene: one central event QR card connected to editable destinations, glowing blue lines, frosted panels, bright white background. -Add large clean overlay text: -"One event code should handle all of it." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium value slide in vertical 9:16. -Scene: elegant analytics cards with scan trends and campaign insight panels, white background, soft blue glow. -Add large clean overlay text: -"Plus you can track event engagement." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt halo, premium CTA spacing. -Add large clean overlay text: -"Manage event QR codes with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 10 - Pain - -**Hook:** `Static QR codes create hidden campaign risk.` - -**Title:** `Static QR Campaign Risk` - -**Caption + Hashtags:** `The QR still scans, but the campaign context may already be wrong. qrmaster.net #QRCode #DynamicQRCode #CampaignStrategy #MarketingTips #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium pain hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle warning dashboard cues, soft cobalt glow, premium SaaS look. -Add large clean overlay text: -"Static QR codes create hidden campaign risk." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium campaign pain slide in vertical 9:16. -Scene: printed flyer and poster with QR code shown in a bright white studio environment, soft tonal depth, minimal premium composition. -Add large clean overlay text: -"Campaigns change after launch." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium campaign pain slide in vertical 9:16. -Scene: same printed QR asset with an outdated landing page on the phone beside it, white editorial environment, subtle mismatch. -Add large clean overlay text: -"Static codes do not adapt with them." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium solution-focused slide in vertical 9:16. -Scene: one central QR code card connected to editable campaign destinations, glowing blue lines, frosted UI panels, bright white background. -Add large clean overlay text: -"Dynamic codes reduce that risk." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium analytics slide in vertical 9:16. -Scene: elegant dashboard cards with scan analytics, campaign insights, QR code at center, white background, soft cobalt glow. -Add large clean overlay text: -"And they show what is working." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar, bright premium white background, soft blue gradient halo, spacious CTA layout. -Add large clean overlay text: -"Run safer campaigns with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 11 - Educational - -**Hook:** `How marketers track offline campaigns with QR codes` - -**Title:** `Track Offline With QR` - -**Caption + Hashtags:** `Print does not have to be a black box. QR analytics can connect offline campaigns with real scan data. qrmaster.net #MarketingAnalytics #QRCode #DynamicQRCode #PrintMarketing #CampaignTracking #QRMaster` - -### Slide 1 - -```text -Create a premium educational hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and elegant analytics panels, soft cobalt glow, premium SaaS ad direction. -Add large clean overlay text: -"How marketers track offline campaigns with QR codes" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium educational slide in vertical 9:16. -Scene: printed flyer, poster, and table card arranged on a bright white set, soft tonal depth, editorial spacing. -Add large clean overlay text: -"Print gets attention." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium educational slide in vertical 9:16. -Scene: a central QR code card linking print assets to a phone destination, white premium background, soft glassmorphism interface accents. -Add large clean overlay text: -"QR codes connect print to digital action." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium analytics slide in vertical 9:16. -Scene: elegant dashboard cards with scan trends, location markers, device icons, campaign insight panels, white background, soft blue glow. -Add large clean overlay text: -"Now you can see scans, timing, and device trends." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium value slide in vertical 9:16. -Scene: polished dashboard environment combining QR assets and analytics, bright premium white background, calm editorial hierarchy. -Add large clean overlay text: -"That makes offline easier to optimize." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright white background, soft cobalt halo, clean CTA composition. -Add large clean overlay text: -"Track print with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 12 - Educational - -**Hook:** `Top 5 packaging QR use cases for modern brands` - -**Title:** `Top 5 Packaging QR Use Cases` - -**Caption + Hashtags:** `Packaging QR codes can do far more than point to a generic homepage. Save this for brand ideas. qrmaster.net #PackagingDesign #QRCode #DynamicQRCode #RetailMarketing #BrandStrategy #QRMaster` - -### Slide 1 - -```text -Create a premium packaging hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating packaging-style QR card, soft cobalt glow, premium retail-tech SaaS aesthetic. -Add large clean overlay text: -"Top 5 packaging QR use cases for modern brands" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant product package with QR label in a bright white premium studio setup, soft ambient shadow. -Add large clean overlay text: -"1. Product detail pages" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: packaging QR concept with a story-rich landing page on a phone, white editorial background, soft blue reflections. -Add large clean overlay text: -"2. Brand story and origin" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: package card with how-to or setup content on a phone nearby, bright white environment, minimal premium composition. -Add large clean overlay text: -"3. Instructions and onboarding" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: promotional package QR with campaign or discount destination hinted through clean floating cards, white background, soft cobalt glow. -Add large clean overlay text: -"4. Promotions and launches" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: package QR linked to analytics and customer feedback cards, bright white premium background, glassmorphism UI touches. -Add large clean overlay text: -"5. Product analytics and feedback" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, strong CTA layout. -Add large clean overlay text: -"Build packaging flows with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 13 - Educational - -**Hook:** `GDPR-friendly QR tracking is possible.` - -**Title:** `Privacy-First QR Tracking` - -**Caption + Hashtags:** `You can measure scans without building a creepy tracking workflow. qrmaster.net #GDPR #QRCode #DynamicQRCode #MarketingAnalytics #PrivacyFirst #QRMaster` - -### Slide 1 - -```text -Create a premium privacy-first hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle shield icon, soft cobalt glow, premium privacy-tech SaaS style. -Add large clean overlay text: -"GDPR-friendly QR tracking is possible." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium privacy slide in vertical 9:16. -Scene: elegant QR code card shown with soft analytics panels and a calm shield-like design cue, white premium background, subtle blue reflections. -Add large clean overlay text: -"Businesses still need scan insight." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium privacy slide in vertical 9:16. -Scene: analytics cards and privacy-first interface cues shown together, bright white editorial environment, soft tonal depth. -Add large clean overlay text: -"But they do not need invasive tracking." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium value slide in vertical 9:16. -Scene: elegant dashboard cards with scan metrics, device markers, and privacy-safe styling, white background, soft cobalt glow. -Add large clean overlay text: -"Privacy-first analytics can still guide smart decisions." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft blue gradient halo, spacious CTA layout. -Add large clean overlay text: -"Go privacy-first with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 14 - Pain - -**Hook:** `You do not need a new QR code for every update.` - -**Title:** `Stop Replacing QR Codes` - -**Caption + Hashtags:** `Many teams still create a brand-new QR code every time content changes. That is a workflow problem. qrmaster.net #QRCode #DynamicQRCode #Operations #MarketingWorkflow #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium contrarian hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and duplicate QR ghosts, soft cobalt glow, premium SaaS ad style. -Add large clean overlay text: -"You do not need a new QR code for every update." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium pain slide in vertical 9:16. -Scene: multiple similar QR cards arranged in a polished but obviously duplicated layout, bright white premium environment, soft shadows. -Add large clean overlay text: -"New code after every change creates chaos." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium pain slide in vertical 9:16. -Scene: menus, flyers, packaging, and posters each showing different QR assets, white editorial background, subtle visual clutter but still premium. -Add large clean overlay text: -"It also breaks consistency across print." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium solution slide in vertical 9:16. -Scene: one central QR code card connected to multiple changing destinations, glowing blue lines, frosted UI panels, bright white background. -Add large clean overlay text: -"One code should handle future changes." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium value slide in vertical 9:16. -Scene: organized dashboard with one clean QR system and analytics panels, white premium environment, soft cobalt glow. -Add large clean overlay text: -"That is the cleaner way to scale." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar, bright premium white background, soft cobalt halo, clean editorial CTA spacing. -Add large clean overlay text: -"Scale cleaner with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 15 - Educational - -**Hook:** `Bulk QR creation from CSV can save hours.` - -**Title:** `Bulk QR From CSV` - -**Caption + Hashtags:** `If your team needs hundreds of QR codes, manual creation is the wrong workflow. qrmaster.net #BulkQRCode #QRCode #DynamicQRCode #Operations #SaaS #QRMaster` - -### Slide 1 - -```text -Create a premium operations hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR grid and spreadsheet cues, soft cobalt glow, premium operations-tech feel. -Add large clean overlay text: -"Bulk QR creation from CSV can save hours." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium educational slide in vertical 9:16. -Scene: elegant group of QR labels or cards shown in a clean modular grid, bright white environment, soft tonal depth. -Add large clean overlay text: -"Manual creation does not scale." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium educational slide in vertical 9:16. -Scene: spreadsheet-style import cues feeding into grouped QR cards, white premium background, subtle glassmorphism panels. -Add large clean overlay text: -"CSV import speeds up the first step." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium educational slide in vertical 9:16. -Scene: bulk QR system connected to an organized dashboard and editable destination panels, bright white background, soft cobalt glow. -Add large clean overlay text: -"The real win is managing them in one system." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium value slide in vertical 9:16. -Scene: elegant bulk dashboard with analytics cards and grouped assets, white premium environment, polished editorial hierarchy. -Add large clean overlay text: -"That is how bulk becomes operationally useful." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright white background, soft blue gradient halo, spacious CTA layout. -Add large clean overlay text: -"Create in bulk with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 16 - Educational - -**Hook:** `Top 5 reasons teams switch to dynamic QR codes` - -**Title:** `Top 5 Reasons Teams Switch` - -**Caption + Hashtags:** `The switch usually happens for workflow reasons first, not just aesthetics. qrmaster.net #QRCode #DynamicQRCode #BusinessTools #MarketingWorkflow #Operations #QRMaster` - -### Slide 1 - -```text -Create a premium list hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle numbered UI cues, soft cobalt glow, calm premium SaaS style. -Add large clean overlay text: -"Top 5 reasons teams switch to dynamic QR codes" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant printed QR materials in a bright white studio setup, soft tonal depth, clean business composition. -Add large clean overlay text: -"1. They want fewer reprints" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: phone showing an updated destination beside printed collateral, white editorial background, subtle blue reflections. -Add large clean overlay text: -"2. They need editable destinations" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant analytics cards around a central QR code, white premium background, soft cobalt glow. -Add large clean overlay text: -"3. They want real scan analytics" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: organized dashboard environment with grouped QR assets, bright white editorial space, polished glassy UI panels. -Add large clean overlay text: -"4. They need one dashboard" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: privacy-friendly analytics cues and secure business-tech visual language, white premium background, soft ambient shadows. -Add large clean overlay text: -"5. They care about cleaner workflows and privacy" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt blue halo, spacious CTA composition. -Add large clean overlay text: -"Switch with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 17 - Pain - -**Hook:** `Your PDF QR code may already be outdated.` - -**Title:** `Outdated PDF QR Problem` - -**Caption + Hashtags:** `PDF links move. Files get replaced. Static QR codes do not keep up. qrmaster.net #QRCode #DynamicQRCode #PDF #PrintMarketing #BusinessTips #QRMaster` - -### Slide 1 - -```text -Create a premium problem-first hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating PDF-style QR card, soft cobalt glow, premium SaaS look. -Add large clean overlay text: -"Your PDF QR code may already be outdated." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium pain slide in vertical 9:16. -Scene: elegant printed brochure or poster with QR code shown in a bright white studio environment, soft tonal depth. -Add large clean overlay text: -"The code still scans." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium pain slide in vertical 9:16. -Scene: mobile screen showing a moved or updated PDF destination beside printed collateral, white editorial background, subtle mismatch. -Add large clean overlay text: -"But the file behind it changed." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium solution-focused slide in vertical 9:16. -Scene: one central QR code card connected to editable PDF destination cards, glowing blue lines, frosted UI panels, bright white background. -Add large clean overlay text: -"The print should stay stable. The file should stay flexible." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium analytics slide in vertical 9:16. -Scene: elegant dashboard cards and PDF download/scan insight panels, white premium environment, soft cobalt glow. -Add large clean overlay text: -"And you should still be able to measure scans." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar, bright premium white background, soft blue gradient halo, strong CTA layout. -Add large clean overlay text: -"Manage file QR codes with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 18 - Educational - -**Hook:** `Top 5 things to measure after a QR scan` - -**Title:** `Top 5 QR Metrics` - -**Caption + Hashtags:** `If you track QR campaigns, these are the first five things worth watching. qrmaster.net #MarketingAnalytics #QRCode #DynamicQRCode #CampaignTracking #BusinessTips #QRMaster` - -### Slide 1 - -```text -Create a premium metrics hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and elegant dashboard panels, soft cobalt glow, premium SaaS ad style. -Add large clean overlay text: -"Top 5 things to measure after a QR scan" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: dashboard cards with scan count cues, white premium background, soft blue reflections. -Add large clean overlay text: -"1. Total scans" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: analytics cards with time-based activity visuals, bright white editorial environment, polished hierarchy. -Add large clean overlay text: -"2. Scan timing" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: location pin cards around a central QR code, white background, soft cobalt glow. -Add large clean overlay text: -"3. Location trends" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: device insight cards shown in a clean glassmorphism layout, bright white premium background. -Add large clean overlay text: -"4. Device mix" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: campaign comparison dashboard with QR assets and performance cards, white background, soft ambient shadows. -Add large clean overlay text: -"5. Campaign-level performance" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, spacious CTA layout. -Add large clean overlay text: -"Measure more with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 19 - Educational - -**Hook:** `7 ways one QR dashboard helps a growing team` - -**Title:** `7 Ways One QR Dashboard Helps` - -**Caption + Hashtags:** `Growth makes QR workflows messier unless everything lives in one system. qrmaster.net #Operations #QRCode #DynamicQRCode #SaaS #MarketingWorkflow #QRMaster` - -### Slide 1 - -```text -Create a premium operations hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR dashboard panel, soft cobalt glow, premium business-tech composition. -Add large clean overlay text: -"7 ways one QR dashboard helps a growing team" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: organized QR asset view on a bright white dashboard-inspired set, soft tonal depth. -Add large clean overlay text: -"1. One place for every code" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: editable destination panels around a central QR card, white premium background, soft blue reflections. -Add large clean overlay text: -"2. Faster updates after launch" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: grouped campaign view with QR assets, bright white environment, polished editorial spacing. -Add large clean overlay text: -"3. Cleaner campaign organization" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: analytics cards and performance panels in a clean glassy arrangement, white premium background. -Add large clean overlay text: -"4. Better scan visibility" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: bulk management cues with grouped QR items and import panels, bright white editorial environment. -Add large clean overlay text: -"5. Easier bulk workflows" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a premium list slide in vertical 9:16. -Scene: team-friendly dashboard structure with permissions or grouping cues, white background, soft cobalt glow. -Add large clean overlay text: -"6. Less duplicate work" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 8 - -```text -Create a premium list slide in vertical 9:16. -Scene: dashboard and print assets shown in one unified premium system, white environment, subtle ambient shadow. -Add large clean overlay text: -"7. A more scalable print-to-digital workflow" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 9 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt gradient halo, spacious CTA composition. -Add large clean overlay text: -"Scale with one system: QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 20 - Educational - -**Hook:** `Top 5 campaigns that work better with dynamic QR codes` - -**Title:** `5 Campaigns Better With Dynamic QR` - -**Caption + Hashtags:** `Some campaigns benefit massively from editable QR destinations and real scan data. qrmaster.net #CampaignStrategy #QRCode #DynamicQRCode #MarketingTips #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium campaign hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle campaign panels, soft cobalt glow, premium SaaS ad style. -Add large clean overlay text: -"Top 5 campaigns that work better with dynamic QR codes" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant flyer campaign setup in a bright white studio environment, soft tonal depth, clean print-marketing composition. -Add large clean overlay text: -"1. Flyer campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: event poster or badge with QR code on a white editorial set, soft ambient shadows, polished hierarchy. -Add large clean overlay text: -"2. Event campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: restaurant menu QR setup and table card shown in a bright premium environment, soft cobalt reflections. -Add large clean overlay text: -"3. Restaurant promotions" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: product packaging with QR labels in a clean white studio, editorial spacing, subtle tonal depth. -Add large clean overlay text: -"4. Packaging campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: brochure or sales collateral with QR code, bright white premium background, glassy campaign accents. -Add large clean overlay text: -"5. Long-running print campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt halo, strong CTA composition. -Add large clean overlay text: -"Run them smarter with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 21 - Pain - -**Hook:** `Static QR codes waste more money than they look.` - -**Title:** `The Hidden Cost Of Static QR` - -**Caption + Hashtags:** `Wrong destinations, duplicate assets, extra reprints, and missing analytics add up fast. qrmaster.net #QRCode #DynamicQRCode #MarketingCosts #BusinessTips #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium pain hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle cost cues, soft cobalt glow, premium SaaS ad style. -Add large clean overlay text: -"Static QR codes waste more money than they look." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium cost-focused slide in vertical 9:16. -Scene: printed materials stacked in a bright white studio set, soft tonal depth, ambient navy-tinted shadows, minimal premium styling. -Add large clean overlay text: -"Reprints cost time and budget." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium cost-focused slide in vertical 9:16. -Scene: printed collateral paired with an outdated destination on a phone, white editorial background, subtle mismatch. -Add large clean overlay text: -"Wrong destinations cost trust." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium cost-focused slide in vertical 9:16. -Scene: QR assets shown without analytics panels, bright white premium environment, clean but intentionally limited workflow composition. -Add large clean overlay text: -"No scan data costs learning." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium solution slide in vertical 9:16. -Scene: one central QR system with editable destinations and analytics panels, white background, soft cobalt glow, refined editorial structure. -Add large clean overlay text: -"Dynamic workflows reduce all three." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft blue gradient halo, spacious CTA composition. -Add large clean overlay text: -"Reduce waste with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 22 - Direct Selling - -**Hook:** `The easiest way to manage QR codes for your business` - -**Title:** `Manage QR Codes The Easy Way` - -**Caption + Hashtags:** `If you need editable, trackable QR codes that work for real business use, start here. qrmaster.net #QRCode #DynamicQRCode #BusinessTools #SaaS #MarketingTools #QRMaster` - -### Slide 1 - -```text -Create a premium selling hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a sleek floating QR card and subtle dashboard panels, soft blue glow, premium SaaS ad feel. -Add large clean overlay text: -"The easiest way to manage QR codes for your business" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium selling slide in vertical 9:16. -Scene: clean central QR code card presented like a gallery object on a bright white surface, frosted UI accents, soft ambient shadow. -Add large clean overlay text: -"Create dynamic codes in minutes" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium selling slide in vertical 9:16. -Scene: one QR card connected to editable destination panels, glowing blue lines, frosted glass interface cards, white editorial background. -Add large clean overlay text: -"Update links anytime after printing" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium selling slide in vertical 9:16. -Scene: elegant dashboard cards, scan analytics, location markers, QR code at center, bright white background, soft cobalt glow, polished editorial look. -Add large clean overlay text: -"Track scans across campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium selling slide in vertical 9:16. -Scene: one clean dashboard environment with organized QR assets, frosted UI panels, white background, soft blue gradient accents, calm high-end SaaS look. -Add large clean overlay text: -"Keep everything in one dashboard" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded hero slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft blue halo, spacious CTA layout. -Add large clean overlay text: -"Start with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 23 - Direct Selling - -**Hook:** `Stop reprinting. Start with QR Master.` - -**Title:** `Stop Reprinting` - -**Caption + Hashtags:** `Use one code, update the destination anytime, and track every scan. Start with QR Master at qrmaster.net. #QRCode #DynamicQRCode #MarketingTools #SaaS #BusinessGrowth #QRMaster` - -### Slide 1 - -```text -Create a premium direct-response hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar next to a floating QR card, soft cobalt glow, minimal premium ad composition. -Add large clean overlay text: -"Stop reprinting. Start with QR Master." -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium direct-response slide in vertical 9:16. -Scene: elegant print assets and one central QR code card on a bright white set, soft tonal layering, editorial negative space. -Add large clean overlay text: -"Use one code for changing content" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium direct-response slide in vertical 9:16. -Scene: one QR card connected to editable destination panels, glowing blue lines, frosted UI, white background, clean modern SaaS style. -Add large clean overlay text: -"Edit the destination anytime" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium direct-response slide in vertical 9:16. -Scene: elegant dashboard cards, scan analytics, campaign insights, QR code at center, white background, soft blue glow, polished editorial look. -Add large clean overlay text: -"Track every scan" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium direct-response slide in vertical 9:16. -Scene: clean bright workflow scene combining QR code management, analytics, and print flexibility, white premium environment, glassmorphism accents, no clutter. -Add large clean overlay text: -"Save time, budget, and reprints" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded hero slide in vertical 9:16. -Scene: full branded QR Master avatar with phone and QR code, bright white premium background, soft cobalt glow, strong CTA composition. -Add large clean overlay text: -"QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 24 - Direct Selling - -**Hook:** `One QR platform for menus, flyers, packaging, and bulk creation` - -**Title:** `One QR Platform` - -**Caption + Hashtags:** `If your business uses QR codes across more than one workflow, centralization matters. qrmaster.net #QRCode #DynamicQRCode #BusinessTools #Operations #SaaS #QRMaster` - -### Slide 1 - -```text -Create a premium platform-style hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a central floating QR card with surrounding workflow icons, soft cobalt glow, premium SaaS style. -Add large clean overlay text: -"One QR platform for menus, flyers, packaging, and bulk creation" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium selling slide in vertical 9:16. -Scene: elegant menu QR setup in a bright white premium environment, soft shadows, editorial spacing. -Add large clean overlay text: -"Use it for restaurant menus" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium selling slide in vertical 9:16. -Scene: flyer and poster campaign QR setup on a clean white set, soft cobalt reflections, premium print-marketing look. -Add large clean overlay text: -"Use it for flyer campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium selling slide in vertical 9:16. -Scene: packaging labels and QR product cards shown in a bright white studio environment, soft tonal depth. -Add large clean overlay text: -"Use it for packaging workflows" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium selling slide in vertical 9:16. -Scene: bulk dashboard cues with grouped QR assets and import panels, white premium background, subtle glassmorphism. -Add large clean overlay text: -"Use it for bulk creation too" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright white background, soft cobalt gradient halo, spacious CTA layout. -Add large clean overlay text: -"Centralize with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Slideshow 25 - Direct Selling - -**Hook:** `If your QR workflow is growing, your tools should grow with it` - -**Title:** `Grow Your QR Workflow` - -**Caption + Hashtags:** `Growth breaks messy systems first. Use a QR workflow that can scale with your campaigns. qrmaster.net #QRCode #DynamicQRCode #Growth #BusinessTools #Operations #QRMaster` - -### Slide 1 - -```text -Create a premium growth-focused selling hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR dashboard card and subtle scale cues, soft cobalt glow, premium SaaS look. -Add large clean overlay text: -"If your QR workflow is growing, your tools should grow with it" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 2 - -```text -Create a premium selling slide in vertical 9:16. -Scene: elegant printed collateral shown across menu, flyer, event, and packaging objects on a bright white set, soft tonal depth. -Add large clean overlay text: -"More campaigns mean more moving parts" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 3 - -```text -Create a premium selling slide in vertical 9:16. -Scene: multiple QR assets and scattered tools hinted in a polished but fragmented business-tech composition, white editorial background. -Add large clean overlay text: -"Messy systems break first" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 4 - -```text -Create a premium selling slide in vertical 9:16. -Scene: one clean QR system connecting print assets, editable destinations, and analytics panels, bright white premium background, soft blue glow. -Add large clean overlay text: -"A centralized QR workflow scales better" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 5 - -```text -Create a premium selling slide in vertical 9:16. -Scene: polished dashboard environment with grouped QR assets, analytics cards, and campaign views, white premium background, refined editorial hierarchy. -Add large clean overlay text: -"That is what QR Master is built for" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - -### Slide 6 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, spacious CTA layout. -Add large clean overlay text: -"Grow with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered in the middle of the frame, not at the top or bottom. -``` - ---- - -## Final Note - -This file gives you 25 additional slideshow prompt packs in the same visual system as the existing QR Master TikTok assets. - -The smartest next step is: -- start with pain and educational hooks -- identify the top 3 winners -- only then remake those winners with one controlled change each +# TikTok Slideshow 25-Pack Prompts for QR Master + +This document contains 25 TikTok slideshow prompt packs for QR Master. + +The pack is built for: +- educational discovery +- pain/problem awareness +- niche use-case validation +- light direct-response testing + +Distribution: +- 14 educational +- 7 pain/problem +- 4 direct selling + +These prompts follow the same premium visual direction as the existing QR Master slideshow files: +- Precision Editorial / "The Digital Architect" +- bright premium SaaS aesthetic +- intentional asymmetry +- tonal depth instead of hard borders +- soft glassmorphism and blue-lit gradients +- clean editorial hierarchy with strong headlines + +## Shared Global Prompt + +Use this global prompt before any slideshow pack: + +```text +Create a premium TikTok slideshow in vertical 9:16 format with built-in text overlay on every slide. +Style: bright, clean, modern, minimal editorial SaaS aesthetic. +Creative direction: Precision Editorial, high white space, intentional asymmetry, tonal depth, calm authority, premium digital craftsmanship. +Color palette: white, soft warm light gray, cobalt blue accents, subtle blue gradients, soft ambient navy-tinted shadows. +Lighting: bright studio daylight, soft glow, polished, airy. +Typography: bold modern sans-serif similar to Inter, large headline, very short text, clean spacing, high contrast, strong hierarchy. +Layout: editorial composition, asymmetrical but balanced, lots of negative space, QR code treated like a hero object. +Text placement: overlay text must be centered in the middle of the frame — not at the top, not at the bottom. +UI style: floating frosted panels, surface shifts instead of hard lines, soft glassmorphism, premium SaaS ad direction. +Important: +- Use exact overlay text provided for each slide. +- Keep text short and correctly spelled. +- Keep the text centered in the middle of the frame — never top-heavy, never bottom-heavy. +- No paragraph text. +- No clutter. +- No dark background. +- No generic stock-office look. +- No 1px hard borders. +- Use soft tonal transitions, ghost borders only if necessary. +- Slide 1 uses the avatar in an unbranded way only. +- The final slide is the only slide allowed to show QR Master branding. +- On slide 1, use the avatar as an unbranded character reference only, with no visible logo text on hat or hoodie. +- On the final slide, show the full branded avatar clearly. +- Keep every slide polished, premium, and TikTok-ready. +``` + +## Shared Negative Prompt + +```text +No dark theme, no messy backgrounds, no harsh shadows, no cheap cartoon look, no toy aesthetic, no cluttered desks, no random props, no heavy borders, no low-detail UI, no gibberish text blocks, no typo-filled posters, no loud neon colors, no generic corporate office scenes +``` + +## Shared Slide Logic + +- Slide 1: hook with unbranded avatar +- Middle slides: problem, use case, insight, or list progression +- Final slide: CTA with branded avatar + +## Suggested Testing Structure + +Run these in waves instead of publishing them randomly: + +1. Pain hooks first +2. Educational proof next +3. Niche use-case slideshows after that +4. Direct selling only after you know the strongest hooks + +When testing: +- keep the visual system stable +- change one messaging variable at a time +- compare only similar slideshow types inside the same wave + +--- + +## Slideshow 01 - Pain + +**Hook:** `One menu update should not mean one more reprint.` + +**Title:** `Menu Update Without Reprints` + +**Caption + Hashtags:** `Restaurants should not need a new print run every time a menu changes. Save this if you use QR menus. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #MenuDesign #QRMaster` + +### Slide 1 + +```text +Create a premium problem-first hook slide in vertical 9:16. +Scene: bright editorial white background, unbranded avatar beside a floating menu-style QR card, soft cobalt glow, premium restaurant-tech SaaS look. +Add large clean overlay text: +"One menu update should not mean one more reprint." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium hospitality pain slide in vertical 9:16. +Scene: elegant printed table menu and QR card in a bright minimal studio environment, soft tonal depth, calm premium composition. +Add large clean overlay text: +"Static menu QR codes lock you into one version." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium hospitality pain slide in vertical 9:16. +Scene: updated digital menu on a phone beside unchanged printed table collateral, white editorial environment, subtle mismatch. +Add large clean overlay text: +"One price change creates a print problem." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium solution-focused slide in vertical 9:16. +Scene: one menu QR card connected to editable destination panels, glowing blue lines, frosted UI cards, bright white premium background. +Add large clean overlay text: +"Keep the code. Update the menu." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a clean analytics-focused slide in vertical 9:16. +Scene: elegant dashboard cards with scan trends, location markers, device icons, central QR code, white background, soft blue glow. +Add large clean overlay text: +"See what guests actually scan." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt halo, spacious CTA composition. +Add large clean overlay text: +"Use QR Master for live menus" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 02 - Educational + +**Hook:** `How to change a QR destination after printing.` + +**Title:** `Change The Destination, Not The Print` + +**Caption + Hashtags:** `If you print QR codes on menus, flyers, or packaging, this is the workflow to know. qrmaster.net #QRCode #DynamicQRCode #PrintMarketing #MarketingTips #SmallBusiness #QRMaster` + +### Slide 1 + +```text +Create a premium educational hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar holding a phone and gesturing toward a floating QR card with subtle edit icon, soft glassmorphism accents. +Add large clean overlay text: +"How to change a QR destination after printing." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium explanatory slide in vertical 9:16. +Scene: elegant printed QR materials on one side and a fresh phone screen on the other, bright white environment, soft blue reflections. +Add large clean overlay text: +"Static codes lock the destination." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium workflow slide in vertical 9:16. +Scene: one central QR card shown like a gallery object, with subtle indicators that the target can change behind it, white premium background. +Add large clean overlay text: +"Dynamic codes separate print from destination." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium solution slide in vertical 9:16. +Scene: one floating QR card connected to multiple editable destinations, glowing blue lines, frosted interface cards, bright white background. +Add large clean overlay text: +"Print once. Update anytime." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium value slide in vertical 9:16. +Scene: elegant dashboard cards, scan analytics, location insight cards, central QR code, white background, soft cobalt glow. +Add large clean overlay text: +"And track the scans too." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar, bright premium white background, soft blue gradient halo, clean editorial spacing for CTA. +Add large clean overlay text: +"Start with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 03 - Educational + +**Hook:** `Top 5 signs your QR workflow is broken` + +**Title:** `Top 5 Broken QR Workflow Signs` + +**Caption + Hashtags:** `If your team prints QR codes, these are the warning signs to look for. Save this checklist. qrmaster.net #QRCode #DynamicQRCode #Operations #MarketingTips #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium checklist hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle warning UI markers, soft cobalt glow, calm premium SaaS look. +Add large clean overlay text: +"Top 5 signs your QR workflow is broken" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant print collateral and one static QR code in a bright white studio environment, soft tonal depth. +Add large clean overlay text: +"1. Every update needs a new print run" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: close-up of printed QR collateral beside a changed mobile destination, clean white editorial environment. +Add large clean overlay text: +"2. Old destinations keep going live" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: one QR code without surrounding analytics or insight panels, bright white premium background. +Add large clean overlay text: +"3. You cannot see what gets scanned" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: multiple mismatched printed QR assets shown across menu, flyer, and packaging objects, white background, subtle blue reflections. +Add large clean overlay text: +"4. Your team keeps creating duplicate codes" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: printed QR assets arranged without a central dashboard view, bright white environment, polished business-tech composition. +Add large clean overlay text: +"5. No one knows where the latest version lives" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt blue glow, spacious CTA layout. +Add large clean overlay text: +"Fix it with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 04 - Pain + +**Hook:** `Flyer QR codes do not fail because the code is broken.` + +**Title:** `Why Flyer QR Codes Fail` + +**Caption + Hashtags:** `Most flyer QR codes fail because the destination changes, not because the QR itself breaks. qrmaster.net #FlyerMarketing #QRCode #DynamicQRCode #CampaignTips #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium pain hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar next to a floating flyer-style QR panel, soft blue glow, premium SaaS ad style. +Add large clean overlay text: +"Flyer QR codes do not fail because the code is broken." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium pain slide in vertical 9:16. +Scene: elegant flyer cards on a bright white set with soft shadows and tonal layering, clean print-marketing composition. +Add large clean overlay text: +"They fail when the destination changes later." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium consequence slide in vertical 9:16. +Scene: printed flyer with QR code in the foreground and an outdated campaign page on a phone behind it, subtle mismatch, white editorial environment. +Add large clean overlay text: +"The scan still works. The journey does not." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium solution slide in vertical 9:16. +Scene: one floating flyer QR card connected to editable destinations, glowing blue connection lines, frosted UI panels, bright white background. +Add large clean overlay text: +"Keep the printed code. Fix the destination." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a clean analytics-focused slide in vertical 9:16. +Scene: elegant dashboard cards, scan analytics, campaign metrics, central QR code, white background, soft blue glow. +Add large clean overlay text: +"And measure flyer performance." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar, bright premium white background, soft cobalt halo, clean ad layout with ample CTA space. +Add large clean overlay text: +"Keep flyers useful with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 05 - Educational + +**Hook:** `Before you print 1,000 QR codes, check this first.` + +**Title:** `Before Bulk Printing QR Codes` + +**Caption + Hashtags:** `Bulk QR creation is powerful, but only if the workflow stays manageable after launch. qrmaster.net #BulkQRCode #QRCode #DynamicQRCode #Operations #BusinessTools #QRMaster` + +### Slide 1 + +```text +Create a premium warning-style hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR grid and subtle checklist markers, soft cobalt glow, premium operations-tech look. +Add large clean overlay text: +"Before you print 1,000 QR codes, check this first." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium educational slide in vertical 9:16. +Scene: elegant grid of QR labels or package cards arranged on a bright white surface, soft tonal depth, calm studio composition. +Add large clean overlay text: +"Bulk creation solves speed." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium educational slide in vertical 9:16. +Scene: clean dashboard environment with many QR assets shown in structured groups, white premium background, soft blue reflections. +Add large clean overlay text: +"But management becomes the real challenge." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium educational slide in vertical 9:16. +Scene: one bulk QR workflow connected to editable destinations, import sheets, and grouped dashboard panels, bright white background, glassy UI style. +Add large clean overlay text: +"You need editable destinations and one dashboard." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium value slide in vertical 9:16. +Scene: organized bulk dashboard cards with scan analytics and grouped QR assets, white premium environment, soft blue glow. +Add large clean overlay text: +"That is how bulk stays usable at scale." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt gradient halo, spacious CTA layout. +Add large clean overlay text: +"Scale with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 06 - Educational + +**Hook:** `Top 5 QR code use cases for restaurants` + +**Title:** `Top 5 Restaurant QR Use Cases` + +**Caption + Hashtags:** `Restaurants can do much more with QR codes than just digital menus. Save this for ideas. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #RestaurantTips #QRMaster` + +### Slide 1 + +```text +Create a premium niche hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating menu-style QR card, soft blue glow, calm restaurant-tech SaaS aesthetic. +Add large clean overlay text: +"Top 5 QR code use cases for restaurants" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant table menu QR setup on a bright white studio set, soft shadows, clean premium composition. +Add large clean overlay text: +"1. Live digital menus" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: refined table card with WiFi-style QR presentation, white editorial background, subtle blue reflections, minimal hospitality-tech look. +Add large clean overlay text: +"2. Guest WiFi access" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant feedback QR card in a bright white premium environment, soft ambient shadow, editorial spacing. +Add large clean overlay text: +"3. Reviews and feedback" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: promotional table card and campaign flyer with QR code in a bright modular setup, white background, soft cobalt glow. +Add large clean overlay text: +"4. Seasonal offers" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: loyalty or contact card concept built around one central QR code, bright white premium background, glassy UI touches, polished SaaS look. +Add large clean overlay text: +"5. Loyalty journeys" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt blue halo, strong restaurant-tech campaign composition. +Add large clean overlay text: +"Restaurants can start with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 07 - Pain + +**Hook:** `Packaging QR codes need a smarter workflow.` + +**Title:** `Packaging QR Needs Flexibility` + +**Caption + Hashtags:** `Packaging lives longer than campaigns. Your QR workflow should account for that. qrmaster.net #PackagingDesign #QRCode #DynamicQRCode #RetailMarketing #Operations #QRMaster` + +### Slide 1 + +```text +Create a premium packaging hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating product-package QR card, soft blue glow, premium retail-tech SaaS feel. +Add large clean overlay text: +"Packaging QR codes need a smarter workflow." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium packaging pain slide in vertical 9:16. +Scene: elegant packaging labels and boxes with QR codes arranged in a bright white product-shot setup, soft tonal depth. +Add large clean overlay text: +"Packaging outlives short campaigns." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium packaging pain slide in vertical 9:16. +Scene: printed package QR in foreground and an outdated mobile destination behind it, white editorial environment, subtle visual mismatch. +Add large clean overlay text: +"That is where static codes start losing value." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium solution-focused slide in vertical 9:16. +Scene: one central packaging QR card connected to editable product destinations, glowing blue lines, frosted UI panels, bright white background. +Add large clean overlay text: +"One package. Many future updates." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium value slide in vertical 9:16. +Scene: elegant dashboard cards showing scan analytics, campaign insights, QR code at center, white background, soft cobalt glow. +Add large clean overlay text: +"And better scan data over time." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar with phone and QR code, bright premium white background, soft blue halo, strong CTA layout. +Add large clean overlay text: +"Build packaging workflows with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 08 - Educational + +**Hook:** `Top 5 flyer QR mistakes businesses still make` + +**Title:** `Top 5 Flyer QR Mistakes` + +**Caption + Hashtags:** `Flyer campaigns fail faster when the QR workflow is static. Save this before your next print batch. qrmaster.net #FlyerMarketing #QRCode #DynamicQRCode #CampaignTips #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium list hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar pointing toward a floating flyer-style QR card and subtle numbered UI markers, soft cobalt glow. +Add large clean overlay text: +"Top 5 flyer QR mistakes businesses still make" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant flyer cards in a bright white studio environment, soft tonal layering, premium print-marketing composition. +Add large clean overlay text: +"1. Using one fixed destination" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: printed flyer with QR beside a phone showing a changed campaign page, white editorial background, subtle mismatch. +Add large clean overlay text: +"2. Launching without real-device testing" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: one flyer QR setup without analytics panels, bright white premium background, minimalist business composition. +Add large clean overlay text: +"3. Tracking nothing after the scan" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: multiple flyers with different QR assets arranged in a scattered but polished layout, white background, soft blue reflections. +Add large clean overlay text: +"4. Creating new codes for every update" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: printed flyer assets arranged without a central dashboard, white environment, soft ambient shadows, polished editorial spacing. +Add large clean overlay text: +"5. Managing campaigns across scattered tools" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue gradient halo, spacious CTA composition. +Add large clean overlay text: +"Run smarter flyer campaigns with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 09 - Educational + +**Hook:** `Event QR codes should never be static.` + +**Title:** `Event QR Codes Need Flexibility` + +**Caption + Hashtags:** `Events change fast. QR codes for schedules, maps, and offers should stay editable. qrmaster.net #EventMarketing #QRCode #DynamicQRCode #EventPlanning #MarketingTips #QRMaster` + +### Slide 1 + +```text +Create a premium niche hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating event-style QR card and subtle schedule markers, soft cobalt glow, premium event-tech SaaS style. +Add large clean overlay text: +"Event QR codes should never be static." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium event slide in vertical 9:16. +Scene: elegant poster, badge, and table card with QR code arranged in a bright white studio setup, soft shadows, editorial spacing. +Add large clean overlay text: +"Schedules move." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium event slide in vertical 9:16. +Scene: event map card and phone screen with updated event details, white premium environment, subtle visual shift. +Add large clean overlay text: +"Rooms change." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium event slide in vertical 9:16. +Scene: promotional QR poster and refreshed mobile destination on a phone, bright white editorial background, soft cobalt glow. +Add large clean overlay text: +"Offers update." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium solution slide in vertical 9:16. +Scene: one central event QR card connected to editable destinations, glowing blue lines, frosted panels, bright white background. +Add large clean overlay text: +"One event code should handle all of it." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium value slide in vertical 9:16. +Scene: elegant analytics cards with scan trends and campaign insight panels, white background, soft blue glow. +Add large clean overlay text: +"Plus you can track event engagement." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt halo, premium CTA spacing. +Add large clean overlay text: +"Manage event QR codes with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 10 - Pain + +**Hook:** `Static QR codes create hidden campaign risk.` + +**Title:** `Static QR Campaign Risk` + +**Caption + Hashtags:** `The QR still scans, but the campaign context may already be wrong. qrmaster.net #QRCode #DynamicQRCode #CampaignStrategy #MarketingTips #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium pain hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle warning dashboard cues, soft cobalt glow, premium SaaS look. +Add large clean overlay text: +"Static QR codes create hidden campaign risk." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium campaign pain slide in vertical 9:16. +Scene: printed flyer and poster with QR code shown in a bright white studio environment, soft tonal depth, minimal premium composition. +Add large clean overlay text: +"Campaigns change after launch." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium campaign pain slide in vertical 9:16. +Scene: same printed QR asset with an outdated landing page on the phone beside it, white editorial environment, subtle mismatch. +Add large clean overlay text: +"Static codes do not adapt with them." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium solution-focused slide in vertical 9:16. +Scene: one central QR code card connected to editable campaign destinations, glowing blue lines, frosted UI panels, bright white background. +Add large clean overlay text: +"Dynamic codes reduce that risk." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium analytics slide in vertical 9:16. +Scene: elegant dashboard cards with scan analytics, campaign insights, QR code at center, white background, soft cobalt glow. +Add large clean overlay text: +"And they show what is working." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar, bright premium white background, soft blue gradient halo, spacious CTA layout. +Add large clean overlay text: +"Run safer campaigns with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 11 - Educational + +**Hook:** `How marketers track offline campaigns with QR codes` + +**Title:** `Track Offline With QR` + +**Caption + Hashtags:** `Print does not have to be a black box. QR analytics can connect offline campaigns with real scan data. qrmaster.net #MarketingAnalytics #QRCode #DynamicQRCode #PrintMarketing #CampaignTracking #QRMaster` + +### Slide 1 + +```text +Create a premium educational hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and elegant analytics panels, soft cobalt glow, premium SaaS ad direction. +Add large clean overlay text: +"How marketers track offline campaigns with QR codes" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium educational slide in vertical 9:16. +Scene: printed flyer, poster, and table card arranged on a bright white set, soft tonal depth, editorial spacing. +Add large clean overlay text: +"Print gets attention." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium educational slide in vertical 9:16. +Scene: a central QR code card linking print assets to a phone destination, white premium background, soft glassmorphism interface accents. +Add large clean overlay text: +"QR codes connect print to digital action." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium analytics slide in vertical 9:16. +Scene: elegant dashboard cards with scan trends, location markers, device icons, campaign insight panels, white background, soft blue glow. +Add large clean overlay text: +"Now you can see scans, timing, and device trends." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium value slide in vertical 9:16. +Scene: polished dashboard environment combining QR assets and analytics, bright premium white background, calm editorial hierarchy. +Add large clean overlay text: +"That makes offline easier to optimize." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright white background, soft cobalt halo, clean CTA composition. +Add large clean overlay text: +"Track print with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 12 - Educational + +**Hook:** `Top 5 packaging QR use cases for modern brands` + +**Title:** `Top 5 Packaging QR Use Cases` + +**Caption + Hashtags:** `Packaging QR codes can do far more than point to a generic homepage. Save this for brand ideas. qrmaster.net #PackagingDesign #QRCode #DynamicQRCode #RetailMarketing #BrandStrategy #QRMaster` + +### Slide 1 + +```text +Create a premium packaging hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating packaging-style QR card, soft cobalt glow, premium retail-tech SaaS aesthetic. +Add large clean overlay text: +"Top 5 packaging QR use cases for modern brands" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant product package with QR label in a bright white premium studio setup, soft ambient shadow. +Add large clean overlay text: +"1. Product detail pages" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: packaging QR concept with a story-rich landing page on a phone, white editorial background, soft blue reflections. +Add large clean overlay text: +"2. Brand story and origin" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: package card with how-to or setup content on a phone nearby, bright white environment, minimal premium composition. +Add large clean overlay text: +"3. Instructions and onboarding" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: promotional package QR with campaign or discount destination hinted through clean floating cards, white background, soft cobalt glow. +Add large clean overlay text: +"4. Promotions and launches" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: package QR linked to analytics and customer feedback cards, bright white premium background, glassmorphism UI touches. +Add large clean overlay text: +"5. Product analytics and feedback" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, strong CTA layout. +Add large clean overlay text: +"Build packaging flows with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 13 - Educational + +**Hook:** `GDPR-friendly QR tracking is possible.` + +**Title:** `Privacy-First QR Tracking` + +**Caption + Hashtags:** `You can measure scans without building a creepy tracking workflow. qrmaster.net #GDPR #QRCode #DynamicQRCode #MarketingAnalytics #PrivacyFirst #QRMaster` + +### Slide 1 + +```text +Create a premium privacy-first hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle shield icon, soft cobalt glow, premium privacy-tech SaaS style. +Add large clean overlay text: +"GDPR-friendly QR tracking is possible." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium privacy slide in vertical 9:16. +Scene: elegant QR code card shown with soft analytics panels and a calm shield-like design cue, white premium background, subtle blue reflections. +Add large clean overlay text: +"Businesses still need scan insight." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium privacy slide in vertical 9:16. +Scene: analytics cards and privacy-first interface cues shown together, bright white editorial environment, soft tonal depth. +Add large clean overlay text: +"But they do not need invasive tracking." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium value slide in vertical 9:16. +Scene: elegant dashboard cards with scan metrics, device markers, and privacy-safe styling, white background, soft cobalt glow. +Add large clean overlay text: +"Privacy-first analytics can still guide smart decisions." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft blue gradient halo, spacious CTA layout. +Add large clean overlay text: +"Go privacy-first with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 14 - Pain + +**Hook:** `You do not need a new QR code for every update.` + +**Title:** `Stop Replacing QR Codes` + +**Caption + Hashtags:** `Many teams still create a brand-new QR code every time content changes. That is a workflow problem. qrmaster.net #QRCode #DynamicQRCode #Operations #MarketingWorkflow #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium contrarian hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and duplicate QR ghosts, soft cobalt glow, premium SaaS ad style. +Add large clean overlay text: +"You do not need a new QR code for every update." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium pain slide in vertical 9:16. +Scene: multiple similar QR cards arranged in a polished but obviously duplicated layout, bright white premium environment, soft shadows. +Add large clean overlay text: +"New code after every change creates chaos." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium pain slide in vertical 9:16. +Scene: menus, flyers, packaging, and posters each showing different QR assets, white editorial background, subtle visual clutter but still premium. +Add large clean overlay text: +"It also breaks consistency across print." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium solution slide in vertical 9:16. +Scene: one central QR code card connected to multiple changing destinations, glowing blue lines, frosted UI panels, bright white background. +Add large clean overlay text: +"One code should handle future changes." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium value slide in vertical 9:16. +Scene: organized dashboard with one clean QR system and analytics panels, white premium environment, soft cobalt glow. +Add large clean overlay text: +"That is the cleaner way to scale." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar, bright premium white background, soft cobalt halo, clean editorial CTA spacing. +Add large clean overlay text: +"Scale cleaner with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 15 - Educational + +**Hook:** `Bulk QR creation from CSV can save hours.` + +**Title:** `Bulk QR From CSV` + +**Caption + Hashtags:** `If your team needs hundreds of QR codes, manual creation is the wrong workflow. qrmaster.net #BulkQRCode #QRCode #DynamicQRCode #Operations #SaaS #QRMaster` + +### Slide 1 + +```text +Create a premium operations hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR grid and spreadsheet cues, soft cobalt glow, premium operations-tech feel. +Add large clean overlay text: +"Bulk QR creation from CSV can save hours." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium educational slide in vertical 9:16. +Scene: elegant group of QR labels or cards shown in a clean modular grid, bright white environment, soft tonal depth. +Add large clean overlay text: +"Manual creation does not scale." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium educational slide in vertical 9:16. +Scene: spreadsheet-style import cues feeding into grouped QR cards, white premium background, subtle glassmorphism panels. +Add large clean overlay text: +"CSV import speeds up the first step." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium educational slide in vertical 9:16. +Scene: bulk QR system connected to an organized dashboard and editable destination panels, bright white background, soft cobalt glow. +Add large clean overlay text: +"The real win is managing them in one system." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium value slide in vertical 9:16. +Scene: elegant bulk dashboard with analytics cards and grouped assets, white premium environment, polished editorial hierarchy. +Add large clean overlay text: +"That is how bulk becomes operationally useful." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright white background, soft blue gradient halo, spacious CTA layout. +Add large clean overlay text: +"Create in bulk with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 16 - Educational + +**Hook:** `Top 5 reasons teams switch to dynamic QR codes` + +**Title:** `Top 5 Reasons Teams Switch` + +**Caption + Hashtags:** `The switch usually happens for workflow reasons first, not just aesthetics. qrmaster.net #QRCode #DynamicQRCode #BusinessTools #MarketingWorkflow #Operations #QRMaster` + +### Slide 1 + +```text +Create a premium list hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle numbered UI cues, soft cobalt glow, calm premium SaaS style. +Add large clean overlay text: +"Top 5 reasons teams switch to dynamic QR codes" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant printed QR materials in a bright white studio setup, soft tonal depth, clean business composition. +Add large clean overlay text: +"1. They want fewer reprints" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: phone showing an updated destination beside printed collateral, white editorial background, subtle blue reflections. +Add large clean overlay text: +"2. They need editable destinations" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant analytics cards around a central QR code, white premium background, soft cobalt glow. +Add large clean overlay text: +"3. They want real scan analytics" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: organized dashboard environment with grouped QR assets, bright white editorial space, polished glassy UI panels. +Add large clean overlay text: +"4. They need one dashboard" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: privacy-friendly analytics cues and secure business-tech visual language, white premium background, soft ambient shadows. +Add large clean overlay text: +"5. They care about cleaner workflows and privacy" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt blue halo, spacious CTA composition. +Add large clean overlay text: +"Switch with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 17 - Pain + +**Hook:** `Your PDF QR code may already be outdated.` + +**Title:** `Outdated PDF QR Problem` + +**Caption + Hashtags:** `PDF links move. Files get replaced. Static QR codes do not keep up. qrmaster.net #QRCode #DynamicQRCode #PDF #PrintMarketing #BusinessTips #QRMaster` + +### Slide 1 + +```text +Create a premium problem-first hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating PDF-style QR card, soft cobalt glow, premium SaaS look. +Add large clean overlay text: +"Your PDF QR code may already be outdated." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium pain slide in vertical 9:16. +Scene: elegant printed brochure or poster with QR code shown in a bright white studio environment, soft tonal depth. +Add large clean overlay text: +"The code still scans." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium pain slide in vertical 9:16. +Scene: mobile screen showing a moved or updated PDF destination beside printed collateral, white editorial background, subtle mismatch. +Add large clean overlay text: +"But the file behind it changed." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium solution-focused slide in vertical 9:16. +Scene: one central QR code card connected to editable PDF destination cards, glowing blue lines, frosted UI panels, bright white background. +Add large clean overlay text: +"The print should stay stable. The file should stay flexible." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium analytics slide in vertical 9:16. +Scene: elegant dashboard cards and PDF download/scan insight panels, white premium environment, soft cobalt glow. +Add large clean overlay text: +"And you should still be able to measure scans." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar, bright premium white background, soft blue gradient halo, strong CTA layout. +Add large clean overlay text: +"Manage file QR codes with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 18 - Educational + +**Hook:** `Top 5 things to measure after a QR scan` + +**Title:** `Top 5 QR Metrics` + +**Caption + Hashtags:** `If you track QR campaigns, these are the first five things worth watching. qrmaster.net #MarketingAnalytics #QRCode #DynamicQRCode #CampaignTracking #BusinessTips #QRMaster` + +### Slide 1 + +```text +Create a premium metrics hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and elegant dashboard panels, soft cobalt glow, premium SaaS ad style. +Add large clean overlay text: +"Top 5 things to measure after a QR scan" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: dashboard cards with scan count cues, white premium background, soft blue reflections. +Add large clean overlay text: +"1. Total scans" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: analytics cards with time-based activity visuals, bright white editorial environment, polished hierarchy. +Add large clean overlay text: +"2. Scan timing" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: location pin cards around a central QR code, white background, soft cobalt glow. +Add large clean overlay text: +"3. Location trends" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: device insight cards shown in a clean glassmorphism layout, bright white premium background. +Add large clean overlay text: +"4. Device mix" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: campaign comparison dashboard with QR assets and performance cards, white background, soft ambient shadows. +Add large clean overlay text: +"5. Campaign-level performance" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, spacious CTA layout. +Add large clean overlay text: +"Measure more with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 19 - Educational + +**Hook:** `7 ways one QR dashboard helps a growing team` + +**Title:** `7 Ways One QR Dashboard Helps` + +**Caption + Hashtags:** `Growth makes QR workflows messier unless everything lives in one system. qrmaster.net #Operations #QRCode #DynamicQRCode #SaaS #MarketingWorkflow #QRMaster` + +### Slide 1 + +```text +Create a premium operations hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR dashboard panel, soft cobalt glow, premium business-tech composition. +Add large clean overlay text: +"7 ways one QR dashboard helps a growing team" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: organized QR asset view on a bright white dashboard-inspired set, soft tonal depth. +Add large clean overlay text: +"1. One place for every code" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: editable destination panels around a central QR card, white premium background, soft blue reflections. +Add large clean overlay text: +"2. Faster updates after launch" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: grouped campaign view with QR assets, bright white environment, polished editorial spacing. +Add large clean overlay text: +"3. Cleaner campaign organization" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: analytics cards and performance panels in a clean glassy arrangement, white premium background. +Add large clean overlay text: +"4. Better scan visibility" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: bulk management cues with grouped QR items and import panels, bright white editorial environment. +Add large clean overlay text: +"5. Easier bulk workflows" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a premium list slide in vertical 9:16. +Scene: team-friendly dashboard structure with permissions or grouping cues, white background, soft cobalt glow. +Add large clean overlay text: +"6. Less duplicate work" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 8 + +```text +Create a premium list slide in vertical 9:16. +Scene: dashboard and print assets shown in one unified premium system, white environment, subtle ambient shadow. +Add large clean overlay text: +"7. A more scalable print-to-digital workflow" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 9 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding a phone with QR code, bright premium white background, soft cobalt gradient halo, spacious CTA composition. +Add large clean overlay text: +"Scale with one system: QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 20 - Educational + +**Hook:** `Top 5 campaigns that work better with dynamic QR codes` + +**Title:** `5 Campaigns Better With Dynamic QR` + +**Caption + Hashtags:** `Some campaigns benefit massively from editable QR destinations and real scan data. qrmaster.net #CampaignStrategy #QRCode #DynamicQRCode #MarketingTips #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium campaign hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle campaign panels, soft cobalt glow, premium SaaS ad style. +Add large clean overlay text: +"Top 5 campaigns that work better with dynamic QR codes" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant flyer campaign setup in a bright white studio environment, soft tonal depth, clean print-marketing composition. +Add large clean overlay text: +"1. Flyer campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: event poster or badge with QR code on a white editorial set, soft ambient shadows, polished hierarchy. +Add large clean overlay text: +"2. Event campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: restaurant menu QR setup and table card shown in a bright premium environment, soft cobalt reflections. +Add large clean overlay text: +"3. Restaurant promotions" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: product packaging with QR labels in a clean white studio, editorial spacing, subtle tonal depth. +Add large clean overlay text: +"4. Packaging campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: brochure or sales collateral with QR code, bright white premium background, glassy campaign accents. +Add large clean overlay text: +"5. Long-running print campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt halo, strong CTA composition. +Add large clean overlay text: +"Run them smarter with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 21 - Pain + +**Hook:** `Static QR codes waste more money than they look.` + +**Title:** `The Hidden Cost Of Static QR` + +**Caption + Hashtags:** `Wrong destinations, duplicate assets, extra reprints, and missing analytics add up fast. qrmaster.net #QRCode #DynamicQRCode #MarketingCosts #BusinessTips #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium pain hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card and subtle cost cues, soft cobalt glow, premium SaaS ad style. +Add large clean overlay text: +"Static QR codes waste more money than they look." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium cost-focused slide in vertical 9:16. +Scene: printed materials stacked in a bright white studio set, soft tonal depth, ambient navy-tinted shadows, minimal premium styling. +Add large clean overlay text: +"Reprints cost time and budget." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium cost-focused slide in vertical 9:16. +Scene: printed collateral paired with an outdated destination on a phone, white editorial background, subtle mismatch. +Add large clean overlay text: +"Wrong destinations cost trust." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium cost-focused slide in vertical 9:16. +Scene: QR assets shown without analytics panels, bright white premium environment, clean but intentionally limited workflow composition. +Add large clean overlay text: +"No scan data costs learning." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium solution slide in vertical 9:16. +Scene: one central QR system with editable destinations and analytics panels, white background, soft cobalt glow, refined editorial structure. +Add large clean overlay text: +"Dynamic workflows reduce all three." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft blue gradient halo, spacious CTA composition. +Add large clean overlay text: +"Reduce waste with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 22 - Direct Selling + +**Hook:** `The easiest way to manage QR codes for your business` + +**Title:** `Manage QR Codes The Easy Way` + +**Caption + Hashtags:** `If you need editable, trackable QR codes that work for real business use, start here. qrmaster.net #QRCode #DynamicQRCode #BusinessTools #SaaS #MarketingTools #QRMaster` + +### Slide 1 + +```text +Create a premium selling hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a sleek floating QR card and subtle dashboard panels, soft blue glow, premium SaaS ad feel. +Add large clean overlay text: +"The easiest way to manage QR codes for your business" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium selling slide in vertical 9:16. +Scene: clean central QR code card presented like a gallery object on a bright white surface, frosted UI accents, soft ambient shadow. +Add large clean overlay text: +"Create dynamic codes in minutes" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium selling slide in vertical 9:16. +Scene: one QR card connected to editable destination panels, glowing blue lines, frosted glass interface cards, white editorial background. +Add large clean overlay text: +"Update links anytime after printing" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium selling slide in vertical 9:16. +Scene: elegant dashboard cards, scan analytics, location markers, QR code at center, bright white background, soft cobalt glow, polished editorial look. +Add large clean overlay text: +"Track scans across campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium selling slide in vertical 9:16. +Scene: one clean dashboard environment with organized QR assets, frosted UI panels, white background, soft blue gradient accents, calm high-end SaaS look. +Add large clean overlay text: +"Keep everything in one dashboard" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded hero slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft blue halo, spacious CTA layout. +Add large clean overlay text: +"Start with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 23 - Direct Selling + +**Hook:** `Stop reprinting. Start with QR Master.` + +**Title:** `Stop Reprinting` + +**Caption + Hashtags:** `Use one code, update the destination anytime, and track every scan. Start with QR Master at qrmaster.net. #QRCode #DynamicQRCode #MarketingTools #SaaS #BusinessGrowth #QRMaster` + +### Slide 1 + +```text +Create a premium direct-response hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar next to a floating QR card, soft cobalt glow, minimal premium ad composition. +Add large clean overlay text: +"Stop reprinting. Start with QR Master." +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium direct-response slide in vertical 9:16. +Scene: elegant print assets and one central QR code card on a bright white set, soft tonal layering, editorial negative space. +Add large clean overlay text: +"Use one code for changing content" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium direct-response slide in vertical 9:16. +Scene: one QR card connected to editable destination panels, glowing blue lines, frosted UI, white background, clean modern SaaS style. +Add large clean overlay text: +"Edit the destination anytime" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium direct-response slide in vertical 9:16. +Scene: elegant dashboard cards, scan analytics, campaign insights, QR code at center, white background, soft blue glow, polished editorial look. +Add large clean overlay text: +"Track every scan" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium direct-response slide in vertical 9:16. +Scene: clean bright workflow scene combining QR code management, analytics, and print flexibility, white premium environment, glassmorphism accents, no clutter. +Add large clean overlay text: +"Save time, budget, and reprints" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded hero slide in vertical 9:16. +Scene: full branded QR Master avatar with phone and QR code, bright white premium background, soft cobalt glow, strong CTA composition. +Add large clean overlay text: +"QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 24 - Direct Selling + +**Hook:** `One QR platform for menus, flyers, packaging, and bulk creation` + +**Title:** `One QR Platform` + +**Caption + Hashtags:** `If your business uses QR codes across more than one workflow, centralization matters. qrmaster.net #QRCode #DynamicQRCode #BusinessTools #Operations #SaaS #QRMaster` + +### Slide 1 + +```text +Create a premium platform-style hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a central floating QR card with surrounding workflow icons, soft cobalt glow, premium SaaS style. +Add large clean overlay text: +"One QR platform for menus, flyers, packaging, and bulk creation" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium selling slide in vertical 9:16. +Scene: elegant menu QR setup in a bright white premium environment, soft shadows, editorial spacing. +Add large clean overlay text: +"Use it for restaurant menus" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium selling slide in vertical 9:16. +Scene: flyer and poster campaign QR setup on a clean white set, soft cobalt reflections, premium print-marketing look. +Add large clean overlay text: +"Use it for flyer campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium selling slide in vertical 9:16. +Scene: packaging labels and QR product cards shown in a bright white studio environment, soft tonal depth. +Add large clean overlay text: +"Use it for packaging workflows" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium selling slide in vertical 9:16. +Scene: bulk dashboard cues with grouped QR assets and import panels, white premium background, subtle glassmorphism. +Add large clean overlay text: +"Use it for bulk creation too" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright white background, soft cobalt gradient halo, spacious CTA layout. +Add large clean overlay text: +"Centralize with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Slideshow 25 - Direct Selling + +**Hook:** `If your QR workflow is growing, your tools should grow with it` + +**Title:** `Grow Your QR Workflow` + +**Caption + Hashtags:** `Growth breaks messy systems first. Use a QR workflow that can scale with your campaigns. qrmaster.net #QRCode #DynamicQRCode #Growth #BusinessTools #Operations #QRMaster` + +### Slide 1 + +```text +Create a premium growth-focused selling hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR dashboard card and subtle scale cues, soft cobalt glow, premium SaaS look. +Add large clean overlay text: +"If your QR workflow is growing, your tools should grow with it" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 2 + +```text +Create a premium selling slide in vertical 9:16. +Scene: elegant printed collateral shown across menu, flyer, event, and packaging objects on a bright white set, soft tonal depth. +Add large clean overlay text: +"More campaigns mean more moving parts" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 3 + +```text +Create a premium selling slide in vertical 9:16. +Scene: multiple QR assets and scattered tools hinted in a polished but fragmented business-tech composition, white editorial background. +Add large clean overlay text: +"Messy systems break first" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 4 + +```text +Create a premium selling slide in vertical 9:16. +Scene: one clean QR system connecting print assets, editable destinations, and analytics panels, bright white premium background, soft blue glow. +Add large clean overlay text: +"A centralized QR workflow scales better" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 5 + +```text +Create a premium selling slide in vertical 9:16. +Scene: polished dashboard environment with grouped QR assets, analytics cards, and campaign views, white premium background, refined editorial hierarchy. +Add large clean overlay text: +"That is what QR Master is built for" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +### Slide 6 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, spacious CTA layout. +Add large clean overlay text: +"Grow with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered in the middle of the frame, not at the top or bottom. +``` + +--- + +## Final Note + +This file gives you 25 additional slideshow prompt packs in the same visual system as the existing QR Master TikTok assets. + +The smartest next step is: +- start with pain and educational hooks +- identify the top 3 winners +- only then remake those winners with one controlled change each diff --git a/marketing/tiktok-top5-slideshow-pack.md b/marketing/tiktok-top5-slideshow-pack.md index 26a52d3..f7210d2 100644 --- a/marketing/tiktok-top5-slideshow-pack.md +++ b/marketing/tiktok-top5-slideshow-pack.md @@ -1,521 +1,521 @@ -# TikTok Top 5 Slideshow Pack for QR Master - -This file contains 5 complete `Top 5` TikTok slideshow prompt packs for QR Master. - -Why 7 slides here: -- Slide 1 = hook -- Slides 2-6 = the five list items -- Slide 7 = CTA - -These prompts are aligned to `C:\Users\a931627\Downloads\DESIGN (3).md` and keep the same premium visual direction as the main slideshow file: -- bright precision-editorial SaaS style -- high white space -- tonal depth instead of hard borders -- glassmorphism and soft blue gradients -- QR code treated as a hero object - -## Shared Global Prompt - -Use this global prompt before any of the packs below: - -```text -Create a premium TikTok slideshow in vertical 9:16 format with built-in text overlay on every slide. -Style: bright, clean, modern, minimal editorial SaaS aesthetic. -Creative direction: Precision Editorial, high white space, intentional asymmetry, tonal depth, calm authority, premium digital craftsmanship. -Color palette: white, soft warm light gray, cobalt blue accents, subtle blue gradients, soft ambient navy-tinted shadows. -Lighting: bright studio daylight, soft glow, polished, airy. -Typography: bold modern sans-serif similar to Inter, large headline, very short text, clean spacing, high contrast, strong hierarchy. -Layout: editorial composition, asymmetrical but balanced, lots of negative space, QR code treated like a hero object. -Text placement: keep the overlay text centered or at minimum positioned within the lower two-thirds of the frame; avoid placing the main text too high near the top edge. -UI style: floating frosted panels, surface shifts instead of hard lines, soft glassmorphism, premium SaaS ad direction. -Important: -- Use exact overlay text provided for each slide. -- Keep text short and correctly spelled. -- Keep the text centered or clearly inside the lower two-thirds of the image. -- No paragraph text. -- No clutter. -- No dark background. -- No generic stock-office look. -- No 1px hard borders. -- Use soft tonal transitions, ghost borders only if necessary. -- Slides 1 and 7 use the avatar. -- Slides 1-6 must not show the QR Master brand name or logo. -- Slide 7 is the only slide allowed to show QR Master branding. -- On slide 1, use the avatar as an unbranded character reference only, with no visible logo text on hat or hoodie. -- On slide 7, show the full branded avatar clearly. -- Keep every slide polished, premium, and TikTok-ready. -``` - -## Shared Negative Prompt - -```text -No dark theme, no messy backgrounds, no harsh shadows, no cheap cartoon look, no toy aesthetic, no cluttered desks, no random props, no heavy borders, no low-detail UI, no gibberish text blocks, no typo-filled posters, no loud neon colors, no generic corporate office scenes -``` - -## Testing Note - -Because these are listicle formats, do not compare them directly against strong pain hooks in the same wave. - -Use them as a separate educational test block. - -Suggested testing order: -1. Top 5 QR code mistakes businesses still make -2. Top 5 things to check before printing a QR code -3. Top 5 ways dynamic QR codes save money -4. Top 5 QR code use cases for restaurants -5. Top 5 reasons static QR codes stop working - ---- - -## Top 5 Slideshow 01 - Educational - -**Hook:** `Top 5 QR code mistakes businesses still make` - -**Title:** `Top 5 QR Mistakes` - -**Caption + Hashtags:** `Most businesses still make the same QR mistakes again and again. Save this checklist before your next print run. qrmaster.net #QRCode #DynamicQRCode #MarketingTips #SmallBusiness #PrintMarketing #QRMaster` - -**Long Description:** `Most businesses still make the same QR code mistakes without even noticing. In this slideshow, I break down 5 common QR mistakes that lead to broken customer journeys, wasted reprints, weak campaign tracking, and messy workflows. If you use QR codes for menus, flyers, packaging, events, or offline marketing, save this and use it as a checklist before your next print run. More smart QR workflows at qrmaster.net #QRCode #DynamicQRCode #MarketingTips #SmallBusiness #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar holding a phone and pointing toward a floating QR card, soft cobalt glow, clean asymmetrical composition, premium SaaS feel. -Add large clean overlay text: -"Top 5 QR code mistakes businesses still make" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant printed menu and flyer with one static QR code shown as a fixed object, bright white background, soft tonal layering, minimal premium styling. -Add large clean overlay text: -"1. Using static codes for changing content" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: clean close-up of printed QR collateral beside a phone with an outdated destination, white editorial environment, soft ambient shadow. -Add large clean overlay text: -"2. Printing before testing the destination" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: one QR card with no surrounding analytics or performance cues, bright white premium background, minimalist business composition. -Add large clean overlay text: -"3. Tracking nothing after the scan" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: multiple mismatched printed QR assets shown across menu, flyer, and package objects, white background, soft blue reflections, editorial spacing. -Add large clean overlay text: -"4. Using a different code for every update" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: printed QR assets arranged in a clean product-shot layout without a central management view, bright white environment, polished SaaS marketing style. -Add large clean overlay text: -"5. Managing QR codes without one dashboard" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full QR Master avatar based on the provided image, branded hat and hoodie allowed here, holding phone with QR code, bright premium white background, soft cobalt blue gradient lighting, spacious CTA composition. -Add large clean overlay text: -"Fix all 5 with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - ---- - -## Top 5 Slideshow 02 - Educational - -**Hook:** `Top 5 things to check before printing a QR code` - -**Title:** `Top 5 Pre-Print Checks` - -**Caption + Hashtags:** `Before you print a QR code, check these five things first. Save this for your next menu, flyer, or campaign. qrmaster.net #QRCode #DynamicQRCode #Checklist #PrintMarketing #MarketingTips #QRMaster` - -**Long Description:** `Before you print any QR code, there are a few things you should always check first. This slideshow covers 5 simple pre-print checks that can save you from broken links, useless scans, missing analytics, and expensive reprints later. If you use QR codes on menus, flyers, product packaging, posters, or event materials, save this checklist now and come back to it before your next campaign goes live. qrmaster.net #QRCode #DynamicQRCode #Checklist #PrintMarketing #MarketingTips #QRMaster` - -### Slide 1 - -```text -Create a premium hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar gesturing toward a floating QR card and subtle check icons, soft blue glow, clean premium composition. -Add large clean overlay text: -"Top 5 things to check before printing a QR code" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 2 - -```text -Create a premium checklist slide in vertical 9:16. -Scene: one clean QR card displayed like a gallery object on a bright white set, soft ambient shadow, minimal SaaS ad styling. -Add large clean overlay text: -"1. Will the destination change later?" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 3 - -```text -Create a premium checklist slide in vertical 9:16. -Scene: printed QR collateral beside a mobile screen with clear scan destination, bright white environment, soft blue reflected light. -Add large clean overlay text: -"2. Did you test the scan on real devices?" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 4 - -```text -Create a premium checklist slide in vertical 9:16. -Scene: central QR code card with subtle analytics cards nearby, white premium background, glassy UI accents, editorial spacing. -Add large clean overlay text: -"3. Do you need analytics after launch?" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 5 - -```text -Create a premium checklist slide in vertical 9:16. -Scene: one QR code shown across menu, flyer, and packaging objects in a bright white modular arrangement, soft tonal depth. -Add large clean overlay text: -"4. Can one QR code cover multiple updates?" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 6 - -```text -Create a premium checklist slide in vertical 9:16. -Scene: clean dashboard-like scene with organized QR assets and calm blue glassmorphism panels, bright white premium environment. -Add large clean overlay text: -"5. Can you manage it all in one place?" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, spacious CTA layout. -Add large clean overlay text: -"Use QR Master before you print" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - ---- - -## Top 5 Slideshow 03 - Educational - -**Hook:** `Top 5 ways dynamic QR codes save money` - -**Title:** `Top 5 Ways QR Saves Money` - -**Caption + Hashtags:** `Dynamic QR codes are not just more flexible. They can also cut avoidable print and campaign costs. qrmaster.net #QRCode #DynamicQRCode #MarketingCosts #BusinessTips #PrintMarketing #QRMaster` - -**Long Description:** `Dynamic QR codes are not only more flexible than static QR codes, they can also save real money. In this slideshow, I break down 5 ways editable and trackable QR workflows reduce waste, avoid unnecessary reprints, improve campaign decisions, and make offline marketing more efficient. If you want better results from menus, flyers, packaging, events, or local campaigns, this is worth saving. qrmaster.net #QRCode #DynamicQRCode #MarketingCosts #BusinessTips #PrintMarketing #QRMaster` - -### Slide 1 - -```text -Create a premium hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating QR card with soft cobalt glow and subtle financial dashboard cues, premium SaaS ad style. -Add large clean overlay text: -"Top 5 ways dynamic QR codes save money" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant stack of printed collateral shown in a bright white studio setup, soft ambient shadow, clean product-shot composition. -Add large clean overlay text: -"1. Fewer reprints after small updates" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: one QR card connected to multiple destination states, bright white background, blue-lit glassmorphism, premium editorial spacing. -Add large clean overlay text: -"2. One code works across multiple campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant analytics cards around a central QR code, white background, soft cobalt glow, refined SaaS dashboard look. -Add large clean overlay text: -"3. You can cut weak campaigns faster" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: clean modular arrangement of menu, flyer, package, and event objects around one QR system, bright white environment, subtle tonal depth. -Add large clean overlay text: -"4. One workflow replaces scattered tools" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: one elegant QR dashboard environment with organized assets and analytics cues, white premium background, soft blue reflections. -Add large clean overlay text: -"5. Better scan data means better decisions" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt gradient halo, spacious CTA layout. -Add large clean overlay text: -"Save more with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - ---- - -## Top 5 Slideshow 04 - Educational - -**Hook:** `Top 5 QR code use cases for restaurants` - -**Title:** `Top 5 Restaurant QR Use Cases` - -**Caption + Hashtags:** `Restaurants can do much more with QR codes than just digital menus. Save this if you run food, hospitality, or local campaigns. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #RestaurantTips #QRMaster` - -**Long Description:** `Most restaurants only think about QR codes as digital menus, but there are far more useful ways to use them. This slideshow breaks down 5 restaurant QR use cases that can improve guest experience, simplify operations, and support marketing at the same time. If you run a restaurant, cafe, takeaway, or hospitality brand, save this and use it as inspiration for smarter QR workflows. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #RestaurantTips #QRMaster` - -### Slide 1 - -```text -Create a premium niche hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar beside a floating menu-style QR card, soft blue glow, calm restaurant-tech SaaS aesthetic. -Add large clean overlay text: -"Top 5 QR code use cases for restaurants" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant table menu QR setup on a bright white studio set, soft shadows, clean premium composition. -Add large clean overlay text: -"1. Live digital menus" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: refined table card with WiFi-style QR presentation, white editorial background, subtle blue reflections, minimal hospitality-tech look. -Add large clean overlay text: -"2. Guest WiFi access" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant feedback or review QR card in a bright white premium environment, soft ambient shadow, editorial spacing. -Add large clean overlay text: -"3. Reviews and feedback collection" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: promotional table card and campaign flyer with QR code in a bright modular setup, white background, soft cobalt glow. -Add large clean overlay text: -"4. Seasonal offers and campaigns" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: loyalty or contact card concept built around one central QR code, bright white premium background, glassy UI touches, polished SaaS look. -Add large clean overlay text: -"5. Loyalty and contactless customer journeys" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt blue halo, strong restaurant-tech campaign composition. -Add large clean overlay text: -"Restaurants can start with QR Master" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - ---- - -## Top 5 Slideshow 05 - Educational - -**Hook:** `Top 5 reasons static QR codes stop working` - -**Title:** `Top 5 Reasons Static QR Codes Fail` - -**Caption + Hashtags:** `Static QR codes usually fail because the destination changes, not because the code itself is broken. Save this for your next campaign. qrmaster.net #QRCode #DynamicQRCode #MarketingMistakes #PrintMarketing #BusinessTips #QRMaster` - -**Long Description:** `Static QR codes rarely fail because the code itself stops scanning. They usually fail because the business context changes around them. In this slideshow, I show 5 reasons static QR codes stop working over time, from changed links to expired offers to poor tracking and bad scale management. If you use QR codes in print, offline campaigns, hospitality, retail, or events, save this before your next launch. qrmaster.net #QRCode #DynamicQRCode #MarketingMistakes #PrintMarketing #BusinessTips #QRMaster` - -### Slide 1 - -```text -Create a premium hook slide in vertical 9:16. -Scene: bright white editorial background, unbranded avatar pointing toward a floating QR card and subtle warning UI indicators, soft cobalt glow, premium SaaS ad style. -Add large clean overlay text: -"Top 5 reasons static QR codes stop working" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 2 - -```text -Create a premium list slide in vertical 9:16. -Scene: printed QR card beside a changed mobile destination, bright white editorial environment, clean asymmetrical composition. -Add large clean overlay text: -"1. The destination link changes" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 3 - -```text -Create a premium list slide in vertical 9:16. -Scene: elegant flyer or menu objects shown in a bright white premium set, soft tonal depth, subtle mismatch with a new campaign state. -Add large clean overlay text: -"2. The offer or content expires" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 4 - -```text -Create a premium list slide in vertical 9:16. -Scene: one QR code shown across multiple print assets with no update path, bright white background, soft cobalt reflections, polished editorial look. -Add large clean overlay text: -"3. One print run outlives one campaign" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 5 - -```text -Create a premium list slide in vertical 9:16. -Scene: clean analytics-free QR setup on a bright white SaaS-inspired background, minimalist business composition. -Add large clean overlay text: -"4. There is no data after the scan" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 6 - -```text -Create a premium list slide in vertical 9:16. -Scene: printed materials and QR objects arranged without a central management environment, white premium background, soft ambient shadow. -Add large clean overlay text: -"5. They are too hard to manage at scale" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` - -### Slide 7 - -```text -Create a final branded CTA slide in vertical 9:16. -Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue gradient lighting, spacious CTA composition. -Add large clean overlay text: -"Use QR Master instead" -Add smaller text below: -"qrmaster.net" -Text style: bold, modern, minimal, high contrast, clean editorial layout. -Text placement: centered or within the lower two-thirds of the frame, never top-heavy. -``` +# TikTok Top 5 Slideshow Pack for QR Master + +This file contains 5 complete `Top 5` TikTok slideshow prompt packs for QR Master. + +Why 7 slides here: +- Slide 1 = hook +- Slides 2-6 = the five list items +- Slide 7 = CTA + +These prompts are aligned to `C:\Users\a931627\Downloads\DESIGN (3).md` and keep the same premium visual direction as the main slideshow file: +- bright precision-editorial SaaS style +- high white space +- tonal depth instead of hard borders +- glassmorphism and soft blue gradients +- QR code treated as a hero object + +## Shared Global Prompt + +Use this global prompt before any of the packs below: + +```text +Create a premium TikTok slideshow in vertical 9:16 format with built-in text overlay on every slide. +Style: bright, clean, modern, minimal editorial SaaS aesthetic. +Creative direction: Precision Editorial, high white space, intentional asymmetry, tonal depth, calm authority, premium digital craftsmanship. +Color palette: white, soft warm light gray, cobalt blue accents, subtle blue gradients, soft ambient navy-tinted shadows. +Lighting: bright studio daylight, soft glow, polished, airy. +Typography: bold modern sans-serif similar to Inter, large headline, very short text, clean spacing, high contrast, strong hierarchy. +Layout: editorial composition, asymmetrical but balanced, lots of negative space, QR code treated like a hero object. +Text placement: keep the overlay text centered or at minimum positioned within the lower two-thirds of the frame; avoid placing the main text too high near the top edge. +UI style: floating frosted panels, surface shifts instead of hard lines, soft glassmorphism, premium SaaS ad direction. +Important: +- Use exact overlay text provided for each slide. +- Keep text short and correctly spelled. +- Keep the text centered or clearly inside the lower two-thirds of the image. +- No paragraph text. +- No clutter. +- No dark background. +- No generic stock-office look. +- No 1px hard borders. +- Use soft tonal transitions, ghost borders only if necessary. +- Slides 1 and 7 use the avatar. +- Slides 1-6 must not show the QR Master brand name or logo. +- Slide 7 is the only slide allowed to show QR Master branding. +- On slide 1, use the avatar as an unbranded character reference only, with no visible logo text on hat or hoodie. +- On slide 7, show the full branded avatar clearly. +- Keep every slide polished, premium, and TikTok-ready. +``` + +## Shared Negative Prompt + +```text +No dark theme, no messy backgrounds, no harsh shadows, no cheap cartoon look, no toy aesthetic, no cluttered desks, no random props, no heavy borders, no low-detail UI, no gibberish text blocks, no typo-filled posters, no loud neon colors, no generic corporate office scenes +``` + +## Testing Note + +Because these are listicle formats, do not compare them directly against strong pain hooks in the same wave. + +Use them as a separate educational test block. + +Suggested testing order: +1. Top 5 QR code mistakes businesses still make +2. Top 5 things to check before printing a QR code +3. Top 5 ways dynamic QR codes save money +4. Top 5 QR code use cases for restaurants +5. Top 5 reasons static QR codes stop working + +--- + +## Top 5 Slideshow 01 - Educational + +**Hook:** `Top 5 QR code mistakes businesses still make` + +**Title:** `Top 5 QR Mistakes` + +**Caption + Hashtags:** `Most businesses still make the same QR mistakes again and again. Save this checklist before your next print run. qrmaster.net #QRCode #DynamicQRCode #MarketingTips #SmallBusiness #PrintMarketing #QRMaster` + +**Long Description:** `Most businesses still make the same QR code mistakes without even noticing. In this slideshow, I break down 5 common QR mistakes that lead to broken customer journeys, wasted reprints, weak campaign tracking, and messy workflows. If you use QR codes for menus, flyers, packaging, events, or offline marketing, save this and use it as a checklist before your next print run. More smart QR workflows at qrmaster.net #QRCode #DynamicQRCode #MarketingTips #SmallBusiness #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar holding a phone and pointing toward a floating QR card, soft cobalt glow, clean asymmetrical composition, premium SaaS feel. +Add large clean overlay text: +"Top 5 QR code mistakes businesses still make" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant printed menu and flyer with one static QR code shown as a fixed object, bright white background, soft tonal layering, minimal premium styling. +Add large clean overlay text: +"1. Using static codes for changing content" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: clean close-up of printed QR collateral beside a phone with an outdated destination, white editorial environment, soft ambient shadow. +Add large clean overlay text: +"2. Printing before testing the destination" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: one QR card with no surrounding analytics or performance cues, bright white premium background, minimalist business composition. +Add large clean overlay text: +"3. Tracking nothing after the scan" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: multiple mismatched printed QR assets shown across menu, flyer, and package objects, white background, soft blue reflections, editorial spacing. +Add large clean overlay text: +"4. Using a different code for every update" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: printed QR assets arranged in a clean product-shot layout without a central management view, bright white environment, polished SaaS marketing style. +Add large clean overlay text: +"5. Managing QR codes without one dashboard" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full QR Master avatar based on the provided image, branded hat and hoodie allowed here, holding phone with QR code, bright premium white background, soft cobalt blue gradient lighting, spacious CTA composition. +Add large clean overlay text: +"Fix all 5 with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +--- + +## Top 5 Slideshow 02 - Educational + +**Hook:** `Top 5 things to check before printing a QR code` + +**Title:** `Top 5 Pre-Print Checks` + +**Caption + Hashtags:** `Before you print a QR code, check these five things first. Save this for your next menu, flyer, or campaign. qrmaster.net #QRCode #DynamicQRCode #Checklist #PrintMarketing #MarketingTips #QRMaster` + +**Long Description:** `Before you print any QR code, there are a few things you should always check first. This slideshow covers 5 simple pre-print checks that can save you from broken links, useless scans, missing analytics, and expensive reprints later. If you use QR codes on menus, flyers, product packaging, posters, or event materials, save this checklist now and come back to it before your next campaign goes live. qrmaster.net #QRCode #DynamicQRCode #Checklist #PrintMarketing #MarketingTips #QRMaster` + +### Slide 1 + +```text +Create a premium hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar gesturing toward a floating QR card and subtle check icons, soft blue glow, clean premium composition. +Add large clean overlay text: +"Top 5 things to check before printing a QR code" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 2 + +```text +Create a premium checklist slide in vertical 9:16. +Scene: one clean QR card displayed like a gallery object on a bright white set, soft ambient shadow, minimal SaaS ad styling. +Add large clean overlay text: +"1. Will the destination change later?" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 3 + +```text +Create a premium checklist slide in vertical 9:16. +Scene: printed QR collateral beside a mobile screen with clear scan destination, bright white environment, soft blue reflected light. +Add large clean overlay text: +"2. Did you test the scan on real devices?" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 4 + +```text +Create a premium checklist slide in vertical 9:16. +Scene: central QR code card with subtle analytics cards nearby, white premium background, glassy UI accents, editorial spacing. +Add large clean overlay text: +"3. Do you need analytics after launch?" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 5 + +```text +Create a premium checklist slide in vertical 9:16. +Scene: one QR code shown across menu, flyer, and packaging objects in a bright white modular arrangement, soft tonal depth. +Add large clean overlay text: +"4. Can one QR code cover multiple updates?" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 6 + +```text +Create a premium checklist slide in vertical 9:16. +Scene: clean dashboard-like scene with organized QR assets and calm blue glassmorphism panels, bright white premium environment. +Add large clean overlay text: +"5. Can you manage it all in one place?" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue halo, spacious CTA layout. +Add large clean overlay text: +"Use QR Master before you print" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +--- + +## Top 5 Slideshow 03 - Educational + +**Hook:** `Top 5 ways dynamic QR codes save money` + +**Title:** `Top 5 Ways QR Saves Money` + +**Caption + Hashtags:** `Dynamic QR codes are not just more flexible. They can also cut avoidable print and campaign costs. qrmaster.net #QRCode #DynamicQRCode #MarketingCosts #BusinessTips #PrintMarketing #QRMaster` + +**Long Description:** `Dynamic QR codes are not only more flexible than static QR codes, they can also save real money. In this slideshow, I break down 5 ways editable and trackable QR workflows reduce waste, avoid unnecessary reprints, improve campaign decisions, and make offline marketing more efficient. If you want better results from menus, flyers, packaging, events, or local campaigns, this is worth saving. qrmaster.net #QRCode #DynamicQRCode #MarketingCosts #BusinessTips #PrintMarketing #QRMaster` + +### Slide 1 + +```text +Create a premium hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating QR card with soft cobalt glow and subtle financial dashboard cues, premium SaaS ad style. +Add large clean overlay text: +"Top 5 ways dynamic QR codes save money" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant stack of printed collateral shown in a bright white studio setup, soft ambient shadow, clean product-shot composition. +Add large clean overlay text: +"1. Fewer reprints after small updates" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: one QR card connected to multiple destination states, bright white background, blue-lit glassmorphism, premium editorial spacing. +Add large clean overlay text: +"2. One code works across multiple campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant analytics cards around a central QR code, white background, soft cobalt glow, refined SaaS dashboard look. +Add large clean overlay text: +"3. You can cut weak campaigns faster" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: clean modular arrangement of menu, flyer, package, and event objects around one QR system, bright white environment, subtle tonal depth. +Add large clean overlay text: +"4. One workflow replaces scattered tools" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: one elegant QR dashboard environment with organized assets and analytics cues, white premium background, soft blue reflections. +Add large clean overlay text: +"5. Better scan data means better decisions" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt gradient halo, spacious CTA layout. +Add large clean overlay text: +"Save more with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +--- + +## Top 5 Slideshow 04 - Educational + +**Hook:** `Top 5 QR code use cases for restaurants` + +**Title:** `Top 5 Restaurant QR Use Cases` + +**Caption + Hashtags:** `Restaurants can do much more with QR codes than just digital menus. Save this if you run food, hospitality, or local campaigns. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #RestaurantTips #QRMaster` + +**Long Description:** `Most restaurants only think about QR codes as digital menus, but there are far more useful ways to use them. This slideshow breaks down 5 restaurant QR use cases that can improve guest experience, simplify operations, and support marketing at the same time. If you run a restaurant, cafe, takeaway, or hospitality brand, save this and use it as inspiration for smarter QR workflows. qrmaster.net #RestaurantMarketing #QRCode #DynamicQRCode #Hospitality #RestaurantTips #QRMaster` + +### Slide 1 + +```text +Create a premium niche hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar beside a floating menu-style QR card, soft blue glow, calm restaurant-tech SaaS aesthetic. +Add large clean overlay text: +"Top 5 QR code use cases for restaurants" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant table menu QR setup on a bright white studio set, soft shadows, clean premium composition. +Add large clean overlay text: +"1. Live digital menus" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: refined table card with WiFi-style QR presentation, white editorial background, subtle blue reflections, minimal hospitality-tech look. +Add large clean overlay text: +"2. Guest WiFi access" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant feedback or review QR card in a bright white premium environment, soft ambient shadow, editorial spacing. +Add large clean overlay text: +"3. Reviews and feedback collection" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: promotional table card and campaign flyer with QR code in a bright modular setup, white background, soft cobalt glow. +Add large clean overlay text: +"4. Seasonal offers and campaigns" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: loyalty or contact card concept built around one central QR code, bright white premium background, glassy UI touches, polished SaaS look. +Add large clean overlay text: +"5. Loyalty and contactless customer journeys" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: branded QR Master avatar with phone and QR code, bright premium white background, soft cobalt blue halo, strong restaurant-tech campaign composition. +Add large clean overlay text: +"Restaurants can start with QR Master" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +--- + +## Top 5 Slideshow 05 - Educational + +**Hook:** `Top 5 reasons static QR codes stop working` + +**Title:** `Top 5 Reasons Static QR Codes Fail` + +**Caption + Hashtags:** `Static QR codes usually fail because the destination changes, not because the code itself is broken. Save this for your next campaign. qrmaster.net #QRCode #DynamicQRCode #MarketingMistakes #PrintMarketing #BusinessTips #QRMaster` + +**Long Description:** `Static QR codes rarely fail because the code itself stops scanning. They usually fail because the business context changes around them. In this slideshow, I show 5 reasons static QR codes stop working over time, from changed links to expired offers to poor tracking and bad scale management. If you use QR codes in print, offline campaigns, hospitality, retail, or events, save this before your next launch. qrmaster.net #QRCode #DynamicQRCode #MarketingMistakes #PrintMarketing #BusinessTips #QRMaster` + +### Slide 1 + +```text +Create a premium hook slide in vertical 9:16. +Scene: bright white editorial background, unbranded avatar pointing toward a floating QR card and subtle warning UI indicators, soft cobalt glow, premium SaaS ad style. +Add large clean overlay text: +"Top 5 reasons static QR codes stop working" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 2 + +```text +Create a premium list slide in vertical 9:16. +Scene: printed QR card beside a changed mobile destination, bright white editorial environment, clean asymmetrical composition. +Add large clean overlay text: +"1. The destination link changes" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 3 + +```text +Create a premium list slide in vertical 9:16. +Scene: elegant flyer or menu objects shown in a bright white premium set, soft tonal depth, subtle mismatch with a new campaign state. +Add large clean overlay text: +"2. The offer or content expires" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 4 + +```text +Create a premium list slide in vertical 9:16. +Scene: one QR code shown across multiple print assets with no update path, bright white background, soft cobalt reflections, polished editorial look. +Add large clean overlay text: +"3. One print run outlives one campaign" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 5 + +```text +Create a premium list slide in vertical 9:16. +Scene: clean analytics-free QR setup on a bright white SaaS-inspired background, minimalist business composition. +Add large clean overlay text: +"4. There is no data after the scan" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 6 + +```text +Create a premium list slide in vertical 9:16. +Scene: printed materials and QR objects arranged without a central management environment, white premium background, soft ambient shadow. +Add large clean overlay text: +"5. They are too hard to manage at scale" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` + +### Slide 7 + +```text +Create a final branded CTA slide in vertical 9:16. +Scene: full branded QR Master avatar holding phone with QR code, bright premium white background, soft cobalt blue gradient lighting, spacious CTA composition. +Add large clean overlay text: +"Use QR Master instead" +Add smaller text below: +"qrmaster.net" +Text style: bold, modern, minimal, high contrast, clean editorial layout. +Text placement: centered or within the lower two-thirds of the frame, never top-heavy. +``` diff --git a/memory/meta_ads_competitor_analysis.md b/memory/meta_ads_competitor_analysis.md index 10e3217..83658f7 100644 --- a/memory/meta_ads_competitor_analysis.md +++ b/memory/meta_ads_competitor_analysis.md @@ -1,701 +1,701 @@ -# Meta Ads Competitor Analysis Memory - -Stand: 2026-05-27 -Projekt: qrmaster.net -Zweck: Diese Datei speichert wiederverwendbare Learnings aus Meta-Ads-Analysen der wichtigsten QRMaster-Competitors. Bei neuen Ad-Konzepten fuer qrmaster.net diese Datei zuerst beruecksichtigen. - -## Strategischer Gesamtblick - -Die wichtigsten Competitors in Meta Ads positionieren sich nicht nur als QR-Code-Generatoren, sondern als Tools fuer Branding, Tracking, Analytics, Kampagnensteuerung und Revenue-Wachstum. - -QRMaster sollte sich gegen diese Wettbewerber vor allem ueber folgende Winkel differenzieren: - -- Einfachheit: QR-Code in Sekunden erstellen, ohne komplexes Setup. -- Schnelligkeit: "Create in 10/30 seconds" als klarer Hook. -- Kostenloser Einstieg: "Free", "Try free", "No credit card" prominent nutzen. -- SMB-Fokus: kleine Unternehmen, Restaurants, lokale Anbieter, Events, Retail, Hotels. -- Tracking ohne Komplexitaet: Scans, Kundeninteresse und Kampagnenleistung einfach sichtbar machen. -- Branded QR Codes: keine generischen schwarzen Quadrate, sondern Logo, Farben und Style. -- Retargeting/Win-back: Besucher und ehemalige Nutzer gezielt zurueckholen. - -## Top Competitors - -Analysierte Competitors: - -1. Scanova -2. QR TIGER -3. Bitly -4. Uniqode - -## Scanova Learnings - -Scanova nutzt wenige, aber klare Meta Ads mit mehreren Messaging-Winkeln. - -Was funktioniert: - -- Objection Handling: "Still not convinced you need a QR Code?" -- Design-Angle: "Tired of boring QR codes?" -- Business Outcome: repeat purchases, social shares, brand moments. -- Problem/Solution: wenig Platz auf Labels, aber viele Informationen. -- Freemium-Risikoabbau: "free to try". - -Beste nachzubauende QRMaster-Ads: - -### Scanova Ad 1: Objection Handling - -Hook: -"Still not convinced you need a QR code?" - -QRMaster-Version: -"Noch nicht sicher, ob du einen QR-Code brauchst? Fair. Du brauchst nur einen, wenn du mehr Kundeninteraktion, Echtzeit-Tracking, volle Designkontrolle und aenderbare Links nach dem Drucken willst. QRMaster ist kostenlos testbar." - -CTA: -"Kostenlos testen" oder "Learn More" - -Warum relevant: -Direkte Einwaende werden akzeptiert statt wegargumentiert. Das eignet sich gut fuer Retargeting und warme Zielgruppen. - -### Scanova Ad 2: Design/Emotion - -Hook: -"Tired of boring QR codes?" - -QRMaster-Version: -"Genug von langweiligen QR-Codes? Mit QRMaster erstellst du schoene, gebrandete QR-Codes mit Logo, Farben und Tracking. Kostenlos starten." - -CTA: -"Create Free" oder "Jetzt erstellen" - -Warum relevant: -Sehr leicht visuell zu zeigen: generischer QR-Code vs. gebrandeter QRMaster-Code. - -### Scanova Ad 3: Label/Packaging Pain - -Hook: -"Only 3cm of label space left?" - -QRMaster-Version: -"Nur wenig Platz auf Verpackung, Flyer oder Speisekarte? Ein QRMaster-Code bringt deine ganze Story auf eine kleine Flaeche und zeigt dir, wer scannt." - -CTA: -"QR-Code erstellen" - -Warum relevant: -Sehr konkreter Pain Point fuer Retail, Packaging, Gastronomie und Print. - -## QR TIGER Learnings - -QR TIGER nutzt langlebige Kampagnen, Video-Creatives und klare Feature-Angles. Einige Ads laufen seit vielen Monaten, was auf Performance hindeutet. - -Was funktioniert: - -- Konkreter Benefit: "80% more scans" statt vager Claims. -- Custom QR Codes mit Branding. -- Analytics als Kampagnenoptimierung. -- Multi-URL/advanced Features fuer B2B-Marketer. -- Zukunfts-/Compliance-Angle wie GS1 QR Codes. -- 15-45 Sekunden Videos mit schneller Produktdemo. - -Beste nachzubauende QRMaster-Ads: - -### QR TIGER Ad 1: Custom QR Codes mit Branding - -Hook: -"Get 80% more scans with custom QR codes." - -QRMaster-Version: -"Erstelle gebrandete QR-Codes in 30 Sekunden. Fuege Logo und Farben hinzu, teile deinen Code und verfolge alle Scans in Echtzeit." - -Video-Struktur: -- 0-3s: "QR-Code in 30 Sekunden" -- 3-15s: Logo/Farbe/Design zeigen -- 15-30s: Scan mit Smartphone -- 30-40s: Analytics Dashboard zeigen -- 40-45s: CTA - -CTA: -"Kostenlos erstellen" oder "Sign Up" - -### QR TIGER Ad 2: Multi-URL / Smart QR - -Hook: -"What if your QR code link could change depending on location, language or time?" - -QRMaster-Version: -"Was, wenn dein QR-Code smarter arbeitet? Leite Nutzer je nach Kampagne, Sprache oder Geraet weiter und sieh alle Scans in einem Dashboard." - -CTA: -"Mehr erfahren" - -Nutzen: -Gut fuer B2B/Marketer und fortgeschrittenere Use Cases. - -### QR TIGER Ad 3: Future/Urgency - -Hook: -"By 2027, barcodes will be replaced with GS1-powered QR codes." - -QRMaster-Version: -"QR-Codes werden zum Standard fuer moderne Verpackungen, Menues und Kampagnen. Starte jetzt mit QRMaster, bevor deine Konkurrenz schneller ist." - -CTA: -"Jetzt starten" - -Hinweis: -Nur nutzen, wenn die Aussage sachlich korrekt und fuer die Zielgruppe passend formuliert ist. - -## Bitly Learnings - -Bitly wirbt sehr aggressiv mit hohem Anzeigenvolumen. Der Kern liegt auf Win-back, Analytics, AI und All-in-One-Plattform. - -Was funktioniert: - -- Win-back: "Still thinking about Bitly?" -- Daten/Analytics: "Turn every link into real insights." -- AI-Angle: "Ask Bitly anything." -- All-in-One: Links, QR Codes und Landing Pages in einer Plattform. -- Viele Varianten desselben Messaging. -- Kurze Videos und statische Ads. - -Beste nachzubauende QRMaster-Ads: - -### Bitly Ad 1: Win-back / Retargeting - -Hook: -"Still interested in QRMaster?" - -QRMaster-Version: -"Noch interessiert an QRMaster? Deine kostenlosen QR-Codes und Tracking-Daten warten auf dich. Steig wieder ein und erstelle deinen naechsten Code in Sekunden." - -CTA: -"QR-Code kostenlos erstellen" - -Zielgruppe: -Website-Besucher, abgebrochene Registrierungen, inaktive Nutzer. - -### Bitly Ad 2: Feature-Focused Analytics - -Hook: -"Turn every QR code into a powerful marketing tool." - -QRMaster-Version: -"Mach aus jedem QR-Code ein messbares Marketing-Tool. Tracke Scans, verstehe deine Kunden und optimiere deine Kampagnen mit QRMaster." - -CTA: -"Tracking kostenlos starten" - -### Bitly Ad 3: All-in-One Platform - -Hook: -"Everything you need to create, track, and optimize QR codes." - -QRMaster-Version: -"Alles, was du fuer QR-Codes brauchst: erstellen, branden, teilen und auswerten. Eine einfache Plattform. Kostenlos starten." - -CTA: -"QRMaster entdecken" - -### Bitly Ad 4: Simple Free Offer - -Hook: -"Generate free QR codes in seconds. No credit card." - -QRMaster-Version: -"Kostenlose QR-Codes in Sekunden erstellen. Keine Kreditkarte. Kein kompliziertes Setup. Einfach Link einfuegen und starten." - -CTA: -"Create Free" - -## Uniqode Learnings - -Uniqode setzt stark auf Enterprise, Verticals, Branding, Dynamic QR Codes, Daten und Thought Leadership. Sehr viele Ads sind branchenspezifisch. - -Was funktioniert: - -- Enterprise-Angle: zentrale Kontrolle, Bulk Creation, Team Permissions, Analytics. -- Hospitality/Restaurant-Angle: Gaeste, Menues, Loyalitaet, Wiederbesuche. -- Branding: "Your QR code should look like you." -- Data Capture: E-Mail/SMS/CRM und Customer Data Ownership. -- Quick-Win: schneller QR-Code ohne Design-Skills. -- Industry Verticals: Hotels, Restaurants, Retail, Events, CPG. -- Social Proof: viele Unternehmen, Scans, Reports. - -Beste nachzubauende QRMaster-Ads: - -### Uniqode Ad 1: Multi-Location / Enterprise Simple - -Hook: -"Multi-location QR campaigns made simple." - -QRMaster-Version: -"Verwalte QR-Codes nicht mehr manuell ueber Standorte, Teams und Kampagnen hinweg. QRMaster bietet zentrale Kontrolle, Bulk-Erstellung, Teamzugriff und Echtzeit-Analytics in einem Dashboard." - -CTA: -"Free Trial starten" - -### Uniqode Ad 2: Restaurant/Hospitality - -Hook: -"Turn your menu QR into revenue." - -QRMaster-Version: -"Jeder Gast scannt deinen Menue-QR-Code. Aber misst du auch, was danach passiert? QRMaster zeigt dir Scans, Interessen und Wiederbesuche, damit aus Menues echte Kundenbindung wird." - -CTA: -"Demo ansehen" - -### Uniqode Ad 3: Branded QR Codes - -Hook: -"Your QR Code, Your Brand." - -QRMaster-Version: -"Keine generischen Schwarz-Weiss-Codes. Mit QRMaster erstellst du gebrandete QR-Codes mit Logo, Farben und Style, denen Kunden vertrauen." - -CTA: -"Branded QR kostenlos erstellen" - -### Uniqode Ad 4: Data Capture - -Hook: -"Your QR codes should capture data." - -QRMaster-Version: -"Jeder Scan ist ein Signal. QRMaster hilft dir, Scans, Interesse und Kampagnenleistung zu messen, damit du bessere Marketingentscheidungen triffst." - -CTA: -"Mehr erfahren" - -### Uniqode Ad 5: Quick-Win - -Hook: -"Create a QR code in 10 seconds." - -QRMaster-Version: -"Keine Design-Skills. Kein kompliziertes Setup. Link einfuegen, Farbe waehlen, QR-Code generieren. Fertig." - -CTA: -"Jetzt erstellen" - -## Best Overall Ad Concepts For QRMaster - -Diese Konzepte sollten priorisiert werden, wenn neue Meta Ads fuer qrmaster.net erstellt werden: - -### 1. Speed + Free - -Headline: -"Kostenlose QR-Codes in 10 Sekunden erstellen" - -Body: -"Link einfuegen, Design waehlen, QR-Code downloaden. Mit QRMaster geht es schnell, einfach und ohne Kreditkarte." - -CTA: -"Kostenlos erstellen" - -### 2. Branded QR Code - -Headline: -"Dein QR-Code sollte zu deiner Marke passen" - -Body: -"Erstelle QR-Codes mit Logo, Farben und Style. Keine generischen Codes, sondern professionelle QR-Codes fuer Flyer, Verpackungen, Menues und Kampagnen." - -CTA: -"Branded QR erstellen" - -### 3. Tracking / Analytics - -Headline: -"Tracke jeden QR-Code-Scan" - -Body: -"Sieh, wann und wie oft deine QR-Codes gescannt werden. QRMaster macht aus QR-Codes messbare Marketingkanaele." - -CTA: -"Tracking starten" - -### 4. Restaurant / Menu QR - -Headline: -"Mach dein Menue-QR messbar" - -Body: -"Gaeste scannen sowieso. Mit QRMaster siehst du, was funktioniert, welche Kampagnen laufen und wie du Wiederbesuche steigerst." - -CTA: -"Restaurant-Demo ansehen" - -### 5. Retargeting / Win-back - -Headline: -"Noch an QRMaster interessiert?" - -Body: -"Dein naechster QR-Code ist nur ein paar Sekunden entfernt. Kostenlos erstellen, branden und tracken." - -CTA: -"Weiter machen" - -### 6. Packaging / Print Pain - -Headline: -"Wenig Platz. Viel zu sagen." - -Body: -"Ein QRMaster-Code bringt Produktinfos, Anleitungen, Angebote und Tracking auf Verpackungen, Flyer und Etiketten." - -CTA: -"QR-Code erstellen" - -### 7. All-in-One Simple Platform - -Headline: -"QR-Codes erstellen, branden und messen" - -Body: -"Alles in einer einfachen Plattform. Keine komplexe Enterprise-Software. QRMaster ist gemacht fuer schnelle Kampagnen und klare Ergebnisse." - -CTA: -"QRMaster testen" - -## Recommended Campaign Structure - -### Cold Traffic - -Ziel: neue Nutzer gewinnen. - -Ads: -- Speed + Free -- Branded QR Code -- Packaging / Print Pain -- Restaurant / Menu QR - -### Warm Traffic / Retargeting - -Ziel: Besucher, Abbrecher und ehemalige Nutzer zurueckholen. - -Ads: -- "Noch an QRMaster interessiert?" -- Objection Handling -- Tracking/Analytics -- Free Trial / No Credit Card - -### B2B / Higher Intent - -Ziel: Marketer, Agenturen, Restaurants, Hotels, Retail, Event-Veranstalter. - -Ads: -- Multi-location simple -- Data capture / CRM -- Industry-specific creatives -- Branded QR codes at scale - -## Performance Signals From Impression Sorting - -Stand: 2026-05-27 - -Wichtig: Die Meta Ads Library zeigt keine echten Performance-Metriken wie CTR, CPC, CPA, Conversion Rate, ROAS oder Spend. Wenn die Library aber nach "Impressionen absteigend" sortiert ist, sind die oberen Anzeigen die Ads mit den meisten ausgelieferten Impressionen. Das ist kein direkter ROI-Beweis, aber ein starkes Signal fuer: - -- hoehere Budget-Allokation -- laengere Laufzeit -- validiertes Messaging -- bessere Skalierbarkeit -- Gewinner-Creatives oder Gewinner-Audiences - -Diese Rankings deshalb als Performance-Indizien verwenden, nicht als harte Metriken. - -### Scanova Performance Ranking - -Sortierung: Impressionen absteigend, ca. 5 aktive Ads. - -1. Objection Handling: "Still not convinced you need a QR code?" - - ID: 4437071703279023 - - Aktiv seit: 2026-04-17 - - Signal: hoechste Impressionen und laengste Laufzeit. - - Interpretation: klarer Winner bei Scanova. - - QRMaster-Learning: als erste Retargeting/Prospecting-Ad testen. - -2. Design Emotion: "Tired of boring QR codes?" - - ID: 2768191646907291 - - Aktiv seit: 2026-04-29 - - Signal: zweithoechste Impressionen, solide Laufzeit. - - Interpretation: starker Secondary-Winner. - - QRMaster-Learning: generischer QR-Code vs. branded QR-Code visuell zeigen. - -3. B2B Outcome / Brands - - ID: 1504294601330713 - - Aktiv seit: 2026-05-26 - - Signal: neuer Test, weniger Impressionen wegen kurzer Laufzeit. - - QRMaster-Learning: spaeter testen, besonders fuer Packaging/Ecommerce. - -4. Feature Listing: "20+ QR Codes. Endless uses." - - ID: 1717343306059358 - - Aktiv seit: 2026-05-26 - - Signal: neuer Test. - - QRMaster-Learning: Feature-Listen nur nutzen, wenn klarer Outcome davorsteht. - -5. Space/Label Pain: "Your product label has 3cm left..." - - ID: 1707202200450970 - - Aktiv seit: 2026-05-26 - - Signal: neuer Test. - - QRMaster-Learning: guter Angle fuer Print/Packaging, aber erst nach den breiteren Winners testen. - -Prioritaet fuer QRMaster: -1. Objection Handling -2. Design/Branding -3. Packaging/Label Pain als Nischen-Test - -### QR TIGER Performance Ranking - -Sortierung/Indizien: lange Laufzeit und aktive Varianten. - -1. Custom QR Codes mit Branding - - ID: 1258668248847659 - - Aktiv seit: 2024-08-18 - - Video: ca. 45 Sekunden plus kuerzere Varianten. - - Message: custom/branded QR codes, "80% more scans", Tracking, A/B tests. - - Signal: extrem lange Laufzeit, mehrere Varianten, weiterhin aktiv. - - Interpretation: sehr wahrscheinlich QR TIGERs Haupt-Winner. - - QRMaster-Learning: "Erstelle gebrandete QR-Codes in 30 Sekunden" als Kern-Video bauen. - -2. Multi URL QR Codes - - ID: 1612914899327017 - - Aktiv seit: 2024-11-13 - - Message: Link kann je nach Location, Sprache, Zeit oder Scananzahl wechseln. - - Signal: lange Laufzeit, Soft-CTA "Learn More/Mehr dazu". - - Interpretation: solider Advanced-Use-Case-Performer. - - QRMaster-Learning: fuer warme B2B/Marketer-Zielgruppen nutzen, nicht als Massen-Hook. - -3. GS1 QR Codes / Future Compliance - - ID: 912391637706042 - - Aktiv seit: 2024-12-18, spaeter erneuert. - - Message: 2027/GS1/barcode replacement, first-mover urgency. - - Signal: separate Landing Page bzw. dedizierte Domain, B2B-Fokus. - - Interpretation: niedrigeres Volumen, aber potentiell hoehere Lead-Qualitaet. - - QRMaster-Learning: nur nutzen, wenn fachlich korrekt und mit passender Landing Page. - -Prioritaet fuer QRMaster: -1. Branded QR Code Speed Demo -2. Smart/Dynamic QR fuer Retargeting -3. Future/Trend-Angle nur vorsichtig und belegbar - -### Bitly Performance Ranking - -Sortierung: Impressionen absteigend, ca. 200 aktive Ads. - -1. Win-back: "Still thinking about Bitly?" - - Beispiel-IDs: 845577364641009, 947060991537298, 1314328070805227, 2379444135888254, 975084468313052, 1626897478589888, 1550285439986462 - - Aktiv seit: mehrere Varianten ab 2026-04-28 bis 2026-05-14. - - Message: "Your link data and analytics are waiting for you, jump back in." - - Signal: dominiert Top-Positionen nach Impressionen, viele Varianten, Video- und Static-Tests. - - Interpretation: Bitlys staerkster Meta-Ads-Ansatz ist Win-back/Retargeting. - - QRMaster-Learning: Nutzer sammeln, Pixel/Retargeting nutzen, "Deine QR-Codes warten" testen. - -2. All-in-One Platform: "Every connection matters" - - Beispiel-ID: 1535165028202688 - - Aktiv seit: 2026-05-15 - - Message: Links, QR codes and landing pages all in one place. - - Signal: hohe Position trotz neuerer Laufzeit. - - Interpretation: starker Brand-/Platform-Winkel. - - QRMaster-Learning: "Alles fuer QR-Codes: erstellen, branden, tracken" als einfache QRMaster-Version. - -3. Feature/Analytics: "Turn every link into real insights" - - Beispiel-ID: 1314712214127043 - - Aktiv seit: 2026-05-22 - - Message: understand clicks and conversions. - - Signal: aktiv, aber unterhalb der Win-back-Winner. - - Interpretation: funktioniert, aber wahrscheinlich schwächer als Retargeting. - - QRMaster-Learning: "Mach aus jedem QR-Code messbare Marketingdaten." - -4. AI Feature: "Ask Bitly anything" - - Beispiel-ID: 2448698088981471 - - Aktiv seit: 2026-05-14 - - Message: AI assistant fuer Link- und QR-Code-Performance. - - Signal: mehrere Varianten, aber vermutlich nischiger. - - Interpretation: Premium-/Feature-Test, nicht Hauptvolumen. - - QRMaster-Learning: AI nur nutzen, wenn echtes Feature existiert und nicht als leerer Buzzword-Hook. - -Prioritaet fuer QRMaster: -1. Win-back/Retargeting -2. All-in-One QR Platform -3. Tracking/Analytics -4. AI nur bei echter Produktbasis - -### Uniqode Performance Ranking - -Sortierung: Impressionen absteigend, ca. 170 aktive Ads. - -Top-Performer nach Impressionen: - -1. Hospitality Self-Service: "Guests find what they need in seconds" - - Beispiel-ID: 2220200865452960 - - Aktiv seit: 2026-03-31 - - Headline: "Routine questions handled. Staff freed for what matters" - - Message: QR handles basics, staff focuses on service. - - Signal: Platz 1, lange Laufzeit, mehrere Varianten. - - QRMaster-Learning: fuer Hotels/Restaurants: QR spart Personalzeit und verbessert Service. - -2. Hospitality Self-Service Variant - - Beispiel-ID: 2060386458694164 - - Aktiv seit: 2026-04-11 - - Signal: gleiche Message, 3 Varianten. - - QRMaster-Learning: Gewinner-Message mehrfach kreativ variieren. - -3. Linkpages / Branded Hub - - Beispiel-ID: 1826847247985265 - - Aktiv seit: 2026-05-04 - - Message: one scan opens a branded page with loyalty, offers, social follow. - - Signal: hohe Impressionen trotz neuerer Laufzeit. - - QRMaster-Learning: QR nicht nur als Link, sondern als Mini-Hub/Angebotsseite positionieren. - -4. Hotel Loyalty / Opt-ins - - Beispiel-ID: 1933435043940258 - - Aktiv seit: 2026-03-31 - - Headline: "QR built to drive repeat stays" - - Message: consented opt-ins waehrend Aufenthalt, spaetere Rebooking-Angebote. - - QRMaster-Learning: Consent, Opt-in und Wiederbesuch als Hotel-Angle nutzen. - -5. Retail Thought Leadership - - Beispiel-ID: 3937841396509697 - - Aktiv seit: 2026-03-31 - - Headline: "Inspire Your Strategy these 14 QR Codes" - - Message: 14 retail brands use QR codes for loyalty, launches, offers, in-store experiences. - - QRMaster-Learning: "X Ideen fuer QR-Codes in Retail/Restaurant/Event" als Lead Magnet testen. - -6. Hotel Revenue/Upsell - - Beispiel-ID: 2005806333649282 - - Aktiv seit: 2026-03-31 - - Video: ca. 24 Sekunden. - - Headline: "Boost Revenue with QR Upsells" - - Message: upsell without feeling pushy. - - QRMaster-Learning: Revenue + nicht aufdringlich ist ein starker Hospitality-Hook. - -7. Hotel Journey - - Beispiel-ID: 1866303194031380 - - Aktiv seit: 2026-03-31 - - Headline: "How Hotels Are Using QR Codes to Win Guests" - - Message: from check-in to loyalty programs. - - QRMaster-Learning: Full customer journey statt Einzel-QR-Code zeigen. - -8. Retail Social Proof Duplicate - - Beispiel-ID: 2175516249652376 - - Aktiv seit: 2026-03-31 - - Signal: gleiche Message wie Retail-Thought-Leadership, weiterer Beleg fuer Winner. - -9. Report / Thought Leadership - - Beispiel-ID: 1896269207741481 - - Aktiv seit: 2026-04-24 - - Headline: "Turn QR scans into measurable revenue" - - Message: 2026 State of QR Codes report, benchmarks, tactics. - - QRMaster-Learning: Lead Magnet mit Benchmarks/Use Cases kann Meta-Ads tragen. - -10. Restaurant Revenue / QR Menus - - Beispiel-ID: 1504621434396227 - - Aktiv seit: 2026-03-31 - - Video: ca. 24 Sekunden. - - Headline: "Boost Revenue with QR Upsells" - - Message: restaurants upsell without feeling pushy. - - QRMaster-Learning: Menue-QR nicht als Hygiene-Feature, sondern als Umsatzhebel positionieren. - -11. Case Study: Spinrite Brand Experience - - Beispiel-ID: 25949066888125449 - - Aktiv seit: 2026-03-31 - - Message: offline creativity with online inspiration. - - QRMaster-Learning: echte Fallstudien/Use Cases sind starke Ads. - -12. Case Study: Spinrite Insights - - Beispiel-ID: 1871281913579414 - - Aktiv seit: 2026-03-31 - - Message: "Most brands stop at scan here. Spinrite didn't." - - QRMaster-Learning: "Nicht bei Scan here stoppen" ist ein guter Problem-Hook. - -13. Data/Loyalty: "When every new buyer counts, QR helps keep them" - - Beispiel-ID: 1137430406113966 - - Aktiv seit: 2026-05-04 - - Message: zero-party data, loyalty, personalization. - - QRMaster-Learning: Privacy/zero-party-data nur fuer B2B/CPG nutzen, da erklaerungsbeduerftig. - -14. Restaurant: "What brings diners back through the door?" - - Beispiel-ID: 1273239168172050 - - Aktiv seit: 2026-05-21 - - Message: first scan to last visit, keep seats full. - - QRMaster-Learning: neuerer starker Restaurant-Winner, als direkte QRMaster-Variante testen. - -Wichtigste Uniqode-Erkenntnisse: - -- Hospitality dominiert die Top-Positionen. -- Die staerksten Ads sprechen Personalentlastung, Service, Wiederbesuche und Umsatz an. -- Retail/Thought-Leadership funktioniert, wenn es konkrete Beispiele oder Reports gibt. -- Case Studies laufen lange und koennen als Trust-Builder funktionieren. -- Feature-only Ads sind schwaecher als Outcome- oder Journey-Ads. - -Prioritaet fuer QRMaster: -1. Restaurant/Hotel Self-Service: "Gaeste finden alles per QR, dein Team spart Zeit" -2. QR Menu Revenue/Upsell: "Mehr Umsatz ohne aufdringlich zu verkaufen" -3. Branded QR/Linkpage Hub -4. Lead Magnet: "14 QR-Code-Ideen fuer Restaurants/Retail" -5. Case Study Ads, sobald echte Kundenbeispiele vorhanden sind - -## Creative Rules Learned From Competitors - -- Erste 3 Sekunden muessen Hook oder Ergebnis zeigen. -- Video-Laenge: 8-20 Sekunden fuer schnelle Demos, 30-45 Sekunden fuer Feature-Erklaerung. -- Immer Text-Overlay nutzen, weil viele Meta-Videos ohne Ton laufen. -- QR-Code-Erstellung visuell zeigen: Link einfuegen, Farbe/Logo waehlen, Code downloaden, Scan tracken. -- Statische Ads brauchen grossen lesbaren Text und einen klaren visuellen Vorher/Nachher-Vergleich. -- Formate immer in 1:1, 4:5 und 9:16 testen. -- Pro Konzept mindestens 2-3 Varianten testen. - -## Copy Rules - -- Konkrete Zahlen nutzen, wenn belegbar: "10 Sekunden", "30 Sekunden", "jeder Scan", "Echtzeit". -- Keine unbelegten Performance-Claims wie "80% mehr Scans" ohne Daten. -- "Free" oder "kostenlos" prominent platzieren. -- Feature + Outcome kombinieren: nicht nur "Analytics", sondern "sieh, welche Kampagne funktioniert". -- Fuer SMBs einfache Sprache nutzen, keine Enterprise-Komplexitaet. -- Fuer Retargeting Einwaende direkt ansprechen. - -## Positioning Against Competitors - -Gegen Scanova: -- QRMaster einfacher, schneller, weniger "Tool"-Komplexitaet. -- Starker Fokus auf kostenlose Erstellung und klare SMB Use Cases. - -Gegen QR TIGER: -- QRMaster weniger Enterprise/advanced, mehr "in Sekunden starten". -- Branding und Tracking trotzdem sichtbar machen. - -Gegen Bitly: -- Bitly ist breite Link-Plattform. QRMaster sollte als fokussierte QR-Code-Loesung auftreten. -- "Everything you need. Nothing you don't." - -Gegen Uniqode: -- Uniqode wirkt Premium/Enterprise/komplex. -- QRMaster sollte "simple, fast, affordable" besetzen. - -## Priority Test Plan - -Als erste Meta-Ads fuer QRMaster testen: - -1. "Kostenlose QR-Codes in 10 Sekunden erstellen" -2. "Dein QR-Code sollte zu deiner Marke passen" -3. "Noch an QRMaster interessiert?" -4. "Wenig Platz. Viel zu sagen." -5. "Mach dein Menue-QR messbar" - -Budgetlogik: - -- 40% Retargeting/Win-back -- 30% Speed + Free -- 20% Branded/Design -- 10% Vertical Tests - -## Reminder For Future Ad Work - -Wenn Ads fuer qrmaster.net erstellt werden: - -1. Diese Datei zuerst lesen. -2. Mindestens einen Competitor-Winkel uebernehmen. -3. Den Winkel auf QRMaster differenzieren: einfacher, schneller, kostenloser, SMB-freundlicher. -4. Keine unbelegten Zahlen oder Claims nutzen. -5. Jede Ad mit Hook, Benefit, Proof/Feature und klarem CTA strukturieren. +# Meta Ads Competitor Analysis Memory + +Stand: 2026-05-27 +Projekt: qrmaster.net +Zweck: Diese Datei speichert wiederverwendbare Learnings aus Meta-Ads-Analysen der wichtigsten QRMaster-Competitors. Bei neuen Ad-Konzepten fuer qrmaster.net diese Datei zuerst beruecksichtigen. + +## Strategischer Gesamtblick + +Die wichtigsten Competitors in Meta Ads positionieren sich nicht nur als QR-Code-Generatoren, sondern als Tools fuer Branding, Tracking, Analytics, Kampagnensteuerung und Revenue-Wachstum. + +QRMaster sollte sich gegen diese Wettbewerber vor allem ueber folgende Winkel differenzieren: + +- Einfachheit: QR-Code in Sekunden erstellen, ohne komplexes Setup. +- Schnelligkeit: "Create in 10/30 seconds" als klarer Hook. +- Kostenloser Einstieg: "Free", "Try free", "No credit card" prominent nutzen. +- SMB-Fokus: kleine Unternehmen, Restaurants, lokale Anbieter, Events, Retail, Hotels. +- Tracking ohne Komplexitaet: Scans, Kundeninteresse und Kampagnenleistung einfach sichtbar machen. +- Branded QR Codes: keine generischen schwarzen Quadrate, sondern Logo, Farben und Style. +- Retargeting/Win-back: Besucher und ehemalige Nutzer gezielt zurueckholen. + +## Top Competitors + +Analysierte Competitors: + +1. Scanova +2. QR TIGER +3. Bitly +4. Uniqode + +## Scanova Learnings + +Scanova nutzt wenige, aber klare Meta Ads mit mehreren Messaging-Winkeln. + +Was funktioniert: + +- Objection Handling: "Still not convinced you need a QR Code?" +- Design-Angle: "Tired of boring QR codes?" +- Business Outcome: repeat purchases, social shares, brand moments. +- Problem/Solution: wenig Platz auf Labels, aber viele Informationen. +- Freemium-Risikoabbau: "free to try". + +Beste nachzubauende QRMaster-Ads: + +### Scanova Ad 1: Objection Handling + +Hook: +"Still not convinced you need a QR code?" + +QRMaster-Version: +"Noch nicht sicher, ob du einen QR-Code brauchst? Fair. Du brauchst nur einen, wenn du mehr Kundeninteraktion, Echtzeit-Tracking, volle Designkontrolle und aenderbare Links nach dem Drucken willst. QRMaster ist kostenlos testbar." + +CTA: +"Kostenlos testen" oder "Learn More" + +Warum relevant: +Direkte Einwaende werden akzeptiert statt wegargumentiert. Das eignet sich gut fuer Retargeting und warme Zielgruppen. + +### Scanova Ad 2: Design/Emotion + +Hook: +"Tired of boring QR codes?" + +QRMaster-Version: +"Genug von langweiligen QR-Codes? Mit QRMaster erstellst du schoene, gebrandete QR-Codes mit Logo, Farben und Tracking. Kostenlos starten." + +CTA: +"Create Free" oder "Jetzt erstellen" + +Warum relevant: +Sehr leicht visuell zu zeigen: generischer QR-Code vs. gebrandeter QRMaster-Code. + +### Scanova Ad 3: Label/Packaging Pain + +Hook: +"Only 3cm of label space left?" + +QRMaster-Version: +"Nur wenig Platz auf Verpackung, Flyer oder Speisekarte? Ein QRMaster-Code bringt deine ganze Story auf eine kleine Flaeche und zeigt dir, wer scannt." + +CTA: +"QR-Code erstellen" + +Warum relevant: +Sehr konkreter Pain Point fuer Retail, Packaging, Gastronomie und Print. + +## QR TIGER Learnings + +QR TIGER nutzt langlebige Kampagnen, Video-Creatives und klare Feature-Angles. Einige Ads laufen seit vielen Monaten, was auf Performance hindeutet. + +Was funktioniert: + +- Konkreter Benefit: "80% more scans" statt vager Claims. +- Custom QR Codes mit Branding. +- Analytics als Kampagnenoptimierung. +- Multi-URL/advanced Features fuer B2B-Marketer. +- Zukunfts-/Compliance-Angle wie GS1 QR Codes. +- 15-45 Sekunden Videos mit schneller Produktdemo. + +Beste nachzubauende QRMaster-Ads: + +### QR TIGER Ad 1: Custom QR Codes mit Branding + +Hook: +"Get 80% more scans with custom QR codes." + +QRMaster-Version: +"Erstelle gebrandete QR-Codes in 30 Sekunden. Fuege Logo und Farben hinzu, teile deinen Code und verfolge alle Scans in Echtzeit." + +Video-Struktur: +- 0-3s: "QR-Code in 30 Sekunden" +- 3-15s: Logo/Farbe/Design zeigen +- 15-30s: Scan mit Smartphone +- 30-40s: Analytics Dashboard zeigen +- 40-45s: CTA + +CTA: +"Kostenlos erstellen" oder "Sign Up" + +### QR TIGER Ad 2: Multi-URL / Smart QR + +Hook: +"What if your QR code link could change depending on location, language or time?" + +QRMaster-Version: +"Was, wenn dein QR-Code smarter arbeitet? Leite Nutzer je nach Kampagne, Sprache oder Geraet weiter und sieh alle Scans in einem Dashboard." + +CTA: +"Mehr erfahren" + +Nutzen: +Gut fuer B2B/Marketer und fortgeschrittenere Use Cases. + +### QR TIGER Ad 3: Future/Urgency + +Hook: +"By 2027, barcodes will be replaced with GS1-powered QR codes." + +QRMaster-Version: +"QR-Codes werden zum Standard fuer moderne Verpackungen, Menues und Kampagnen. Starte jetzt mit QRMaster, bevor deine Konkurrenz schneller ist." + +CTA: +"Jetzt starten" + +Hinweis: +Nur nutzen, wenn die Aussage sachlich korrekt und fuer die Zielgruppe passend formuliert ist. + +## Bitly Learnings + +Bitly wirbt sehr aggressiv mit hohem Anzeigenvolumen. Der Kern liegt auf Win-back, Analytics, AI und All-in-One-Plattform. + +Was funktioniert: + +- Win-back: "Still thinking about Bitly?" +- Daten/Analytics: "Turn every link into real insights." +- AI-Angle: "Ask Bitly anything." +- All-in-One: Links, QR Codes und Landing Pages in einer Plattform. +- Viele Varianten desselben Messaging. +- Kurze Videos und statische Ads. + +Beste nachzubauende QRMaster-Ads: + +### Bitly Ad 1: Win-back / Retargeting + +Hook: +"Still interested in QRMaster?" + +QRMaster-Version: +"Noch interessiert an QRMaster? Deine kostenlosen QR-Codes und Tracking-Daten warten auf dich. Steig wieder ein und erstelle deinen naechsten Code in Sekunden." + +CTA: +"QR-Code kostenlos erstellen" + +Zielgruppe: +Website-Besucher, abgebrochene Registrierungen, inaktive Nutzer. + +### Bitly Ad 2: Feature-Focused Analytics + +Hook: +"Turn every QR code into a powerful marketing tool." + +QRMaster-Version: +"Mach aus jedem QR-Code ein messbares Marketing-Tool. Tracke Scans, verstehe deine Kunden und optimiere deine Kampagnen mit QRMaster." + +CTA: +"Tracking kostenlos starten" + +### Bitly Ad 3: All-in-One Platform + +Hook: +"Everything you need to create, track, and optimize QR codes." + +QRMaster-Version: +"Alles, was du fuer QR-Codes brauchst: erstellen, branden, teilen und auswerten. Eine einfache Plattform. Kostenlos starten." + +CTA: +"QRMaster entdecken" + +### Bitly Ad 4: Simple Free Offer + +Hook: +"Generate free QR codes in seconds. No credit card." + +QRMaster-Version: +"Kostenlose QR-Codes in Sekunden erstellen. Keine Kreditkarte. Kein kompliziertes Setup. Einfach Link einfuegen und starten." + +CTA: +"Create Free" + +## Uniqode Learnings + +Uniqode setzt stark auf Enterprise, Verticals, Branding, Dynamic QR Codes, Daten und Thought Leadership. Sehr viele Ads sind branchenspezifisch. + +Was funktioniert: + +- Enterprise-Angle: zentrale Kontrolle, Bulk Creation, Team Permissions, Analytics. +- Hospitality/Restaurant-Angle: Gaeste, Menues, Loyalitaet, Wiederbesuche. +- Branding: "Your QR code should look like you." +- Data Capture: E-Mail/SMS/CRM und Customer Data Ownership. +- Quick-Win: schneller QR-Code ohne Design-Skills. +- Industry Verticals: Hotels, Restaurants, Retail, Events, CPG. +- Social Proof: viele Unternehmen, Scans, Reports. + +Beste nachzubauende QRMaster-Ads: + +### Uniqode Ad 1: Multi-Location / Enterprise Simple + +Hook: +"Multi-location QR campaigns made simple." + +QRMaster-Version: +"Verwalte QR-Codes nicht mehr manuell ueber Standorte, Teams und Kampagnen hinweg. QRMaster bietet zentrale Kontrolle, Bulk-Erstellung, Teamzugriff und Echtzeit-Analytics in einem Dashboard." + +CTA: +"Free Trial starten" + +### Uniqode Ad 2: Restaurant/Hospitality + +Hook: +"Turn your menu QR into revenue." + +QRMaster-Version: +"Jeder Gast scannt deinen Menue-QR-Code. Aber misst du auch, was danach passiert? QRMaster zeigt dir Scans, Interessen und Wiederbesuche, damit aus Menues echte Kundenbindung wird." + +CTA: +"Demo ansehen" + +### Uniqode Ad 3: Branded QR Codes + +Hook: +"Your QR Code, Your Brand." + +QRMaster-Version: +"Keine generischen Schwarz-Weiss-Codes. Mit QRMaster erstellst du gebrandete QR-Codes mit Logo, Farben und Style, denen Kunden vertrauen." + +CTA: +"Branded QR kostenlos erstellen" + +### Uniqode Ad 4: Data Capture + +Hook: +"Your QR codes should capture data." + +QRMaster-Version: +"Jeder Scan ist ein Signal. QRMaster hilft dir, Scans, Interesse und Kampagnenleistung zu messen, damit du bessere Marketingentscheidungen triffst." + +CTA: +"Mehr erfahren" + +### Uniqode Ad 5: Quick-Win + +Hook: +"Create a QR code in 10 seconds." + +QRMaster-Version: +"Keine Design-Skills. Kein kompliziertes Setup. Link einfuegen, Farbe waehlen, QR-Code generieren. Fertig." + +CTA: +"Jetzt erstellen" + +## Best Overall Ad Concepts For QRMaster + +Diese Konzepte sollten priorisiert werden, wenn neue Meta Ads fuer qrmaster.net erstellt werden: + +### 1. Speed + Free + +Headline: +"Kostenlose QR-Codes in 10 Sekunden erstellen" + +Body: +"Link einfuegen, Design waehlen, QR-Code downloaden. Mit QRMaster geht es schnell, einfach und ohne Kreditkarte." + +CTA: +"Kostenlos erstellen" + +### 2. Branded QR Code + +Headline: +"Dein QR-Code sollte zu deiner Marke passen" + +Body: +"Erstelle QR-Codes mit Logo, Farben und Style. Keine generischen Codes, sondern professionelle QR-Codes fuer Flyer, Verpackungen, Menues und Kampagnen." + +CTA: +"Branded QR erstellen" + +### 3. Tracking / Analytics + +Headline: +"Tracke jeden QR-Code-Scan" + +Body: +"Sieh, wann und wie oft deine QR-Codes gescannt werden. QRMaster macht aus QR-Codes messbare Marketingkanaele." + +CTA: +"Tracking starten" + +### 4. Restaurant / Menu QR + +Headline: +"Mach dein Menue-QR messbar" + +Body: +"Gaeste scannen sowieso. Mit QRMaster siehst du, was funktioniert, welche Kampagnen laufen und wie du Wiederbesuche steigerst." + +CTA: +"Restaurant-Demo ansehen" + +### 5. Retargeting / Win-back + +Headline: +"Noch an QRMaster interessiert?" + +Body: +"Dein naechster QR-Code ist nur ein paar Sekunden entfernt. Kostenlos erstellen, branden und tracken." + +CTA: +"Weiter machen" + +### 6. Packaging / Print Pain + +Headline: +"Wenig Platz. Viel zu sagen." + +Body: +"Ein QRMaster-Code bringt Produktinfos, Anleitungen, Angebote und Tracking auf Verpackungen, Flyer und Etiketten." + +CTA: +"QR-Code erstellen" + +### 7. All-in-One Simple Platform + +Headline: +"QR-Codes erstellen, branden und messen" + +Body: +"Alles in einer einfachen Plattform. Keine komplexe Enterprise-Software. QRMaster ist gemacht fuer schnelle Kampagnen und klare Ergebnisse." + +CTA: +"QRMaster testen" + +## Recommended Campaign Structure + +### Cold Traffic + +Ziel: neue Nutzer gewinnen. + +Ads: +- Speed + Free +- Branded QR Code +- Packaging / Print Pain +- Restaurant / Menu QR + +### Warm Traffic / Retargeting + +Ziel: Besucher, Abbrecher und ehemalige Nutzer zurueckholen. + +Ads: +- "Noch an QRMaster interessiert?" +- Objection Handling +- Tracking/Analytics +- Free Trial / No Credit Card + +### B2B / Higher Intent + +Ziel: Marketer, Agenturen, Restaurants, Hotels, Retail, Event-Veranstalter. + +Ads: +- Multi-location simple +- Data capture / CRM +- Industry-specific creatives +- Branded QR codes at scale + +## Performance Signals From Impression Sorting + +Stand: 2026-05-27 + +Wichtig: Die Meta Ads Library zeigt keine echten Performance-Metriken wie CTR, CPC, CPA, Conversion Rate, ROAS oder Spend. Wenn die Library aber nach "Impressionen absteigend" sortiert ist, sind die oberen Anzeigen die Ads mit den meisten ausgelieferten Impressionen. Das ist kein direkter ROI-Beweis, aber ein starkes Signal fuer: + +- hoehere Budget-Allokation +- laengere Laufzeit +- validiertes Messaging +- bessere Skalierbarkeit +- Gewinner-Creatives oder Gewinner-Audiences + +Diese Rankings deshalb als Performance-Indizien verwenden, nicht als harte Metriken. + +### Scanova Performance Ranking + +Sortierung: Impressionen absteigend, ca. 5 aktive Ads. + +1. Objection Handling: "Still not convinced you need a QR code?" + - ID: 4437071703279023 + - Aktiv seit: 2026-04-17 + - Signal: hoechste Impressionen und laengste Laufzeit. + - Interpretation: klarer Winner bei Scanova. + - QRMaster-Learning: als erste Retargeting/Prospecting-Ad testen. + +2. Design Emotion: "Tired of boring QR codes?" + - ID: 2768191646907291 + - Aktiv seit: 2026-04-29 + - Signal: zweithoechste Impressionen, solide Laufzeit. + - Interpretation: starker Secondary-Winner. + - QRMaster-Learning: generischer QR-Code vs. branded QR-Code visuell zeigen. + +3. B2B Outcome / Brands + - ID: 1504294601330713 + - Aktiv seit: 2026-05-26 + - Signal: neuer Test, weniger Impressionen wegen kurzer Laufzeit. + - QRMaster-Learning: spaeter testen, besonders fuer Packaging/Ecommerce. + +4. Feature Listing: "20+ QR Codes. Endless uses." + - ID: 1717343306059358 + - Aktiv seit: 2026-05-26 + - Signal: neuer Test. + - QRMaster-Learning: Feature-Listen nur nutzen, wenn klarer Outcome davorsteht. + +5. Space/Label Pain: "Your product label has 3cm left..." + - ID: 1707202200450970 + - Aktiv seit: 2026-05-26 + - Signal: neuer Test. + - QRMaster-Learning: guter Angle fuer Print/Packaging, aber erst nach den breiteren Winners testen. + +Prioritaet fuer QRMaster: +1. Objection Handling +2. Design/Branding +3. Packaging/Label Pain als Nischen-Test + +### QR TIGER Performance Ranking + +Sortierung/Indizien: lange Laufzeit und aktive Varianten. + +1. Custom QR Codes mit Branding + - ID: 1258668248847659 + - Aktiv seit: 2024-08-18 + - Video: ca. 45 Sekunden plus kuerzere Varianten. + - Message: custom/branded QR codes, "80% more scans", Tracking, A/B tests. + - Signal: extrem lange Laufzeit, mehrere Varianten, weiterhin aktiv. + - Interpretation: sehr wahrscheinlich QR TIGERs Haupt-Winner. + - QRMaster-Learning: "Erstelle gebrandete QR-Codes in 30 Sekunden" als Kern-Video bauen. + +2. Multi URL QR Codes + - ID: 1612914899327017 + - Aktiv seit: 2024-11-13 + - Message: Link kann je nach Location, Sprache, Zeit oder Scananzahl wechseln. + - Signal: lange Laufzeit, Soft-CTA "Learn More/Mehr dazu". + - Interpretation: solider Advanced-Use-Case-Performer. + - QRMaster-Learning: fuer warme B2B/Marketer-Zielgruppen nutzen, nicht als Massen-Hook. + +3. GS1 QR Codes / Future Compliance + - ID: 912391637706042 + - Aktiv seit: 2024-12-18, spaeter erneuert. + - Message: 2027/GS1/barcode replacement, first-mover urgency. + - Signal: separate Landing Page bzw. dedizierte Domain, B2B-Fokus. + - Interpretation: niedrigeres Volumen, aber potentiell hoehere Lead-Qualitaet. + - QRMaster-Learning: nur nutzen, wenn fachlich korrekt und mit passender Landing Page. + +Prioritaet fuer QRMaster: +1. Branded QR Code Speed Demo +2. Smart/Dynamic QR fuer Retargeting +3. Future/Trend-Angle nur vorsichtig und belegbar + +### Bitly Performance Ranking + +Sortierung: Impressionen absteigend, ca. 200 aktive Ads. + +1. Win-back: "Still thinking about Bitly?" + - Beispiel-IDs: 845577364641009, 947060991537298, 1314328070805227, 2379444135888254, 975084468313052, 1626897478589888, 1550285439986462 + - Aktiv seit: mehrere Varianten ab 2026-04-28 bis 2026-05-14. + - Message: "Your link data and analytics are waiting for you, jump back in." + - Signal: dominiert Top-Positionen nach Impressionen, viele Varianten, Video- und Static-Tests. + - Interpretation: Bitlys staerkster Meta-Ads-Ansatz ist Win-back/Retargeting. + - QRMaster-Learning: Nutzer sammeln, Pixel/Retargeting nutzen, "Deine QR-Codes warten" testen. + +2. All-in-One Platform: "Every connection matters" + - Beispiel-ID: 1535165028202688 + - Aktiv seit: 2026-05-15 + - Message: Links, QR codes and landing pages all in one place. + - Signal: hohe Position trotz neuerer Laufzeit. + - Interpretation: starker Brand-/Platform-Winkel. + - QRMaster-Learning: "Alles fuer QR-Codes: erstellen, branden, tracken" als einfache QRMaster-Version. + +3. Feature/Analytics: "Turn every link into real insights" + - Beispiel-ID: 1314712214127043 + - Aktiv seit: 2026-05-22 + - Message: understand clicks and conversions. + - Signal: aktiv, aber unterhalb der Win-back-Winner. + - Interpretation: funktioniert, aber wahrscheinlich schwächer als Retargeting. + - QRMaster-Learning: "Mach aus jedem QR-Code messbare Marketingdaten." + +4. AI Feature: "Ask Bitly anything" + - Beispiel-ID: 2448698088981471 + - Aktiv seit: 2026-05-14 + - Message: AI assistant fuer Link- und QR-Code-Performance. + - Signal: mehrere Varianten, aber vermutlich nischiger. + - Interpretation: Premium-/Feature-Test, nicht Hauptvolumen. + - QRMaster-Learning: AI nur nutzen, wenn echtes Feature existiert und nicht als leerer Buzzword-Hook. + +Prioritaet fuer QRMaster: +1. Win-back/Retargeting +2. All-in-One QR Platform +3. Tracking/Analytics +4. AI nur bei echter Produktbasis + +### Uniqode Performance Ranking + +Sortierung: Impressionen absteigend, ca. 170 aktive Ads. + +Top-Performer nach Impressionen: + +1. Hospitality Self-Service: "Guests find what they need in seconds" + - Beispiel-ID: 2220200865452960 + - Aktiv seit: 2026-03-31 + - Headline: "Routine questions handled. Staff freed for what matters" + - Message: QR handles basics, staff focuses on service. + - Signal: Platz 1, lange Laufzeit, mehrere Varianten. + - QRMaster-Learning: fuer Hotels/Restaurants: QR spart Personalzeit und verbessert Service. + +2. Hospitality Self-Service Variant + - Beispiel-ID: 2060386458694164 + - Aktiv seit: 2026-04-11 + - Signal: gleiche Message, 3 Varianten. + - QRMaster-Learning: Gewinner-Message mehrfach kreativ variieren. + +3. Linkpages / Branded Hub + - Beispiel-ID: 1826847247985265 + - Aktiv seit: 2026-05-04 + - Message: one scan opens a branded page with loyalty, offers, social follow. + - Signal: hohe Impressionen trotz neuerer Laufzeit. + - QRMaster-Learning: QR nicht nur als Link, sondern als Mini-Hub/Angebotsseite positionieren. + +4. Hotel Loyalty / Opt-ins + - Beispiel-ID: 1933435043940258 + - Aktiv seit: 2026-03-31 + - Headline: "QR built to drive repeat stays" + - Message: consented opt-ins waehrend Aufenthalt, spaetere Rebooking-Angebote. + - QRMaster-Learning: Consent, Opt-in und Wiederbesuch als Hotel-Angle nutzen. + +5. Retail Thought Leadership + - Beispiel-ID: 3937841396509697 + - Aktiv seit: 2026-03-31 + - Headline: "Inspire Your Strategy these 14 QR Codes" + - Message: 14 retail brands use QR codes for loyalty, launches, offers, in-store experiences. + - QRMaster-Learning: "X Ideen fuer QR-Codes in Retail/Restaurant/Event" als Lead Magnet testen. + +6. Hotel Revenue/Upsell + - Beispiel-ID: 2005806333649282 + - Aktiv seit: 2026-03-31 + - Video: ca. 24 Sekunden. + - Headline: "Boost Revenue with QR Upsells" + - Message: upsell without feeling pushy. + - QRMaster-Learning: Revenue + nicht aufdringlich ist ein starker Hospitality-Hook. + +7. Hotel Journey + - Beispiel-ID: 1866303194031380 + - Aktiv seit: 2026-03-31 + - Headline: "How Hotels Are Using QR Codes to Win Guests" + - Message: from check-in to loyalty programs. + - QRMaster-Learning: Full customer journey statt Einzel-QR-Code zeigen. + +8. Retail Social Proof Duplicate + - Beispiel-ID: 2175516249652376 + - Aktiv seit: 2026-03-31 + - Signal: gleiche Message wie Retail-Thought-Leadership, weiterer Beleg fuer Winner. + +9. Report / Thought Leadership + - Beispiel-ID: 1896269207741481 + - Aktiv seit: 2026-04-24 + - Headline: "Turn QR scans into measurable revenue" + - Message: 2026 State of QR Codes report, benchmarks, tactics. + - QRMaster-Learning: Lead Magnet mit Benchmarks/Use Cases kann Meta-Ads tragen. + +10. Restaurant Revenue / QR Menus + - Beispiel-ID: 1504621434396227 + - Aktiv seit: 2026-03-31 + - Video: ca. 24 Sekunden. + - Headline: "Boost Revenue with QR Upsells" + - Message: restaurants upsell without feeling pushy. + - QRMaster-Learning: Menue-QR nicht als Hygiene-Feature, sondern als Umsatzhebel positionieren. + +11. Case Study: Spinrite Brand Experience + - Beispiel-ID: 25949066888125449 + - Aktiv seit: 2026-03-31 + - Message: offline creativity with online inspiration. + - QRMaster-Learning: echte Fallstudien/Use Cases sind starke Ads. + +12. Case Study: Spinrite Insights + - Beispiel-ID: 1871281913579414 + - Aktiv seit: 2026-03-31 + - Message: "Most brands stop at scan here. Spinrite didn't." + - QRMaster-Learning: "Nicht bei Scan here stoppen" ist ein guter Problem-Hook. + +13. Data/Loyalty: "When every new buyer counts, QR helps keep them" + - Beispiel-ID: 1137430406113966 + - Aktiv seit: 2026-05-04 + - Message: zero-party data, loyalty, personalization. + - QRMaster-Learning: Privacy/zero-party-data nur fuer B2B/CPG nutzen, da erklaerungsbeduerftig. + +14. Restaurant: "What brings diners back through the door?" + - Beispiel-ID: 1273239168172050 + - Aktiv seit: 2026-05-21 + - Message: first scan to last visit, keep seats full. + - QRMaster-Learning: neuerer starker Restaurant-Winner, als direkte QRMaster-Variante testen. + +Wichtigste Uniqode-Erkenntnisse: + +- Hospitality dominiert die Top-Positionen. +- Die staerksten Ads sprechen Personalentlastung, Service, Wiederbesuche und Umsatz an. +- Retail/Thought-Leadership funktioniert, wenn es konkrete Beispiele oder Reports gibt. +- Case Studies laufen lange und koennen als Trust-Builder funktionieren. +- Feature-only Ads sind schwaecher als Outcome- oder Journey-Ads. + +Prioritaet fuer QRMaster: +1. Restaurant/Hotel Self-Service: "Gaeste finden alles per QR, dein Team spart Zeit" +2. QR Menu Revenue/Upsell: "Mehr Umsatz ohne aufdringlich zu verkaufen" +3. Branded QR/Linkpage Hub +4. Lead Magnet: "14 QR-Code-Ideen fuer Restaurants/Retail" +5. Case Study Ads, sobald echte Kundenbeispiele vorhanden sind + +## Creative Rules Learned From Competitors + +- Erste 3 Sekunden muessen Hook oder Ergebnis zeigen. +- Video-Laenge: 8-20 Sekunden fuer schnelle Demos, 30-45 Sekunden fuer Feature-Erklaerung. +- Immer Text-Overlay nutzen, weil viele Meta-Videos ohne Ton laufen. +- QR-Code-Erstellung visuell zeigen: Link einfuegen, Farbe/Logo waehlen, Code downloaden, Scan tracken. +- Statische Ads brauchen grossen lesbaren Text und einen klaren visuellen Vorher/Nachher-Vergleich. +- Formate immer in 1:1, 4:5 und 9:16 testen. +- Pro Konzept mindestens 2-3 Varianten testen. + +## Copy Rules + +- Konkrete Zahlen nutzen, wenn belegbar: "10 Sekunden", "30 Sekunden", "jeder Scan", "Echtzeit". +- Keine unbelegten Performance-Claims wie "80% mehr Scans" ohne Daten. +- "Free" oder "kostenlos" prominent platzieren. +- Feature + Outcome kombinieren: nicht nur "Analytics", sondern "sieh, welche Kampagne funktioniert". +- Fuer SMBs einfache Sprache nutzen, keine Enterprise-Komplexitaet. +- Fuer Retargeting Einwaende direkt ansprechen. + +## Positioning Against Competitors + +Gegen Scanova: +- QRMaster einfacher, schneller, weniger "Tool"-Komplexitaet. +- Starker Fokus auf kostenlose Erstellung und klare SMB Use Cases. + +Gegen QR TIGER: +- QRMaster weniger Enterprise/advanced, mehr "in Sekunden starten". +- Branding und Tracking trotzdem sichtbar machen. + +Gegen Bitly: +- Bitly ist breite Link-Plattform. QRMaster sollte als fokussierte QR-Code-Loesung auftreten. +- "Everything you need. Nothing you don't." + +Gegen Uniqode: +- Uniqode wirkt Premium/Enterprise/komplex. +- QRMaster sollte "simple, fast, affordable" besetzen. + +## Priority Test Plan + +Als erste Meta-Ads fuer QRMaster testen: + +1. "Kostenlose QR-Codes in 10 Sekunden erstellen" +2. "Dein QR-Code sollte zu deiner Marke passen" +3. "Noch an QRMaster interessiert?" +4. "Wenig Platz. Viel zu sagen." +5. "Mach dein Menue-QR messbar" + +Budgetlogik: + +- 40% Retargeting/Win-back +- 30% Speed + Free +- 20% Branded/Design +- 10% Vertical Tests + +## Reminder For Future Ad Work + +Wenn Ads fuer qrmaster.net erstellt werden: + +1. Diese Datei zuerst lesen. +2. Mindestens einen Competitor-Winkel uebernehmen. +3. Den Winkel auf QRMaster differenzieren: einfacher, schneller, kostenloser, SMB-freundlicher. +4. Keine unbelegten Zahlen oder Claims nutzen. +5. Jede Ad mit Hook, Benefit, Proof/Feature und klarem CTA strukturieren. diff --git a/memory/project_summary.md b/memory/project_summary.md index 1ac5465..5511b1a 100644 --- a/memory/project_summary.md +++ b/memory/project_summary.md @@ -1,24 +1,24 @@ -# QR Master Project Summary - -## TikTok Growth Positioning - -QR Master should be positioned as control after print, not as another generic QR code generator. - -Core message: - -> A printed QR code is only useful if the destination can change, the scans can be measured, and the business does not need to reprint. - -Best early TikTok angles from the supplied account analysis: - -- Reprint pain after a link changes. -- Static QR code risks. -- Restaurant QR menu problems. -- Event and flyer changes. -- Business card QR workflows. -- QR scan analytics for print campaigns. - -TikTok content should lead with a concrete business mistake or relatable QR frustration, then connect the fix to dynamic QR codes and QR Master. - -## Outreach A/B Test Notes - -- Variant B (`old_qr_links_outdated_destination`, subject `old qr links`) produced a paid user. Treat B as a proven paid-user signal when deciding future lead batch messaging. +# QR Master Project Summary + +## TikTok Growth Positioning + +QR Master should be positioned as control after print, not as another generic QR code generator. + +Core message: + +> A printed QR code is only useful if the destination can change, the scans can be measured, and the business does not need to reprint. + +Best early TikTok angles from the supplied account analysis: + +- Reprint pain after a link changes. +- Static QR code risks. +- Restaurant QR menu problems. +- Event and flyer changes. +- Business card QR workflows. +- QR scan analytics for print campaigns. + +TikTok content should lead with a concrete business mistake or relatable QR frustration, then connect the fix to dynamic QR codes and QR Master. + +## Outreach A/B Test Notes + +- Variant B (`old_qr_links_outdated_destination`, subject `old qr links`) produced a paid user. Treat B as a proven paid-user signal when deciding future lead batch messaging. diff --git a/memory/upgrade_nudge_status.md b/memory/upgrade_nudge_status.md index 4a3c30c..63097e8 100644 --- a/memory/upgrade_nudge_status.md +++ b/memory/upgrade_nudge_status.md @@ -1,41 +1,41 @@ -# Upgrade Nudge Status Memory - -Last updated: 2026-05-02 - -Purpose: local memory for upgrade-nudge outreach status when SMTP/Sent-folder evidence is incomplete. `sent_assumed_manual` means the user instructed us to treat the contact as already sent for future filtering, not that a verifiable SMTP/Sent record was found. - -## Pending send - -These are the two highest-priority upgrade candidates. Do not mark as sent until the upgrade email is actually sent. - -| Name | Email | Stage | Lead score | Reason | -| --- | --- | --- | ---: | --- | -| Ishemupenyu Chagonda | info@aldenadvisory.co.uk | Upgrade Candidate | 105 | User confirmed no upgrade email has been sent yet | -| Shreya Hegde | shhegde@linkedin.com | Upgrade Candidate | 95 | User confirmed no upgrade email has been sent yet | - -## Marked as sent by manual memory - -These contacts should be treated as already sent when filtering future upgrade-nudge batches. - -| Name | Email | Stage | Lead score | Status | -| --- | --- | --- | ---: | --- | -| Marcos Pagan | marcos@easternalliancerealty.com | Upgrade Candidate | 80 | sent_assumed_manual | -| katie Loucaides | katie.loucaides@rya.org.uk | Upgrade Candidate | 70 | sent_assumed_manual | -| Lindsey Holtz | lholtz@uwhealth.org | Upgrade Candidate | 70 | sent_assumed_manual | -| Janell Elder | janell.elder@gov.sk.ca | Upgrade Candidate | 70 | sent_assumed_manual | -| Nouf Saud | nouna.1428@gmail.com | Hot | 65 | sent_assumed_manual | -| Richie Shawl | richie.shawl@alfalaval.com | Hot | 60 | sent_assumed_manual | -| Patricia Hartmann | patricia.hartmann@agderfk.no | Hot | 60 | sent_assumed_manual | -| Andreas Knuth | andreas.knuth@gmail.com | Hot | unknown | sent_assumed_manual | - -## Excluded - -| Name | Email | Stage | Reason | -| --- | --- | --- | --- | -| Profoto Malaysia Sdn Bhd | profotomalaysia@gmail.com | Paid | Already PRO/Paid, not an upgrade-nudge target | - -## Notes - -- IMAP `Sent` check on 2026-05-02 found no verifiable Day-7 upgrade-nudge email records. -- The currently configured database lacks the `upgradeNudgeSentAt` column, so app-level sent status could not be verified there. -- Future upgrade-nudge sends should prioritize `info@aldenadvisory.co.uk` and `shhegde@linkedin.com`. +# Upgrade Nudge Status Memory + +Last updated: 2026-05-02 + +Purpose: local memory for upgrade-nudge outreach status when SMTP/Sent-folder evidence is incomplete. `sent_assumed_manual` means the user instructed us to treat the contact as already sent for future filtering, not that a verifiable SMTP/Sent record was found. + +## Pending send + +These are the two highest-priority upgrade candidates. Do not mark as sent until the upgrade email is actually sent. + +| Name | Email | Stage | Lead score | Reason | +| --- | --- | --- | ---: | --- | +| Ishemupenyu Chagonda | info@aldenadvisory.co.uk | Upgrade Candidate | 105 | User confirmed no upgrade email has been sent yet | +| Shreya Hegde | shhegde@linkedin.com | Upgrade Candidate | 95 | User confirmed no upgrade email has been sent yet | + +## Marked as sent by manual memory + +These contacts should be treated as already sent when filtering future upgrade-nudge batches. + +| Name | Email | Stage | Lead score | Status | +| --- | --- | --- | ---: | --- | +| Marcos Pagan | marcos@easternalliancerealty.com | Upgrade Candidate | 80 | sent_assumed_manual | +| katie Loucaides | katie.loucaides@rya.org.uk | Upgrade Candidate | 70 | sent_assumed_manual | +| Lindsey Holtz | lholtz@uwhealth.org | Upgrade Candidate | 70 | sent_assumed_manual | +| Janell Elder | janell.elder@gov.sk.ca | Upgrade Candidate | 70 | sent_assumed_manual | +| Nouf Saud | nouna.1428@gmail.com | Hot | 65 | sent_assumed_manual | +| Richie Shawl | richie.shawl@alfalaval.com | Hot | 60 | sent_assumed_manual | +| Patricia Hartmann | patricia.hartmann@agderfk.no | Hot | 60 | sent_assumed_manual | +| Andreas Knuth | andreas.knuth@gmail.com | Hot | unknown | sent_assumed_manual | + +## Excluded + +| Name | Email | Stage | Reason | +| --- | --- | --- | --- | +| Profoto Malaysia Sdn Bhd | profotomalaysia@gmail.com | Paid | Already PRO/Paid, not an upgrade-nudge target | + +## Notes + +- IMAP `Sent` check on 2026-05-02 found no verifiable Day-7 upgrade-nudge email records. +- The currently configured database lacks the `upgradeNudgeSentAt` column, so app-level sent status could not be verified there. +- Future upgrade-nudge sends should prioritize `info@aldenadvisory.co.uk` and `shhegde@linkedin.com`. diff --git a/meta-fix.js b/meta-fix.js deleted file mode 100644 index 71c69da..0000000 --- a/meta-fix.js +++ /dev/null @@ -1,23 +0,0 @@ -import { config } from 'dotenv'; -config(); - -const TOKEN = process.env.META_ACCESS_TOKEN; -const BASE = 'https://graph.facebook.com/v21.0'; - -async function api(path, method = 'GET', body) { - const url = new URL(`${BASE}/${path}`); - url.searchParams.set('access_token', TOKEN); - const res = await fetch(url.toString(), { - method, - headers: body ? { 'Content-Type': 'application/json' } : undefined, - body: body ? JSON.stringify(body) : undefined, - }); - const data = await res.json(); - if (!res.ok) throw new Error(JSON.stringify(data)); - return data; -} - -console.log('Pausing orphaned ad sets...'); -await api('6968509692127', 'POST', { status: 'PAUSED' }); -await api('6958800756527', 'POST', { status: 'PAUSED' }); -console.log('Done: Paused 2 orphaned ad sets (New Sales Ad Set, New Sales ad set)'); \ No newline at end of file diff --git a/output/paused-qr-preview/index.html b/output/paused-qr-preview/index.html index 09b8511..8bb7f18 100644 --- a/output/paused-qr-preview/index.html +++ b/output/paused-qr-preview/index.html @@ -1,776 +1,776 @@ - - - - - - QR Code is paused - - - - -
-
-
-
- - QR Master -
-
- - Scanning temporarily unavailable -
-
- -
-
-
- -
- Status - Paused by owner -
-
- -

QR Code is paused

- -

- This QR code has been temporarily disabled by its owner, so scanning is currently unavailable. -

- -

- Please try again later or contact the owner for the active link. Paused codes should feel intentional and trustworthy, not broken. -

- - - -
-
- Redirect - Temporarily disabled -

No destination opens while this code remains paused.

-
-
- Tracking - Scan logging stopped -

Paused scans should not continue into analytics.

-
-
- - -
- -
- - -
- Glass-like QR tile floating in a cinematic studio environment -
-
- Paused - - The scan was intentionally interrupted -
-
-
-
-
- - - - + + + + + + QR Code is paused + + + + +
+
+
+
+ + QR Master +
+
+ + Scanning temporarily unavailable +
+
+ +
+
+
+ +
+ Status + Paused by owner +
+
+ +

QR Code is paused

+ +

+ This QR code has been temporarily disabled by its owner, so scanning is currently unavailable. +

+ +

+ Please try again later or contact the owner for the active link. Paused codes should feel intentional and trustworthy, not broken. +

+ + + +
+
+ Redirect + Temporarily disabled +

No destination opens while this code remains paused.

+
+
+ Tracking + Scan logging stopped +

Paused scans should not continue into analytics.

+
+
+ + +
+ +
+ + +
+ Glass-like QR tile floating in a cinematic studio environment +
+
+ Paused + + The scan was intentionally interrupted +
+
+
+
+
+ + + + diff --git a/prisma/migrations/20260402120000_add_retention_email_fields/migration.sql b/prisma/migrations/20260402120000_add_retention_email_fields/migration.sql index e3a2256..a7f1a21 100644 --- a/prisma/migrations/20260402120000_add_retention_email_fields/migration.sql +++ b/prisma/migrations/20260402120000_add_retention_email_fields/migration.sql @@ -1,4 +1,4 @@ --- AlterTable -ALTER TABLE "User" -ADD COLUMN "activationNudgeSentAt" TIMESTAMP(3), -ADD COLUMN "upgradeNudgeSentAt" TIMESTAMP(3); +-- AlterTable +ALTER TABLE "User" +ADD COLUMN "activationNudgeSentAt" TIMESTAMP(3), +ADD COLUMN "upgradeNudgeSentAt" TIMESTAMP(3); diff --git a/prisma/migrations/20260403110000_add_thirty_day_nudge_field/migration.sql b/prisma/migrations/20260403110000_add_thirty_day_nudge_field/migration.sql index e581e30..d5e56d9 100644 --- a/prisma/migrations/20260403110000_add_thirty_day_nudge_field/migration.sql +++ b/prisma/migrations/20260403110000_add_thirty_day_nudge_field/migration.sql @@ -1,3 +1,3 @@ --- AlterTable -ALTER TABLE "User" -ADD COLUMN "thirtyDayNudgeSentAt" TIMESTAMP(3); +-- AlterTable +ALTER TABLE "User" +ADD COLUMN "thirtyDayNudgeSentAt" TIMESTAMP(3); diff --git a/public/blog/teams-qr-code.svg b/public/blog/teams-qr-code.svg index e650836..ff3157e 100644 --- a/public/blog/teams-qr-code.svg +++ b/public/blog/teams-qr-code.svg @@ -1,51 +1,51 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/images/restaurant_qr_flat_mockup.png b/public/images/restaurant_qr_flat_mockup.png new file mode 100644 index 0000000..49140f3 Binary files /dev/null and b/public/images/restaurant_qr_flat_mockup.png differ diff --git a/public/images/restaurant_qr_mockup.png b/public/images/restaurant_qr_mockup.png new file mode 100644 index 0000000..45dca3c Binary files /dev/null and b/public/images/restaurant_qr_mockup.png differ diff --git a/public/producthunt-featured.svg b/public/producthunt-featured.svg index d90c411..b27bcb7 100644 --- a/public/producthunt-featured.svg +++ b/public/producthunt-featured.svg @@ -1,11 +1,11 @@ - - QR Master on Product Hunt - Featured Product Hunt badge for QR Master - - - - - Featured on - Product Hunt - #3 - + + QR Master on Product Hunt + Featured Product Hunt badge for QR Master + + + + + Featured on + Product Hunt + #3 + diff --git a/qrmaster-lighthouse.report.html b/qrmaster-lighthouse.report.html deleted file mode 100644 index 2f460eb..0000000 --- a/qrmaster-lighthouse.report.html +++ /dev/null @@ -1,2897 +0,0 @@ - - - - - - - - Lighthouse Report - - - - - -
- - - - - - diff --git a/qrmaster-lighthouse.report.json b/qrmaster-lighthouse.report.json deleted file mode 100644 index 0fbbdfb..0000000 --- a/qrmaster-lighthouse.report.json +++ /dev/null @@ -1,15107 +0,0 @@ -{ - "lighthouseVersion": "12.8.2", - "requestedUrl": "https://qrmaster.net/", - "mainDocumentUrl": "https://www.qrmaster.net/", - "finalDisplayedUrl": "https://www.qrmaster.net/", - "finalUrl": "https://www.qrmaster.net/", - "fetchTime": "2026-05-31T11:10:41.132Z", - "gatherMode": "navigation", - "runWarnings": [ - "The page may not be loading as expected because your test URL (https://qrmaster.net/) was redirected to https://www.qrmaster.net/. Try testing the second URL directly." - ], - "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36", - "environment": { - "networkUserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36", - "hostUserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36", - "benchmarkIndex": 2499, - "credits": { - "axe-core": "4.11.4" - } - }, - "audits": { - "is-on-https": { - "id": "is-on-https", - "title": "Uses HTTPS", - "description": "All sites should be protected with HTTPS, even ones that don't handle sensitive data. This includes avoiding [mixed content](https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content), where some resources are loaded over HTTP despite the initial request being served over HTTPS. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. [Learn more about HTTPS](https://developer.chrome.com/docs/lighthouse/pwa/is-on-https/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "Insecure URL" - }, - { - "key": "resolution", - "valueType": "text", - "label": "Request Resolution" - } - ], - "items": [] - } - }, - "redirects-http": { - "id": "redirects-http", - "title": "Redirects HTTP traffic to HTTPS", - "description": "Make sure that you redirect all HTTP traffic to HTTPS in order to enable secure web features for all your users. [Learn more](https://developer.chrome.com/docs/lighthouse/pwa/redirects-http/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "viewport": { - "id": "viewport", - "title": "Has a `` tag with `width` or `initial-scale`", - "description": "A `` not only optimizes your app for mobile screen sizes, but also prevents [a 300 millisecond delay to user input](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/). [Learn more about using the viewport meta tag](https://developer.chrome.com/docs/lighthouse/pwa/viewport/).", - "score": 1, - "scoreDisplayMode": "metricSavings", - "warnings": [], - "metricSavings": { - "INP": 0 - }, - "details": { - "type": "debugdata", - "viewportContent": "width=device-width, initial-scale=1" - }, - "guidanceLevel": 3 - }, - "first-contentful-paint": { - "id": "first-contentful-paint", - "title": "First Contentful Paint", - "description": "First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/).", - "score": 0.88, - "scoreDisplayMode": "numeric", - "numericValue": 968.5665000000001, - "numericUnit": "millisecond", - "displayValue": "1.0 s", - "scoringOptions": { - "p10": 934, - "median": 1600 - } - }, - "largest-contentful-paint": { - "id": "largest-contentful-paint", - "title": "Largest Contentful Paint", - "description": "Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)", - "score": 0.55, - "scoreDisplayMode": "numeric", - "numericValue": 2220.4044999999996, - "numericUnit": "millisecond", - "displayValue": "2.2 s", - "scoringOptions": { - "p10": 1200, - "median": 2400 - } - }, - "first-meaningful-paint": { - "id": "first-meaningful-paint", - "title": "First Meaningful Paint", - "description": "First Meaningful Paint measures when the primary content of a page is visible. [Learn more about the First Meaningful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-meaningful-paint/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "speed-index": { - "id": "speed-index", - "title": "Speed Index", - "description": "Speed Index shows how quickly the contents of a page are visibly populated. [Learn more about the Speed Index metric](https://developer.chrome.com/docs/lighthouse/performance/speed-index/).", - "score": 0.28, - "scoreDisplayMode": "numeric", - "numericValue": 2953.446882393413, - "numericUnit": "millisecond", - "displayValue": "3.0 s", - "scoringOptions": { - "p10": 1311, - "median": 2300 - } - }, - "screenshot-thumbnails": { - "id": "screenshot-thumbnails", - "title": "Screenshot Thumbnails", - "description": "This is what the load of your site looked like.", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "filmstrip", - "scale": 7158, - "items": [ - { - "timing": 895, - "timestamp": 309538463191, - "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCACuAPoDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAj/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/AKpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB//9k=" - }, - { - "timing": 1790, - "timestamp": 309539357941, - "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCACuAPoDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAj/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/AKpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB//9k=" - }, - { - "timing": 2684, - "timestamp": 309540252691, - "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCACuAPoDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAj/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/AKpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB//9k=" - }, - { - "timing": 3579, - "timestamp": 309541147441, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 4474, - "timestamp": 309542042191, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 5369, - "timestamp": 309542936941, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 6263, - "timestamp": 309543831691, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 7158, - "timestamp": 309544726441, - "data": "data:image/jpeg;base64,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" - } - ] - } - }, - "final-screenshot": { - "id": "final-screenshot", - "title": "Final Screenshot", - "description": "The last screenshot captured of the pageload.", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "screenshot", - "timing": 7174, - "timestamp": 309544742832, - "data": "data:image/jpeg;base64,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" - } - }, - "total-blocking-time": { - "id": "total-blocking-time", - "title": "Total Blocking Time", - "description": "Sum of all time periods between FCP and Time to Interactive, when task length exceeded 50ms, expressed in milliseconds. [Learn more about the Total Blocking Time metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-total-blocking-time/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 0, - "numericUnit": "millisecond", - "displayValue": "0 ms", - "scoringOptions": { - "p10": 150, - "median": 350 - } - }, - "max-potential-fid": { - "id": "max-potential-fid", - "title": "Max Potential First Input Delay", - "description": "The maximum potential First Input Delay that your users could experience is the duration of the longest task. [Learn more about the Maximum Potential First Input Delay metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-max-potential-fid/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 46, - "numericUnit": "millisecond", - "displayValue": "50 ms" - }, - "cumulative-layout-shift": { - "id": "cumulative-layout-shift", - "title": "Cumulative Layout Shift", - "description": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more about the Cumulative Layout Shift metric](https://web.dev/articles/cls).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 0, - "numericUnit": "unitless", - "displayValue": "0", - "scoringOptions": { - "p10": 0.1, - "median": 0.25 - }, - "details": { - "type": "debugdata", - "items": [ - { - "cumulativeLayoutShiftMainFrame": 0, - "newEngineResult": { - "cumulativeLayoutShift": 0, - "cumulativeLayoutShiftMainFrame": 0 - }, - "newEngineResultDiffered": false - } - ] - } - }, - "errors-in-console": { - "id": "errors-in-console", - "title": "Browser errors were logged to the console", - "description": "Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. [Learn more about this errors in console diagnostic audit](https://developer.chrome.com/docs/lighthouse/best-practices/errors-in-console/)", - "score": 0, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "sourceLocation", - "valueType": "source-location", - "label": "Source" - }, - { - "key": "description", - "valueType": "code", - "label": "Description" - } - ], - "items": [ - { - "source": "network", - "description": "Failed to load resource: the server responded with a status of 404 ()", - "sourceLocation": { - "type": "source-location", - "url": "https://grainy-gradients.vercel.app/noise.svg", - "urlProvider": "network", - "line": 0, - "column": 0 - } - } - ] - } - }, - "server-response-time": { - "id": "server-response-time", - "title": "Reduce initial server response time", - "description": "Keep the server response time for the main document short because all other requests depend on it. [Learn more about the Time to First Byte metric](https://developer.chrome.com/docs/lighthouse/performance/time-to-first-byte/).", - "score": 0, - "scoreDisplayMode": "metricSavings", - "numericValue": 621.2070000000001, - "numericUnit": "millisecond", - "displayValue": "Root document took 620 ms", - "metricSavings": { - "FCP": 500, - "LCP": 500 - }, - "details": { - "type": "opportunity", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "responseTime", - "valueType": "timespanMs", - "label": "Time Spent" - } - ], - "items": [ - { - "url": "https://www.qrmaster.net/", - "responseTime": 621.2070000000001 - } - ], - "overallSavingsMs": 521.2070000000001 - }, - "guidanceLevel": 1 - }, - "interactive": { - "id": "interactive", - "title": "Time to Interactive", - "description": "Time to Interactive is the amount of time it takes for the page to become fully interactive. [Learn more about the Time to Interactive metric](https://developer.chrome.com/docs/lighthouse/performance/interactive/).", - "score": 0.92, - "scoreDisplayMode": "numeric", - "numericValue": 2314.0485, - "numericUnit": "millisecond", - "displayValue": "2.3 s" - }, - "user-timings": { - "id": "user-timings", - "title": "User Timing marks and measures", - "description": "Consider instrumenting your app with the User Timing API to measure your app's real-world performance during key user experiences. [Learn more about User Timing marks](https://developer.chrome.com/docs/lighthouse/performance/user-timings/).", - "score": null, - "scoreDisplayMode": "notApplicable", - "details": { - "type": "table", - "headings": [ - { - "key": "name", - "valueType": "text", - "label": "Name" - }, - { - "key": "timingType", - "valueType": "text", - "label": "Type" - }, - { - "key": "startTime", - "valueType": "ms", - "granularity": 0.01, - "label": "Start Time" - }, - { - "key": "duration", - "valueType": "ms", - "granularity": 0.01, - "label": "Duration" - } - ], - "items": [] - }, - "guidanceLevel": 2 - }, - "critical-request-chains": { - "id": "critical-request-chains", - "title": "Avoid chaining critical requests", - "description": "The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn how to avoid chaining critical requests](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains/).", - "score": 1, - "scoreDisplayMode": "informative", - "displayValue": "2 chains found", - "details": { - "type": "criticalrequestchain", - "chains": { - "31130ECFDA2C50A65B0AB8283DE316C7": { - "request": { - "url": "https://qrmaster.net/", - "startTime": 309537.576771, - "endTime": 309538.058273, - "responseReceivedTime": 309538.057071, - "transferSize": 441 - }, - "children": { - "31130ECFDA2C50A65B0AB8283DE316C7:redirect": { - "request": { - "url": "https://www.qrmaster.net/", - "startTime": 309538.058777, - "endTime": 309538.84125, - "responseReceivedTime": 309538.779788, - "transferSize": 26955 - }, - "children": { - "34636.5": { - "request": { - "url": "https://www.qrmaster.net/_next/static/css/438adb79d3bea865.css", - "startTime": 309538.83973, - "endTime": 309540.171926, - "responseReceivedTime": 309539.056436, - "transferSize": 80840 - } - }, - "34636.71": { - "request": { - "url": "https://www.qrmaster.net/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js", - "startTime": 309538.85926, - "endTime": 309538.951242, - "responseReceivedTime": 309538.94957699993, - "transferSize": 1020 - } - } - } - } - } - } - }, - "longestChain": { - "duration": 2595.1550000309944, - "length": 3, - "transferSize": 80840 - } - }, - "guidanceLevel": 1 - }, - "redirects": { - "id": "redirects", - "title": "Avoid multiple page redirects", - "description": "Redirects introduce additional delays before the page can be loaded. [Learn how to avoid page redirects](https://developer.chrome.com/docs/lighthouse/performance/redirects/).", - "score": 0, - "scoreDisplayMode": "metricSavings", - "numericValue": 550.695, - "numericUnit": "millisecond", - "displayValue": "Est savings of 550 ms", - "metricSavings": { - "LCP": 550, - "FCP": 550 - }, - "details": { - "type": "opportunity", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "wastedMs", - "valueType": "timespanMs", - "label": "Time Spent" - } - ], - "items": [ - { - "url": "https://qrmaster.net/", - "wastedMs": 550.695 - }, - { - "url": "https://www.qrmaster.net/", - "wastedMs": 0 - } - ], - "overallSavingsMs": 550.695 - }, - "guidanceLevel": 2 - }, - "image-aspect-ratio": { - "id": "image-aspect-ratio", - "title": "Displays images with correct aspect ratio", - "description": "Image display dimensions should match natural aspect ratio. [Learn more about image aspect ratio](https://developer.chrome.com/docs/lighthouse/best-practices/image-aspect-ratio/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "label": "" - }, - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "displayedAspectRatio", - "valueType": "text", - "label": "Aspect Ratio (Displayed)" - }, - { - "key": "actualAspectRatio", - "valueType": "text", - "label": "Aspect Ratio (Actual)" - } - ], - "items": [] - } - }, - "image-size-responsive": { - "id": "image-size-responsive", - "title": "Serves images with appropriate resolution", - "description": "Image natural dimensions should be proportional to the display size and the pixel ratio to maximize image clarity. [Learn how to provide responsive images](https://web.dev/articles/serve-responsive-images).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "label": "" - }, - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "displayedSize", - "valueType": "text", - "label": "Displayed size" - }, - { - "key": "actualSize", - "valueType": "text", - "label": "Actual size" - }, - { - "key": "expectedSize", - "valueType": "text", - "label": "Expected size" - } - ], - "items": [] - } - }, - "deprecations": { - "id": "deprecations", - "title": "Avoids deprecated APIs", - "description": "Deprecated APIs will eventually be removed from the browser. [Learn more about deprecated APIs](https://developer.chrome.com/docs/lighthouse/best-practices/deprecations/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "value", - "valueType": "text", - "label": "Deprecation / Warning" - }, - { - "key": "source", - "valueType": "source-location", - "label": "Source" - } - ], - "items": [] - } - }, - "third-party-cookies": { - "id": "third-party-cookies", - "title": "Avoids third-party cookies", - "description": "Third-party cookies may be blocked in some contexts. [Learn more about preparing for third-party cookie restrictions](https://privacysandbox.google.com/cookies/prepare/overview).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "name", - "valueType": "text", - "label": "Name" - }, - { - "key": "url", - "valueType": "url", - "label": "URL" - } - ], - "items": [] - } - }, - "mainthread-work-breakdown": { - "id": "mainthread-work-breakdown", - "title": "Minimizes main-thread work", - "description": "Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. [Learn how to minimize main-thread work](https://developer.chrome.com/docs/lighthouse/performance/mainthread-work-breakdown/)", - "score": 1, - "scoreDisplayMode": "metricSavings", - "numericValue": 1226.2249999999985, - "numericUnit": "millisecond", - "displayValue": "1.2 s", - "metricSavings": { - "TBT": 0 - }, - "details": { - "type": "table", - "headings": [ - { - "key": "groupLabel", - "valueType": "text", - "label": "Category" - }, - { - "key": "duration", - "valueType": "ms", - "granularity": 1, - "label": "Time Spent" - } - ], - "items": [ - { - "group": "other", - "groupLabel": "Other", - "duration": 482.2099999999987 - }, - { - "group": "scriptEvaluation", - "groupLabel": "Script Evaluation", - "duration": 319.18299999999886 - }, - { - "group": "styleLayout", - "groupLabel": "Style & Layout", - "duration": 299.495 - }, - { - "group": "paintCompositeRender", - "groupLabel": "Rendering", - "duration": 74.66200000000097 - }, - { - "group": "scriptParseCompile", - "groupLabel": "Script Parsing & Compilation", - "duration": 36.235000000000014 - }, - { - "group": "parseHTML", - "groupLabel": "Parse HTML & CSS", - "duration": 14.440000000000001 - } - ], - "sortedBy": [ - "duration" - ] - }, - "guidanceLevel": 1 - }, - "bootup-time": { - "id": "bootup-time", - "title": "JavaScript execution time", - "description": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn how to reduce Javascript execution time](https://developer.chrome.com/docs/lighthouse/performance/bootup-time/).", - "score": 1, - "scoreDisplayMode": "metricSavings", - "numericValue": 317.476000000001, - "numericUnit": "millisecond", - "displayValue": "0.3 s", - "metricSavings": { - "TBT": 0 - }, - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "total", - "granularity": 1, - "valueType": "ms", - "label": "Total CPU Time" - }, - { - "key": "scripting", - "granularity": 1, - "valueType": "ms", - "label": "Script Evaluation" - }, - { - "key": "scriptParseCompile", - "granularity": 1, - "valueType": "ms", - "label": "Script Parse" - } - ], - "items": [ - { - "url": "https://www.qrmaster.net/", - "total": 381.734, - "scripting": 5.471, - "scriptParseCompile": 1.6849999999999996 - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/5613-458b56f99401f184.js", - "total": 322.32799999999986, - "scripting": 75.95000000000019, - "scriptParseCompile": 2.848 - }, - { - "url": "Unattributable", - "total": 205.38499999999868, - "scripting": 6.375, - "scriptParseCompile": 0 - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/2117-941921255ccde9c7.js", - "total": 153.38200000000091, - "scripting": 142.82000000000093, - "scriptParseCompile": 3.159 - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/webpack-429d27c8aa6615de.js", - "total": 64.48699999999992, - "scripting": 60.82499999999992, - "scriptParseCompile": 0.168 - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/fd9d1056-270721ac51469ce4.js", - "total": 54.48399999999999, - "scripting": 13.587999999999994, - "scriptParseCompile": 4.587 - } - ], - "summary": { - "wastedMs": 317.476000000001 - }, - "sortedBy": [ - "total" - ] - }, - "guidanceLevel": 1 - }, - "uses-rel-preconnect": { - "id": "uses-rel-preconnect", - "title": "Preconnect to required origins", - "description": "Consider adding `preconnect` or `dns-prefetch` resource hints to establish early connections to important third-party origins. [Learn how to preconnect to required origins](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preconnect/).", - "score": 0, - "scoreDisplayMode": "metricSavings", - "numericValue": 80.142, - "numericUnit": "millisecond", - "displayValue": "Est savings of 80 ms", - "warnings": [], - "metricSavings": { - "LCP": 100, - "FCP": 0 - }, - "details": { - "type": "opportunity", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "wastedMs", - "valueType": "timespanMs", - "label": "Est Savings" - } - ], - "items": [ - { - "url": "https://grainy-gradients.vercel.app", - "wastedMs": 80.142 - } - ], - "overallSavingsMs": 80.142, - "sortedBy": [ - "wastedMs" - ] - }, - "guidanceLevel": 3 - }, - "font-display": { - "id": "font-display", - "title": "All text remains visible during webfont loads", - "description": "Leverage the `font-display` CSS feature to ensure text is user-visible while webfonts are loading. [Learn more about `font-display`](https://developer.chrome.com/docs/lighthouse/performance/font-display/).", - "score": 1, - "scoreDisplayMode": "metricSavings", - "warnings": [], - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "wastedMs", - "valueType": "ms", - "label": "Est Savings" - } - ], - "items": [] - }, - "guidanceLevel": 3 - }, - "diagnostics": { - "id": "diagnostics", - "title": "Diagnostics", - "description": "Collection of useful page vitals.", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "debugdata", - "items": [ - { - "numRequests": 45, - "numScripts": 32, - "numStylesheets": 1, - "numFonts": 0, - "numTasks": 1495, - "numTasksOver10ms": 13, - "numTasksOver25ms": 3, - "numTasksOver50ms": 2, - "numTasksOver100ms": 1, - "numTasksOver500ms": 0, - "rtt": 28.006, - "throughput": 13740800.042259306, - "maxRtt": 53.593, - "maxServerLatency": 350.69500000000005, - "totalByteWeight": 2590122, - "totalTaskTime": 1226.2249999999942, - "mainDocumentTransferSize": 26955 - } - ] - } - }, - "network-requests": { - "id": "network-requests", - "title": "Network Requests", - "description": "Lists the network requests that were made during page load.", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "protocol", - "valueType": "text", - "label": "Protocol" - }, - { - "key": "networkRequestTime", - "valueType": "ms", - "granularity": 1, - "label": "Network Request Time" - }, - { - "key": "networkEndTime", - "valueType": "ms", - "granularity": 1, - "label": "Network End Time" - }, - { - "key": "transferSize", - "valueType": "bytes", - "displayUnit": "kb", - "granularity": 1, - "label": "Transfer Size" - }, - { - "key": "resourceSize", - "valueType": "bytes", - "displayUnit": "kb", - "granularity": 1, - "label": "Resource Size" - }, - { - "key": "statusCode", - "valueType": "text", - "label": "Status Code" - }, - { - "key": "mimeType", - "valueType": "text", - "label": "MIME Type" - }, - { - "key": "resourceType", - "valueType": "text", - "label": "Resource Type" - } - ], - "items": [ - { - "url": "https://qrmaster.net/", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 0, - "networkRequestTime": 3.459999978542328, - "networkEndTime": 484.96200001239777, - "finished": true, - "transferSize": 441, - "resourceSize": 0, - "statusCode": 301, - "mimeType": "", - "priority": "VeryHigh", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 484.96200001239777, - "networkRequestTime": 485.466000020504, - "networkEndTime": 1267.9390000104904, - "finished": true, - "transferSize": 26955, - "resourceSize": 257653, - "statusCode": 200, - "mimeType": "text/html", - "resourceType": "Document", - "priority": "VeryHigh", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/image?url=%2Ffavicon1.png&w=64&q=75", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1264.811999976635, - "networkRequestTime": 1265.916000008583, - "networkEndTime": 1656.436999976635, - "finished": true, - "transferSize": 1373, - "resourceSize": 848, - "statusCode": 200, - "mimeType": "image/avif", - "resourceType": "Image", - "priority": "High", - "isLinkPreload": true, - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1155554&theme=neutral&t=1779882938098", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1265.4900000095367, - "networkRequestTime": 1266.272000014782, - "networkEndTime": 1592.6759999990463, - "finished": true, - "transferSize": 1409, - "resourceSize": 2063, - "statusCode": 200, - "mimeType": "image/svg+xml", - "resourceType": "Image", - "priority": "Low", - "isLinkPreload": true, - "experimentalFromMainFrame": true, - "entity": "producthunt.com" - }, - { - "url": "https://www.qrmaster.net/favicon1.png", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1265.5880000591278, - "networkRequestTime": 1271.397000014782, - "networkEndTime": 1510.1680000424385, - "finished": true, - "transferSize": 2112386, - "resourceSize": 2109623, - "statusCode": 200, - "mimeType": "image/png", - "resourceType": "Image", - "priority": "Low", - "isLinkPreload": true, - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/css/438adb79d3bea865.css", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1265.7199999690056, - "networkRequestTime": 1266.419000029564, - "networkEndTime": 2598.6150000095367, - "finished": true, - "transferSize": 80840, - "resourceSize": 143459, - "statusCode": 200, - "mimeType": "text/css", - "resourceType": "Stylesheet", - "priority": "VeryHigh", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/webpack-429d27c8aa6615de.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1265.8149999976158, - "networkRequestTime": 1271.6460000276566, - "networkEndTime": 1318.8680000305176, - "finished": true, - "transferSize": 2370, - "resourceSize": 4069, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "isLinkPreload": true, - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/fd9d1056-270721ac51469ce4.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1265.8949999809265, - "networkRequestTime": 1271.8009999990463, - "networkEndTime": 1337.7749999761581, - "finished": true, - "transferSize": 54080, - "resourceSize": 172837, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/2117-941921255ccde9c7.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1265.95400005579, - "networkRequestTime": 1271.9460000395775, - "networkEndTime": 1341.5800000429153, - "finished": true, - "transferSize": 32284, - "resourceSize": 124620, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/main-app-5294d1645fe5526e.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.0230000019073, - "networkRequestTime": 1272.0860000252724, - "networkEndTime": 1344.9070000052452, - "finished": true, - "transferSize": 517, - "resourceSize": 471, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/9da6db1e-74d15f011b40b363.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.102999985218, - "networkRequestTime": 1272.2210000157356, - "networkEndTime": 1377.7479999661446, - "finished": true, - "transferSize": 55839, - "resourceSize": 171490, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/2972-11a8c96c94e8d72c.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.17199999094, - "networkRequestTime": 1272.3600000143051, - "networkEndTime": 1378.6209999918938, - "finished": true, - "transferSize": 9021, - "resourceSize": 26120, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/6137-03d2cd0024eec2f8.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.2419999837875, - "networkRequestTime": 1272.5060000419617, - "networkEndTime": 1360.2530000209808, - "finished": true, - "transferSize": 7072, - "resourceSize": 20184, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/5398-651e33e9e87ac839.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.3009999990463, - "networkRequestTime": 1272.632000029087, - "networkEndTime": 1378.1060000061989, - "finished": true, - "transferSize": 5360, - "resourceSize": 13659, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/5613-458b56f99401f184.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.3719999790192, - "networkRequestTime": 1272.7590000629425, - "networkEndTime": 1363.2919999957085, - "finished": true, - "transferSize": 38647, - "resourceSize": 117066, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/6505-260be8a4d8283418.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.4399999976158, - "networkRequestTime": 1272.888000011444, - "networkEndTime": 1361.3740000128746, - "finished": true, - "transferSize": 3630, - "resourceSize": 8473, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/2178-42b732a6f83dd854.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.5120000243187, - "networkRequestTime": 1273.0270000100136, - "networkEndTime": 1358.6960000395775, - "finished": true, - "transferSize": 4068, - "resourceSize": 14322, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/5679-c02f150c43af65ca.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.5979999899864, - "networkRequestTime": 1273.1630000472069, - "networkEndTime": 1403.2859999537468, - "finished": true, - "transferSize": 3390, - "resourceSize": 8867, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/3933-93bc42e9ea14c959.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.701000034809, - "networkRequestTime": 1273.291000008583, - "networkEndTime": 1375.8800000548363, - "finished": true, - "transferSize": 6738, - "resourceSize": 20469, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/page-24771f36219646f2.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.7749999761581, - "networkRequestTime": 1273.4329999685287, - "networkEndTime": 1361.666000008583, - "finished": true, - "transferSize": 12619, - "resourceSize": 34376, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/9291-45d9839b736cdb43.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.8490000367165, - "networkRequestTime": 1273.7430000305176, - "networkEndTime": 1378.9970000386238, - "finished": true, - "transferSize": 5559, - "resourceSize": 13344, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/1609-c74afb37bb7fca33.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.9150000214577, - "networkRequestTime": 1273.8709999918938, - "networkEndTime": 1380.32800000906, - "finished": true, - "transferSize": 4291, - "resourceSize": 10515, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/9078-df6bdd57a5d89683.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1266.9780000448227, - "networkRequestTime": 1274.0099999904633, - "networkEndTime": 1400.770999968052, - "finished": true, - "transferSize": 40639, - "resourceSize": 149899, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/layout-0178cf0c8233764b.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.0860000252724, - "networkRequestTime": 1274.1980000138283, - "networkEndTime": 1379.7250000238419, - "finished": true, - "transferSize": 9671, - "resourceSize": 31675, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/error-414c5c53e4ad106a.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.522000014782, - "networkRequestTime": 1274.6489999890327, - "networkEndTime": 1379.3920000195503, - "finished": true, - "transferSize": 2369, - "resourceSize": 5031, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/not-found-9db9286a971b9da0.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.6050000190735, - "networkRequestTime": 1274.8169999718666, - "networkEndTime": 1390.1620000004768, - "finished": true, - "transferSize": 1634, - "resourceSize": 2332, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/8003-9cfa8cb7c93a1cd4.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.7039999961853, - "networkRequestTime": 1275.0099999904633, - "networkEndTime": 1381.6430000066757, - "finished": true, - "transferSize": 2807, - "resourceSize": 6300, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/6307-b392e60c9af23667.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.7759999632835, - "networkRequestTime": 1275.949999988079, - "networkEndTime": 1380.0820000171661, - "finished": true, - "transferSize": 9438, - "resourceSize": 32668, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/3412-8133cd5684cd339c.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.8430000543594, - "networkRequestTime": 1277.6010000109673, - "networkEndTime": 1381.445000052452, - "finished": true, - "transferSize": 8803, - "resourceSize": 26124, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/6395-4109bdfcd5f6aab0.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.8799999952316, - "networkRequestTime": 1277.8240000009537, - "networkEndTime": 1381.070000052452, - "finished": true, - "transferSize": 4041, - "resourceSize": 12173, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(marketing-de)/layout-ef26256c086ead95.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.9210000038147, - "networkRequestTime": 1278.1129999756813, - "networkEndTime": 1380.7979999780655, - "finished": true, - "transferSize": 6206, - "resourceSize": 20857, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/6054-bff014e31f7a01c3.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1267.973000049591, - "networkRequestTime": 1279.4630000591278, - "networkEndTime": 1380.5450000166893, - "finished": true, - "transferSize": 3770, - "resourceSize": 10374, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/layout-e578332b5aca23ec.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1268.0490000247955, - "networkRequestTime": 1279.6890000104904, - "networkEndTime": 1381.82800000906, - "finished": true, - "transferSize": 1239, - "resourceSize": 1699, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 1285.4400000572205, - "networkRequestTime": 1285.9490000009537, - "networkEndTime": 1377.930999994278, - "finished": true, - "transferSize": 1020, - "resourceSize": 1239, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "High", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://grainy-gradients.vercel.app/noise.svg", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 2614.003000020981, - "networkRequestTime": 2614.472000002861, - "networkEndTime": 2796.7580000162125, - "finished": true, - "transferSize": 107, - "resourceSize": 107, - "statusCode": 404, - "mimeType": "text/plain", - "resourceType": "Image", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "vercel.app" - }, - { - "url": "https://www.qrmaster.net/favicon1.png", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 2888.1610000133514, - "networkRequestTime": 2888.7419999837875, - "networkEndTime": 2905.516000032425, - "finished": true, - "transferSize": 0, - "resourceSize": 2109623, - "statusCode": 200, - "mimeType": "image/png", - "resourceType": "Other", - "priority": "High", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/api/auth/session", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 3056.2840000391006, - "networkRequestTime": 3057.7690000534058, - "networkEndTime": 3214.4710000157356, - "finished": true, - "transferSize": 616, - "resourceSize": 2, - "statusCode": 200, - "mimeType": "application/json", - "resourceType": "Fetch", - "priority": "High", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/about?_rsc=znyv0", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 3330.5509999990463, - "networkRequestTime": 3331.7229999899864, - "networkEndTime": 3724.2139999866486, - "finished": true, - "transferSize": 6684, - "resourceSize": 28211, - "statusCode": 200, - "mimeType": "text/x-component", - "resourceType": "Fetch", - "priority": "High", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/login?_rsc=znyv0", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 3331.82800000906, - "networkRequestTime": 3332.569000005722, - "networkEndTime": 3597.7610000371933, - "finished": true, - "transferSize": 2620, - "resourceSize": 9654, - "statusCode": 200, - "mimeType": "text/x-component", - "resourceType": "Fetch", - "priority": "High", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/signup?_rsc=znyv0", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 3332.682000041008, - "networkRequestTime": 3333.957000017166, - "networkEndTime": 3707.0519999861717, - "finished": true, - "transferSize": 2456, - "resourceSize": 8866, - "statusCode": 200, - "mimeType": "text/x-component", - "resourceType": "Fetch", - "priority": "High", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(auth)/login/page-326889b21152b35d.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 3601.597000002861, - "networkRequestTime": 3603.0730000138283, - "networkEndTime": 4659.500000059605, - "finished": true, - "transferSize": 4813, - "resourceSize": 12750, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(auth)/signup/page-c348d850ba23206f.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 3708.225000023842, - "networkRequestTime": 3708.936000049114, - "networkEndTime": 3747.119000017643, - "finished": true, - "transferSize": 4954, - "resourceSize": 14278, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/about/page-9f161c6ad466aed6.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 3711.6930000185966, - "networkRequestTime": 3713.314999997616, - "networkEndTime": 3754.54699999094, - "finished": true, - "transferSize": 1730, - "resourceSize": 2776, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/privacy?_rsc=znyv0", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 4091.5360000133514, - "networkRequestTime": 4092.5710000395775, - "networkEndTime": 4624.330999970436, - "finished": true, - "transferSize": 4920, - "resourceSize": 18638, - "statusCode": 200, - "mimeType": "text/x-component", - "resourceType": "Fetch", - "priority": "High", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - }, - { - "url": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/privacy/page-2bff7625482002a8.js", - "sessionTargetType": "page", - "protocol": "h2", - "rendererStartTime": 4627.796000003815, - "networkRequestTime": 4629.409000039101, - "networkEndTime": 4700.275000035763, - "finished": true, - "transferSize": 696, - "resourceSize": 674, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script", - "priority": "Low", - "experimentalFromMainFrame": true, - "entity": "qrmaster.net" - } - ], - "debugData": { - "type": "debugdata", - "networkStartTimeTs": 309537573311, - "initiators": [ - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1141 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1298 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1351 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1444 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1553 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1626 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1704 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1786 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1868 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 1946 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2024 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2102 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2180 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2258 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2336 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2414 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2492 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2593 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2671 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2749 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2827 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 2930 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3032 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3138 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3216 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3294 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3372 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3450 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3549 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3627 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 0, - "columnNumber": 3718 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/", - "lineNumber": 21, - "columnNumber": 153012 - }, - { - "type": "parser", - "url": "https://www.qrmaster.net/_next/static/css/438adb79d3bea865.css" - } - ] - } - } - }, - "network-rtt": { - "id": "network-rtt", - "title": "Network Round Trip Times", - "description": "Network round trip times (RTT) have a large impact on performance. If the RTT to an origin is high, it's an indication that servers closer to the user could improve performance. [Learn more about the Round Trip Time](https://hpbn.co/primer-on-latency-and-bandwidth/).", - "score": 1, - "scoreDisplayMode": "informative", - "numericValue": 53.593, - "numericUnit": "millisecond", - "displayValue": "50 ms", - "details": { - "type": "table", - "headings": [ - { - "key": "origin", - "valueType": "text", - "label": "URL" - }, - { - "key": "rtt", - "valueType": "ms", - "granularity": 1, - "label": "Time Spent" - } - ], - "items": [ - { - "origin": "https://api.producthunt.com", - "rtt": 53.593 - }, - { - "origin": "https://www.qrmaster.net", - "rtt": 34.82799999999999 - }, - { - "origin": "https://grainy-gradients.vercel.app", - "rtt": 28.076999999999998 - }, - { - "origin": "https://qrmaster.net", - "rtt": 28.006 - } - ], - "sortedBy": [ - "rtt" - ] - } - }, - "network-server-latency": { - "id": "network-server-latency", - "title": "Server Backend Latencies", - "description": "Server latencies can impact web performance. If the server latency of an origin is high, it's an indication the server is overloaded or has poor backend performance. [Learn more about server response time](https://hpbn.co/primer-on-web-performance/#analyzing-the-resource-waterfall).", - "score": 1, - "scoreDisplayMode": "informative", - "numericValue": 350.69500000000005, - "numericUnit": "millisecond", - "displayValue": "350 ms", - "details": { - "type": "table", - "headings": [ - { - "key": "origin", - "valueType": "text", - "label": "URL" - }, - { - "key": "serverResponseTime", - "valueType": "ms", - "granularity": 1, - "label": "Time Spent" - } - ], - "items": [ - { - "origin": "https://qrmaster.net", - "serverResponseTime": 350.69500000000005 - }, - { - "origin": "https://api.producthunt.com", - "serverResponseTime": 146.7 - }, - { - "origin": "https://www.qrmaster.net", - "serverResponseTime": 44.583500000000015 - }, - { - "origin": "https://grainy-gradients.vercel.app", - "serverResponseTime": 4.354000000000013 - } - ], - "sortedBy": [ - "serverResponseTime" - ] - } - }, - "main-thread-tasks": { - "id": "main-thread-tasks", - "title": "Tasks", - "description": "Lists the toplevel main thread tasks that executed during page load.", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "startTime", - "valueType": "ms", - "granularity": 1, - "label": "Start Time" - }, - { - "key": "duration", - "valueType": "ms", - "granularity": 1, - "label": "End Time" - } - ], - "items": [ - { - "duration": 8.377, - "startTime": 1214.534 - }, - { - "duration": 7.455, - "startTime": 1266.524 - }, - { - "duration": 8.626, - "startTime": 1274.13 - }, - { - "duration": 5.06, - "startTime": 1348.679 - }, - { - "duration": 6.02, - "startTime": 1414.954 - }, - { - "duration": 10.724, - "startTime": 1599.416 - }, - { - "duration": 194.038, - "startTime": 2607.182 - }, - { - "duration": 46.281, - "startTime": 2808.85 - }, - { - "duration": 14.056, - "startTime": 2859.849 - }, - { - "duration": 5.711, - "startTime": 2873.93 - }, - { - "duration": 5.314, - "startTime": 2880.259 - }, - { - "duration": 7.11, - "startTime": 2885.808 - }, - { - "duration": 14.286, - "startTime": 2893.233 - }, - { - "duration": 5.761, - "startTime": 2909.926 - }, - { - "duration": 7.625, - "startTime": 2919.475 - }, - { - "duration": 79.184, - "startTime": 2927.14 - }, - { - "duration": 5.491, - "startTime": 3006.344 - }, - { - "duration": 10.273, - "startTime": 3012.166 - }, - { - "duration": 5.282, - "startTime": 3022.478 - }, - { - "duration": 8.265, - "startTime": 3027.769 - }, - { - "duration": 5.233, - "startTime": 3036.04 - }, - { - "duration": 5.136, - "startTime": 3041.281 - }, - { - "duration": 18.839, - "startTime": 3046.424 - }, - { - "duration": 21.186, - "startTime": 3293.199 - }, - { - "duration": 8.27, - "startTime": 3314.416 - }, - { - "duration": 5.308, - "startTime": 3322.976 - }, - { - "duration": 10.766, - "startTime": 3328.298 - }, - { - "duration": 8.077, - "startTime": 3506.079 - }, - { - "duration": 7.412, - "startTime": 3567.552 - }, - { - "duration": 7.234, - "startTime": 3581.378 - }, - { - "duration": 6.06, - "startTime": 3604.766 - }, - { - "duration": 7.041, - "startTime": 3698.412 - }, - { - "duration": 8.884, - "startTime": 3719.678 - }, - { - "duration": 5.001, - "startTime": 3755.938 - }, - { - "duration": 9.406, - "startTime": 3798.44 - }, - { - "duration": 5.679, - "startTime": 3831.686 - }, - { - "duration": 5.164, - "startTime": 3964.742 - }, - { - "duration": 8.632, - "startTime": 3998.36 - }, - { - "duration": 5.303, - "startTime": 4014.777 - }, - { - "duration": 7.431, - "startTime": 4070.429 - }, - { - "duration": 13.106, - "startTime": 4082.413 - }, - { - "duration": 5.747, - "startTime": 4095.754 - }, - { - "duration": 9.609, - "startTime": 4101.527 - }, - { - "duration": 6.872, - "startTime": 4157.113 - }, - { - "duration": 7.307, - "startTime": 4167.6 - }, - { - "duration": 6.392, - "startTime": 4249.355 - }, - { - "duration": 5.637, - "startTime": 4464.516 - }, - { - "duration": 5.89, - "startTime": 4629.644 - }, - { - "duration": 5.594, - "startTime": 5811.354 - }, - { - "duration": 9.94, - "startTime": 5816.963 - }, - { - "duration": 5.849, - "startTime": 5832.501 - }, - { - "duration": 5.44, - "startTime": 5844.704 - }, - { - "duration": 8.039, - "startTime": 6065.421 - }, - { - "duration": 8.925, - "startTime": 6081.109 - }, - { - "duration": 9.632, - "startTime": 6221.316 - }, - { - "duration": 8.022, - "startTime": 6250.246 - }, - { - "duration": 7.06, - "startTime": 6270.468 - }, - { - "duration": 5.275, - "startTime": 6287.193 - }, - { - "duration": 5.199, - "startTime": 6302.613 - }, - { - "duration": 11.144, - "startTime": 6400.367 - }, - { - "duration": 5.869, - "startTime": 6420.694 - }, - { - "duration": 6.221, - "startTime": 6435.395 - }, - { - "duration": 6.838, - "startTime": 6451.973 - }, - { - "duration": 10.465, - "startTime": 6739.316 - }, - { - "duration": 6.729, - "startTime": 6797.63 - } - ] - } - }, - "metrics": { - "id": "metrics", - "title": "Metrics", - "description": "Collects all available metrics.", - "score": 1, - "scoreDisplayMode": "informative", - "numericValue": 2314, - "numericUnit": "millisecond", - "details": { - "type": "debugdata", - "items": [ - { - "firstContentfulPaint": 969, - "largestContentfulPaint": 2220, - "interactive": 2314, - "speedIndex": 2953, - "totalBlockingTime": 0, - "maxPotentialFID": 46, - "cumulativeLayoutShift": 0, - "cumulativeLayoutShiftMainFrame": 0, - "timeToFirstByte": 1211, - "observedTimeOrigin": 0, - "observedTimeOriginTs": 309537568441, - "observedNavigationStart": 0, - "observedNavigationStartTs": 309537568441, - "observedFirstPaint": 3298, - "observedFirstPaintTs": 309540866742, - "observedFirstContentfulPaint": 3298, - "observedFirstContentfulPaintTs": 309540866742, - "observedFirstContentfulPaintAllFrames": 3298, - "observedFirstContentfulPaintAllFramesTs": 309540866742, - "observedLargestContentfulPaint": 3848, - "observedLargestContentfulPaintTs": 309541416248, - "observedLargestContentfulPaintAllFrames": 3848, - "observedLargestContentfulPaintAllFramesTs": 309541416248, - "observedTraceEnd": 7394, - "observedTraceEndTs": 309544962234, - "observedLoad": 2859, - "observedLoadTs": 309540427536, - "observedDomContentLoaded": 2857, - "observedDomContentLoadedTs": 309540425779, - "observedCumulativeLayoutShift": 0, - "observedCumulativeLayoutShiftMainFrame": 0, - "observedFirstVisualChange": 3302, - "observedFirstVisualChangeTs": 309540870441, - "observedLastVisualChange": 7158, - "observedLastVisualChangeTs": 309544726441, - "observedSpeedIndex": 3564, - "observedSpeedIndexTs": 309541132701 - }, - { - "lcpInvalidated": false - } - ] - } - }, - "resource-summary": { - "id": "resource-summary", - "title": "Resources Summary", - "description": "Aggregates all network requests and groups them by type", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "label", - "valueType": "text", - "label": "Resource Type" - }, - { - "key": "requestCount", - "valueType": "numeric", - "label": "Requests" - }, - { - "key": "transferSize", - "valueType": "bytes", - "label": "Transfer Size" - } - ], - "items": [ - { - "resourceType": "total", - "label": "Total", - "requestCount": 45, - "transferSize": 2590122 - }, - { - "resourceType": "image", - "label": "Image", - "requestCount": 4, - "transferSize": 2115275 - }, - { - "resourceType": "script", - "label": "Script", - "requestCount": 32, - "transferSize": 349315 - }, - { - "resourceType": "stylesheet", - "label": "Stylesheet", - "requestCount": 1, - "transferSize": 80840 - }, - { - "resourceType": "document", - "label": "Document", - "requestCount": 1, - "transferSize": 26955 - }, - { - "resourceType": "other", - "label": "Other", - "requestCount": 7, - "transferSize": 17737 - }, - { - "resourceType": "media", - "label": "Media", - "requestCount": 0, - "transferSize": 0 - }, - { - "resourceType": "font", - "label": "Font", - "requestCount": 0, - "transferSize": 0 - }, - { - "resourceType": "third-party", - "label": "Third-party", - "requestCount": 2, - "transferSize": 1516 - } - ] - } - }, - "third-party-summary": { - "id": "third-party-summary", - "title": "Minimize third-party usage", - "description": "Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading. [Learn how to minimize third-party impact](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/).", - "score": 1, - "scoreDisplayMode": "informative", - "displayValue": "Third-party code blocked the main thread for 0 ms", - "metricSavings": { - "TBT": 0 - }, - "details": { - "type": "table", - "headings": [ - { - "key": "entity", - "valueType": "text", - "label": "Third-Party", - "subItemsHeading": { - "key": "url", - "valueType": "url" - } - }, - { - "key": "transferSize", - "granularity": 1, - "valueType": "bytes", - "label": "Transfer Size", - "subItemsHeading": { - "key": "transferSize" - } - }, - { - "key": "blockingTime", - "granularity": 1, - "valueType": "ms", - "label": "Main-Thread Blocking Time", - "subItemsHeading": { - "key": "blockingTime" - } - } - ], - "items": [ - { - "mainThreadTime": 0, - "blockingTime": 0, - "transferSize": 1409, - "tbtImpact": 0, - "entity": "producthunt.com", - "subItems": { - "type": "subitems", - "items": [ - { - "url": "https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1155554&theme=neutral&t=1779882938098", - "mainThreadTime": 0, - "blockingTime": 0, - "transferSize": 1409, - "tbtImpact": 0 - } - ] - } - }, - { - "mainThreadTime": 0, - "blockingTime": 0, - "transferSize": 107, - "tbtImpact": 0, - "entity": "vercel.app", - "subItems": { - "type": "subitems", - "items": [ - { - "url": "https://grainy-gradients.vercel.app/noise.svg", - "mainThreadTime": 0, - "blockingTime": 0, - "transferSize": 107, - "tbtImpact": 0 - } - ] - } - } - ], - "summary": { - "wastedBytes": 1516, - "wastedMs": 0 - }, - "isEntityGrouped": true - }, - "guidanceLevel": 1 - }, - "third-party-facades": { - "id": "third-party-facades", - "title": "Lazy load third-party resources with facades", - "description": "Some third-party embeds can be lazy loaded. Consider replacing them with a facade until they are required. [Learn how to defer third-parties with a facade](https://developer.chrome.com/docs/lighthouse/performance/third-party-facades/).", - "score": null, - "scoreDisplayMode": "notApplicable", - "metricSavings": { - "TBT": 0 - }, - "guidanceLevel": 3 - }, - "largest-contentful-paint-element": { - "id": "largest-contentful-paint-element", - "title": "Largest Contentful Paint element", - "description": "This is the largest contentful element painted within the viewport. [Learn more about the Largest Contentful Paint element](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)", - "score": 0, - "scoreDisplayMode": "metricSavings", - "displayValue": "2,220 ms", - "metricSavings": { - "LCP": 1000 - }, - "details": { - "type": "list", - "items": [ - { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "label": "Element" - } - ], - "items": [ - { - "node": { - "type": "node", - "lhId": "page-0-H1", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,9,SECTION,1,DIV,0,DIV,0,DIV,1,DIV,0,H1", - "selector": "div.grid > div.space-y-6 > div.space-y-4 > h1.font-extrabold", - "boundingRect": { - "top": 167, - "bottom": 535, - "left": 64, - "right": 648, - "width": 584, - "height": 368 - }, - "snippet": "

", - "nodeLabel": "QR Master: Create QR Codes That Work Everywhere" - } - } - ] - }, - { - "type": "table", - "headings": [ - { - "key": "phase", - "valueType": "text", - "label": "Phase" - }, - { - "key": "percent", - "valueType": "text", - "label": "% of LCP" - }, - { - "key": "timing", - "valueType": "ms", - "label": "Timing" - } - ], - "items": [ - { - "phase": "TTFB", - "timing": 1210.824, - "percent": "55%" - }, - { - "phase": "Load Delay", - "timing": 0, - "percent": "0%" - }, - { - "phase": "Load Time", - "timing": 0, - "percent": "0%" - }, - { - "phase": "Render Delay", - "timing": 1009.5804999999996, - "percent": "45%" - } - ] - } - ] - }, - "guidanceLevel": 1 - }, - "lcp-lazy-loaded": { - "id": "lcp-lazy-loaded", - "title": "Largest Contentful Paint image was not lazily loaded", - "description": "Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint. [Learn more about optimal lazy loading](https://web.dev/articles/lcp-lazy-loading).", - "score": null, - "scoreDisplayMode": "notApplicable", - "metricSavings": { - "LCP": 0 - }, - "guidanceLevel": 3 - }, - "layout-shifts": { - "id": "layout-shifts", - "title": "Avoid large layout shifts", - "description": "These are the largest layout shifts observed on the page. Each table item represents a single layout shift, and shows the element that shifted the most. Below each item are possible root causes that led to the layout shift. Some of these layout shifts may not be included in the CLS metric value due to [windowing](https://web.dev/articles/cls#what_is_cls). [Learn how to improve CLS](https://web.dev/articles/optimize-cls)", - "score": null, - "scoreDisplayMode": "notApplicable", - "metricSavings": { - "CLS": 0 - }, - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "extra" - }, - "label": "Element" - }, - { - "key": "score", - "valueType": "numeric", - "subItemsHeading": { - "key": "cause", - "valueType": "text" - }, - "granularity": 0.001, - "label": "Layout shift score" - } - ], - "items": [] - }, - "guidanceLevel": 2 - }, - "long-tasks": { - "id": "long-tasks", - "title": "Avoid long main-thread tasks", - "description": "Lists the longest tasks on the main thread, useful for identifying worst contributors to input delay. [Learn how to avoid long main-thread tasks](https://web.dev/articles/optimize-long-tasks)", - "score": 1, - "scoreDisplayMode": "informative", - "displayValue": "2 long tasks found", - "metricSavings": { - "TBT": 0 - }, - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "startTime", - "valueType": "ms", - "granularity": 1, - "label": "Start Time" - }, - { - "key": "duration", - "valueType": "ms", - "granularity": 1, - "label": "Duration" - } - ], - "items": [ - { - "url": "https://www.qrmaster.net/", - "duration": 97, - "startTime": 871.5665000000001 - }, - { - "url": "Unattributable", - "duration": 79, - "startTime": 555.695 - } - ], - "sortedBy": [ - "duration" - ], - "skipSumming": [ - "startTime" - ], - "debugData": { - "type": "debugdata", - "urls": [ - "https://www.qrmaster.net/", - "Unattributable" - ], - "tasks": [ - { - "urlIndex": 0, - "startTime": 871.6, - "duration": 97, - "other": 97, - "paintCompositeRender": 0, - "scriptEvaluation": 0, - "styleLayout": 0 - }, - { - "urlIndex": 1, - "startTime": 555.7, - "duration": 79, - "other": 79 - } - ] - } - }, - "guidanceLevel": 1 - }, - "non-composited-animations": { - "id": "non-composited-animations", - "title": "Avoid non-composited animations", - "description": "Animations which are not composited can be janky and increase CLS. [Learn how to avoid non-composited animations](https://developer.chrome.com/docs/lighthouse/performance/non-composited-animations/)", - "score": null, - "scoreDisplayMode": "notApplicable", - "metricSavings": { - "CLS": 0 - }, - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "failureReason", - "valueType": "text" - }, - "label": "Element" - } - ], - "items": [] - }, - "guidanceLevel": 2 - }, - "unsized-images": { - "id": "unsized-images", - "title": "Image elements have explicit `width` and `height`", - "description": "Set an explicit width and height on image elements to reduce layout shifts and improve CLS. [Learn how to set image dimensions](https://web.dev/articles/optimize-cls#images_without_dimensions)", - "score": 1, - "scoreDisplayMode": "metricSavings", - "metricSavings": { - "CLS": 0 - }, - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "label": "" - }, - { - "key": "url", - "valueType": "url", - "label": "URL" - } - ], - "items": [] - }, - "guidanceLevel": 4 - }, - "valid-source-maps": { - "id": "valid-source-maps", - "title": "Page has valid source maps", - "description": "Source maps translate minified code to the original source code. This helps developers debug in production. In addition, Lighthouse is able to provide further insights. Consider deploying source maps to take advantage of these benefits. [Learn more about source maps](https://developer.chrome.com/docs/devtools/javascript/source-maps/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "scriptUrl", - "valueType": "url", - "subItemsHeading": { - "key": "error" - }, - "label": "URL" - }, - { - "key": "sourceMapUrl", - "valueType": "url", - "label": "Map URL" - } - ], - "items": [] - } - }, - "prioritize-lcp-image": { - "id": "prioritize-lcp-image", - "title": "Preload Largest Contentful Paint image", - "description": "If the LCP element is dynamically added to the page, you should preload the image in order to improve LCP. [Learn more about preloading LCP elements](https://web.dev/articles/optimize-lcp#optimize_when_the_resource_is_discovered).", - "score": null, - "scoreDisplayMode": "notApplicable", - "metricSavings": { - "LCP": 0 - }, - "guidanceLevel": 4 - }, - "csp-xss": { - "id": "csp-xss", - "title": "Ensure CSP is effective against XSS attacks", - "description": "A strong Content Security Policy (CSP) significantly reduces the risk of cross-site scripting (XSS) attacks. [Learn how to use a CSP to prevent XSS](https://developer.chrome.com/docs/lighthouse/best-practices/csp-xss/)", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "description", - "valueType": "text", - "subItemsHeading": { - "key": "description" - }, - "label": "Description" - }, - { - "key": "directive", - "valueType": "code", - "subItemsHeading": { - "key": "directive" - }, - "label": "Directive" - }, - { - "key": "severity", - "valueType": "text", - "subItemsHeading": { - "key": "severity" - }, - "label": "Severity" - } - ], - "items": [ - { - "severity": "High", - "description": "No CSP found in enforcement mode" - } - ] - } - }, - "has-hsts": { - "id": "has-hsts", - "title": "Use a strong HSTS policy", - "description": "Deployment of the HSTS header significantly reduces the risk of downgrading HTTP connections and eavesdropping attacks. A rollout in stages, starting with a low max-age is recommended. [Learn more about using a strong HSTS policy.](https://developer.chrome.com/docs/lighthouse/best-practices/has-hsts)", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "description", - "valueType": "text", - "subItemsHeading": { - "key": "description" - }, - "label": "Description" - }, - { - "key": "directive", - "valueType": "code", - "subItemsHeading": { - "key": "directive" - }, - "label": "Directive" - }, - { - "key": "severity", - "valueType": "text", - "subItemsHeading": { - "key": "severity" - }, - "label": "Severity" - } - ], - "items": [ - { - "severity": "High", - "description": "No HSTS header found" - } - ] - } - }, - "origin-isolation": { - "id": "origin-isolation", - "title": "Ensure proper origin isolation with COOP", - "description": "The Cross-Origin-Opener-Policy (COOP) can be used to isolate the top-level window from other documents such as pop-ups. [Learn more about deploying the COOP header.](https://web.dev/articles/why-coop-coep#coop)", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "description", - "valueType": "text", - "subItemsHeading": { - "key": "description" - }, - "label": "Description" - }, - { - "key": "directive", - "valueType": "code", - "subItemsHeading": { - "key": "directive" - }, - "label": "Directive" - }, - { - "key": "severity", - "valueType": "text", - "subItemsHeading": { - "key": "severity" - }, - "label": "Severity" - } - ], - "items": [ - { - "description": "No COOP header found", - "severity": "High" - } - ] - } - }, - "clickjacking-mitigation": { - "id": "clickjacking-mitigation", - "title": "Mitigate clickjacking with XFO or CSP", - "description": "The `X-Frame-Options` (XFO) header or the `frame-ancestors` directive in the `Content-Security-Policy` (CSP) header control where a page can be embedded. These can mitigate clickjacking attacks by blocking some or all sites from embedding the page. [Learn more about mitigating clickjacking](https://developer.chrome.com/docs/lighthouse/best-practices/clickjacking-mitigation).", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "description", - "valueType": "text", - "subItemsHeading": { - "key": "description" - }, - "label": "Description" - }, - { - "key": "severity", - "valueType": "text", - "subItemsHeading": { - "key": "severity" - }, - "label": "Severity" - } - ], - "items": [ - { - "severity": "High", - "description": "No frame control policy found" - } - ] - } - }, - "trusted-types-xss": { - "id": "trusted-types-xss", - "title": "Mitigate DOM-based XSS with Trusted Types", - "description": "The `require-trusted-types-for` directive in the `Content-Security-Policy` (CSP) header instructs user agents to control the data passed to DOM XSS sink functions. [Learn more about mitigating DOM-based XSS with Trusted Types](https://developer.chrome.com/docs/lighthouse/best-practices/trusted-types-xss).", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "description", - "valueType": "text", - "subItemsHeading": { - "key": "description" - }, - "label": "Description" - }, - { - "key": "severity", - "valueType": "text", - "subItemsHeading": { - "key": "severity" - }, - "label": "Severity" - } - ], - "items": [ - { - "severity": "High", - "description": "No `Content-Security-Policy` header with Trusted Types directive found" - } - ] - } - }, - "script-treemap-data": { - "id": "script-treemap-data", - "title": "Script Treemap Data", - "description": "Used for treemap app", - "score": 1, - "scoreDisplayMode": "informative", - "details": { - "type": "treemap-data", - "nodes": [ - { - "name": "https://www.qrmaster.net/_next/static/chunks/fd9d1056-270721ac51469ce4.js", - "resourceBytes": 172837, - "encodedBytes": 28930, - "unusedBytes": 52007 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/2117-941921255ccde9c7.js", - "resourceBytes": 124620, - "encodedBytes": 15110, - "unusedBytes": 42566 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/main-app-5294d1645fe5526e.js", - "resourceBytes": 471, - "encodedBytes": 0, - "unusedBytes": 0 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/2178-42b732a6f83dd854.js", - "resourceBytes": 14318, - "encodedBytes": 3804, - "unusedBytes": 2281 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/6137-03d2cd0024eec2f8.js", - "resourceBytes": 20184, - "encodedBytes": 0, - "unusedBytes": 413 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/6505-260be8a4d8283418.js", - "resourceBytes": 8473, - "encodedBytes": 0, - "unusedBytes": 7810 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/page-24771f36219646f2.js", - "resourceBytes": 34346, - "encodedBytes": 0, - "unusedBytes": 11817 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/5613-458b56f99401f184.js", - "resourceBytes": 117066, - "encodedBytes": 0, - "unusedBytes": 64824 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/3933-93bc42e9ea14c959.js", - "resourceBytes": 20469, - "encodedBytes": 9, - "unusedBytes": 3614 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(marketing-de)/layout-ef26256c086ead95.js", - "resourceBytes": 20857, - "encodedBytes": 0, - "unusedBytes": 20029 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/8003-9cfa8cb7c93a1cd4.js", - "resourceBytes": 6300, - "encodedBytes": 0, - "unusedBytes": 4860 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/3412-8133cd5684cd339c.js", - "resourceBytes": 26102, - "encodedBytes": 0, - "unusedBytes": 11885 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/error-414c5c53e4ad106a.js", - "resourceBytes": 5031, - "encodedBytes": 0, - "unusedBytes": 4661 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/layout-e578332b5aca23ec.js", - "resourceBytes": 1699, - "encodedBytes": 0, - "unusedBytes": 761 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/5398-651e33e9e87ac839.js", - "resourceBytes": 13659, - "encodedBytes": 0, - "unusedBytes": 1182 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/9291-45d9839b736cdb43.js", - "resourceBytes": 13344, - "encodedBytes": 0, - "unusedBytes": 3529 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/6054-bff014e31f7a01c3.js", - "resourceBytes": 10374, - "encodedBytes": 0, - "unusedBytes": 4402 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/1609-c74afb37bb7fca33.js", - "resourceBytes": 10515, - "encodedBytes": 0, - "unusedBytes": 3095 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/6395-4109bdfcd5f6aab0.js", - "resourceBytes": 12173, - "encodedBytes": 0, - "unusedBytes": 4505 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/layout-0178cf0c8233764b.js", - "resourceBytes": 31665, - "encodedBytes": 0, - "unusedBytes": 4046 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/6307-b392e60c9af23667.js", - "resourceBytes": 32668, - "encodedBytes": 0, - "unusedBytes": 15506 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/9da6db1e-74d15f011b40b363.js", - "resourceBytes": 171490, - "encodedBytes": 14608, - "unusedBytes": 149150 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/2972-11a8c96c94e8d72c.js", - "resourceBytes": 26120, - "encodedBytes": 0, - "unusedBytes": 12719 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/not-found-9db9286a971b9da0.js", - "resourceBytes": 2332, - "encodedBytes": 0, - "unusedBytes": 240 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/9078-df6bdd57a5d89683.js", - "resourceBytes": 149845, - "encodedBytes": 40378, - "unusedBytes": 0 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/5679-c02f150c43af65ca.js", - "resourceBytes": 8865, - "encodedBytes": 0, - "unusedBytes": 149 - }, - { - "name": "https://www.qrmaster.net/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js", - "resourceBytes": 1239, - "encodedBytes": 0, - "unusedBytes": 117 - }, - { - "name": "https://www.qrmaster.net/", - "resourceBytes": 25312, - "encodedBytes": 2436, - "children": [ - { - "name": "(inline) (self.__next_f=…", - "resourceBytes": 72, - "unusedBytes": 0 - }, - { - "name": "(inline) self.__next_f.p…", - "resourceBytes": 86, - "unusedBytes": 0 - }, - { - "name": "(inline) self.__next_f.p…", - "resourceBytes": 2244, - "unusedBytes": 0 - }, - { - "name": "(inline) self.__next_f.p…", - "resourceBytes": 1908, - "unusedBytes": 0 - }, - { - "name": "(inline) self.__next_f.p…", - "resourceBytes": 17748, - "unusedBytes": 0 - }, - { - "name": "(inline) self.__next_f.p…", - "resourceBytes": 3220, - "unusedBytes": 0 - }, - { - "name": "(inline) self.__next_f.p…", - "resourceBytes": 34, - "unusedBytes": 0 - } - ] - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/webpack-429d27c8aa6615de.js", - "resourceBytes": 4069, - "encodedBytes": 0, - "unusedBytes": 450 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(auth)/signup/page-c348d850ba23206f.js", - "resourceBytes": 14244, - "encodedBytes": 9, - "unusedBytes": 13601 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/about/page-9f161c6ad466aed6.js", - "resourceBytes": 2776, - "encodedBytes": 0, - "unusedBytes": 2370 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(auth)/login/page-326889b21152b35d.js", - "resourceBytes": 12732, - "encodedBytes": 4524, - "unusedBytes": 12283 - }, - { - "name": "https://www.qrmaster.net/_next/static/chunks/app/(main)/(marketing)/privacy/page-2bff7625482002a8.js", - "resourceBytes": 674, - "encodedBytes": 0, - "unusedBytes": 399 - } - ] - } - }, - "accesskeys": { - "id": "accesskeys", - "title": "`[accesskey]` values are unique", - "description": "Access keys let users quickly focus a part of the page. For proper navigation, each access key must be unique. [Learn more about access keys](https://dequeuniversity.com/rules/axe/4.10/accesskeys).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-allowed-attr": { - "id": "aria-allowed-attr", - "title": "`[aria-*]` attributes match their roles", - "description": "Each ARIA `role` supports a specific subset of `aria-*` attributes. Mismatching these invalidates the `aria-*` attributes. [Learn how to match ARIA attributes to their roles](https://dequeuniversity.com/rules/axe/4.10/aria-allowed-attr).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-allowed-role": { - "id": "aria-allowed-role", - "title": "Uses ARIA roles only on compatible elements", - "description": "Many HTML elements can only be assigned certain ARIA roles. Using ARIA roles where they are not allowed can interfere with the accessibility of the web page. [Learn more about ARIA roles](https://dequeuniversity.com/rules/axe/4.10/aria-allowed-role).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-command-name": { - "id": "aria-command-name", - "title": "`button`, `link`, and `menuitem` elements have accessible names", - "description": "When an element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to make command elements more accessible](https://dequeuniversity.com/rules/axe/4.10/aria-command-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-conditional-attr": { - "id": "aria-conditional-attr", - "title": "ARIA attributes are used as specified for the element's role", - "description": "Some ARIA attributes are only allowed on an element under certain conditions. [Learn more about conditional ARIA attributes](https://dequeuniversity.com/rules/axe/4.10/aria-conditional-attr).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-deprecated-role": { - "id": "aria-deprecated-role", - "title": "Deprecated ARIA roles were not used", - "description": "Deprecated ARIA roles may not be processed correctly by assistive technology. [Learn more about deprecated ARIA roles](https://dequeuniversity.com/rules/axe/4.10/aria-deprecated-role).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-dialog-name": { - "id": "aria-dialog-name", - "title": "Elements with `role=\"dialog\"` or `role=\"alertdialog\"` have accessible names.", - "description": "ARIA dialog elements without accessible names may prevent screen readers users from discerning the purpose of these elements. [Learn how to make ARIA dialog elements more accessible](https://dequeuniversity.com/rules/axe/4.10/aria-dialog-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-hidden-body": { - "id": "aria-hidden-body", - "title": "`[aria-hidden=\"true\"]` is not present on the document ``", - "description": "Assistive technologies, like screen readers, work inconsistently when `aria-hidden=\"true\"` is set on the document ``. [Learn how `aria-hidden` affects the document body](https://dequeuniversity.com/rules/axe/4.10/aria-hidden-body).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-hidden-focus": { - "id": "aria-hidden-focus", - "title": "`[aria-hidden=\"true\"]` elements do not contain focusable descendents", - "description": "Focusable descendents within an `[aria-hidden=\"true\"]` element prevent those interactive elements from being available to users of assistive technologies like screen readers. [Learn how `aria-hidden` affects focusable elements](https://dequeuniversity.com/rules/axe/4.10/aria-hidden-focus).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-input-field-name": { - "id": "aria-input-field-name", - "title": "ARIA input fields have accessible names", - "description": "When an input field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about input field labels](https://dequeuniversity.com/rules/axe/4.10/aria-input-field-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-meter-name": { - "id": "aria-meter-name", - "title": "ARIA `meter` elements have accessible names", - "description": "When a meter element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to name `meter` elements](https://dequeuniversity.com/rules/axe/4.10/aria-meter-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-progressbar-name": { - "id": "aria-progressbar-name", - "title": "ARIA `progressbar` elements have accessible names", - "description": "When a `progressbar` element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to label `progressbar` elements](https://dequeuniversity.com/rules/axe/4.10/aria-progressbar-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-prohibited-attr": { - "id": "aria-prohibited-attr", - "title": "Elements use prohibited ARIA attributes", - "description": "Using ARIA attributes in roles where they are prohibited can mean that important information is not communicated to users of assistive technologies. [Learn more about prohibited ARIA roles](https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr).", - "score": 0, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [ - { - "node": { - "type": "node", - "lhId": "1-0-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,0,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": -360, - "right": -272, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-1-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,1,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 44, - "right": 132, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-2-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,2,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 448, - "right": 536, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-3-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,3,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 852, - "right": 940, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-4-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,4,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 1256, - "right": 1344, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-5-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,5,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 1660, - "right": 1748, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-6-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,6,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 2064, - "right": 2152, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "4 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-7-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,7,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 2468, - "right": 2556, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-8-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,8,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 2872, - "right": 2960, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-9-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,9,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 3276, - "right": 3364, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-10-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,10,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 3680, - "right": 3768, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-11-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,11,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 4084, - "right": 4172, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-12-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,12,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 4488, - "right": 4576, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-13-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,13,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 4892, - "right": 4980, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-14-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,14,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 5296, - "right": 5384, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-15-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,15,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 5700, - "right": 5788, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-16-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,16,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 6104, - "right": 6192, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-17-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,17,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 6508, - "right": 6596, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-18-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,18,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 6912, - "right": 7000, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "4 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-19-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,19,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 7316, - "right": 7404, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-20-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,20,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 7720, - "right": 7808, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-21-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,21,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 8124, - "right": 8212, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-22-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,22,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 8528, - "right": 8616, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - }, - { - "node": { - "type": "node", - "lhId": "1-23-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,23,DIV,0,DIV,0,DIV", - "selector": "div.marquee-track > div.w-[340px] > div.flex > div.flex", - "boundingRect": { - "top": 4482, - "bottom": 4498, - "left": 8932, - "right": 9020, - "width": 88, - "height": 16 - }, - "snippet": "
", - "nodeLabel": "5 out of 5 stars", - "explanation": "Fix all of the following:\n aria-label attribute cannot be used on a div with no valid role attribute." - } - } - ], - "debugData": { - "type": "debugdata", - "impact": "serious", - "tags": [ - "cat.aria", - "wcag2a", - "wcag412", - "EN-301-549", - "EN-9.4.1.2", - "RGAAv4", - "RGAA-7.1.1" - ] - } - } - }, - "aria-required-attr": { - "id": "aria-required-attr", - "title": "`[role]`s have all required `[aria-*]` attributes", - "description": "Some ARIA roles have required attributes that describe the state of the element to screen readers. [Learn more about roles and required attributes](https://dequeuniversity.com/rules/axe/4.10/aria-required-attr).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-required-children": { - "id": "aria-required-children", - "title": "Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.", - "description": "Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more about roles and required children elements](https://dequeuniversity.com/rules/axe/4.10/aria-required-children).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-required-parent": { - "id": "aria-required-parent", - "title": "`[role]`s are contained by their required parent element", - "description": "Some ARIA child roles must be contained by specific parent roles to properly perform their intended accessibility functions. [Learn more about ARIA roles and required parent element](https://dequeuniversity.com/rules/axe/4.10/aria-required-parent).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-roles": { - "id": "aria-roles", - "title": "`[role]` values are valid", - "description": "ARIA roles must have valid values in order to perform their intended accessibility functions. [Learn more about valid ARIA roles](https://dequeuniversity.com/rules/axe/4.10/aria-roles).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-text": { - "id": "aria-text", - "title": "Elements with the `role=text` attribute do not have focusable descendents.", - "description": "Adding `role=text` around a text node split by markup enables VoiceOver to treat it as one phrase, but the element's focusable descendents will not be announced. [Learn more about the `role=text` attribute](https://dequeuniversity.com/rules/axe/4.10/aria-text).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-toggle-field-name": { - "id": "aria-toggle-field-name", - "title": "ARIA toggle fields have accessible names", - "description": "When a toggle field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about toggle fields](https://dequeuniversity.com/rules/axe/4.10/aria-toggle-field-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-tooltip-name": { - "id": "aria-tooltip-name", - "title": "ARIA `tooltip` elements have accessible names", - "description": "When a tooltip element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to name `tooltip` elements](https://dequeuniversity.com/rules/axe/4.10/aria-tooltip-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-treeitem-name": { - "id": "aria-treeitem-name", - "title": "ARIA `treeitem` elements have accessible names", - "description": "When a `treeitem` element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about labeling `treeitem` elements](https://dequeuniversity.com/rules/axe/4.10/aria-treeitem-name).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-valid-attr-value": { - "id": "aria-valid-attr-value", - "title": "`[aria-*]` attributes have valid values", - "description": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid values. [Learn more about valid values for ARIA attributes](https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr-value).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "aria-valid-attr": { - "id": "aria-valid-attr", - "title": "`[aria-*]` attributes are valid and not misspelled", - "description": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid names. [Learn more about valid ARIA attributes](https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "button-name": { - "id": "button-name", - "title": "Buttons have an accessible name", - "description": "When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible](https://dequeuniversity.com/rules/axe/4.10/button-name).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [] - } - }, - "bypass": { - "id": "bypass", - "title": "The page contains a heading, skip link, or landmark region", - "description": "Adding ways to bypass repetitive content lets keyboard users navigate the page more efficiently. [Learn more about bypass blocks](https://dequeuniversity.com/rules/axe/4.10/bypass).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "color-contrast": { - "id": "color-contrast", - "title": "Background and foreground colors do not have a sufficient contrast ratio.", - "description": "Low-contrast text is difficult or impossible for many users to read. [Learn how to provide sufficient color contrast](https://dequeuniversity.com/rules/axe/4.10/color-contrast).", - "score": 0, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "valueType": "node", - "subItemsHeading": { - "key": "relatedNode", - "valueType": "node" - }, - "label": "Failing Elements" - } - ], - "items": [ - { - "node": { - "type": "node", - "lhId": "1-24-SPAN", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,1,DIV,3,DIV,2,SPAN", - "selector": "div.marquee-track > div.w-[340px] > div.border-t > span.text-xs", - "boundingRect": { - "top": 4746, - "bottom": 4762, - "left": 44, - "right": 374, - "width": 330, - "height": 16 - }, - "snippet": "", - "nodeLabel": "Hamburg, Germany", - "explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.53 (foreground color: #9ca3af, background color: #ffffff, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1" - }, - "subItems": { - "type": "subitems", - "items": [ - { - "relatedNode": { - "type": "node", - "lhId": "1-25-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,1,DIV", - "selector": "section.py-16 > div.w-full > div.marquee-track > div.w-[340px]", - "boundingRect": { - "top": 4454, - "bottom": 4787, - "left": 19, - "right": 399, - "width": 380, - "height": 333 - }, - "snippet": "
", - "nodeLabel": "Verified\n\"Finally no more reprinting menus\"\n\nWe used to reprint our menu every …" - } - } - ] - } - }, - { - "node": { - "type": "node", - "lhId": "1-26-SPAN", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,2,DIV,3,DIV,2,SPAN", - "selector": "div.marquee-track > div.w-[340px] > div.border-t > span.text-xs", - "boundingRect": { - "top": 4746, - "bottom": 4762, - "left": 448, - "right": 778, - "width": 330, - "height": 16 - }, - "snippet": "", - "nodeLabel": "Berlin, Germany", - "explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.53 (foreground color: #9ca3af, background color: #ffffff, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1" - }, - "subItems": { - "type": "subitems", - "items": [ - { - "relatedNode": { - "type": "node", - "lhId": "1-27-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,2,DIV", - "selector": "section.py-16 > div.w-full > div.marquee-track > div.w-[340px]", - "boundingRect": { - "top": 4454, - "bottom": 4787, - "left": 423, - "right": 803, - "width": 380, - "height": 333 - }, - "snippet": "
", - "nodeLabel": "Verified\n\"Finally measurable ROI on print campaigns\"\n\nWe run multi-channel camp…" - } - } - ] - } - }, - { - "node": { - "type": "node", - "lhId": "1-28-SPAN", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,3,DIV,3,DIV,2,SPAN", - "selector": "div.marquee-track > div.w-[340px] > div.border-t > span.text-xs", - "boundingRect": { - "top": 4746, - "bottom": 4762, - "left": 852, - "right": 1182, - "width": 330, - "height": 16 - }, - "snippet": "", - "nodeLabel": "London, UK", - "explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.53 (foreground color: #9ca3af, background color: #ffffff, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1" - }, - "subItems": { - "type": "subitems", - "items": [ - { - "relatedNode": { - "type": "node", - "lhId": "1-29-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,3,DIV", - "selector": "section.py-16 > div.w-full > div.marquee-track > div.w-[340px]", - "boundingRect": { - "top": 4454, - "bottom": 4787, - "left": 827, - "right": 1207, - "width": 380, - "height": 333 - }, - "snippet": "
", - "nodeLabel": "Verified\n\"Generated 800 unique codes in under 5 minutes\"\n\nWe needed individual …" - } - } - ] - } - }, - { - "node": { - "type": "node", - "lhId": "1-30-SPAN", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,4,DIV,3,DIV,2,SPAN", - "selector": "div.marquee-track > div.w-[340px] > div.border-t > span.text-xs", - "boundingRect": { - "top": 4746, - "bottom": 4762, - "left": 1256, - "right": 1586, - "width": 330, - "height": 16 - }, - "snippet": "", - "nodeLabel": "Munich, Germany", - "explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.53 (foreground color: #9ca3af, background color: #ffffff, font size: 9.0pt (12px), font weight: normal). Expected contrast ratio of 4.5:1" - }, - "subItems": { - "type": "subitems", - "items": [ - { - "relatedNode": { - "type": "node", - "lhId": "1-31-DIV", - "path": "1,HTML,1,BODY,2,DIV,2,MAIN,14,SECTION,2,DIV,0,DIV,4,DIV", - "selector": "section.py-16 > div.w-full > div.marquee-track > div.w-[340px]", - "boundingRect": { - "top": 4454, - "bottom": 4787, - "left": 1231, - "right": 1611, - "width": 380, - "height": 333 - }, - "snippet": "
", - "nodeLabel": "Verified\n\"Essential tool for event management\"\n\nWe manage 20+ events per year a…" - } - } - ] - } - } - ], - "debugData": { - "type": "debugdata", - "impact": "serious", - "tags": [ - "cat.color", - "wcag2aa", - "wcag143", - "TTv5", - "TT13.c", - "EN-301-549", - "EN-9.1.4.3", - "ACT", - "RGAAv4", - "RGAA-3.2.1" - ] - } - } - }, - "definition-list": { - "id": "definition-list", - "title": "`
`'s contain only properly-ordered `
` and `
` groups, ` - - - -