Denemeler hakkında rapor oluşturma

Kampanya değişikliklerinin ve reklam gösterim süresinin performansı nasıl etkilediğini değerlendirmek için Google Ads API'deki deneme ve artış ölçümü raporlama kaynaklarını sorgulayın.

Google Ads API, standart A/B denemeleri hakkında rapor oluşturmak için iki yöntem destekler:

  • Doğrudan deneme raporlaması: Metrikler için experiment kaynağını sorgulayın. Bu seçenek, kontrol ve deney kollarının metriklerini tek bir yanıtta sunar. Ayrıca artış ve p değerleri gibi istatistiksel karşılaştırma verilerini de içerir. Doğrudan deneme raporlaması, kampanya içi denemeler hakkında rapor oluşturmanın tek yoludur.
  • Kampanya raporlama: Temel ve deneme kampanyalarını ayırt etmek için campaign.experiment_type alanını kullanarak campaign kaynağını metrikler için sorgulayın. Bu seçenek yalnızca sistem tarafından yönetilen denemeler gibi ayrı kontrol ve deney kampanyaları kullanan denemelerde kullanılabilir.

Standart denemeler için bu kılavuz, öncelikle raporlanabilir tüm deneme türlerini destekleyen doğrudan deneme raporlamasına odaklanır. Artış ölçümü araştırmaları için Artış raporlama kılavuzuna veya bu sayfadaki Brand Lift, Dönüşüm Artışı (A/B + Dönüşüm Artışı dahil) ve Arama Artışı ile ilgili özet bölümlerine bakın.

Doğrudan deneme raporlaması

Desteklenen tüm Google Ads API sürümlerinde (sürüm 23 ve sonraki sürümler) tek bir yanıtta kontrol ve deney kollarınız arasındaki performans metriklerini ve istatistiksel karşılaştırmaları almak için doğrudan experiment kaynağını sorgulayın.

Metrikler ve istatistiksel olarak anlamlılık

Tıklama sayısı, gösterim sayısı, maliyet, dönüşüm sayısı ve dönüşüm değeri gibi temel metrikler için experiment kaynağı, hem değerlendirme metriklerini (ör. metrics.clicks) hem de kontrol metriklerini (ör. metrics.control_clicks) aynı satırda sağlar.

experiment kaynağı, kollar arasındaki farkların istatistiksel olarak anlamlı olup olmadığını değerlendirmenize yardımcı olacak alanlar da sağlar:

  • metrics.*_p_value: Deneyin metrik üzerinde gerçek bir etkisi yoksa en az ölçülen fark kadar uç sonuçlar gözlemleme olasılığı. Düşük p değeri, daha yüksek istatistiksel önemi gösterir.
  • metrics.*_point_estimate: Deney kolu için verilen metrikte kontrol koluna kıyasla tahmini artış yüzdesi (pozitif veya negatif). Bu değer, metrics.*_margin_of_error alanıyla birlikte tahmini fark için öngörülen güven düzeyine sahip bir güven aralığı tanımlar. Tahmini miktar (treatment / control) - 1 ve nokta tahmini, güven aralığının merkezidir.
  • metrics.*_margin_of_error: metrics.*_point_estimate değerinde ortalanmış güven aralığının yarıçapı. API, bu marjı deneme türüne bağlı olarak önceden belirlenmiş bir güven düzeyi için hesaplar.

experiment kaynağında, deney grubu değeri, kontrol grubu değeri ve daha önce listelenen istatistik alanları dahil olmak üzere aşağıdaki temel metrik alanları desteklenir:

  • clicks
  • impressions
  • cost_micros
  • conversions
  • cost_per_conversion
  • conversion_value
  • conversion_value_per_cost

Dönüşümler için istatistiksel alanlar, göreceli değerler yerine aşağıdaki absolute_change alanları aracılığıyla kullanılabilir:

experiment kaynağı için geçerli sorgular oluşturma konusunda yardım almak üzere Google Ads Sorgu Oluşturucu aracını kullanın.

Örnek sorgu

Aşağıdaki Google Ads Sorgu Dili (GAQL) sorgusu, bir denemenin temel metriklerini alır:

