Solucionar el nombre de campaña en GA4 (organic) en las Fuente/Medio de la sesión de google / cpc

Suscríbete a la Newsletter

Tabla de Contenidos

¿Tiene problemas con los valores que se muestra en GA4 (orgánicos) o (no establecidos) que aparecen al filtrar por nombre de la campaña? 

Voy a compartir una breve guía sobre cómo resolver este problema, que ha escrito y compartido Jan Zdarsa.

Cómo identificamos si te has visto afectado

En junio de 2024, muchos usuarios de Google Analytics 4 con campañas activas en Google Ads notaron un problema en sus informes al filtrar por Campaña de la sesión..

El problema está en el nombre de la campaña en el informe de adquisición. Muestra valores como (organic) o (not set) en el tráfico de Google Ads al filtrar por Campañas de la sesión.

Vamos a verlo:

Abrimos GA4 y vamos a adquisición de tráfico

Para comprobar tu GA4 y ver si este comportamiento te afecta, sigue estos pasos:

  • Ir a Adquisición > Adquisición de Tráfico
  • Cambie la dimensión a Fuente/Medio de la sesión
  • Agregar Campaña de la sesión como dimensión secundaria
  • Filtra por google / cpc 

¿Ahora ves valores (organic) o (not set)? Si es así, este problema también te afecta.

¿Por qué sucede esto?

No se ha publicado una lista específica que describa cuándo ocurre esto, pero aquí hay dos situaciones comúnmente conocidas.

Los nombres de campaña incorrectos aparecen cuando los usuarios rechazan ad_user_data en el banner de consentimiento de su sitio web o cuando inhabilitan los anuncios personalizados a nivel de la cuenta de Google.

Además, cuando un usuario desactiva los anuncios personalizados en Mi centro de anuncios, se produce este problema.

¿Cómo solucionarlo?

Actualizar las URL finales manualmente

Agrega parámetros UTM a todos sus enlaces de las campañas de Google Ads.

?utm_source=google&utm_medium=cpc&utm_campaign=Mi-Campana&utm_id=Mi-Campana-ID

No puede utilizar plantillas de seguimiento con parámetros de ValueTrack en Google Ads para solucionar este problema, ya que no hay ningún parámetro de ValueTrack para los nombres de campaña.

No verás un cambio rápido en GA4 debido a la ventana retrospectiva, pero los nombres de campaña incorrectos disminuirán con el tiempo.

Scripts gratuitos para manejar el etiquetado UTM de manera rápida y fácil.

Deja que el script de Google Ads, creado y compartido por Jan Zdarsa, haga el trabajo por ti. Compruébalo en GitHub.

Es fácil de usar y te ayuda a mantener tus URL etiquetadas con los parámetros UTM correctos, incluso si cambias el nombre de tu campaña.

Configúralo para que se ejecute cada hora o día para asegurarte de que tus URL finales estén siempre actualizadas.

Mantenga habilitado el etiquetado automático.

Si el sistema no encuentra el nombre de la campaña, utilizará el valor UTM en lugar de (organic) o (not set) al etiquetar automáticamente.

ADVERTENCIA: Los scripts de Google Ads no son compatibles con las campañas de generación de demanda y de vídeo. Tendrás que actualizar esas campañas manualmente.

Script: Etiquetado UTM para cuentas individuales

Este es el script para las cuentas individuales que ha estado esperando.
function main() {
  Logger.log("Processing account: " + AdsApp.currentAccount().getCustomerId());
  // Process each campaign type with error handling
  tryHandleCampaigns(AdsApp.campaigns(), "Standard & Others");
  tryHandleCampaigns(AdsApp.shoppingCampaigns(), "Shopping");
  tryHandleCampaigns(AdsApp.performanceMaxCampaigns(), "Performance Max");
  // tryHandleCampaigns(AdsApp.videoCampaigns(), "Video");
  Logger.log("Processing completed for account: " + AdsApp.currentAccount().getCustomerId());
}
function tryHandleCampaigns(campaignIteratorFunction, campaignType) {
  try {
    handleCampaigns(campaignIteratorFunction, campaignType);
  } catch (e) {
    Logger.log("Error processing " + campaignType + " campaigns: " + e.message);
  }
}

