VibeVox — Analytics & KPI Keretrendszer

Mérési rendszer · Event schema · Dashboard definíciók

Kapcsolódó: 02_Marketing_Strategy.md · 04_Sales_B2C.md Státusz: Fázis 1 — alapvető mérési rendszer tervezet


1. Mérési elvek

1. Ha nem mérhető, nem fejleszthető
2. Kevesebb, de fontosabb metrika — "North Star" fókusz
3. Minden döntést adattal alátámasztani, nem megérzéssel
4. Adatgyűjtés ne sértse a privacy commitmentünket (GDPR)

North Star Metric (Fázis 1): Free → Paid konverziós arány (cél: ≥7%)


2. Analytics stack

Réteg Tool Mire Fázis
Product analytics PostHog (self-hosted, EU) User flow, event tracking, funnel, A/B test, feature flags 1
Web analytics Plausible Analytics Landing page, traffic sources — cookieless, GDPR-OK 1
Revenue Stripe Dashboard MRR, churn, cohort 1
Affiliate tracking Google Sheets + UTM Manuális 0-20 partner 1
Affiliate tracking Rewardful Automatikus 20+ partner 2
App crashes Sentry Error rate, crash-free sessions 1
Email Loops.so Open rate, CTR, lifecycle sequences 1
NPS In-app survey / Typeform Detractor azonosítás 1
⚡ IMPORTANT

Analytics stack döntés (2026-04, landing page kutatás alapján): GA4 eltávolítva — helyette Plausible (landing page) + PostHog self-hosted (in-app). Indok: a CEE célközönség ~70%-a ad-blockert használ; a GA4 pixel trust-romboló és a google-analytics.com request DevTools-szal azonnal látható. Részletek: §2a.

ℹ️ NOTE

PostHog deployment döntés (2026-04-18 audit): PostHog Cloud EU (app.eu.posthog.com) — nem self-hosted. Indok: startup credit ($0 az első 1M eventre), GDPR-compliant EU régió (Frankfurt), nincs infra overhead. Self-hosted opció P2-ra halasztva (ha > 1M event/hó). In-app SDK integráció: ütemezve D+11 (2026-05-12)18_TASK_CALENDAR.md P1. Event schema: recording_started, transcription_completed, byok_activated, subscription_upgraded, onboarding_completed — részletek: §3.


2a. Landing Page Analytics — Kötelező Döntés

🚨 CAUTION

A landing page-en TILOS Google Analytics (UA/GA4), Facebook Pixel, Hotjar, FullStory, vagy bármilyen third-party session recorder elhelyezése. A VibeVox célközönsége (Linux devek, privacy-tudatos CEE professionalisták) ~60-80%-a uBlock Origin vagy equivalent blockert használ. Ha bármelyiket érzékelik a DevTools Network tabban → azonnali, irreverzibilis bizalomvesztés. Egyetlen kiszúrt GA pixel nullázza az összes „True Zero Access" trust signalt.

Kötelező landing page analytics stack

Plausible Analytics (elsődleges, SaaS)

  • Ár: €9/hó (10 000 pageview/hó) — self-hostolható ingyenesen saját szerverrel
  • Script méret: <1 KB (GA4: 45 KB — 45× kisebb)
  • Cookie: ❌ nem használ — GDPR consent banner nem szükséges
  • Adattárolás: EU (Hetzner Frankfurt) — US-ba nem kerül adat
  • Nyílt forráskód: ✅ AGPLv3 — maga is trust signal a tech közönségnek
  • URL: plausible.io

Mért metrikák (Plausible-ben)

Metrika Forrás Cél
Egyedi látogatók (country breakdown: PL/CZ/HU/SK) Plausible Fázis 1 traffic monitoring
CTA kattintások — primary: Download Custom goal Konverziós funnel start
CTA kattintások — secondary: Pricing, Affiliate Custom goal Intent signal
Bounce rate per forrás (Product Hunt / affiliate / organikus) Plausible Csatorna minőség
Konverziós cél: Download click → Thank you page Custom goal North Star (landing)
OS detection breakdown (Windows / Linux / macOS) Plausible Platform distribution