SELECT
  experiment.experiment_id,
  experiment.name,
  experiment.type,
  metrics.clicks,
  metrics.control_clicks,
  metrics.clicks_point_estimate,
  metrics.clicks_margin_of_error,
  metrics.clicks_p_value,
  metrics.conversions,
  metrics.control_conversions,
  metrics.conversions_absolute_change_point_estimate,
  metrics.conversions_absolute_change_margin_of_error,
  metrics.conversions_absolute_change_p_value
FROM experiment
WHERE experiment.experiment_id = EXPERIMENT_ID

Aşağıdakini değiştirin:

  • EXPERIMENT_ID: Denemenin tam sayı kimliği (experiment.experiment_id).

Sonuçları yorumlama

Denemenizin istatistiksel olarak anlamlı sonuçlar verip vermediğini belirlemek için p değeri, nokta tahmini ve hata payı alanlarını kullanın. Örneğin, metrics.conversions_absolute_change_p_value metriği seçtiğiniz eşikten (ör. %95 güven için 0.05) düşükse ve metrics.conversions_absolute_change_point_estimate metriğinden metrics.conversions_absolute_change_margin_of_error metriği çıkarıldığında elde edilen değer sıfırdan büyükse deney kolu, dönüşümler açısından kontrol kolundan önemli ölçüde daha iyi performans gösteriyor demektir.

Aşağıdaki kod örneğinde, sonuçların p değerine ve artış tahminlerine göre nasıl değerlendirileceği gösterilmektedir:

Java

private void evaluateExperiment(
    GoogleAdsClient googleAdsClient, long customerId, GoogleAdsRow row) {
  Metrics metrics = row.getMetrics();
  String experimentResourceName = row.getExperiment().getResourceName();

  // 1. Evaluate conversion success as a primary success signal if available.
  // - Point Estimate: Represents the estimated average lift or difference in conversions.
  // - Margin of Error: Outlines the confidence interval bounds. Note that the margin_of_error
  //   provided by the API is calculated for a preset confidence level which is set based on the
  //   experiment type.
  // - Lower Bound: (Point Estimate - Margin of Error). If this value is above 0,
  //   we have statistical significance that performance has improved.
  double convPValue = metrics.getConversionsAbsoluteChangePValue();
  double convLift = metrics.getConversionsAbsoluteChangePointEstimate();
  double convError = metrics.getConversionsAbsoluteChangeMarginOfError();
  double convLowerBound = convLift - convError;

  if (convPValue <= P_VALUE_THRESHOLD) {
    if (convLowerBound > 0) {
      System.out.printf(
          "Significant Success: Conversions increased. Even at the lower bound, the lift is %.2f."
              + " Promoting changes.%n",
          convLowerBound);
      promoteExperiment(googleAdsClient, customerId, experimentResourceName);
      return;
    } else if ((convLift + convError) < 0) {
      System.out.printf(
          "Significant Decline: Even the upper bound (%.2f) is below zero. Ending experiment.%n",
          convLift + convError);
      endExperiment(googleAdsClient, customerId, experimentResourceName);
      return;
    }
  }

  // 2. Fall back to evaluating click metrics if conversions are inconclusive.
  double clickPValue = metrics.getClicksPValue();
  double clickLift = metrics.getClicksPointEstimate();
  double clickError = metrics.getClicksMarginOfError();
  double clickLowerBound = clickLift - clickError;

  if (clickPValue <= P_VALUE_THRESHOLD && clickLowerBound > 0) {
    System.out.printf("Click volume is significantly up (+%.1f%%).%n", clickLift * 100);

    // Graduation is only supported for separate campaign experiments, not
    // intra-campaign experiments where there is no separate treatment campaign.
    ExperimentType experimentType = row.getExperiment().getType();
    if (experimentType != ExperimentType.ADOPT_BROAD_MATCH_KEYWORDS
        && experimentType != ExperimentType.ADOPT_AI_MAX) {
      System.out.println("Graduating treatment campaign for further manual analysis.");
      graduateExperiment(googleAdsClient, customerId, experimentResourceName);
    } else {
      System.out.println(
          "Intra-campaign trial detected: graduation is not supported. Continuing to run the"
              + " experiment to gather more conversion data.");
    }
  } else {
    // 3. Print status if no action was taken.
    System.out.printf(
        "Inconclusive: No significant lift in Conversions (p=%.2f) or Clicks (p=%.2f). Current"
            + " estimated lift: %.2f +/- %.2f. Allowing the experiment to continue running.%n",
        convPValue, clickPValue, convLift, convError);
  }
}

      

