Saltar al contenido principal

¿Qué son las Rachas?

Una racha es un período de días, semanas o meses consecutivos en los que un usuario ha realizado una acción clave en tu plataforma. Se ha demostrado que las rachas aumentan significativamente la retención, especialmente cuando la acción del usuario que se rastrea se alinea con el valor central de tu producto.

Frecuencia de Racha

Las rachas en Trophy pueden ser diarias, semanales o mensuales. Esto significa que un usuario debe cumplir sus condiciones de racha al menos una vez cada día, semana o mes del calendario para mantener su racha. Si has configurado zonas horarias para tus usuarios, Trophy rastreará automáticamente la racha de cada usuario en su zona horaria local (incluyendo cuando los usuarios cambian de zona horaria) y mantendrá las rachas intactas.
Trophy calcula automáticamente los datos de racha para cada frecuencia de racha, lo que significa que puedes cambiar en cualquier momento.

Condiciones de Racha

En Trophy puedes establecer los umbrales que un usuario debe cumplir para extender su racha basándote en tus Métricas configuradas. Puedes elegir qué métricas deben formar parte de tu racha, y para las que elijas, puedes establecer un umbral personalizado que los usuarios deben cumplir.
Al combinar métricas de esta manera, puedes elegir entre dos modos de evaluación:
  • ALL significa que un usuario debe cumplir todos los umbrales de métricas para extender su racha
  • OR significa que un usuario solo tiene que cumplir uno de tus umbrales de métricas para extender su racha
De esta manera puedes diseñar tu lógica de rachas para que se ajuste al caso de uso de tu aplicación.

Congelaciones de Rachas

Las congelaciones de rachas ayudan a los usuarios a mantener sus rachas por más tiempo al permitirles perder períodos sin que se restablezcan a cero. Esto ayuda a mantener las rachas motivadoras incluso si los usuarios no mantienen un hábito de uso perfecto.
Las congelaciones de rachas son opcionales en Trophy pero pueden configurarse en la página de rachas del panel de Trophy.

Otorgar Congelaciones Iniciales

Puedes configurar cualquier número arbitrario de congelaciones para otorgar a nuevos usuarios cuando los identifiques por primera vez con Trophy.
Otorgar demasiadas congelaciones a los usuarios puede disminuir su valor percibido, pero conceder muy pocas congelaciones podría resultar en un mayor número de rachas perdidas. Un buen punto de partida es una congelación por usuario, ¡pero el truco está en experimentar!

Acumulación de Congelaciones

A medida que los usuarios agotan las congelaciones de rachas, necesitarán un suministro continuo de nuevas para seguir adelante. Para facilitar esto, Trophy puede otorgar automáticamente congelaciones de rachas a los usuarios con el tiempo. Puedes elegir un número arbitrario de días durante los cuales otorgar un número arbitrario de congelaciones a cada usuario. Si has configurado zonas horarias para tus usuarios, Trophy consumirá automáticamente las congelaciones a medianoche en la zona horaria del usuario cuando sea necesario para extender su racha, y si hay nuevas congelaciones pendientes de otorgar a un usuario, se otorgarán hasta diez minutos después.

Cantidad Máxima de Congelaciones

En Trophy también configuras el número máximo de congelaciones que cada usuario puede tener, hasta un límite de 100. La acumulación de congelaciones solo otorgará congelaciones hasta este límite.

Seguimiento de Rachas

Trophy calcula automáticamente las rachas para todos los usuarios en función de los eventos de métrica que reportes a Trophy. No se requiere trabajo adicional para realizar el seguimiento de rachas, y puedes comenzar a usarlas de inmediato. Solo asegúrate de que las rachas estén habilitadas en el panel de Trophy.
Para un recorrido completo sobre cómo configurar una función de rachas usando Trophy, consulta nuestra guía oficial.

Personalización de Rachas

Trophy puede permitir que los usuarios personalicen cómo funciona su racha dentro de los límites que establezcas para ellos. Para hacer esto, activa la personalización de rachas en la página de rachas del panel de Trophy.
Una vez habilitado, los usuarios podrán personalizar las condiciones de racha que deben cumplir para extender su racha, incluyendo el modo de evaluación de racha y el umbral para cada métrica, a través de las preferencias de usuario.
Para obtener más información sobre cómo establecer preferencias de usuario para un usuario específico, lee la documentación dedicada sobre preferencias de usuario.

Administración de Rachas

Esta sección describe algunas de las operaciones que puedes realizar para administrar las rachas de los usuarios en tu aplicación.

Restaurar la Racha de un Usuario

Para restaurar la racha de un usuario, dirígete a la página de detalles del usuario y usa la acción ‘Restaurar Racha’. Restaurar la racha de un usuario la establece en la duración que tenía cuando la perdió por última vez.
También puedes usar la API de administración para restaurar rachas para restaurar rachas de forma programática.

Mostrar Rachas

Trophy expone los datos de rachas de dos formas, que pueden usarse para construir elementos de interfaz dentro de tus aplicaciones y mostrar rachas a los usuarios.
Consulta nuestra guía completa sobre cómo agregar una funcionalidad de rachas a tu aplicación para más detalles.