TILOS analytics eszközök a landing page-en

Eszköz Miért tilos
❌ Google Analytics (UA / GA4) google-analytics.com fingerprinthető; 45KB script; DevTools-szal azonnal látható
❌ Facebook Pixel Tracking pixel — uBlock azonnal blokkolja + GDPR kockázat
❌ Hotjar / FullStory Session recording = GDPR kockázat + fejlesztők számára red flag
❌ Mixpanel (client-side) Ha blockolt, elvesznek az események; US adatátvitel
❌ Clarity (Microsoft) Heatmap + session replay = trust-romboló a privacy pozícionáláshoz

3. Fázis 1 KPI dashboard

3.0 Iparági benchmarkok (2025-2026 SaaS Pénzügyi Kontextus)

CAC (Customer Acquisition Cost) benchmarkok

Szegmens CAC VibeVox stratégia
B2C/prosumer $15-$150 Organikus (Flathub, community) = ~$0
SMB $250-$500 Affiliate (25% rev share)
Enterprise B2B $536-$702 Direkt outreach + pilot
CAC surge 2024→2026 +40-60% Fizetett akvizíció TILOS Year 1-ben

Retenciós benchmarkok (AI SaaS)

Metrika Iparági átlag VibeVox cél
Havi churn 3-7% <5%
Éves attrition 30-58% <40%
GRR (Gross Revenue Retention) medián 40% (AI SaaS!) ≥60%
CAC payback period 6.8 hó (medián) <6 hó
B2C productivity payback 4.2-6.2 hó <5 hó
LTV:CAC cél ≥3:1 ≥3:1

BYOK arbitrage mint retention weapon

A kutatás megerősíti a BYOK modell unit economics előnyét:

  • Groq: $0.00185/perc → 22 óra/hó power user = <$8.00/hó API
  • OpenAI: $0.006/perc → 22 óra/hó power user = ~$8.00/hó API
  • VibeVox BYOK havi díj: €3.50 → összesen <€12/hó (vs. Typeless $12/hó)
  • Ez a retention crisis ellenszere: alacsony total cost = alacsony churn

Acquisition

Metrika Cél (Fázis 1 vége) Mérés Frekvencia
Waitlist signups 500 Landing page form Heti
Website látogatók (havi) 5 000 GA4 Heti
Downloads összesen 2 000 GitHub Releases + Flathub Heti
└─ Flathub installs >500 Flathub stats API Heti
└─ AppImage (GitHub) >300 GitHub Releases API Heti
└─ AUR popularity Top 500 csomag AUR statistics Havi
└─ .deb/.rpm (GitHub) >100 GitHub Releases API Heti
└─ Windows installer >1 000 GitHub Releases Heti
Organic search rankings Top 10: „Linux diktáló", „voice typing linux" GA4 Search Console Havi
Affiliate-driven signups >15% UTM tracking Heti

Activation

Metrika Cél Mérés
First dictation within 24h >15% of downloads In-app event
Onboarding completion rate >60% Funnel analytics
BYOK setup completion >40% of BYOK starters Wizard step tracking
Permission grant rate (mikrofon) >80% In-app event

Retention (AARRR)

Metrika Cél Mérés
Day 1 retention >25% (felülvizsgálva: retention_engineering §2) In-app analytics
Day 7 retention >12% (North Star Prediction metrika — ha <7%: GRR veszélyes) In-app analytics
Day 14 retention >8% In-app analytics
Day 30 retention >6% In-app analytics
Day 90 retention >4% (hozzáadva: retention_engineering §2) In-app analytics
„Aktív user" definíció ≥2 session/hét VAGY ≥6 aktív nap/hó In-app event
Monthly churn (Fázis 1) <12-15% Stripe Dashboard
Monthly churn (Fázis 2 cél) <8% Stripe Dashboard
⚡ IMPORTANT