C#

private static void EvaluateExperiment(GoogleAdsClient client, long customerId, GoogleAdsRow row)
{
    // This function evaluates performance metrics and immediately takes action
    // to update the experiment's status (promote, end, or graduate) if
    // statistical significance thresholds are met.
    var metrics = row.Metrics;
    string experimentResourceName = row.Experiment.ResourceName;

    bool hasConvMetrics = metrics.HasConversionsAbsoluteChangePValue
        && metrics.HasConversionsAbsoluteChangePointEstimate
        && metrics.HasConversionsAbsoluteChangeMarginOfError;

    bool hasClickMetrics = metrics.HasClicksPValue
        && metrics.HasClicksPointEstimate
        && metrics.HasClicksMarginOfError;

    // 1. Evaluate conversion success as a primary success signal if available.
    // - Point Estimate: Represents the estimated average lift or difference in conversions.
    // - Margin of Error: Outlines the confidence interval bounds. Note that the margin_of_error
    //   provided by the API is calculated for a preset confidence level which is set based on
    //   the experiment type.
    // - Lower Bound: (Point Estimate - Margin of Error). If this value is above 0,
    //   we have statistical significance that performance has improved.
    if (hasConvMetrics)
    {
        double convPValue = metrics.ConversionsAbsoluteChangePValue;
        double convLift = metrics.ConversionsAbsoluteChangePointEstimate;
        double convError = metrics.ConversionsAbsoluteChangeMarginOfError;
        double convLowerBound = convLift - convError;

        if (convPValue <= P_VALUE_THRESHOLD)
        {
            if (convLowerBound > 0)
            {
                Console.WriteLine(
                    $"Significant Success: Conversions increased. Even at the lower" +
                    $" bound, the lift is {convLowerBound:F2}. Promoting changes.");
                PromoteExperiment(client, customerId, experimentResourceName);
                return;
            }
            else if ((convLift + convError) < 0)
            {
                Console.WriteLine(
                    $"Significant Decline: Even the upper bound ({convLift + convError:F2}) " +
                    $"is below zero. Ending experiment.");
                EndExperiment(client, customerId, experimentResourceName);
                return;
            }
        }
    }

    // 2. Evaluate click volume as a secondary signal.
    // This is helpful as an early indicator or for lower-volume accounts.
    if (hasClickMetrics)
    {
        double clickPValue = metrics.ClicksPValue;
        double clickLift = metrics.ClicksPointEstimate;
        double clickError = metrics.ClicksMarginOfError;
        double clickLowerBound = clickLift - clickError;

        if (clickPValue <= P_VALUE_THRESHOLD && clickLowerBound > 0)
        {
            // We have a directional winner: high confidence in more traffic,
            // but not enough data to confirm conversion impact yet.
            Console.WriteLine(
                $"Click volume is significantly up (+{clickLift * 100:F1}%).");

            // Graduation is only supported for separate campaign experiments, not
            // intra-campaign experiments where there is no separate treatment campaign.
            if (row.Experiment.Type != ExperimentType.AdoptBroadMatchKeywords
                && row.Experiment.Type != ExperimentType.AdoptAiMax)
            {
                Console.WriteLine("Graduating treatment campaign for further manual analysis.");
                GraduateExperiment(client, customerId, experimentResourceName);
            }
            else
            {
                Console.WriteLine(
                    "Intra-campaign trial detected: graduation is not supported. " +
                    "Continuing to run the experiment to gather more conversion data.");
            }
            return;
        }
    }

    // 3. Print status if no action was taken.
    if (hasConvMetrics || hasClickMetrics)
    {
        string convStatus = hasConvMetrics
            ? $"Conversions (p={metrics.ConversionsAbsoluteChangePValue:F2}, " +
              $"lift={metrics.ConversionsAbsoluteChangePointEstimate:F2} +/- " +
              $"{metrics.ConversionsAbsoluteChangeMarginOfError:F2})"
            : "Conversions (not populated)";

        string clickStatus = hasClickMetrics
            ? $"Clicks (p={metrics.ClicksPValue:F2}, " +
              $"lift={metrics.ClicksPointEstimate:F2} +/- " +
              $"{metrics.ClicksMarginOfError:F2})"
            : "Clicks (not populated)";

        Console.WriteLine(
            $"Inconclusive: No significant action taken. {convStatus}, {clickStatus}. " +
            "Allowing the experiment to continue running.");
    }
    else
    {
        Console.WriteLine(
            "Conversion and click performance metrics are not yet populated. " +
            "Allowing the experiment to continue running.");
    }
}
      

