---
title: "Metodología del benchmark de comentario a MD"
description: "Cómo se miden la tasa de coincidencia, la tasa de entrega y el tiempo al primer MD en una campaña de comentario a MD, y por qué no hay resultados publicados aún."
canonical: https://docs.afp.monster/es/research/comment-to-dm-benchmark
updated: 2026-08-19
pageType: research
---

Tres números describen qué tan bien funciona una campaña de comentario a MD: la tasa de
coincidencia, la tasa de entrega y el tiempo al primer MD. Los tres están definidos abajo,
junto con la campaña a construir, los comentarios a publicar y el archivo en el que se
publican los resultados. No se han recolectado datos, así que ningún resultado aparece en
esta página — el método se publica primero, a propósito.

> **Estado:** metodología publicada; recolección de datos no iniciada. Cada campo medido
> en este documento está vacío hasta que la primera ejecución termine, momento en el que
> los resultados y el conjunto de datos sin procesar se publican aquí.

## Qué significan las tres métricas

Cada métrica es un conteo dividido por un conteo, tomado sobre una ejecución contra una
página conectada, y cada una tiene un denominador que excluye ensayos que la plataforma
nunca entregó a AFP en absoluto.

| Métrica | Definición | Unidad |
|---|---|---|
| Ensayos iniciados | Comentarios publicados durante la ejecución que produjeron una ejecución de la campaña de prueba | conteo |
| Tasa de coincidencia | Ensayos cuya ejecución salió del nodo de condición por **Coincidencia**, divididos por ensayos iniciados | porcentaje |
| Tasa de entrega | Ensayos cuya ejecución registró un MD enviado, divididos por ensayos cuya ejecución llegó al nodo send DM | porcentaje |
| Tiempo al primer MD | Segundos desde que el observador publica el comentario hasta que el MD aparece en la conversación del destinatario | segundos, reportados como mediana y percentil 90 |

La tasa de coincidencia mide el nodo de condición, no la activación. Un nodo de activación
no contiene configuración de palabra clave, así que cada comentario en la publicación en
alcance inicia una ejecución y la condición es el único lugar donde se compara el texto.
[Reglas de coincidencia de palabras clave](/es/reference/keyword-matching) define la
comparación que cada tipo de coincidencia realiza.

La tasa de entrega mide lo que AFP registró, no lo que el destinatario vio. Un nodo send DM
que genera un error registra ese error y la ejecución se detiene ahí, así que el fallo es
visible; un mensaje aceptado por Facebook o Instagram y luego filtrado después cuenta como
entregado bajo esta definición.

El tiempo al primer MD se mide en el reloj del observador en ambos extremos — cuando se
envía el comentario y cuando el MD aparece en la conversación del destinatario. Las
marcas de tiempo registradas dentro de AFP provienen de la plataforma y sirven solo como
verificación cruzada.

## De dónde se toma cada número

```d2 title="What the benchmark measures: the clock runs from the observer's comment to the DM arriving"
direction: down
post: "Observer posts a comment\nclock starts"
reach: Comment reaches the connected page
accept: "Trigger accepts it\nexecution starts"
cond: "Condition\nkeyword list" {shape: diamond}
send: Send DM node
none: Run ends with no DM
arrive: "DM appears in the recipient's conversation\nclock stops"
post -> reach -> accept -> cond
cond -> send: Match
cond -> none: No Match
send -> arrive
```

## Cómo se construye la campaña de prueba

Una campaña, cuatro nodos, sin esperas. Cualquier otra cosa en el grafo agrega una
variable que no tiene nada que ver con las tres métricas.

1. Crea una campaña vinculada a la página bajo prueba y ábrela en el lienzo.
2. Agrega una activación de comentario. Establece su alcance de publicación a una
   **publicación específica** y selecciona una publicación creada para la ejecución, así
   el tráfico ordinario en otras publicaciones no puede entrar en la muestra. Deja
   **único por usuario** apagado — con ello encendido, un comentarista repetido se
   cortocircuita y el ensayo nunca empieza.
