Saltar al contenido
Telemetry
Explorar documentación
GuíasActualizado el 27 de julio de 2026Revisado por los equipos editorial y de producto de Telemetry3 min de lectura

Usa esta documentación con tu agente de programación

Abra un paquete de mensajes enfocados para Claude Code, Codex, Cursor u otro agente de codificación, luego adáptelo al flujo de trabajo que se describe aquí.

En esta página
  1. 1. Definir el experimento
  2. 2. Inicializar Telemetry
  3. 3. Asignación y exposición de registros
  4. 4. Registrar los ingresos completados
  5. 5. Compara los resultados del experimento
  6. 6. Evaluar la incertidumbre
  7. Próximos pasos

Pruebas A/B de ingresos

Los totales de ingresos por sí solos pueden favorecer la variante que recibió más tráfico. Registre la asignación, la exposición y los ingresos completados para que pueda comparar los ingresos por visitante expuesto y evaluar la incertidumbre.

Barras de control y tratamiento de ingresos por visitante con elevación estimada y un intervalo de confianza

Normalice los ingresos por exposición antes de decidir si un tratamiento produjo un aumento significativo.

1. Definir el experimento

Antes del envío, anote:

  • un identificador de experimento estable;
  • las variantes de control y tratamiento;
  • la unidad de asignación, como visitante, usuario o equipo;
  • las métricas primarias y las métricas de barandilla;
  • un tamaño mínimo de muestra, duración de la prueba y regla de detención.

Un sujeto debe permanecer en una variante durante la vida del experimento.

2. Inicializar Telemetry

npm install telemetry-sh
import telemetry from "telemetry-sh";

telemetry.init(process.env.TELEMETRY_API_KEY);

3. Asignación y exposición de registros

Registre la exposición sólo cuando el sujeto pueda realmente experimentar el tratamiento.

const logExperimentExposure = ({ visitorId, variant }) => {
  telemetry.log("experiment_events", {
    event_name: "experiment_exposed",
    experiment_id: "checkout_copy_v2",
    visitor_id: visitorId,
    variant, // "control" or "treatment"
  });
};

Utilice un identificador interno en lugar de un correo electrónico, un valor de cookie u otros datos personales.

4. Registrar los ingresos completados

Registre las compras completadas que no sean de prueba en la misma tabla. Conserve la asignación original en lugar de buscarla en un campo que pueda cambiar más adelante.

const logPurchase = ({ visitorId, variant, orderId, revenueUsd }) => {
  telemetry.log("experiment_events", {
    event_name: "purchase_completed",
    experiment_id: "checkout_copy_v2",
    visitor_id: visitorId,
    variant,
    order_id: orderId,
    revenue_usd: revenueUsd,
  });
};

Decida de antemano cómo los reembolsos, las devoluciones de cargos, las suscripciones, las divisas y los pedidos repetidos afectan a la métrica.

5. Compara los resultados del experimento

Los ingresos por visitante expuesto evitan que el tráfico desigual decida el resultado. Esta consulta crea una fila por visitante antes de agregar cada variante:

WITH per_visitor AS (
  SELECT
    visitor_id,
    variant,
    MAX(CASE WHEN event_name = 'experiment_exposed' THEN 1 ELSE 0 END)
      AS was_exposed,
    SUM(CASE WHEN event_name = 'purchase_completed' THEN revenue_usd ELSE 0 END)
      AS visitor_revenue_usd
  FROM experiment_events
  WHERE experiment_id = 'checkout_copy_v2'
    AND timestamp_utc >= now() - INTERVAL '30 days'
  GROUP BY visitor_id, variant
)
SELECT
  variant,
  SUM(CASE WHEN was_exposed = 1 THEN 1 ELSE 0 END) AS exposed_visitors,
  SUM(CASE
    WHEN was_exposed = 1 AND visitor_revenue_usd > 0 THEN 1 ELSE 0
  END) AS buyers,
  ROUND(SUM(visitor_revenue_usd), 2) AS total_revenue_usd,
  ROUND(
    SUM(visitor_revenue_usd) /
    NULLIF(SUM(CASE WHEN was_exposed = 1 THEN 1 ELSE 0 END), 0),
    2
  ) AS revenue_per_exposed_visitor_usd,
  ROUND(
    100.0 * SUM(CASE
      WHEN was_exposed = 1 AND visitor_revenue_usd > 0 THEN 1 ELSE 0
    END) /
    NULLIF(SUM(CASE WHEN was_exposed = 1 THEN 1 ELSE 0 END), 0),
    2
  ) AS purchase_conversion_pct
FROM per_visitor
WHERE was_exposed = 1
GROUP BY variant
ORDER BY variant;

6. Evaluar la incertidumbre

No declare un ganador basándose únicamente en la estimación puntual. Las distribuciones de ingresos suelen estar sesgadas, por lo que se deben exportar los resultados a nivel de visitantes para obtener un intervalo de confianza o un modelo estadístico adecuado. Mantenga la regla de decisión preespecificada con el análisis.

Antes de confiar en el resultado, verifique:

  • discrepancia en la proporción de muestras;
  • visitantes asignados a múltiples variantes;
  • eventos de pedidos duplicados;
  • transacciones de prueba, reembolsos y monedas mixtas;
  • si ambas variantes tuvieron el mismo tiempo para convertirse;
  • movimiento en métricas de barrera como la tasa de error o la latencia.

Próximos pasos

Guarde la consulta revisada y la definición del experimento juntas para que el gráfico no se desvíe de su denominador. Utilice receta de embudo de activación de registro para hitos anteriores del producto y adopción de funciones antes de la actualización para una vista de expansión no experimental.

Función relacionada

Registra nombres de eventos estables, campos con tipos definidos y contexto revisado para proteger la privacidad.

Autores de la página y referencias

El equipo editorial de Telemetry es responsable de esta explicación; el equipo de producto revisa el comportamiento, los ejemplos y las limitaciones.

Cómo revisamos nuestra documentación