PHP

This example is not yet available in PHP; you can take a look at the other languages.
    

Python

def evaluate_experiment(
    client: GoogleAdsClient, customer_id: str, row: GoogleAdsRow
) -> None:
    """Evaluates the performance of the experiment and updates it accordingly
    (for example, promotes, ends, or graduates).

    Checks conversion and click metrics against statistical significance thresholds
    to determine the appropriate action to take on the experiment.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
        row: a GoogleAdsRow containing the experiment and metrics.
    """
    # This function evaluates performance metrics and immediately takes action
    # to update the experiment's status (promote, end, or graduate) if
    # statistical significance thresholds are met.
    metrics = row.metrics
    experiment_resource_name = row.experiment.resource_name

    has_conv_metrics = (
        "conversions_absolute_change_p_value" in metrics
        and "conversions_absolute_change_point_estimate" in metrics
        and "conversions_absolute_change_margin_of_error" in metrics
    )
    has_click_metrics = (
        "clicks_p_value" in metrics
        and "clicks_point_estimate" in metrics
        and "clicks_margin_of_error" in metrics
    )

    # 1. Evaluate conversion success as a primary success signal if available.
    # - Point Estimate: Represents the estimated average lift or difference in conversions.
    # - Margin of Error: Outlines the confidence interval bounds. Note that the margin_of_error provided by the API is calculated for a preset confidence level which is set based on the experiment type.
    # - Lower Bound: (Point Estimate - Margin of Error). If this value is above 0,
    #   we have statistical significance that performance has improved.
    if has_conv_metrics:
        conv_p_value = metrics.conversions_absolute_change_p_value
        conv_lift = metrics.conversions_absolute_change_point_estimate
        conv_error = metrics.conversions_absolute_change_margin_of_error
        conv_lower_bound = conv_lift - conv_error

        if conv_p_value <= P_VALUE_THRESHOLD:
            if conv_lower_bound > 0:
                print(
                    "Significant Success: Conversions increased. Even at the lower"
                    f" bound, the lift is {conv_lower_bound:.2f}. Promoting"
                    " changes."
                )
                promote_experiment(
                    client, customer_id, experiment_resource_name
                )
                return
            elif (conv_lift + conv_error) < 0:
                print(
                    "Significant Decline: Even the upper bound"
                    f" ({conv_lift + conv_error:.2f}) is below zero. Ending"
                    " experiment."
                )
                end_experiment(client, customer_id, experiment_resource_name)
                return

        # 2. Evaluate click volume as a secondary signal.
        # This is helpful as an early indicator or for lower-volume accounts.
        click_p_value = metrics.clicks_p_value
        click_lift = metrics.clicks_point_estimate
        click_error = metrics.clicks_margin_of_error
        click_lower_bound = click_lift - click_error

        if click_p_value <= P_VALUE_THRESHOLD and click_lower_bound > 0:
            # We have a directional winner: high confidence in more traffic,
            # but not enough data to confirm conversion impact yet.
            print(f"Click volume is significantly up (+{click_lift*100:.1f}%).")

            # Graduation is only supported for separate campaign experiments, not
            # intra-campaign experiments where there is no separate treatment campaign.
            experiment_type_name = row.experiment.type_.name
            if (
                experiment_type_name != "ADOPT_BROAD_MATCH_KEYWORDS"
                and experiment_type_name != "ADOPT_AI_MAX"
            ):
                print(
                    "Graduating treatment campaign for further manual analysis."
                )
                graduate_experiment(
                    client, customer_id, experiment_resource_name
                )
            else:
                print(
                    "Intra-campaign trial detected: graduation is not supported. "
                    "Continuing to run the experiment to gather more conversion data."
                )
            return

    # 3. Print status if no action was taken.
    if has_conv_metrics or has_click_metrics:
        conv_status = (
            f"Conversions (p={metrics.conversions_absolute_change_p_value:.2f}, "
            f"lift={metrics.conversions_absolute_change_point_estimate:.2f} +/- "
            f"{metrics.conversions_absolute_change_margin_of_error:.2f})"
            if has_conv_metrics
            else "Conversions (not populated)"
        )
        click_status = (
            f"Clicks (p={metrics.clicks_p_value:.2f}, "
            f"lift={metrics.clicks_point_estimate:.2f} +/- "
            f"{metrics.clicks_margin_of_error:.2f})"
            if has_click_metrics
            else "Clicks (not populated)"
        )
        print(
            f"Inconclusive: No significant action taken. {conv_status}, {click_status}."
            " Allowing the experiment to continue running."
        )
    else:
        print(
            "Conversion and click performance metrics are not yet populated. "
            "Allowing the experiment to continue running."
        )
      