3. Agrega un nodo de condición con el tipo de coincidencia **Lista de palabras clave**,
   apuntando a una lista de palabras clave creada para la ejecución. Deja la coincidencia
   inversa apagada, deja los filtros de imagen, GIF y enlace apagados, y deja
   **wait for reply** apagado para que la ejecución se resuelva en una pasada.
4. Agrega un nodo send DM con un mensaje de texto fijo, conectado a la salida
   **Coincidencia** de la condición. No conectes nada a **Sin coincidencia**, así que una
   ejecución no coincidente termina en la condición y es inequívoca en el historial.
5. Guarda la campaña, luego actívala. La activación valida el grafo y es una acción
   separada de guardar.
6. Desactiva cualquier otra campaña en esa página. Cada campaña activa cuya activación
   coincide inicia su propia ejecución, y dos campañas respondiendo al mismo comentario
   hacen que la tasa de entrega no tenga sentido.

:::caution
No uses una ejecución de prueba para esto. Una ejecución de prueba recorre el mismo grafo
pero no hace llamadas a Facebook o Instagram, así que puede confirmar qué rama toma un
mensaje y no puede medir ni entrega ni temporización.
:::

## Cómo se ejecuta la ejecución

Entorno primero: una página de Facebook y una cuenta empresarial de Instagram, ambas
conectadas y suscritas, bajo una cuenta cuya suscripción está activa. Un comentario que
llega mientras la suscripción está inactiva se registra como un error de suscripción, y
una página cuyo acceso guardado ha dejado de funcionar registra un error de re-inicio de
sesión. Ambos cuentan como fallos de entorno y se excluyen de cada tasa.

1. Fija la lista de palabras clave a una sola palabra clave y fija el texto del MD.
   Registra ambos literalmente en las notas de la ejecución.
2. Asigna una cuenta de comentarista distinta por ensayo. Una persona obtiene una
   ejecución activa de una campaña a la vez, así que un segundo comentario de la misma
   cuenta mientras la primera ejecución todavía está activa se omite y encogería la
   muestra silenciosamente.
3. Comenta desde cuentas distintas a la página misma. Los comentarios que la página
   publica se ignoran, lo cual descarta impulsar la ejecución desde la cuenta de la
   página.
4. Por cada ensayo, publica el texto del comentario para su bucket y registra la hora de
   envío en el reloj del observador.
5. Vigila la conversación del destinatario y registra la hora de llegada del MD en el
   mismo reloj. Registra una no-llegada después de un corte fijo, elegido antes de que la
   ejecución empiece y declarado con los resultados.
6. Lee el historial de ejecución de la campaña y registra, por ensayo, si la ejecución
   salió de la condición por Coincidencia y dónde se detuvo. El historial devuelve las 20
   ejecuciones más recientes y no se refresca solo, así que mantén cada lote por debajo de
   eso y léelo antes de empezar el siguiente.
7. Filtra el feed de actividad a la página y la ventana de tiempo de la ejecución, luego
   expórtalo. La exportación aplica los filtros del feed y se descarga como JSON, y es el
   rastro de auditoría detrás de la tabla ensayo por ensayo.
8. Repite en la segunda plataforma sin cambiar la forma de la campaña, la palabra clave o
   el texto del MD.

### Buckets de comentarios

Cada ensayo pertenece a un bucket, y el bucket fija tanto el texto publicado como la rama
que se espera que tome.

| Bucket | Qué se publica | Rama esperada |
|---|---|---|
| Palabra clave exacta | La palabra clave sola | Coincidencia |
| Palabra clave en una oración | Una oración que contiene la palabra clave como subcadena | Coincidencia |
| Palabra clave en mayúsculas | La palabra clave escrita en letras mayúsculas | Coincidencia  |
| Casi acierto | Una palabra que comparte un prefijo con la palabra clave sin contenerla | Sin coincidencia |
| Texto no relacionado | Un comentario en la publicación que no contiene la palabra clave | Sin coincidencia |
| Solo medios | Un sticker o imagen sin texto | Sin coincidencia |

Un comentario de solo medios llega a la condición como un texto de marcador de posición
en lugar de una cadena vacía, que es por lo que pertenece en la muestra: es el único
bucket donde lo que la condición compara no es lo que el comentarista escribió.

## Resultados