AI retention deficit (2026): Az AI-alapú appok éves retenciós rátája 21,1% vs. nem-AI appok 30,7% — AI appok 30%-kal gyorsabban veszítenek előfizetőt. Az SMB szegmensben az éves churn 30–58%. A <12-15% havi cél Fázis 1-ben realisztikus; <8% csak stabil retention stratégia (win-back, value-delivered reporting, milestone rendszer) után érhető el. Subscription fatigue zone: A VibeVox €9,99/hó Pro tier a $10–15/hó „pszichológiai kimerülési" sávban van. Ellenszer: éves plan aggresszív promóciója (€79/év = €6,58/hó), ami ~60%-kal csökkenti az első havi cancel arányt.

Revenue

Metrika Cél (Fázis 1) Mérés
Free → Paid konverzió ≥7% (1. 1000 user) Stripe + analytics
Paying users 200+ Stripe Dashboard
MRR €1 000+ Stripe Dashboard
BYOK vs Pro arány 30:70 Stripe Dashboard
ARPU (Average Revenue Per User) >€7/hó Stripe
NPS score >40 In-app survey

Affiliate

Metrika Cél Mérés
Aktív affiliate partnerek 15+ Google Sheets
Affiliate-driven MRR arány >15% UTM → Stripe

4. Event schema (Mixpanel / PostHog)

Onboarding events

// App elindítása
track("app_launched", {
  platform: "windows" | "linux",
  version: "1.5.3",
  is_first_launch: true | false
})

// Onboarding lépések
track("onboarding_step_completed", {
  step: 1 | 2 | 3,                  // 1=mode select, 2=setup, 3=first dictation
  mode: "managed_cloud" | "byok",
  time_spent_sec: 45
})

// Permission kérés
track("permission_requested", {
  type: "microphone" | "notification",
  outcome: "granted" | "denied",
  context: "onboarding" | "first_use"      // contextual vs upfront
})

// BYOK wizard
track("byok_wizard_completed", {
  provider: "groq" | "openai" | "azure" | "gemini",
  test_connection_result: "success" | "error",
  error_type: "invalid_key" | "network" | null
})

// Linux-specifikus onboarding (Fázis 1)
track("linux_audio_setup", {
  audio_system: "pulseaudio" | "pipewire",
  microphone_detected: true | false,
  microphone_count: 0 | 1 | 2,        // hány mikrofont talált
  required_manual_config: true | false  // kellett-e kézi beavatkozás
})

track("linux_input_method", {
  display_server: "x11" | "wayland" | "xwayland",
  input_injection_method: "xdotool" | "clipboard" | "wtype",
  fallback_used: true | false           // Wayland → clipboard fallback
})

// Linux disztribúció és migrációs forrás (CEE market intelligence)
track("linux_distribution", {
  distro_family: "debian" | "redhat" | "arch" | "nixos" | "other",
  distro_name: "ubuntu" | "linuxmint" | "pop_os" | "fedora" | "opensuse" | "arch" | "manjaro" | "other",
  desktop_env: "gnome" | "kde" | "xfce" | "mate" | "other",
  package_format: "deb" | "rpm" | "flatpak" | "appimage" | "aur"
})

// Migrációs forrás — Win10 EOL + platform váltás tracking
track("migration_source", {
  source: "win10_eol" | "existing_linux" | "new_to_linux" | "windows_other" | "unknown",
  // win10_eol: a user a Win10 lifecycle kérdőívből érkezett
  // existing_linux: már Linux user volt, VibeVox-t kereste
  // new_to_linux: frissen migrált, landing page "Coming from Windows" szekciójából
  previous_tool: "dragon" | "newton" | "wispr" | "typeless" | "gboard" | "none" | "other"
})

Core usage events

// Diktálási session
track("dictation_session", {
  duration_sec: 45,
  word_count: 127,
  filler_words_removed: 3,
  mode: "managed_cloud" | "byok",
  platform: "windows" | "linux",
  app_context: "browser" | "office" | "notepad" | "other"
})