Ruby

def evaluate_experiment(client, customer_id, row)
  # This function evaluates performance metrics and immediately takes action
  # to update the experiment's status (promote, end, or graduate) if
  # statistical significance thresholds are met.
  metrics = row.metrics
  experiment_resource_name = row.experiment.resource_name

  has_conv_metrics = !metrics.nil? &&
                     metrics.has_conversions_absolute_change_p_value? &&
                     metrics.has_conversions_absolute_change_point_estimate? &&
                     metrics.has_conversions_absolute_change_margin_of_error?
  has_click_metrics = !metrics.nil? &&
                      metrics.has_clicks_p_value? &&
                      metrics.has_clicks_point_estimate? &&
                      metrics.has_clicks_margin_of_error?

  # 1. Evaluate conversion success as a primary success signal if available.
  # - Point Estimate: Represents the estimated average lift or difference in conversions.
  # - Margin of Error: Outlines the confidence interval bounds. Note that the margin_of_error
  #   provided by the API is calculated for a preset confidence level which is set based on the experiment type.
  # - Lower Bound: (Point Estimate - Margin of Error). If this value is above 0,
  #   we have statistical significance that performance has improved.
  if has_conv_metrics
    conv_p_value = metrics.conversions_absolute_change_p_value
    conv_lift = metrics.conversions_absolute_change_point_estimate
    conv_error = metrics.conversions_absolute_change_margin_of_error
    conv_lower_bound = conv_lift - conv_error

    if conv_p_value <= P_VALUE_THRESHOLD
      if conv_lower_bound > 0
        puts sprintf(
          "Significant Success: Conversions increased. Even at the lower " \
          "bound, the lift is %.2f. Promoting changes.",
          conv_lower_bound,
        )
        promote_experiment(client, customer_id, experiment_resource_name)
        return
      elsif (conv_lift + conv_error) < 0
        puts sprintf(
          "Significant Decline: Even the upper bound (%.2f) is below zero. " \
          "Ending experiment.",
          conv_lift + conv_error,
        )
        end_experiment(client, customer_id, experiment_resource_name)
        return
      end
    end
  end

  # 2. Evaluate click volume as a secondary signal.
  # This is helpful as an early indicator or for lower-volume accounts.
  if has_click_metrics
    click_p_value = metrics.clicks_p_value
    click_lift = metrics.clicks_point_estimate
    click_error = metrics.clicks_margin_of_error
    click_lower_bound = click_lift - click_error

    if click_p_value <= P_VALUE_THRESHOLD && click_lower_bound > 0
      # We have a directional winner: high confidence in more traffic,
      # but not enough data to confirm conversion impact yet.
      puts sprintf("Click volume is significantly up (+%.1f%%).", click_lift * 100)

      # Graduation is only supported for separate campaign experiments, not
      # intra-campaign experiments where there is no separate treatment campaign.
      experiment_type = row.experiment.type
      if experiment_type != :ADOPT_BROAD_MATCH_KEYWORDS && experiment_type != :ADOPT_AI_MAX
        puts "Graduating treatment campaign for further manual analysis."
        graduate_experiment(client, customer_id, experiment_resource_name)
      else
        puts "Intra-campaign trial detected: graduation is not supported. " \
             "Continuing to run the experiment to gather more conversion data."
      end
      return
    end
  end

  # 3. Print status if no action was taken.
  if has_conv_metrics || has_click_metrics
    conv_status = if has_conv_metrics
      sprintf(
        "Conversions (p=%.2f, lift=%.2f +/- %.2f)",
        metrics.conversions_absolute_change_p_value,
        metrics.conversions_absolute_change_point_estimate,
        metrics.conversions_absolute_change_margin_of_error,
      )
    else
      "Conversions (not populated)"
    end

    click_status = if has_click_metrics
      sprintf(
        "Clicks (p=%.2f, lift=%.2f +/- %.2f)",
        metrics.clicks_p_value,
        metrics.clicks_point_estimate,
        metrics.clicks_margin_of_error,
      )
    else
      "Clicks (not populated)"
    end

    puts "Inconclusive: No significant action taken. #{conv_status}, #{click_status}. " \
         "Allowing the experiment to continue running."
  else
    puts "Conversion and click performance metrics are not yet populated. " \
         "Allowing the experiment to continue running."
  end