Sin resultados. La recolección de datos no ha empezado, y nada en esta página ha sido
medido.

Las definiciones, la forma de la campaña, los buckets y el corte están fijos en público
antes de que exista cualquier número, así que las cifras eventuales se pueden comprobar
contra un protocolo que nadie pudo haber ajustado después de ver los datos.

## Qué contendrá el conjunto de datos sin procesar

Un archivo JSON por ejecución, publicado en esta página junto a la tabla de resumen, con
un objeto por ensayo. La exportación de actividad tomada en el paso 7 se publica con ella
sin cambios, así que cada ensayo se puede rastrear de vuelta a la fila que AFP registró.

| Campo | Qué contiene |
|---|---|
| `trial_id` | Número de secuencia dentro de la ejecución |
| `platform` | `facebook` o `instagram` |
| `bucket` | Uno de los seis nombres de bucket arriba |
| `comment_text` | El texto exacto publicado |
| `comment_posted_at` | Reloj del observador, cuando se envió el comentario |
| `execution_started` | Si se creó una ejecución para este comentario |
| `branch_taken` | `match`, `no_match` o `none` |
| `dm_recorded` | Si la ejecución registró un MD enviado |
| `dm_observed_at` | Reloj del observador, cuando el MD apareció en la conversación |
| `time_to_first_dm_seconds` | Diferencia entre las dos marcas de tiempo del observador |
| `outcome` | `delivered`, `no_match`, `no_execution`, `environment_failure` o `timeout` |
| `notes` | Cualquier cosa inusual sobre el ensayo, en texto plano |

Los campos medidos son `null` hasta que la ejecución los llena. Un ensayo del esqueleto
publicado se ve así:

```json
[
  {
    "trial_id": 1,
    "platform": "facebook",
    "bucket": "exact_keyword",
    "comment_text": "price",
    "comment_posted_at": null,
    "execution_started": null,
    "branch_taken": null,
    "dm_recorded": null,
    "dm_observed_at": null,
    "time_to_first_dm_seconds": null,
    "outcome": null,
    "notes": ""
  }
]
```

## Limitaciones

- **La entrega no es de AFP sola.** AFP entrega el mensaje a Facebook o Instagram; lo que
  pase después está fuera de cualquier cosa medida aquí, y el tiempo al primer MD incluye
  el tiempo de entrega de la plataforma misma.
- **Una cuenta, una audiencia, una ventana.** Una ejecución cubre una página de Facebook
  y una cuenta empresarial de Instagram a una hora del día. No dice nada sobre páginas con
  tráfico diferente, conteos diferentes de seguidores o una región diferente.
- **Los relojes del observador son manuales.** Ambos extremos de la medición de tiempo los
  registra una persona mirando dos superficies, así que la resolución es gruesa y el
  tiempo de reacción humano está dentro del número.
- **La muestra es sintética.** Los comentarios escritos para llenar buckets no son
  comentarios que seguidores reales escriben, y el bucket de casi acierto en particular se
  elige para sentarse cerca del límite de coincidencia.
- **El manejo de mayúsculas no está confirmado.** El bucket de mayúsculas se mide, pero la
  rama esperada para él no está verificada hasta que ingeniería confirme cómo la
  comparación trata las mayúsculas.
- **Ningún competidor se mide.** Estas métricas describen AFP solo. [Las páginas de
  comparación](/es/compare) declaran claramente que ningún número de rendimiento de la
  competencia ha sido medido.
- **Las tasas se registran, no se garantizan.** Nada aquí es un nivel de servicio. Una
  cifra publicada describe una ejecución en un día.

## Relacionado

- [Investigación](/es/research) — el estándar al que se somete cada estudio en este sitio, y lo que se ha publicado hasta ahora.
- [Enrutar comentarios a un MD](/es/guides/route-comments-to-dm) — cómo construir la campaña que este método mide.
- [Probar y depurar una campaña](/es/guides/test-and-debug-campaigns) — leer el historial de ejecución del que depende la ejecución.
- [Estados de ejecución](/es/reference/execution-states) — qué significa una ejecución detenida, en espera o fallida cuando la lees.
- [Moderar comentarios](/es/guides/comment-moderation) — el feed de actividad y su exportación.