function handleCampaigns(campaignIteratorFunction, campaignType) {
  var campaignIterator = campaignIteratorFunction
                            .withCondition('Status != REMOVED')
                            .get();
  while (campaignIterator.hasNext()) {
    var campaign = campaignIterator.next();
    try {
      var trackingTemplate = "{lpurl}?utm_source=google&utm_medium=cpc&utm_campaign={_campaign}&utm_id=" + campaign.getId();
      campaign.urls().setTrackingTemplate(trackingTemplate);
      // Set custom parameters or perform other universal actions here
      campaign.urls().setCustomParameters({campaign: encodeURIComponent(campaign.getName())});
    } catch (e) {
      Logger.log("Error processing campaign " + campaign.getId() + " in " + campaignType + ": " + e.message);
    }
  }
}

Script: Etiquetado UTM para MCC
**Recordatorio: Los scripts de Google Ads pueden administrar hasta 50 cuentas. Si tienes más, tendrás que personalizar el código.
function main() {
  const accountSelector = AdsManagerApp.accounts().withLimit(50); // Adjust the limit as needed
  accountSelector.executeInParallel('processAccount', 'allFinished');
}
function processAccount() {
  var account = AdsApp.currentAccount();
  Logger.log("Processing account: " + account.getCustomerId());
  // Process each campaign type with error handling
  tryHandleCampaigns(AdsApp.campaigns(), "Standard & Others");
  tryHandleCampaigns(AdsApp.shoppingCampaigns(), "Shopping");
  tryHandleCampaigns(AdsApp.performanceMaxCampaigns(), "Performance Max");
  // tryHandleCampaigns(AdsApp.videoCampaigns(), "Video");
  // Return a result that you can use later in allFinished (optional)
  return account.getCustomerId();
}
function tryHandleCampaigns(campaignIteratorFunction, campaignType) {
  try {
    handleCampaigns(campaignIteratorFunction, campaignType);
  } catch (e) {
    Logger.log("Error processing " + campaignType + " campaigns: " + e.message);
  }
}
function handleCampaigns(campaignIteratorFunction, campaignType) {
  var campaignIterator = campaignIteratorFunction
                            .withCondition('Status != REMOVED')
                            .get();
  while (campaignIterator.hasNext()) {
    var campaign = campaignIterator.next();
    try {
      var trackingTemplate = "{lpurl}?utm_source=google&utm_medium=cpc&utm_campaign={_campaign}&utm_id=" + campaign.getId();
      campaign.urls().setTrackingTemplate(trackingTemplate);
      // Set custom parameters or perform other universal actions here
      campaign.urls().setCustomParameters({campaign: encodeURIComponent(campaign.getName())});
    } catch (e) {
      Logger.log("Error processing campaign " + campaign.getId() + " in " + campaignType + ": " + e.message);
    }
  }
}
// This function is optional but allows you to handle any results after all accounts are processed
function allFinished(results) {
  for (var i = 0; i < results.length; i++) {
    var result = results[i];
    if (result.getStatus() === 'OK') {
      Logger.log("Successfully processed account: " + result.getCustomerId());
    } else {
      Logger.log("Failed to process account: " + result.getCustomerId() + " with error: " + result.getError());
    }
  }
}

Asegúrate siempre de que estás utilizando la última versión, entra en la página de GitHub.

Importante añade siempre el seguimiento UTM a tus campañas de Google Ads y no dejes que los nombres de campaña incorrectos afecten a tus estadísticas.

AUTOR

ÚLTIMOS ARTÍCULOS

Descripción del Podcast con Carles y Xavi: En este episodio del podcast de VisibilidadON, descubre cómo Carles y Xavi revolucionaron el mercado con su proyecto…

La minificación de JavaScript es una técnica esencial para mejorar el rendimiento y la velocidad de carga de un sitio web. Dado que los archivos…

El debate sobre la capacidad de Google para indexar contenido JavaScript ha sido recurrente en la comunidad SEO, siempre nos asaltan las dudas a la…

Suscríbete a la Newsletter

Recibe las últimas noticias y aprende de SEO y Google ADS