// Latency tracking — minden session-höz (SLA monitoring, 2026-04)
// Összhangban a 10_Tech_Architecture.md §2.3 Latency SLA táblával
track("dictation_latency", {
  e2e_ms: 780,           // gomb felengedés → szöveg megjelenik az ablakban
  groq_api_ms: 420,      // proxy → Groq → response visszaérkezés
  audio_upload_ms: 180,  // kliens → proxy HTTPS RTT
  injection_ms: 180,     // szöveg beillesztése az aktív ablakba
  fallback_used: false,  // true = OpenAI/Gemini fallback volt szükséges
  vad_triggered: false,  // true = VAD csend-detekciót jelzett, API nem lett hívva
  session_id: "abc123"
})
// Alert: ha e2e_ms P95 > 2000ms → Sentry alert + fallback threshold csökkentés



// Session summary toast
track("session_summary_shown", {
  words: 127,
  estimated_time_saved_min: 3.2,
  clicked: true | false
})

// Kvóta figyelmeztetés
track("quota_warning_shown", {
  percent_used: 80,
  action: "dismissed" | "upgrade_clicked"
})

Conversion events

// Upgrade trigger
track("upgrade_prompt_shown", {
  trigger: "quota_100" | "byok_day_23" | "byok_day_28" | "byok_day_30" | "in_app",
  plan_shown: "pro_monthly" | "pro_yearly" | "byok_ltd"
})

// Checkout indítva
track("checkout_started", {
  plan: "pro_monthly" | "pro_yearly" | "byok_monthly" | "byok_ltd",
  country: "HU" | "PL" | "CZ" | "SK" | "OTHER",
  currency: "HUF" | "PLN" | "CZK" | "EUR"
})

// Checkout abandonment — dropout azonosítás
track("checkout_abandoned", {
  plan: "pro_monthly" | "pro_yearly" | "byok_monthly" | "byok_ltd",
  country: "HU" | "PL" | "CZ" | "SK" | "OTHER",
  currency: "HUF" | "PLN" | "CZK" | "EUR",
  step_reached: "pricing_page" | "plan_selected" | "payment_method" | "card_entry" | "3ds_auth",
  abandonment_reason: "back_button" | "tab_closed" | "timeout" | "payment_error" | "unknown",
  device: "mobile" | "desktop",
  payment_methods_shown: ["card", "blik", "gopay", "barion"], // mit látott
  utm_source: "niebezpiecznik" | "huphu" | "rootcz" | "linuxossk" | null
})

// Sikeres fizetés (Stripe webhook → analytics)
track("subscription_created", {
  plan: "pro_monthly" | "pro_yearly" | "byok_monthly" | "byok_ltd",
  mrr: 9.99,
  acquisition_channel: "organic" | "affiliate" | "paid",
  utm_source: "niebezpiecznik" | "huphu" | null
})

Retention events

// NPS survey
track("nps_survey_shown", { day: 14 })
track("nps_response", {
  score: 0-10,
  segment: "detractor" | "passive" | "promoter",
  has_comment: true | false
})

// Milestone
track("milestone_reached", {
  type: "1k_words" | "50k_words" | "100k_words" | "1h_saved" | "10h_saved"
})

// Churn signal — KÖTELEZŐ exit survey (P0)
// Kiterjesztett reason enum (churn post-mortem kutatás alapján, 2026-04):
// A granulált kategóriák lehetővé teszik a VibeVox-specifikus technikai problémák azonosítását
track("subscription_cancelled", {
  plan: "pro_monthly",
  tenure_days: 45,
  reason: "too_expensive"       // árazási probléma
        | "not_using"           // alacsony engagement, életmód-változás
        | "found_alternative"   // versenytárshoz ment
        | "switched_byok"       // ingyenesből BYOK-ba upgraded (jó churn!)
        | "accuracy_issues"     // transzkripciós minőség nem megfelelő
        | "too_slow"            // latency / flow state probléma
        | "privacy_concern"     // adatvédelmi aggodalom maradt
        | "technical_problems"  // crash, VAD hiba, platform-specifikus bug
        | "reverted_to_os_dictation"  // visszatért Win Voice Access / Apple Dictation-re
        | "other",              // null NEM elfogadott — kötelező 1 kérdés
  exit_survey_shown: true
})


