Casos de uso avanzados

En este documento, se describen las funciones avanzadas de la API de Google Analytics Reporting v4. Para obtener una referencia detallada de la API, consulta la Guía de referencia.

Introducción

Después de crear un informe simple, usa estas funciones para crear informes avanzados:

Tabla dinámica

La API de Google Analytics Reporting v4 te permite generar tablas dinámicas. Para construir una solicitud con una tabla dinámica, define el campo Pivot en ReportRequest. El objeto Pivot tiene su propio conjunto de dimensiones y métricas, y startGroup y maxGroupCount opcionales para especificar la cantidad de dimensiones que se incluirán en la tabla dinámica.

Solicitud

La siguiente llamada a la API solicita sesiones por país y cambia los resultados al navegador:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dateRanges":
      [
        {
          "startDate": "2014-11-01",
          "endDate": "2014-11-30"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions":
      [
        {
          "name": "ga:country"
        }
      ],
      "pivots":
      [
        {
          "dimensions":
          [
            {
              "name": "ga:browser"
            }
          ],
          "maxGroupCount": 3,
          "startGroup": 3,
          "metrics":
          [
            {
              "expression": "ga:sessions"
            }
          ]
        }
      ]
    }
  ]
}

Encabezado de columna de respuesta

En el objeto report que se muestra para una solicitud de tabla dinámica, el metricHeader tiene una lista de objetos pivotHeaders cuyos campos pivotHeaderEntries definen el orden de los valores de dimensión dinámica y los valores de la métrica correspondientes, por ejemplo:

"columnHeader": {
    "dimensions": [
        "ga:country"
    ],
    "metricHeader": {
        "metricHeaderEntries": [
            {
                "name": "ga:sessions",
                "type": "INTEGER"
            }
        ],
        "pivotHeaders": [
            {
                "pivotHeaderEntries": [
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Internet Explorer"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    },
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Firefox"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    },
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Android Browser"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    }
                ],
                "totalPivotGroupsCount": 7
            }
        ]
    }
},

Filas de respuesta

Cada fila del objeto reportData define un arreglo de objetos dateRangeValue, cada uno de los cuales contiene un conjunto de objetos pivotValue. El orden de los valores corresponde al orden de las métricas enumeradas en los encabezados dinámicos del encabezado de columna de respuesta.

"rows": [
    ...
    {
        "dimensions": [
            "United States"
        ],
        "metrics": [
            {
                "pivotValues": [
                    {
                        "values": [
                            "21",
                            "18",
                            "1"
                        ]
                    }
                ],
                "values": [
                    "192"
                ]
            }
        ]
    }
],

Ten en cuenta que solo hay tres valores dinámicos en el informe porque, en la solicitud original, maxGroupCount es 3. Puede haber hasta siete valores debido a "totalPivotGroupsCount": 7.

Ejemplo de fila de la tabla dinámica

En la respuesta de muestra anterior, la fila asociada con el país Estados Unidos se representa en la siguiente tabla dinámica:

País
sesiones en total
Sesiones de
de Internet Explorer
Sesiones
de FireFox
Sesiones del navegador
de Android
India 12 3 2 4
Estados Unidos 192 21 18 1
Reino Unido 35 12 2 0

Cohortes

Una cohorte es un grupo de usuarios que comparten una característica en común. Por ejemplo, todos los usuarios con la misma fecha de adquisición pertenecen a la misma cohorte. El informe Análisis de cohorte te permite aislar y analizar el comportamiento de las cohortes. Para obtener una lista de las dimensiones y métricas específicas de la cohorte, consulta Dimensiones y métricas de la cohorte y del valor del ciclo de vida del cliente (LTV).

Para definir una solicitud de cohorte, debes definir un objeto de cohorte con name, type y dateRange:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dimensions":
      [
        {
          "name": "ga:cohort"
        },
        {
          "name": "ga:cohortNthDay"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:cohortActiveUsers"
        },
        {
          "expression": "ga:cohortTotalUsers"
        }
      ],
      "cohortGroup":
      {
        "cohorts":
        [
          {
            "name": "cohort 1",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-08-01",
              "endDate": "2015-08-01"
            }
          },
          {
            "name": "cohort 2",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-07-01",
              "endDate": "2015-07-01"
            }
          }
        ]
      }
    }
  ]
}

Consulta el ejemplo anterior en el Explorador de API.

Restricciones de cohorte

Una solicitud de cohorte válida debe cumplir con las siguientes restricciones:

  • La dimensión ga:cohort solo se incluye si la solicitud tiene una o más definiciones de cohorte.
  • El nombre de la cohorte debe ser único.
  • La cantidad máxima de cohortes en una solicitud es 12.
  • Si se define ga:cohortNthWeek, la fecha de inicio debe ser el domingo y la fecha de finalización debe ser el sábado. Si se define ga:cohortNthMonth, la fecha de inicio debe ser el primer día del mes y la fecha de finalización debe ser el último día del mes. Si se define ga:cohortNthDay, el período debe ser exactamente de un día.
  • No se permiten solicitudes de cohorte con la fecha de hoy.
  • Las solicitudes de cohorte y no deben estar en la misma solicitud batchGet.
  • El período de las cohortes debe ser posterior al 1 de febrero de 2015.

Valor del ciclo de vida del cliente (LTV)

En el informe Valor del ciclo de vida del cliente, se muestra cómo aumentan el valor del usuario (ingresos) y la participación (vistas de apps, consecuciones de objetivos, sesiones y duración de la sesión) durante los 90 días posteriores a la adquisición de un usuario. Consulta las dimensiones y métricas específicas del LTV.

