Skip to main content

Resumen

El Home Annual Review (NPS) trackea 7 eventos con el prefijo home_nps_*. Cubren el funnel completo: exposicion (card) → apertura del survey → progreso paso a paso → finalizacion/abandono → visualizacion de resultados. Todos los eventos se definen como constantes en analyticsEvents.homeNps.* en src/core/analytics/events.ts.

Propiedades base

Todos los eventos del Home NPS incluyen estas propiedades: Las propiedades survey_version (numero de version de la definicion) solo estan disponibles en eventos del flujo del survey (opened, step_completed, abandoned, completed).

Catalogo de eventos

1. home_nps_survey_cta_viewed

El card de review es visible en la seccion home para una propiedad tappable.
  • Archivo: HomeReviewCard.tsx
  • Trigger: useEffect on mount, una vez por propiedad tappable (omite status completed)
  • Multi-propiedad: Dispara un evento por cada fila de propiedad tappable.

2. home_nps_survey_opened

Usuario entra al flujo del survey desde cualquier entry point.
  • Archivo: SurveyScreen.tsx
  • Trigger: useEffect cuando viewState transiciona a intro o questions por primera vez
  • Guard: No se dispara si engine.alreadyCompleted (survey reanudado ya completado)
Entry points:
Usuario toca CTA en el card de la home screen → URL param entryPoint=home

3. home_nps_step_completed

Usuario responde una pregunta y avanza a la siguiente.
  • Archivo: useSurveyEngine.ts (callback) → SurveyScreen.tsx (capture)
  • Trigger: Dentro de goToNextQuestion, via callback onStepCompleted
step_number es secuencial sin gaps — refleja la experiencia del usuario, no el orden de la definicion. Preguntas condicionales que no se muestran no generan eventos.

4. home_nps_survey_abandoned

Usuario sale del survey sin completarlo.
  • Archivo: SurveyScreen.tsx
  • Trigger: handleClose cuando viewState !== 'completion'
  • Se dispara al cerrar explicitamente (boton back/close), NO al ir a background (background dispara flushToBackend para guardar progreso)

5. home_nps_survey_completed

Survey enviado exitosamente al backend.
  • Archivo: SurveyScreen.tsx
  • Trigger: useEffect cuando viewState transiciona a completion
  • Guard: No se dispara si engine.alreadyCompleted (survey reanudado ya completado)
Las encuestas completadas por agentes de soporte via back office se rastrean server-side. Se pueden distinguir de las completadas en la app usando la propiedad $lib de PostHog (posthog-react-native para la app vs el SDK del backend para back office).

6. home_nps_report_cta_viewed

El card de resultados es visible para el usuario (~8 dias despues del cierre del periodo de review).
  • Archivo: HomeReviewResultsCard.tsx (useEffect on mount)

7. home_nps_report_opened

Usuario toca el CTA para ver el reporte de resultados.
  • Archivo: HomeReviewResultsCard.tsx (onPress antes de WebView)

Diagramas de flujo

Entry points

Flujo del survey

Resultados


Guia de dashboard en PostHog

Dashboard: “Home NPS - Survey Analytics”

Todas las insights deben filtrar por survey_type = "home-review".

Funnels

Survey Completion FunnelMide la conversion desde apertura hasta finalizacion del survey.
  1. Ir a Insights → New → Funnels
  2. Agregar pasos:
    • home_nps_survey_opened
    • home_nps_step_completed (filter: step_number = 1)
    • home_nps_step_completed (filter: step_number = 2)
    • …continuar por cada paso conocido
    • home_nps_survey_completed
  3. Breakdown by: entry_point
  4. Conversion window: 7 dias
  5. El drop-off entre cada paso muestra donde abandonan los usuarios
Tasa de completado
  1. Insights → New → Trends
  2. Serie A: home_nps_survey_completed (unique users)
  3. Serie B: home_nps_survey_opened (unique users)
  4. Activar Formula mode: A / B
  5. Display: Line chart, granularidad diaria o semanal

Number Insights (KPIs)

Crear 3 Number insights para la fila superior del dashboard:

Layout del dashboard

Organizar en filas:
  1. Fila superior: 3 Number insights (KPIs principales)
  2. Segunda fila: Survey Completion Funnel (ancho completo)
  3. Tercera fila: Card Conversion (izq) + Report Engagement (der)
  4. Cuarta fila: Entry Point Distribution (izq) + Abandonment by Step (der)

Joining con Data Warehouse

Los eventos envian survey_id y step_id (= question.id del backend). Para cruzar con datos backend:

Archivos de implementacion


Checklist de verificacion

  • Home screen → survey_cta_viewed se dispara para cada propiedad tappable
  • Tocar CTA card → survey_opened con entry_point: "home"
  • Deep link → survey_opened con entry_point: "deep_link"
  • Responder pregunta → step_completed con step_number, step_id, step_type correctos
  • Pregunta con comentario inline → has_optional_comment: true
  • Cerrar survey a mitad → survey_abandoned con steps_completed correcto
  • Completar survey → survey_completed con has_final_comment y total_steps
  • Reanudar survey completado → sin duplicados de survey_opened o survey_completed
  • Card de resultados visible → report_cta_viewed
  • Tocar resultados → report_opened
  • Todos los eventos incluyen survey_type, survey_id (cuando cargado), home_id
  • Habilitar PostHog debug mode para validar eventos en consola/network