// Win-back kampány — 5 EMAIL SZEKVENCIA (02_Winback_Sequence_EN.md)
// Két belépési pont:
//   Inaktivitás: W1 (7d) → W2 (14d) — MINDEN felhasználó
//   Lemondás:    W3 (D+1) → W4 (D+14, feltételes) → W5 (D+45) — FIZETŐS felhasználók
track("winback_email_sent", {
  plan_before_cancel: "pro_monthly" | "pro_yearly" | "byok_monthly" | null,  // null = inaktivitás (nem cancelled)
  days_since_cancel: 1 | 14 | 45 | null,                // null = inaktivitás-trigger (#W1, #W2)
  days_inactive: 7 | 14 | null,                         // null = cancel-trigger (#W3, #W4, #W5)
  email_type: "re_engagement"     // #W1: 7 napja inaktív — gentle nudge
            | "feedback_request"  // #W2: 14 napja inaktív — 1-click micro-survey
            | "graceful_exit"     // #W3: D+1 — data export help, ZERO sales pitch
            | "feature_update"    // #W4: D+14 — CSAK ha feature_shipped=true
            | "case_study",       // #W5: D+45 — CEE persona + fix összegű kedvezmény
  discount_type: "none" | "fixed_amount",   // NEM percentage — fix összeg 2× jobb konverzió
  discount_amount_local: "40 PLN" | "1200 HUF" | "250 CZK" | "3 EUR" | "5 EUR" | null  // lokális valuta
})

// Win-back feedback micro-survey (#W2 válasz)
track("winback_feedback", {
  reason: "just_busy"           // életmód-váltás, nincs szükség rá
        | "something_broke"     // technikai hiba → founder auto-notification
        | "found_cheaper"       // versenytárshoz ment
        | "workflow_mismatch"   // nem illeszkedik a munkafolyamatba
        | "privacy_concern"     // adatvédelmi aggodalom maradt
        | "need_mobile",        // mobilra kellene
  days_inactive: 14,
  source: "winback_w2"
})

track("winback_reactivated", {
  plan: "pro_monthly" | "pro_yearly" | "byok_monthly",
  discount_used: true | false,
  days_since_cancel: 1 | 14 | 45,
  reactivation_source: "winback_w3" | "winback_w4" | "winback_w5" | "organic"  // melyik email hozta vissza
})

// Value-delivered havi email (retention anchor)
track("value_report_sent", {
  words_dictated_month: 12500,
  minutes_saved_month: 42,
  sessions_month: 85,
  streak_days: 14
})

track("value_report_opened", {
  words_dictated_month: 12500,
  cta_clicked: "share" | "upgrade" | "dismissed" | null
})

5. Funnel definíciók

B2C Conversion Funnel

TOFU (Top of Funnel):
  Landing page visit → [Plausible Analytics]

MOFU (Middle of Funnel):
  Download → Install → app_launched (first_launch=true) → [In-app]

ACTIVATION:
  dictation_session (belül 24h)

CONVERSION:
  subscription_created

RETENTION:
  Day 7 / 14 / 30 visszatérő session

BYOK Time-gate Funnel

byok_wizard_completed
    ↓ Day 0-22: normál használat
    ↓ Day 23: byok_warning_shown (7 nap)
    ↓ Day 28: byok_warning_shown (utolsó nap)
    ↓ Day 30: byok_soft_gate_shown
         ├── checkout_started (konverzió)
         └── churned (kilép)

6. Kohort analízis

Havi kohort tracking (Stripe + analytics)

Kohort = az a hónap, amiben a user töltött le / fizetett