Respuesta de Evento de Métrica

Cuando incrementas una métrica para un usuario, la respuesta de la API de métricas incluirá la racha actual del usuario.
Response
{
  "metricId": "d01dcbcb-d51e-4c12-b054-dc811dcdc623",
  "eventId": "0040fe51-6bce-4b44-b0ad-bddc4e123534",
  "total": 750,
  "achievements": [
    {
      "id": "5100fe51-6bce-6j44-b0hs-bddc4e123682",
      "trigger": "metric",
      "metricId": "5100fe51-6bce-6j44-b0hs-bddc4e123682",
      "metricName": "Flashcards Flipped",
      "metricValue": 500,
      "name": "500 Flashcards Flipped",
      "description": "Write 500 words in the app.",
      "achievedAt": "2020-01-01T00:00:00Z"
    }
  ],
  "currentStreak": {
    "length": 1,
    "frequency": "daily",
    "started": "2025-04-02",
    "periodStart": "2025-03-31",
    "periodEnd": "2025-04-05",
    "expires": "2025-04-12"
  },
  "points": {
    "xp": {
      "id": "0040fe51-6bce-4b44-b0ad-bddc4e123534",
      "key": "xp",
      "name": "XP",
      "description": null,
      "badgeUrl": null,
      "maxPoints": null,
      "total": 10,
      "level": {
        "id": "1140fe51-6bce-4b44-b0ad-bddc4e123534",
        "key": "bronze",
        "name": "Bronze",
        "description": "Starting level",
        "badgeUrl": null,
        "points": 0
      },
      "added": 10,
      "awards": [
        {
          "id": "0040fe51-6bce-4b44-b0ad-bddc4e123534",
          "awarded": 10,
          "date": "2021-01-01T00:00:00Z",
          "total": 10,
          "trigger": {
            "id": "0040fe51-6bce-4b44-b0ad-bddc4e123534",
            "type": "metric",
            "metricName": "Flashcards Flipped",
            "metricThreshold": 100,
            "points": 10
          }
        }
      ]
    }
  },
  "leaderboards": {
    "daily_champions": {
      "id": "0040fe51-6bce-4b44-b0ad-bddc4e123535",
      "key": "daily_champions",
      "name": "Daily Champions",
      "description": null,
      "rankBy": "metric",
      "runUnit": null,
      "runInterval": 0,
      "maxParticipants": 100,
      "metricName": "Flashcards Flipped",
      "metricKey": "flashcards-flipped",
      "threshold": 10,
      "start": "2025-01-01",
      "end": null,
      "previousRank": 50,
      "rank": 12
    }
  }
}
Esto puede usarse para activar transaccionalmente elementos de UI/UX incluyendo:
  • Mostrar ventanas emergentes dentro de la aplicación
  • Reproducir efectos de sonido

API de Rachas de Usuario

La API de rachas de usuario devuelve la racha actual de un usuario individual, junto con su historial reciente de rachas. Usa el parámetro de consulta historyPeriods para controlar cuántos períodos devolver.
Response
{
  "length": 1,
  "frequency": "weekly",
  "started": "2025-04-02",
  "periodStart": "2025-03-31",
  "periodEnd": "2025-04-05",
  "expires": "2025-04-12",
  "rank": 5,
  "streakHistory": [
    {
      "periodStart": "2025-03-02",
      "periodEnd": "2025-03-08",
      "length": 9
    },
    {
      "periodStart": "2025-03-09",
      "periodEnd": "2025-03-15",
      "length": 0
    },
    {
      "periodStart": "2025-03-16",
      "periodEnd": "2025-03-22",
      "length": 0
    },
    {
      "periodStart": "2025-03-23",
      "periodEnd": "2025-03-29",
      "length": 1
    },
    {
      "periodStart": "2025-03-30",
      "periodEnd": "2025-04-05",
      "length": 2
    },
    {
      "periodStart": "2025-04-06",
      "periodEnd": "2025-04-12",
      "length": 3
    },
    {
      "periodStart": "2025-04-13",
      "periodEnd": "2025-04-19",
      "length": 4
    }
  ]
}
Usa estos datos para mostrar el historial de rachas de un usuario dentro de tu aplicación.

Listar Rachas de Múltiples Usuarios

Si deseas mostrar rachas para múltiples usuarios a la vez, por ejemplo para soportar una funcionalidad de rachas de amigos o grupos de usuarios, entonces usa la API de listado de rachas de usuario.
[
  {
    "userId": "user-123",
    "streakLength": 15,
    "extended": "2025-01-01T05:03:00Z"
  },
  {
    "userId": "user-456",
    "streakLength": 12,
    "extended": "2025-01-01T08:43:00Z"
  },
  {
    "userId": "user-789",
    "streakLength": 0,
    "extended": null
  }
]

Obtener Soporte

¿Quieres ponerte en contacto con el equipo de Trophy? Contáctanos por correo electrónico. ¡Estamos aquí para ayudarte!