API de informes principales: segmentos

En este documento, se describe la sintaxis y las consideraciones para usar segmentos en la API de Core Reporting.

Introducción

Cuando usas la función de segmentación de la API de Core Reporting, puedes solicitar un segmento en la API de Core Reporting de dos maneras:

  1. Segmentos por ID: Consulta mediante el ID numérico de un segmento integrado o personalizado.
  2. Segmentos dinámicos: Especifica el segmento de forma dinámica en el momento de la solicitud.

Segmentos por ID

Puedes solicitar un segmento en la API de Core Reporting con el ID de un segmento integrado o personalizado. Todos los segmentos disponibles para un usuario se pueden recuperar con el método list de la colección de segmentos en la API de administración de Google Analytics. Para cada segmento, el ID está disponible en la propiedad id del recurso Segment.

Para obtener más información sobre cómo usar los ID de segmento en las solicitudes a la API, consulta la Referencia principal de la API de informes.

Segmentos dinámicos

También puedes crear y usar un segmento de forma dinámica cuando realizas una solicitud a la API. Por lo general, cuando creas un segmento dinámico, debes tener en cuenta lo siguiente:

  1. Selecciona Usuarios frente a Sesiones
  2. Cómo usar condiciones frente a secuencias
  3. Usa permisos de métricas

Cada consideración para crear un segmento dinámico se describe a continuación en un nivel alto. Para revisar la sintaxis completa de los segmentos dinámicos, consulta la Referencia de la sintaxis de los segmentos dinámicos.

Dimensiones y métricas permitidas en segmentos
No todas las dimensiones y métricas se pueden usar en los segmentos. Para revisar qué dimensiones y métricas se permiten en los segmentos, visite el Explorador de dimensiones y métricas.

1. Selección de usuarios frente a sesiones

Especifique si intenta seleccionar usuarios o sesiones (o ambas).

  • Usa users:: para seleccionar usuarios.
  • Usa sessions:: para seleccionar sesiones.
  • Si se especifican condiciones para users:: y sessions::, haz lo siguiente:
    1. Las condiciones del usuario se aplican primero a fin de generar las sesiones para los usuarios coincidentes.
    2. Las condiciones de sesión solo se aplican a las sesiones n.o 1.

Por ejemplo:

  • Seleccione los usuarios que utilizaron el navegador Chrome en al menos una de sus sesiones.
    • users::condition::ga:browser==Chrome
  • Selecciona las sesiones en las que se usó el navegador Chrome.
    • sessions::condition::ga:browser==Chrome
  • Selecciona sesiones de la ciudad de Londres de usuarios que tuvieron al menos 1 sesión en la que se usó el navegador Chrome.
    • users::condition::ga:browser==Chrome;sessions::condition::ga:city==London

Consulta la sección conditionScope de la referencia de sintaxis para obtener detalles sobre cómo seleccionar usuarios y sesiones.

2. Uso de condiciones frente a secuencias

Una vez que hayas determinado si deseas segmentar a los usuarios o las sesiones, especifica una o más condiciones o secuencias.

Condiciones

Las condiciones usan el prefijo condition::. Por ejemplo:

  • Selecciona a los usuarios de Londres que visitaron el navegador Chrome.
    • users::condition::ga:city==London;ga:browser==Chrome

Secuencias

Las condiciones de secuencia consisten en uno o más pasos, en el que cada uno se define por una o más condiciones de dimensión/métrica.