Kohort metrikák (Stripe-ból exportálható):
M0:  Signup hónap
M1:  Aktív-e egy hónappal később?
M3:  Aktív-e 3 hónappal később?
M6:  Aktív-e 6 hónappal később?
M12: Aktív-e 12 hónappal később?

Szegmentált kohort

Acquisition channel alapján:
  □ Organic (UTM nélküli)
  □ P1 Cybersec affiliate
  □ P2 VA hálózat affiliate
  □ P3 Produktivitás affiliate
  □ P4 Developer tool influencer

Platform alapján:
  □ Windows
  □ Linux

Linux disztribúció alapján:
  □ Debian-alapú (Ubuntu, Mint, Pop!_OS)
  □ Red Hat-alapú (Fedora, openSUSE)
  □ Arch-alapú (Arch, Manjaro)
  □ Egyéb (NixOS, Gentoo stb.)

Migrációs forrás alapján (Win10 EOL tracking):
  □ win10_eol — Windows 10 EOL migráns
  □ existing_linux — meglévő Linux user
  □ new_to_linux — frissen migrált

Plan alapján:
  □ Pro havi
  □ Pro éves
  □ BYOK havi
  □ BYOK LTD

7. NPS Zárt Hurkú Protokoll

Day 14: In-app NPS survey (1-10 + 1 szabad szöveges kérdés)
    │
    ├── Score 0-6 (Detractor):
    │     ↓ Zapier: Slack #nps-detractors értesítés
    │     ↓ Founder email válasz 48 órán belül
    │     ↓ Ha megoldható: fix + visszajelzés
    │     ↓ Ha price issue: BYOK downgrade ajánlat
    │     ↓ Ha feature issue: backlog + follow-up
    │
    ├── Score 7-8 (Passive):
    │     ↓ Automatikus email: "Mi hiányzik?"
    │     ↓ Feature voting link
    │
    └── Score 9-10 (Promoter):
          ↓ Automatikus email: "Köszönjük! Ajánlanád egy kollégádnak?"
          ↓ Referral link

Kutatás: 48h-s founder válasz detractoroknak → -19% churn az érintett kohortban.


8. A/B test log

# Test Változók Metrika Státusz Eredmény
1 Kvóta UI framing Countdown vs. positive counter Day 14 retention Eldöntött Pozitív endowment framing alapértelmezett (retention_engineering §5 — empirikus evidencia)
2 BYOK wizard szöveg „copy API key" vs. „empowerment" BYOK completion rate Tervezett
3 Onboarding flow 2 út vs. 1 út (managed default) First dictation 24h rate Tervezett
4 Permission priming Privacy screen vs. direktben OS dialog Mikrofon grant rate Tervezett
5 Éves ár kommunikáció Aggregate vs. havi bontás Yearly plan CTR Tervezett

9. Dashboard setup (PostHog / Mixpanel)

Ajánlott dashboard panelek

OVERVIEW DASHBOARD:
  □ DAU / WAU / MAU (Daily/Weekly/Monthly Active Users)
  □ New installs (heti trend)
  □ Free → Paid konverzió (rolling 30 nap)
  □ MRR (Stripe widget)
  □ Churn rate (Stripe widget)

ONBOARDING FUNNEL:
  □ app_launched → first_dictation → onboarding_complete
  □ Permission grant rates (mikrofon, notification)
  □ BYOK wizard drop-off per step

RETENTION:
  □ Day 1 / 7 / 14 / 30 retention (cohort table)
  □ Aktív user trend (heti)
  □ NPS score trend
  □ Churn reason breakdown (pie chart — exit survey)
  □ Win-back reactivation rate
  □ Value report open rate + CTA click-through
  □ Éves vs. havi plan arány (cél: >40% éves)

AFFILIATE:
  □ UTM source breakdown (pie chart)
  □ Affiliate-driven MRR
  □ Top converting partners

Kapcsolódó: 02_Marketing_Strategy.md · 04_Sales_B2C.md · 05_Pricing.md