end
      

Perl

This example is not yet available in Perl; you can take a look at the other languages.
    

curl

Kampanya raporlamasına kıyasla avantajları

Doğrudan deneme raporlaması, kampanya raporlarını ayrı ayrı sorgulamaya kıyasla çeşitli avantajlar sunar:

  • Merkezi metrikler: Kontrol ve deney kollarının metriklerini tek bir satırda alır.
  • İstatistiksel güven verileri: Hesaplanan p değerlerini, nokta tahminlerini ve hata paylarını sağlar.
  • Verimlilik: Birden fazla rapordan elde edilen sonuçları manuel olarak birleştirme veya karşılaştırma ihtiyacını ortadan kaldırır.
  • Kampanya içi destek: Trafiğin tek bir kampanya içinde bölündüğü kampanya içi denemeler için kontrol ve deneme karşılaştırmalarını destekler.

Kampanya raporları

Desteklenen tüm Google Ads API sürümlerinde (v23 ve sonraki sürümler), ayrı deney kampanyaları oluşturan denemeler için (ör. SEARCH_CUSTOM) campaign kaynağını sorgulayabilir ve campaign.experiment_type alanını kullanarak BASE (kontrol) ve EXPERIMENT (deney) kampanyalarını tanımlayabilirsiniz. Bu yaklaşım, metrikleri daha ayrıntılı bir düzeyde (ör. reklam grubu veya anahtar kelimeye göre) segmentlere ayırmanız ya da experiment kaynağında bulunmayan kampanya meta verilerini görüntülemeniz gerektiğinde kullanışlıdır. Ancak kampanya raporlaması, performans karşılaştırmalarını ve istatistiksel hesaplamaları manuel olarak yapmanızı gerektirir.

Trafik bölme işlemi tek bir kampanya içinde gerçekleştiğinden, kampanya içi denemeler için kolları karşılaştırmak amacıyla kampanya düzeyinde raporlamayı kullanamazsınız. Kampanya içi deneme için campaign kaynağını sorgulamak yalnızca toplu toplamları döndürür.

Brand Lift raporlaması

Google Ads API v25 ve sonraki sürümlerde, salt okunur (OUTPUT_ONLY) LiftMeasurementFlight, LiftMeasurementConfig ve Brand Lift dökümü kaynaklarını (LiftMeasurementAgeRange, LiftMeasurementCampaign, LiftMeasurementDevice, LiftMeasurementGender ve LiftMeasurementVideo) sorgulayarak reklam kampanyalarınızın marka algısını nasıl etkilediğini değerlendirin. Google Ads API v27 ve sonraki sürümlerde, satır düzeyinde istatistiksel yorumlama için lift_guidance alanını (lift_guidance.outcome ve lift_guidance.guidance_message) da seçebilirsiniz.

Anket yanıtı raporlanabilirlik eşikleri, boş yanıt (results: []) teşhisleri, sonuç yorumlama ve GAQL sorgu örnekleri için Artış raporlama kılavuzundaki Brand Lift raporlaması bölümüne bakın.

Dönüşüm Artışı raporları

Google Ads API v25 ve sonraki sürümlerde Dönüşüm Artışı raporlaması, reklamlarınızın dönüşümler, dönüşüm değeri, artımlı dönüşüm başına maliyet (iCPA) ve reklam harcamalarından elde edilen artımlı gelir (iROAS) üzerindeki artımlı etkisini ölçer. Bu ölçüm, LiftMeasurementConfig kaynağındaki günlük kümülatif değerlendirme anlık görüntüleri (segments.conversion_lift_start_date ve segments.conversion_lift_end_date) üzerinden reklam gösterilen bir grubu, reklam gösterilmeyen bir kontrol grubuyla karşılaştırarak yapılır. Google Ads API 26 ve sonraki sürümlerde, bağlı yapılandırmaları ve kampanyaları campaign.lift_measurement_config ve lift_measurement_config.campaigns alanları aracılığıyla da keşfedebilirsiniz. Google Ads API 27 ve sonraki sürümlerde ise satır düzeyinde istatistiksel yorumlama için lift_measurement_config.lift_guidance alanını seçebilirsiniz.

