Casos prácticos avanzados

En este documento se describen las funciones avanzadas que incluye la versión 4 de la API de informes de Google Analytics. En la guía de referencia puedes consultar información detallada de la API.

Introducción

Tras crear un informe simple, usa estas funciones para crear informes avanzados:

Tablas dinámicas

La versión 4 de la API de informes de Google Analytics permite generar tablas dinámicas. Para crear una solicitud con una tabla dinámica, define el campo pivots de reportRequests. El objeto pivots incluye un conjunto propio de dimensiones y métricas, así como campos startGroup y maxGroupCount opcionales para indicar el número de dimensiones que se deben incluir en la tabla dinámica.

Solicitud

En la siguiente llamada a la API se solicitan sesiones por país y se mueven 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 devuelto en una solicitud de tabla dinámica, el campo metricHeader incluye una lista de objetos pivotHeaders cuyos campos pivotHeaderEntries definen el orden de los valores de la dimensión dinámica y de 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 una matriz 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 que aparecen 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 el informe solo incluye tres valores dinámicos porque, en la solicitud original, al campo maxGroupCount se le ha asignado el valor 3. Puede haber un máximo de siete valores porque se ha definido el valor "totalPivotGroupsCount": 7.

Ejemplo de fila de tabla dinámica

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

País Total de
sesiones
Sesiones de
Internet Explorer
Sesiones de
Firefox
Sesiones de navegador
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 con una característica común. Por ejemplo, todos los usuarios con la misma fecha de adquisición pertenecen a la misma cohorte. El informe "Análisis de cohortes" permite aislar y analizar el comportamiento de las cohortes. Si quieres obtener una lista con las dimensiones y métricas específicas de las cohortes, consulta la sección Dimensiones y métricas de las cohortes y del valor del tiempo de vida del cliente.

Para crear una solicitud de cohortes, debes definir un objeto cohort con los campos 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 APIs.

Limitaciones de las cohortes

Una solicitud de cohortes válida debe respetar las siguientes condiciones:

  • La dimensión ga:cohort se debe incluir solo si la solicitud presenta una o varias definiciones de cohorte.
  • El nombre de la cohorte debe ser único.
  • Una solicitud puede incluir un máximo de 12 cohortes.
  • Si se define el valor ga:cohortNthWeek, la fecha de inicio debe ser el domingo y, la fecha de finalización, el sábado. Si se define el valor ga:cohortNthMonth, la fecha de inicio debe ser el primer día del mes y, la fecha de finalización, el último día del mes. Si se define el valor ga:cohortNthDay, el periodo debe ser exactamente de un día.
  • No se permiten las solicitudes de cohortes con la fecha actual.
  • Las solicitudes de cohortes deben incluirse en una solicitud batchGet distinta de las que no lo son.
  • El periodo de las cohortes debe ser posterior al 1 de febrero del 2015.

Valor del tiempo de vida del cliente

El informe "Valor del tiempo de vida del cliente" (TVC) indica la evolución del valor del usuario (ingresos) y de sus interacciones (vistas de aplicación, objetivos cumplidos, sesiones y duración de las sesiones) durante los 90 días posteriores a su adquisición. Consulta las dimensiones y métricas específicas del informe TVC.

Las solicitudes de TVC son como las de cohortes, pero con el valor true asignado al campo lifetimeValue. 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 APIs.

Dimensiones y métricas de las cohortes y del valor del tiempo de vida del cliente

Dimensiones

