Google Ads'de dönüşüm, reklam etkileşiminden sonra gerçekleşen değerli bir kullanıcı işlemidir (ör. ürün satın alma, potansiyel müşteri formu gönderme, işletmenizi arama veya fiziksel mağazayı ziyaret etme). Dönüşüm izleme, kampanya performansını değerlendirebilmeniz ve otomatik teklifi optimize edebilmeniz için bu müşteri etkileşimlerini ölçer.
Google Ads API, dönüşüm işlemlerini programatik olarak yapılandırmanıza, çevrimdışı dönüşüm etkinliklerini içe aktarmanıza, kaydedilen dönüşümleri iyileştirmenize veya ayarlamanıza, işlemleri teklif verme ve yaşam döngüsü hedefleri halinde gruplandırmanıza ve yükleme teşhislerini izlemenize olanak tanır.
Dönüşüm iş akışınızı seçme
Kullanım alanınıza uygun ConversionActionType, API hizmeti ve uygulama kılavuzunu belirlemek için aşağıdaki tabloyu kullanın:
| Görev | Dönüşüm işlemi türü | API hizmeti veya kaynağı | Uygulama kılavuzu |
|---|---|---|---|
| Hesap kurulumunu doğrulama ve dönüşüm işlemi oluşturma |
UPLOAD_CLICKS, WEBPAGE,
UPLOAD_CALLS, AD_CALL,
WEBSITE_CALL, GOOGLE_PLAY_,
GOOGLE_PLAY_
|
Customer
(ConversionTracking),
ConversionAction
|
Başlarken ve Dönüşüm işlemi kategorileri |
| Çevrimdışı tıklama dönüşümlerini veya potansiyel müşteriler için gelişmiş dönüşümleri içe aktarma | UPLOAD_CLICKS |
ConversionUploadService.
(veya yeni entegrasyonlar için
Data Manager API)
|
Çevrimdışı tıklama dönüşümlerini içe aktarma |
| Online dönüşümleri iyileştirme (web için gelişmiş dönüşümler) | WEBPAGE |
ConversionAdjustment
(ENHANCEMENT)
|
Online tıklama dönüşümlerini içe aktarma |
| Telefon araması dönüşümlerini içe aktarma | UPLOAD_CALLS |
ConversionUploadService.
|
Telefon araması dönüşümlerini içe aktarma |
| Mağaza satışı işlemlerini içe aktarma |
STORE_SALES,
STORE_SALES_
|
OfflineUserData
(veya
Data Manager API)
|
Mağaza satışı dönüşümlerini içe aktarma |
| Kaydedilen dönüşümleri geri çekme veya yeniden belirtme |
UPLOAD_CLICKS, WEBPAGE,
SALESFORCE (desteği sonlandırıldı)
|
ConversionAdjustment
(RETRACTION, RESTATEMENT)
|
İçe aktarma işleminden sonra dönüşümleri ayarlama |
| Dönüşümlere özel etiket meta verileri ekleme |
UPLOAD_CLICKS, UPLOAD_CALLS,
WEBPAGE
|
ConversionCustom
|
Özel dönüşüm değişkenleri |
| Teklif hedeflerini, yaşam döngüsü hedeflerini ve değer kurallarını yapılandırma | Hesap, kampanya ve yaşam döngüsü hedefleri |
CustomerConversion,
CampaignConversion,
CustomConversion,
ConversionGoal,
GoalService,
CampaignGoal,
ConversionValue
|
Dönüşüm hedefleri, Yaşam döngüsü hedefleri ve Dönüşüm değeri kuralları |
| İçe aktarma durumunu ve hata teşhislerini izleme |
UPLOAD_CLICKS, WEBPAGE,
UPLOAD_CALLS
|
offline_conversion_upload_,
offline_conversion_upload_
|
Çevrimdışı veri teşhisini izleme |
| Dönüşüm metriklerini sorgulama ve hataları giderme | Tüm dönüşüm türleri |
GoogleAdsService.
(customer, campaign,
conversion_action)
|
Dönüşüm istatistiklerini getirme ve Dönüşüm içe aktarma işlemlerinde sorun giderme |
Uçtan uca dönüşüm yaşam döngüsü
Google Ads API'de eksiksiz bir dönüşüm yönetimi entegrasyonu dört aşamadan oluşur:
- Hesap kurulumunu doğrulama ve dönüşüm işlemleri oluşturma: Geçerli dönüşüm hesabını (
google_ads_conversion_customer) onaylamak, dönüşüm izlemenin etkin olduğunu doğrulamak, kullanıcı rızasını yapılandırmak ve hedefConversionActionTypeveConversionActionCategoryile birConversionActionoluşturmak içinCustomer.conversion_tracking_settingsorgusu yapın. - Dönüşüm etkinliklerini içe aktarma:
partial_failure,trueolarak ayarlanmış şekildeConversionUploadServicekullanarak çevrimdışı tıklama veya telefon araması dönüşümlerini aktarın,ConversionAdjustmentUploadServicekullanarakENHANCEMENTdüzenlemeleriyle web sitesi dönüşümlerini destekleyin veyaOfflineUserDataJobServicekullanarak mağaza satışlarını toplu olarak yükleyin. - Dönüşümleri ayarlama ve optimize etme:
ConversionAdjustmentUploadServicekullanarak kaydedilen dönüşümleri geri çekin veya yeniden belirtin,ConversionCustomVariablemeta verileri ekleyin, dönüşüm değeri kuralları uygulayın ve teklif optimizasyonunu kontrol etmek için işlemleri dönüşüm hedefleri ve yaşam döngüsü hedefleri olarak düzenleyin. - Teşhisleri izleme ve performans raporu oluşturma: Yükleme işleme durumunu ve kısmi hata uyarılarını incelemek için
offline_conversion_upload_client_summaryveoffline_conversion_upload_conversion_action_summarysorgularını kullanın.metrics.conversionsvemetrics.all_conversionsmetriklerini karşılaştırmak içincustomerveyacampaignkaynaklarını (isteğe bağlı olaraksegments.conversion_actionile segmentlere ayrılmış) sorgulayın ya dametrics.all_conversionsve son dönüşüm zaman damgalarını incelemek içinconversion_actionkaynağını sorgulayın.
Hızlı başlangıç: Kurulumu doğrulama, işlem oluşturma ve durumu kontrol etme
Aşağıdaki örneklerde, dönüşüm izlemeyi ilk kullanıma hazırlamak ve izlemek için gereken en yaygın üç sorgu ve değişiklik gösterilmektedir.
1. GAQL ile dönüşüm izleme ayarlarını doğrulama
ConversionAction oluşturmadan veya etkinlik yüklemeden önce, dönüşümleri hangi hesabın yönettiğini (google_ads_conversion_customer), müşteri verileri şartlarının kabul edilip edilmediğini ve hesap düzeyinde gelişmiş dönüşümlerin etkinleştirilip etkinleştirilmediğini (EnhancedConversionsConfig) belirlemek için GoogleAdsService.SearchStream kullanarak customer kaynağını sorgulayın:
SELECT
customer.conversion_tracking_setting.conversion_tracking_id,
customer.conversion_tracking_setting.conversion_tracking_status,
customer.conversion_tracking_setting.cross_account_conversion_tracking_id,
customer.conversion_tracking_setting.google_ads_conversion_customer,
customer.conversion_tracking_setting.accepted_customer_data_terms,
customer.conversion_tracking_setting.enablement_setting,
customer.conversion_tracking_setting.effective_enablement_setting
FROM customer
google_ads_conversion_customer içinde döndürülen customers/{customer_id} kaynak adından {customer_id} değerini çıkarın ve sonraki tüm ConversionActionService ve ConversionUploadService isteklerini bu müşteri kimliğine gönderin. Tam kurulum ve hesaplar arası hiyerarşi ayrıntıları için Başlangıç bölümüne bakın.
2. Dönüşüm işlemi oluşturma
ConversionAction oluşturmak için ConversionActionService.MutateConversionActions kullanın. Aşağıdaki örnekte, özel değer ve yeniden inceleme ayarları içeren bir UPLOAD_CLICKS dönüşüm işlemi oluşturulmaktadır:
Java
private void runExample(GoogleAdsClient googleAdsClient, long customerId) { // Creates a ConversionAction. ConversionAction conversionAction = ConversionAction.newBuilder() // Note that conversion action names must be unique. If a conversion action already // exists with the specified conversion_action_name the create operation will fail with // a ConversionActionError.DUPLICATE_NAME error. .setName("Earth to Mars Cruises Conversion #" + getPrintableDateTime()) .setCategory(ConversionActionCategory.DEFAULT) .setType(ConversionActionType.WEBPAGE) .setStatus(ConversionActionStatus.ENABLED) .setViewThroughLookbackWindowDays(15L) .setValueSettings( ValueSettings.newBuilder() .setDefaultValue(23.41) .setAlwaysUseDefaultValue(true) .build()) .build(); // Creates the operation. ConversionActionOperation operation = ConversionActionOperation.newBuilder().setCreate(conversionAction).build(); try (ConversionActionServiceClient conversionActionServiceClient = googleAdsClient.getLatestVersion().createConversionActionServiceClient()) { MutateConversionActionsResponse response = conversionActionServiceClient.mutateConversionActions( Long.toString(customerId), Collections.singletonList(operation)); System.out.printf("Added %d conversion actions:%n", response.getResultsCount()); for (MutateConversionActionResult result : response.getResultsList()) { System.out.printf( "New conversion action added with resource name: '%s'%n", result.getResourceName()); } } }
C#
public void Run(GoogleAdsClient client, long customerId) { // Get the ConversionActionService. ConversionActionServiceClient conversionActionService = client.GetService(Services.V26.ConversionActionService); // Note that conversion action names must be unique. // If a conversion action already exists with the specified name the create operation // will fail with a ConversionAction.DUPLICATE_NAME error. string ConversionActionName = "Earth to Mars Cruises Conversion #" + ExampleUtilities.GetRandomString(); // Add a conversion action. ConversionAction conversionAction = new ConversionAction() { Name = ConversionActionName, Category = ConversionActionCategory.Default, Type = ConversionActionType.Webpage, Status = ConversionActionStatus.Enabled, ViewThroughLookbackWindowDays = 15, ValueSettings = new ConversionAction.Types.ValueSettings() { DefaultValue = 23.41, AlwaysUseDefaultValue = true } }; // Create the operation. ConversionActionOperation operation = new ConversionActionOperation() { Create = conversionAction }; try { // Create the conversion action. MutateConversionActionsResponse response = conversionActionService.MutateConversionActions(customerId.ToString(), new ConversionActionOperation[] { operation }); // Display the results. foreach (MutateConversionActionResult newConversionAction in response.Results) { Console.WriteLine($"New conversion action with resource name = " + $"'{newConversionAction.ResourceName}' was added."); } } catch (GoogleAdsException e) { Console.WriteLine("Failure:"); Console.WriteLine($"Message: {e.Message}"); Console.WriteLine($"Failure: {e.Failure}"); Console.WriteLine($"Request ID: {e.RequestId}"); throw; } }
PHP
public static function runExample(GoogleAdsClient $googleAdsClient, int $customerId) { // Creates a conversion action. $conversionAction = new ConversionAction( [ // Note that conversion action names must be unique. // If a conversion action already exists with the specified conversion_action_name // the create operation will fail with a ConversionActionError.DUPLICATE_NAME error. 'name' => 'Earth to Mars Cruises Conversion #' . Helper::getPrintableDatetime(), 'category' => ConversionActionCategory::PBDEFAULT, 'type' => ConversionActionType::WEBPAGE, 'status' => ConversionActionStatus::ENABLED, 'view_through_lookback_window_days' => 15, 'value_settings' => new ValueSettings( [ 'default_value' => 23.41, 'always_use_default_value' => true ] ) ] ); // Creates a conversion action operation. $conversionActionOperation = new ConversionActionOperation(); $conversionActionOperation->setCreate($conversionAction); // Issues a mutate request to add the conversion action. $conversionActionServiceClient = $googleAdsClient->getConversionActionServiceClient(); $response = $conversionActionServiceClient->mutateConversionActions( MutateConversionActionsRequest::build($customerId, [$conversionActionOperation]) ); printf("Added %d conversion actions:%s", $response->getResults()->count(), PHP_EOL); foreach ($response->getResults() as $addedConversionAction) { /** * @var ConversionAction $addedConversionAction */ printf( "New conversion action added with resource name: '%s'%s", $addedConversionAction->getResourceName(), PHP_EOL ); } }
Python
def main(client: GoogleAdsClient, customer_id: str) -> None: conversion_action_service: ConversionActionServiceClient = ( client.get_service("ConversionActionService") ) # Create the operation. conversion_action_operation: ConversionActionOperation = client.get_type( "ConversionActionOperation" ) # Create conversion action. conversion_action: ConversionAction = conversion_action_operation.create # Note that conversion action names must be unique. If a conversion action # already exists with the specified conversion_action_name, the create # operation will fail with a ConversionActionError.DUPLICATE_NAME error. conversion_action.name = f"Earth to Mars Cruises Conversion {uuid.uuid4()}" conversion_action.type_ = ( client.enums.ConversionActionTypeEnum.UPLOAD_CLICKS ) conversion_action.category = ( client.enums.ConversionActionCategoryEnum.DEFAULT ) conversion_action.status = client.enums.ConversionActionStatusEnum.ENABLED conversion_action.view_through_lookback_window_days = 15 # Create a value settings object. value_settings: ConversionAction.ValueSettings = ( conversion_action.value_settings ) value_settings.default_value = 15.0 value_settings.always_use_default_value = True # Add the conversion action. conversion_action_response: MutateConversionActionsResponse = ( conversion_action_service.mutate_conversion_actions( customer_id=customer_id, operations=[conversion_action_operation], ) ) print( "Created conversion action " f'"{conversion_action_response.results[0].resource_name}".' )
Ruby
def add_conversion_action(customer_id) # GoogleAdsClient will read a config file from # ENV['HOME']/google_ads_config.rb when called without parameters client = Google::Ads::GoogleAds::GoogleAdsClient.new # Add a conversion action. conversion_action = client.resource.conversion_action do |ca| ca.name = "Earth to Mars Cruises Conversion #{(Time.new.to_f * 100).to_i}" ca.type = :UPLOAD_CLICKS ca.category = :DEFAULT ca.status = :ENABLED ca.view_through_lookback_window_days = 15 # Create a value settings object. ca.value_settings = client.resource.value_settings do |vs| vs.default_value = 15 vs.always_use_default_value = true end end # Create the operation. conversion_action_operation = client.operation.create_resource.conversion_action(conversion_action) # Add the ad group ad. response = client.service.conversion_action.mutate_conversion_actions( customer_id: customer_id, operations: [conversion_action_operation], ) puts "New conversion action with resource name = #{response.results.first.resource_name}." end
Perl
sub add_conversion_action { my ($api_client, $customer_id) = @_; # Note that conversion action names must be unique. # If a conversion action already exists with the specified conversion_action_name, # the create operation fails with error ConversionActionError.DUPLICATE_NAME. my $conversion_action_name = "Earth to Mars Cruises Conversion #" . uniqid(); # Create a conversion action. my $conversion_action = Google::Ads::GoogleAds::V26::Resources::ConversionAction->new({ name => $conversion_action_name, category => DEFAULT, type => WEBPAGE, status => ENABLED, viewThroughLookbackWindowDays => 15, valueSettings => Google::Ads::GoogleAds::V26::Resources::ValueSettings->new({ defaultValue => 23.41, alwaysUseDefaultValue => "true" })}); # Create a conversion action operation. my $conversion_action_operation = Google::Ads::GoogleAds::V26::Services::ConversionActionService::ConversionActionOperation ->new({create => $conversion_action}); # Add the conversion action. my $conversion_actions_response = $api_client->ConversionActionService()->mutate({ customerId => $customer_id, operations => [$conversion_action_operation]}); printf "New conversion action added with resource name: '%s'.\n", $conversion_actions_response->{results}[0]{resourceName}; return 1; }
curl
REST isteği
REST üzerinden aynı ConversionAction öğesini oluşturmak için ConversionActionService.MutateConversionActions adresine bir POST isteği gönderin:
POST https://googleads.googleapis.com/v26/customers/{customer_id}/conversionActions:mutate
{
"operations": [
{
"create": {
"name": "Earth to Mars Cruise Conversion",
"type": "UPLOAD_CLICKS",
"category": "DEFAULT",
"status": "ENABLED",
"primaryForGoal": true,
"countingType": "ONE_PER_CLICK",
"clickThroughLookbackWindowDays": "60",
"valueSettings": {
"defaultValue": 23.41,
"defaultCurrencyCode": "USD",
"alwaysUseDefaultValue": true
}
}
}
]
}
Dönüşüm işleminiz ENABLED olduğunda, dönüşüm kaynağınızın iş akışını kullanarak dönüşüm etkinliklerini veya geliştirmeleri içe aktarın (Dönüşüm etkinliklerini içe aktarma bölümüne bakın).
3. Çevrimdışı dönüşüm yükleme durumunu izleme
Tıklama dönüşümlerini, telefon araması dönüşümlerini veya dönüşüm ayarlamalarını yükledikten sonra, son yüklemelerinizdeki genel iş durumunu, başarı ve bekleme oranlarını ve hata dökümlerini kontrol etmek için offline_conversion_upload_client_summary sorgusunu çalıştırın:
SELECT
offline_conversion_upload_client_summary.client,
offline_conversion_upload_client_summary.status,
offline_conversion_upload_client_summary.total_event_count,
offline_conversion_upload_client_summary.successful_event_count,
offline_conversion_upload_client_summary.success_rate,
offline_conversion_upload_client_summary.pending_event_count,
offline_conversion_upload_client_summary.pending_rate,
offline_conversion_upload_client_summary.last_upload_date_time,
offline_conversion_upload_client_summary.alerts
FROM offline_conversion_upload_client_summary
Dönüşüm işlemi düzeyinde teşhis için offline_conversion_upload_conversion_action_summary sorgusu yapın (Çevrimdışı veri teşhislerini izleme bölümüne bakın) ve belirli hata kodlarını çözmek için Dönüşüm içe aktarma sorunlarını giderme bölümüne bakın.
Yaşam döngüsü aşamasına göre rehber dizini
Yaşam döngüsü aşamasına göre düzenlenmiş dönüşüm yönetimi kılavuzlarının tamamını inceleyin:
1. Hesap kurulumu ve dönüşüm işlemleri
- Dönüşüm işlemi kategorileri: Doğru dönüşüm kaynağını seçin (web sitesi (
WEBPAGE), telefon araması (UPLOAD_CALLS,AD_CALL,WEBSITE_CALL), mobil uygulama (GOOGLE_PLAY_DOWNLOAD,GOOGLE_PLAY_IN_APP_PURCHASE, Firebase,SKAdNetwork), Google Analytics 4 (GOOGLE_ANALYTICS_4_CUSTOM,GOOGLE_ANALYTICS_4_PURCHASE), çevrimdışı (UPLOAD_CLICKS) veya fiziksel mağaza (STORE_SALES)) ve ilgiliConversionActionTypeve API iş akışıyla eşleyin. - Başlangıç: Kullanıcı rızasını yapılandırın,
ConversionTrackingSettingdoğrulayın, hesaplar arası dönüşüm izlemeyi ayarlayın ve istemci kitaplıklarını veya REST'i kullanarak dönüşüm işlemleri oluşturun.
2. Dönüşüm etkinliklerini içe aktarma
- Çevrimdışı tıklama dönüşümlerini içe aktarma: Gerçek dünyadaki işlemleri ölçmek için çevrimdışı dönüşümleri (
GCLID,GBRAID,WBRAID) ve potansiyel müşteriler için gelişmiş dönüşümleri (karma oluşturma işlemi uygulanmış birinci taraf e-posta adresi ve telefon numarası) yükleyin. - Online tıklama dönüşümlerini içe aktarma: Web için gelişmiş dönüşümleri (
ENHANCEMENTayarlama) kullanarak web sitesi dönüşüm etiketlerini e-posta adresi, ad, ev adresi ve telefon numarası gibi birinci taraf kullanıcı verileriyle destekleyin. - Telefon araması dönüşümlerini içe aktarma: Google yönlendirme numaraları veya kendi telefon araması izleme sisteminiz aracılığıyla izlenen telefon aramaları için dönüşüm etkinliklerini yükleyin.
- Mağaza satışı dönüşümlerini içe aktarma:
OfflineUserDataJobServicekullanarak mağaza işlemleri verilerini toplu olarak yükleyin.
3. Dönüşümleri ayarlama ve optimize etme
- İçe aktarma işleminden sonra dönüşümleri ayarlama:
UPLOAD_CLICKS,WEBPAGEveSALESFORCE(desteği sonlandırıldı) dönüşüm işlemleri için iptal edilen siparişleri geri çekin (RETRACTION) veya değiştirilen dönüşüm değerlerini yeniden belirtin (RESTATEMENT). - Dönüşüm değeri kurallarını yönetme: Dönüşüm değerlerini açık artırma anında kitle, cihaz, coğrafi konum veya seyahat planı ölçütlerine göre dinamik olarak ayarlayın.
- Özelleştirilebilen dönüşüm değişkenleri: Segmentlere ayrılmış raporlama için tıklama, telefon araması ve web dönüşümlerine özel anahtar/değer çifti etiketleri (
ConversionCustomVariable) tanımlayın ve ekleyin. - Dönüşüm hedefleri: Dönüşüm işlemlerini
category(ConversionActionCategory) veorigin(ConversionOrigin) alanlarına göre gruplandırın ve müşteri hedeflerini, kampanya ve özel hedefleri ve müşteri yaşam döngüsü hedeflerini (yeni müşteri edinme, müşteri elde tutma ve bağlılık elde tutma) yapılandırın. Ayrıca, artımlı yeni müşteri dönüşüm değerleri içinOPTIMIZE_FOR_NEW_CUSTOMERSönerileri alıp uygulayabilirsiniz.
4. İzleme, raporlama ve sorun giderme
- Çevrimdışı veri teşhislerini izleme: Başarı oranlarını, bekleyen etkinlikleri ve yükleme uyarılarını izlemek için hesap düzeyinde (
offline_conversion_upload_client_summary) ve dönüşüm işlemi düzeyinde (offline_conversion_upload_conversion_action_summary) çevrimdışı veri teşhislerini sorgulayın. - Dönüşüm istatistiklerini getirme: GAQL'de dönüşüm performansı metriklerini sorgulayın ve Google Ads kullanıcı arayüzü sütunlarını Google Ads API alanlarıyla eşleyin.
- Dönüşüm içe aktarma sorunlarını giderme: Yaygın
ConversionUploadErrorveConversionAdjustmentUploadErrorkodlarını teşhis edip çözün.