Especifica las condiciones basadas en secuencias con el prefijo sequence:: y los operadores seguidos por (;–>>) o seguidos inmediatamente por (;–>). Por ejemplo:

  • Seleccione los usuarios que utilizaron primero una computadora de escritorio seguida de un dispositivo móvil. Como estamos segmentando a los usuarios, esto busca todas las sesiones de un usuario y verifica si este usó la computadora de escritorio en una sesión, seguida de un dispositivo móvil en una de las sesiones posteriores.
    • users::sequence::ga:deviceCategory==desktop;->>ga:deviceCategory==mobile
  • También puede usar varias condiciones para cada paso.
    • users::sequence::ga:deviceCategory==desktop;ga:operatingSystem==Windows->>ga:deviceCategory==mobile;ga:operatingSystem==Android
  • También puedes combinar condiciones y secuencias en un segmento mediante un operador AND (es decir, ";".
    • users::condition::ga:totalEvents>10;sequence::ga:deviceCategory==desktop->>ga:deviceCategory==mobile

Consulta la sección conditionType de la referencia de sintaxis para obtener detalles sobre las condiciones simples y basadas en secuencias. Para ver ejemplos adicionales, consulta las secciones Condiciones y Secuencias de la Referencia de funciones de segmentos.

3. Usa permisos de métricas

El alcance de una métrica define el nivel en el que se define: HIT, SESSION o USER. Por ejemplo, ga:pageviews y ga:transactions son métricas de nivel HIT, ya que ocurren en un hit, mientras que ga:sessionDuration y ga:bounces son métricas de nivel SESSION, ya que hay un solo valor para estas por sesión. Conceptualmente, USER es el alcance de nivel más alto y HIT es el alcance de nivel más bajo.

Los valores de las métricas también se pueden informar en alcances superiores a su alcance principal. P. ej.: ga:pageviews y ga:transactions se pueden informar a nivel de SESSION y USER si solo se suman por cada visita que ocurra en esas sesiones o para esos usuarios.

Puedes especificar el alcance de cada condición de métrica, lo que determinará el nivel en el que se aplicará. Los permisos de las métricas se especifican con el prefijo perUser::, perSession:: o perHit::.

Por ejemplo:

  • Seleccione a los usuarios que invirtieron, al menos, USD 10 en un sitio web (es decir, valor del ciclo de vida del cliente es de, al menos, USD 10).
    users::condition::perUser::ga:transactionRevenue>=10
    
  • Seleccione los usuarios que invirtieron, al menos, USD 10 en una sesión.
    users::condition::perSession::ga:transactionRevenue>=10
    

Restricciones de alcance

La API de Core Reporting realiza la validación para los alcances de métricas a fin de garantizar que la consulta determinada sea válida. Las reglas para la validación del alcance son las siguientes:

  1. El alcance de la métrica especificada siempre debe ser igual o menor que su alcance de la condición principal (como lo indican el prefijo users:: o sessions::).
  2. El permiso de métrica especificado debe ser igual o mayor que el permiso principal que se define en el modelo de datos. Consulta Métricas: referencia de alcance principal para obtener una lista completa de las métricas y sus alcances principales.

Por ejemplo, los siguientes son alcances de métricas válidos:

  • Los alcances de las condiciones y de las métricas son iguales (es decir, USER).
    • users::condition::perUser::ga:transactionRevenue>10
  • El alcance de la condición es mayor que el de la métrica (es decir, USER > SESSION).
    • users::condition::perSession::ga:transactionRevenue>10
  • ga:totalEvents es una métrica de nivel HIIT y, por lo tanto, los alcances posibles para una condición son perHit::, perSession:: o perUser:: (ya que todos son mayores o iguales que el alcance).
    • users::condition::perHit::ga:totalEvents>5
    • users::condition::perSession::ga:totalEvents>5

Por ejemplo, los siguientes son alcances de métricas no válidos:

  • El siguiente segmento no es válido porque el alcance de la condición principal es menor que el de la métrica (es decir, SESSION < USER).
    • sessions::condition::perUser::ga:transactionRevenue>10
  • Usa un permiso de nivel HIT para una métrica de nivel SESSION y un nivel HIT (nivel de SESSION).
    • users::condition::perHit::ga:sessionDuration>60

Alcance predeterminado

Cuando no se especifica de forma explícita un permiso para la condición de la métrica, el valor predeterminado es el permiso de la condición. Por ejemplo, el siguiente segmento usará un alcance a nivel de USUARIO para todas sus condiciones de métricas: users::condition::ga:transactionRevenue>=10;ga:sessionDuration>60

Referencia de la sintaxis de segmentos dinámicos

Sintaxis base

La sintaxis para definir un segmento tiene el siguiente formato: segment=<segmentCondition>+. En otras palabras, un segmento se compone de una o más declaraciones segmentCondition.

Un <segmentCondition> se define de la siguiente manera: <conditionScope><conditionType><dimensionOrMetricConditions>

En el ejemplo anterior,
conditionScope especifica el alcance de nivel superior de las condiciones.
conditionType especifica el tipo de condición.
dimensionOrMetricConditions especifica las condiciones de dimensión/métrica o los pasos de la secuencia.

Permiso de condición

Especifica el alcance de nivel superior de las condiciones. Los siguientes son los valores posibles:

  • users:: para seleccionar usuarios
  • sessions:: para seleccionar sesiones.

Restricciones y consideraciones para conditionScope:

  • Si se especifican varias condiciones de "usuarios" y "sesiones" en un solo segmento, se deben combinar con un operador AND.
  • Las condiciones que seleccionan a los usuarios y las sesiones también deben combinarse con un operador AND. Cuando se especifican las condiciones para los usuarios y las sesiones, primero se aplican todas las condiciones de los usuarios a fin de encontrar los usuarios coincidentes, seguidas de todas las condiciones de las sesiones que pertenecen a esos usuarios coincidentes.
  • Si usas condiciones a nivel del usuario, el período no debe superar los 90 días.
  • El alcance de la condición también determina el nivel de alcance predeterminado para todas las condiciones de métricas inferiores. (Consulta las Métricas: referencia de alcance principal para obtener más detalles sobre los niveles de alcance).

Tipo de condición

Especifica el tipo de condición. Los siguientes son los valores posibles:

  • condition:: para especificar condiciones simples (es decir, no basadas en secuencias)
  • sequence:: para especificar condiciones basadas en secuencias

Restricciones y consideraciones para conditionType:

  • Si se especifican varias "condiciones simples" y "secuencias", siempre se deben combinar con un operador AND.
  • Se permite un máximo de 10 pasos para las condiciones basadas en secuencia por segmento.

Condiciones simples

Las condiciones simples consisten en una o más condiciones de dimensiones y métricas que se pueden combinar.

Los operadores de condición válidos para condiciones simples son los siguientes:

La sintaxis para las condiciones simples es la siguiente:

condition::<dimensionOrMetricConditions>

Ejemplos de condiciones simples:

  • users::condition::ga:transactionRevenue>10;ga:sessionDuration>60
  • Se puede especificar un operador de negación de nivel superior para encontrar el complemento de una condición simple determinada que tenga varias condiciones de dimensiones y métricas. P. ej.: users::condition::!ga:transactionRevenue>10;ga:sessionDuration>60

Excluye condiciones

Se usa una condición de exclusión para crear un segmento que no cumple con la condición definida.

La sintaxis usa el operador NOT (el carácter !) para negar una condición y excluir las sesiones que coinciden con esa condición.

Excluir sesiones en las que la página de salida coincida exactamente con la ruta raíz de la página:
sessions::condition::!ga:exitPagePath==/

Varias condiciones

Puedes agrupar todas las condiciones a nivel de usuario en un solo prefijo users:: o usar un prefijo users:: separado para cada condición. Lo mismo sucede con las condiciones a nivel de sesión.

Por ejemplo, los siguientes segmentos son equivalentes. En ambos casos, condition1 y condition2 se AND para seleccionar usuarios:
users::<condition1>;<condition2>
users::<condition1>users::<condition2>

Condiciones de la secuencia

Las condiciones de secuencia constan de uno o más pasos, y cada uno de ellos se define mediante una o más condiciones de dimensiones o métricas. Se pueden combinar varios pasos con operadores de secuencia especiales.

Los operadores de secuencia válidos para las condiciones de secuencia son los siguientes:

  • El operador –>> indica que el paso anterior precede el siguiente.
  • El operador –> indica que el paso anterior precede de inmediato al siguiente paso.

La sintaxis de las condiciones de secuencia es la siguiente:

sequence:: NOT? FIRST_HIT_MATCHES_FIRST_STEP? (AND (PRECEDES|IMMEDIATELY_PRECEDES) <step>)*

En el ejemplo anterior, se ilustra lo siguiente:

NOT está representado por: !
FIRST_HIT_MATCHES_FIRST_STEP está representado por: ^
PRECEDES está representado por: ;–>>
IMMEDIATELY_PRECEDES está representado por: ;–>
step está representado por: <dimensionOrMetricConditions>

Ejemplo de condiciones de secuencia:

  • users::sequence::ga:deviceCategory==desktop;->ga:deviceCategory==tablet
  • También se puede especificar un operador de negación de nivel superior para encontrar el complemento de una secuencia determinada que tenga varios pasos o condiciones de métricas o dimensiones. P. ej.: users::sequence::!ga:deviceCategory==desktop;->ga:deviceCategory==tablet
  • El operador ^ se puede usar para especificar que el primer paso coincida con el primer hit de la primera sesión en el período determinado. P. ej.: users::sequence::^ga:deviceCategory==desktop;->ga:deviceCategory==tablet

Fecha de las condiciones de la sesión

Los segmentos admiten un tipo de análisis que usa la sintaxis dateOfSession. En combinación con el operador <>, puedes restringir un segmento a un grupo de usuarios que haya iniciado una sesión dentro de un período determinado. El período máximo para dateOfSession es de 31 días. Consulta el ejemplo de la fecha de la sesión a continuación para obtener detalles sobre su uso.

Condiciones de dimensiones y métricas

Combinación de condiciones

Puedes combinar una o más condiciones de dimensión con AND (es decir, ';') y O (es decir, ',') con operador OR con mayor precedencia.

La sintaxis es la misma que se utiliza para combinar filtros. Consulta Cómo combinar filtros en la referencia de la API de Core Reporting para obtener más información.

Operadores

En la siguiente tabla, se describen todos los operadores disponibles que se pueden usar en segmentos y si se admiten para las dimensiones o las métricas.

Operador Descripción ¿Es compatible con las condiciones de dimensión? ¿Es compatible con las condiciones de métricas?
== La concordancia es igual o exacta.
Por ejemplo: ga:city==London

Por ejemplo: ga:adCost==10
!= No es igual o no es una concordancia exacta.
Por ejemplo: ga:city!=London

Por ejemplo: ga:adCost!=10
< Inferior a Sí (solo para valores numéricos).
P.ej.: ga:hour<12

Por ejemplo: ga:adCost<10
<= Inferior o igual a Sí (solo para valores numéricos).
P.ej.: ga:hour<=12

Por ejemplo: ga:adCost<=10
> Superior a Sí (solo para valores numéricos).
P.ej.: ga:hour>12

Por ejemplo: ga:adCost>10
>= Superior o igual a Sí (solo para valores numéricos).
P.ej.: ga:hour>=12

Por ejemplo: ga:adCost>=10
<> Entre (el valor está entre un rango determinado)1 Sí (solo para valores numéricos).
P.ej.: ga:hour<>1_12

Por ejemplo: ga:adCost<>10_20
[] En la lista (el valor es uno de los valores enumerados)2
Por ejemplo: ga:browser[]Chrome|Firefox|Opera
No
=@ Contiene una substring.
Por ejemplo: ga:keyword=@shoes
No
!@ No contiene substring.
Por ejemplo: ga:keyword!@shoes
No
=~ Contiene una coincidencia para la expresión regular.
Por ejemplo: ga:keyword=~shoes
No
!~ No contiene una coincidencia para la expresión regular.
Por ejemplo: ga:keyword!~shoes
No

1 Entre operador <>
Te permite consultar valores dentro de un rango determinado. Los valores de rango son inclusivos y se pueden usar para las métricas y las dimensiones que tienen valores numéricos (p.ej., ga:hour). Los valores mínimos y máximos del rango deben separarse con un guion bajo.

Sintaxis:
{dimensionOrMetricName}<>{minValue}_{maxValue}

Ejemplo:
Selecciona sesiones que se hayan realizado entre las horas 12 y 23.
sessions::condition::ga:hour<>12_23

2 En el operador de lista []
Le permite consultar valores de una lista determinada. Solo se puede usar con dimensiones. La lista de valores debe separarse con un carácter "|". Si en el valor hay un "|", se debe escapar.

Sintaxis:
{dimensionName}[]{value1}|{value2}|...

Restricciones:
Se permite un máximo de 10 valores por condición de dimensión en la lista (p.ej., ga:city[]city1|city2|...|city10).

Ejemplo:
Selecciona sesiones que provengan de los navegadores Chrome, Firefox y Opera.
sessions::condition::ga:browser[]Chrome|Firefox|Opera

Escapa caracteres especiales

Los caracteres especiales (, y ;) se deben escapar si aparecen dentro de las expresiones de valor. P. ej.: ga:keyword==nike\,shoes

Para obtener detalles adicionales sobre las condiciones de métricas y dimensiones, consulta la Referencia de la API de informes principales.

Limitaciones

Las restricciones relacionadas con las condiciones de dimensiones y métricas son las siguientes:

  • Un máximo de 10 condiciones de dimensiones o métricas por segmento
  • La longitud máxima de las expresiones para las condiciones de dimensiones es de 1,024 caracteres.

Cómo migrar segmentos dinámicos heredados

Los segmentos dinámicos heredados que usan el prefijo dynamic:: son equivalentes a los segmentos a nivel de sesión con condiciones de dimensiones y métricas en la sintaxis actual. Si usas segmentos dinámicos heredados, debes migrar a la nueva sintaxis reemplazando el prefijo dynamic:: por el prefijo sessions::condition::. Por ejemplo, los dos segmentos a continuación son equivalentes:

dynamic::ga:browser==Chrome
es igual a:
sessions::condition::ga:browser==Chrome

Ejemplos de segmentos

1. Segmento demográfico: Idiomas masculinos está EN-US, interesado en los juegos y proviene de América.

Los segmentos basados en usuarios se aplican primero. Por lo tanto, la condición basada en usuarios muestra usuarios masculinos y interesados en juegos. Las sesiones que pertenecen a estos usuarios están sujetas a condiciones basadas en sesiones para obtener sesiones que provenían de América y el idioma estaba en inglés de EE.UU.

users::condition::ga:userGender==Male;users::condition::ga:interestAffinityCategory==Games ; sessions::condition::ga:region==Americas;sessions::condition::ga:language==en-u

2. Comportamiento: Usuarios que han tenido > 100 sesiones, que no visitaron en los últimos siete días, que hicieron 2 transacciones por sesión y que pasaron 100 segundos en el sitio por sesión.

users::condition::ga:sessions>100;ga:daysSinceLastSession>=7; perSession::ga:transactions>2;perSession::ga:sessionDuration>100

3. Sesiones: Selecciona las sesiones que tengan el navegador Chrome, el país como EE.UU. y las excepciones por hit 1; y selecciona los usuarios cuyas salidas por sesión < 2.

sessions::condition::ga:browser==Chrome;ga:country==US;perHit::ga:exceptions>1; users::condition::perSession::ga:exits<2

4. Sesión con una secuencia: Selecciona las sesiones con Step: Chrome y el total de eventos por hit > 5 Y selecciona usuarios con Step: En computadoras de escritorio seguidos de Step: En dispositivos móviles.

sessions::sequence::ga:browser==Chrome;condition::perHit::ga:totalEvents>5;users::sequence::ga:deviceCategory==desktop->>ga:deviceCategory=mobile

5. Fecha de la sesión: Selecciona a los usuarios que tuvieron su primera sesión entre el 20 de mayo de 2014 y el 30 de mayo de 2014 y pasaron 600 segundos en el sitio.

users::sequence::^ga:sessionCount==1;dateOfSession<>2014-05-20_2014-05-30;->>ga:sessionDurationBucket>600

Métricas: Referencia de alcance principal

Métrica Alcance principal
ga:adClicksÉXITO
ga:adCostÉXITO
ga:adsenseAdsClicksÉXITO
ga:adsenseAdsViewedÉXITO
ga:adsenseAdUnitsViewedÉXITO
ga:adsenseCTRÉXITO
ga:adsenseECPMÉXITO
ga:adsensePageImpressionsÉXITO
ga:adsenseRevenueÉXITO
ga:avgDomainLookupTimeÉXITO
ga:avgDomContentLoadedTimeÉXITO
ga:avgDomInteractiveTimeÉXITO
ga:avgEventValueÉXITO
ga:avgPageDownloadTimeÉXITO
ga:avgPageLoadTimeÉXITO
ga:avgRedirectionTimeÉXITO
ga:avgScreenviewDurationÉXITO
ga:avgSearchDepthÉXITO
ga:avgSearchDurationÉXITO
ga:avgSearchResultViewsÉXITO
ga:avgServerConnectionTimeÉXITO
ga:avgServerResponseTimeÉXITO
ga:avgUserTimingValueÉXITO
ga:costPerConversionÉXITO
ga:costPerGoalConversionÉXITO
ga:costPerTransactionÉXITO
ga:CPCÉXITO
ga:CPMÉXITO
ga:CTRÉXITO
ga:domainLookupTimeÉXITO
ga:domContentLoadedTimeÉXITO
ga:domInteractiveTimeÉXITO
ga:domLatencyMetricsSampleÉXITO
ga:eventValueÉXITO
ga:exceptionsÉXITO
ga:exceptionsPerScreenviewÉXITO
ga:fatalExceptionsÉXITO
ga:fatalExceptionsPerScreenviewÉXITO
ga:goalAbandonRateAllÉXITO
ga:goalAbandonsAllÉXITO
ga:goalCompletionsAllÉXITO
ga:goalStartsAllÉXITO
ga:goalValueAllÉXITO
ga:goalValueAllPerSearchÉXITO
ga:goalXXAbandonRateÉXITO
ga:goalXXAbandonsÉXITO
ga:goalXXCompletionsÉXITO
ga:goalXXStartsÉXITO
ga:goalXXValueÉXITO
ga:impressionsÉXITO
ga:itemQuantityÉXITO
ga:itemRevenueÉXITO
ga:itemsPerPurchaseÉXITO
ga:localItemRevenueÉXITO
ga:localTransactionRevenueÉXITO
ga:localTransactionShippingÉXITO
ga:localTransactionTaxÉXITO
ga:marginÉXITO
ga:metricXXÉXITO
ga:pageDownloadTimeÉXITO
ga:pageLoadSampleÉXITO
ga:pageLoadTimeÉXITO
ga:pageValueÉXITO
ga:pageviewsÉXITO
ga:percentSearchRefinementsÉXITO
ga:redirectionTimeÉXITO
ga:revenuePerItemÉXITO
ga:revenuePerTransactionÉXITO
ga:ROIÉXITO
ga:RPCÉXITO
ga:screenviewsÉXITO
ga:searchDepthÉXITO
ga:searchDurationÉXITO
ga:searchGoalConversionRateAllÉXITO
ga:searchGoalXXConversionRateÉXITO
ga:searchRefinementsÉXITO
ga:searchResultViewsÉXITO
ga:searchUniquesÉXITO
ga:serverConnectionTimeÉXITO
ga:serverResponseTimeÉXITO
ga:socialActivitiesÉXITO
ga:socialInteractionsÉXITO
ga:socialInteractionsPerSessionÉXITO
ga:speedMetricsSampleÉXITO
ga:timeOnScreenÉXITO
ga:totalEventsÉXITO
ga:totalValueÉXITO
ga:transactionRevenueÉXITO
ga:transactionsÉXITO
ga:transactionShippingÉXITO
ga:transactionTaxÉXITO
ga:uniqueAppviewsÉXITO
ga:uniqueEventsÉXITO
ga:uniquePageviewsÉXITO
ga:uniquePurchasesÉXITO
ga:uniqueScreenviewsÉXITO
ga:uniqueSocialInteractionsÉXITO
ga:userTimingSampleÉXITO
ga:userTimingValueÉXITO
ga:adsenseExitsSESIÓN
ga:avgTimeOnPageSESIÓN
ga:avgSessionDurationSESIÓN
ga:bouncesSESIÓN
ga:entranceBounceRateSESIÓN
ga:entranceRateSESIÓN
ga:entrancesSESIÓN
ga:eventsPerSessionWithEventSESIÓN
ga:exitRateSESIÓN
ga:exitsSESIÓN
ga:goalConversionRateAllSESIÓN
ga:goalValuePerSessionSESIÓN
ga:goalXXConversionRateSESIÓN
ga:organicSearchesSESIÓN
ga:pageviewsPerSessionSESIÓN
ga:percentSessionsWithSearchSESIÓN
ga:screenviewsPerSessionSESIÓN
ga:searchExitRateSESIÓN
ga:searchExitsSESIÓN
ga:searchSessionsSESIÓN
ga:sessionDurationSESIÓN
ga:transactionRevenuePerSessionSESIÓN
ga:transactionsPerSessionSESIÓN
ga:bounceRateSESIÓN
ga:sessionsSESIÓN
ga:sessionsWithEventSESIÓN
ga:newSessionsUSUARIO
ga:percentNewSessionsUSUARIO
ga:usersUSUARIO