Nombre de la dimensión Definición
ga:cohort Nombre de la cohorte a la cual pertenece el usuario. De la misma manera que en los segmentos, un usuario puede pertenecer a varias cohortes. Todo depende de cómo se definan.
ga:cohortNthDay Diferencia de días basada en 0 con respecto a la fecha de la definición de la cohorte. Por ejemplo, si una cohorte se define con la fecha de la primera visita 2015-09-01, para la fecha 2015-09-04 el valor de ga:cohortNthDay será 3.
ga:cohortNthMonth Diferencia de meses basada en 0 con respecto a la fecha de la definición de la cohorte.
ga:cohortNthWeek Diferencia de semanas basada en 0 con respecto a la fecha de la definición de la cohorte.
ga:acquisitionTrafficChannel Canal de tráfico a través del cual se ha adquirido al usuario. Se extrae de la primera sesión del usuario. El canal de tráfico se calcula en función de las reglas de agrupación de canales predeterminadas (a nivel de vista, si está disponible) en el momento de la adquisición del usuario.
ga:acquisitionSource Fuente a través de la cual se ha adquirido al usuario. Se extrae de la primera sesión del usuario.
ga:acquisitionMedium Medio a través del cual se ha adquirido al usuario. Se extrae de la primera sesión del usuario.
ga:acquisitionSourceMedium Valor combinado de ga:userAcquisitionSource y ga:acquisitionMedium.
ga:acquisitionCampaign Campaña a través de la cual se ha adquirido al usuario. Se extrae de la primera sesión del usuario.

Métricas

Nombre de la métrica Definición
ga:cohortActiveUsers Esta métrica resulta relevante cuando se utilizan dimensiones de diferencias basadas en 0 (ga:cohortNthDay, ga:cohortNthWeek o ga:cohortNthMonth). Indica la cantidad de usuarios incluidos en la cohorte que están activos durante el periodo correspondiente al n día/semana/mes de la cohorte. Por ejemplo, en ga:cohortNthWeek = 1, indica la cantidad de usuarios (de la cohorte) que están activos durante la segunda semana. Si la solicitud no incluye ninguno de los valores ga:cohortNthDay, ga:cohortNthWeek y ga:cohortNthMonth, esta métrica tendrá el mismo valor que ga:cohortTotalUsers.
ga:cohortTotalUsers Cantidad de usuarios que forman parte de la cohorte (también denominado "tamaño de la cohorte").
ga:cohortAppviewsPerUser Vistas de aplicaciones por usuario en la cohorte.
ga:cohortGoalCompletionsPerUser Objetivos cumplidos por usuario en la cohorte.
ga:cohortPageviewsPerUser Número de páginas vistas por usuario en la cohorte.
ga:cohortRetentionRate Porcentaje de retención de la cohorte.
ga:cohortRevenuePerUser Ingresos por usuario en la cohorte.
ga:cohortVisitDurationPerUser Duración de la sesión por usuario en la cohorte.
ga:cohortSessionsPerUser Sesiones por usuario en la cohorte.

Métricas del valor del tiempo de vida del cliente

Nombre de la métrica Definición
ga:cohortTotalUsersWithLifetimeCriteria Esta métrica resulta relevante cuando se realiza una solicitud que incluye las dimensiones ga:acquisitionTrafficChannel, ga:acquisitionSource, ga:acquisitionMedium o ga:acquisitionCampaign. Representa la cantidad de usuarios de las cohortes que se adquieren a través del canal, la fuente, el medio o la campaña actuales. Por ejemplo, en ga:acquisitionTrafficChannel=Direct, indica la cantidad de usuarios de la cohorte que se han adquirido directamente. Si la solicitud no incluye ninguna de las dimensiones mencionadas, su valor será ga:cohortTotalUsers (solo para vistas de aplicaciones).
ga:cohortAppviewsPerUserWithLifetimeCriteria Vistas de aplicaciones por usuario de la dimensión de adquisición en la cohorte (solo para vistas de aplicaciones).
ga:cohortGoalCompletionsPerUserWithLifetimeCriteria Objetivos cumplidos por usuario de la dimensión de adquisición en la cohorte (solo para vistas de aplicaciones).
ga:cohortPageviewsPerUserWithLifetimeCriteria Número de páginas vistas por usuario de la dimensión de adquisición en la cohorte (solo para vistas de aplicaciones).
ga:cohortRevenuePerUserWithLifetimeCriteria Ingresos por usuario de la dimensión de adquisición en la cohorte (solo para vistas de aplicaciones).
ga:cohortSessionsPerUserWithLifetimeCriteria Duración de la sesión por usuario de la dimensión de adquisición en la cohorte (solo para vistas de aplicaciones).