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 crear 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 en el 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 array 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 en el 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 de tabla dinámica en el informe porque, en la solicitud original, maxGroupCount es 3. Puede haber hasta siete valores debido a "totalPivotGroupsCount": 7.

Ejemplo de fila de 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 Internet Explorer
FireFox
sesiones
Sesiones
del 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 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 dimensiones y métricas específicas de la cohorte, consulta Dimensiones y métricas de cohorte y 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 se incluye solo 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 en las cohortes debe ser posterior al 1 de febrero de 2015.

Valor del ciclo de vida del cliente (LTV)

El informe Valor del ciclo de vida del cliente muestra cómo el valor del usuario (ingresos) y la participación (vistas de la aplicación, consecuciones de objetivos, sesiones y duración de la sesión) aumentan 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 Es el 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 con relación a 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 Es la compensación mensual basada en 0 en relación con la fecha de definición de la cohorte.
ga:cohortNthWeek Compensación de 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 Indica 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 Indica la campaña mediante 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 de la cohorte que están activos en el período correspondiente a la cohorte de enésimo día, semana o mes. Por ejemplo, en el caso de ga:cohortNthWeek = 1, indica la cantidad de usuarios (en la cohorte) que están activos en la segunda semana. Si una solicitud no tiene ninguno de los valores ga:cohortNthDay, ga:cohortNthWeek o 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 app por usuario para una cohorte.
ga:cohortGoalCompletionsPerUser Consecuciones de objetivos por usuario para una cohorte.
ga:cohortPageviewsPerUser Vistas de página por usuario para una cohorte.
ga:cohortRetentionRate Tasa de retención de 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 del 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 en las cohortes que se adquieren a través del canal, la fuente, el medio o la campaña actual. 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 la app por usuario para la dimensión de adquisición de una cohorte (solo para vistas de apps).
ga:cohortGoalCompletionsPerUserWithLifetimeCriteria Consecuciones de objetivos por usuario para la dimensión de adquisición de una cohorte (solo para vistas de apps).
ga:cohortPageviewsPerUserWithLifetimeCriteria Vistas de página por usuario para la dimensión de adquisición de una cohorte (solo para vistas de apps).
ga:cohortRevenuePerUserWithLifetimeCriteria Ingresos por usuario en 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).