Una solicitud de LTV se define como una cohorte con el campo lifetimeValue establecido en true. Por ejemplo:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dimensions":
      [
        {
          "name": "ga:cohort"
        },
        {
          "name": "ga:cohortNthWeek"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:cohortTotalUsersWithLifetimeCriteria"
        },
        {
          "expression": "ga:cohortRevenuePerUser"
        }
      ],
      "cohortGroup":
      {
        "cohorts":
        [
          {
            "name": "cohort 1",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-08-01",
              "endDate": "2015-09-01"
            }
          },
          {
            "name": "cohort 2",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-07-01",
              "endDate": "2015-08-01"
            }
          }
        ],
        "lifetimeValue": true
      }
    }
  ]
}

Consulta el ejemplo anterior en el Explorador de API.

Dimensiones y métricas de cohorte y valor del ciclo de vida del cliente (LTV)

Dimensiones

Nombre de la dimensión Definición
ga:cohort Nombre de la cohorte a la que pertenece un usuario. Según cómo se definan las cohortes, un usuario puede pertenecer a varias cohortes, de manera similar a cómo un usuario puede pertenecer a varios segmentos.
ga:cohortNthDay Compensación de día basada en 0 en relación con la fecha de definición de la cohorte. Por ejemplo, si una cohorte se define con la fecha de la primera visita como 2015-09-01, entonces para la fecha 2015-09-04, ga:cohortNthDay será 3.
ga:cohortNthMonth Compensación mensual basada en 0 con relación a la fecha de definición de la cohorte.
ga:cohortNthWeek Desplazamiento de la semana basada en 0 en relación con la fecha de definición de la cohorte.
ga:acquisitionTrafficChannel Es el canal de tráfico a través del cual se adquirió al usuario. Se extrae de la primera sesión del usuario. El canal de tráfico se calcula según las reglas de agrupación de canales predeterminadas (a nivel de la vista, si están disponibles) en el momento de la adquisición de usuarios.
ga:acquisitionSource Es la fuente a través de la cual se adquirió al usuario. Derivan de la primera sesión del usuario.
ga:acquisitionMedium Es el medio a través del cual se adquirió al usuario. Derivan de la primera sesión del usuario.
ga:acquisitionSourceMedium Es el valor combinado de ga:userAcquisitionSource y ga:acquisitionMedium.
ga:acquisitionCampaign Es la campaña a través de la cual se adquirió al usuario. Derivan de la primera sesión del usuario.

Métricas

Nombre de la métrica Definición
ga:cohortActiveUsers Esta métrica es relevante en el contexto de las dimensiones de desplazamiento basadas en 0 (ga:cohortNthDay, ga:cohortNthWeek o ga:cohortNthMonth). Indica la cantidad de usuarios en la cohorte que están activos en el período correspondiente a la enésimo día/semana/mes. Por ejemplo, para ga:cohortNthWeek = 1, la cantidad de usuarios (en la cohorte) que están activos en la segunda semana. Si una solicitud no tiene ga:cohortNthDay, ga:cohortNthWeek ni ga:cohortNthMonth, esta métrica tendrá el mismo valor que ga:cohortTotalUsers.
ga:cohortTotalUsers Es la cantidad de usuarios que pertenecen a la cohorte, también conocido como tamaño de la cohorte.
ga:cohortAppviewsPerUser Vistas de la aplicación por usuario para una cohorte.
ga:cohortGoalCompletionsPerUser Consecuciones de objetivos por usuario para una cohorte.
ga:cohortPageviewsPerUser Vistas de página por usuario de una cohorte.
ga:cohortRetentionRate Tasa de retención de la cohorte.
ga:cohortRevenuePerUser Ingresos por usuario para una cohorte.
ga:cohortVisitDurationPerUser Es la duración de la sesión por usuario de una cohorte.
ga:cohortSessionsPerUser Sesiones por usuario de una cohorte.

Métricas de valor del ciclo de vida del cliente (LTV)

Nombre de la métrica Definición
ga:cohortTotalUsersWithLifetimeCriteria Esto es relevante en el contexto de una solicitud que tiene las dimensiones ga:acquisitionTrafficChannel, ga:acquisitionSource, ga:acquisitionMedium o ga:acquisitionCampaign. Representa la cantidad de usuarios de las cohortes que se adquirieron mediante el canal, la fuente, el medio o la campaña actuales. Por ejemplo, en el caso de ga:acquisitionTrafficChannel=Direct, representa la cantidad de usuarios de la cohorte que se adquirieron directamente. Si no aparece ninguna de las dimensiones mencionadas, su valor es igual a ga:cohortTotalUsers (solo para vistas de apps).
ga:cohortAppviewsPerUserWithLifetimeCriteria Vistas de app por usuario para la dimensión de adquisición de una cohorte (solo vistas de app).
ga:cohortGoalCompletionsPerUserWithLifetimeCriteria Consecuciones de objetivos por usuario para la dimensión de adquisición de una cohorte (solo vistas de apps).
ga:cohortPageviewsPerUserWithLifetimeCriteria Vistas de página por usuario de la dimensión de adquisición de una cohorte (solo para vistas de apps).
ga:cohortRevenuePerUserWithLifetimeCriteria Son los ingresos por usuario correspondientes a la dimensión de adquisición de una cohorte (solo para vistas de apps).
ga:cohortSessionsPerUserWithLifetimeCriteria Es la duración de la sesión por usuario para la dimensión de adquisición de una cohorte (solo para vistas de apps).