Çalışma ve kampanya keşfi, kümülatif anlık görüntü tarih aralıkları, dönüşüm işlemi kapsamları (SELECTED ve ALL), boyutsal dökümler, raporlanabilirlik eşikleri ve GAQL sorgu örnekleri için Artış raporlama kılavuzundaki Dönüşüm Artışı raporlama bölümüne bakın.

A/B + Dönüşüm Artışı raporlaması

Google Ads API v25 ve sonraki sürümlerde, A/B + Dönüşüm Artışı çalışmaları iki kollu bir experiment (ExperimentArm kaynağı ve experiment.lift_measurement_config alanı aracılığıyla keşfedilir) ile LiftMeasurementConfig kaynağındaki reklamı göstermeme ölçümünü birleştirir. Kola göre nedensel artışı ve başa baş kazanan olasılıklarını değerlendirmek için segments.experiment_arm segmentini ve Bayes kazanan puanı metriklerini (metrics.*_winner_score) ekleyin.

Deneme kolu keşfi, kol başına ve birleştirilmiş kol sorguları, kazanan puan yorumu ve çoklu çalışma toplu sorguları için Artış raporlama kılavuzundaki A/B + Dönüşüm Artışı raporlaması bölümüne bakın.

Arama Artışı raporlaması

Google Ads API v26 ve sonraki sürümlerde, Arama Artışı raporları, reklam kampanyalarınızın Google Arama ve YouTube'da organik arama sorgusu hacminde sağladığı artışı ölçer. Yapılandırılmış anahtar kelime paketleri için SearchLiftKeywordBundle kaynağını, göreli ve normalleştirilmiş artımlı arama metrikleri için ise LiftMeasurementConfig kaynağını (Google Ads API v27 ve sonraki sürümlerde lift_measurement_config.lift_guidance ile) sorgulayın.

Arama Artışı segmentasyon kuralları, metrik tanımları ve GAQL sorgu örnekleri için Artış raporlama kılavuzundaki Arama Artışı raporlama bölümüne bakın.

En iyi uygulamalar

Aşağıdaki en iyi uygulamalar, standart A/B denemeleri (ör. kampanya ve kampanya içi denemeler) için geçerlidir. Artış ölçümü çalışmaları (Brand Lift, Dönüşüm Artışı ve Arama Artışı), çalışmaya özel yapılandırmalar kullanır ve %95 güven eşiği yerine %90 tek taraflı güven sınırları (*_p90_lower_bound ve *_p90_upper_bound, birlikte p_value <= 0.10 ile %80 iki taraflı güven aralığı oluşturur) bildirir. Artış çalışması eşikleri ve yorumlama için Artış raporlama kılavuzuna bakın.

  • Uygun bir güven düzeyi seçin: Daha düşük bir p değeri eşiği belirlemek, özellikle daha düşük bütçeler veya dönüşüm hacimleri söz konusu olduğunda daha hızlı yönlendirme sağlayabilir. %95 güven düzeyi (p_value <= 0.05) akademik standarttır ve daha uzun bir zaman aralığında daha yüksek kesinlik sağlar.
  • Denemeleri yeterince uzun süre çalıştırın: Haftalık performans döngülerini, dönüşüm sürelerini ve öğrenme dönemlerini hesaba katmak için denemeleri en az 4 hafta boyunca çalıştırın.
  • İlerleme kaydetmesi için zaman tanıyın: Otomatik teklif kullanan veya yeni özellikleri test eden kampanyalarda, teklif modellerinin ve trafik düzeylerinin bölmeye göre yeniden ayarlanabilmesi için ilk 1-2 haftalık verileri dikkate almayın.
  • 50/50 oranında bölme kullanın: 50/50 oranında trafik yükü, genellikle istatistiksel olarak anlamlı sonuçlar elde etmenin en hızlı yoludur.
  • Önceden planlayın: Reklam inceleme ve onay süreçlerine zaman tanımak için denemenizin başlangıç tarihini 3-7 gün sonrasına ayarlayın.