অবস্থান টার্গেটিং

এই নির্দেশিকায় লোকেশন টার্গেটিং সম্পর্কে বর্ণনা করা হয়েছে এবং কীভাবে আপনি গুগল অ্যাডস এপিআই (Google Ads API) ব্যবহার করে আপনার ক্যাম্পেইনগুলির জন্য লোকেশন টার্গেটিং যোগ, পুনরুদ্ধার এবং আপডেট করতে পারেন, তা বলা হয়েছে।

টার্গেটিং সীমা সম্পর্কে তথ্যের জন্য, 'Google Ads অ্যাকাউন্ট সীমা সম্পর্কে' অংশের 'টার্গেটিং সীমা' বিভাগটি দেখুন।

জিও-টার্গেটিং কেন গুরুত্বপূর্ণ?

লোকেশন টার্গেটিং আপনাকে একটি নির্দিষ্ট ভৌগোলিক অঞ্চলের ব্যবহারকারীদের কাছে বিজ্ঞাপন পরিবেশন করতে দেয়। উদাহরণস্বরূপ, ধরুন আপনি একটি সুপারমার্কেট চেইনের জন্য বিজ্ঞাপন দিচ্ছেন। লোকেশন টার্গেটিং ছাড়া, আপনার বিজ্ঞাপনগুলো বিশ্বজুড়ে সমস্ত অঞ্চলে দেখানো হবে এবং এমন অঞ্চলের ব্যবহারকারীরাও আপনার বিজ্ঞাপনে ক্লিক করতে পারেন যেখানে আপনার কোনো সুপারমার্কেট নেই। এতে খরচ বাড়ে, কিন্তু বিনিয়োগ থেকে কোনো লাভের সম্ভাবনা থাকে না। লোকেশন টার্গেটিং-এর মাধ্যমে, আপনার ক্যাম্পেইনগুলো শুধুমাত্র সেইসব অঞ্চলে বিজ্ঞাপন দেখায় যেখানে আপনার সুপারমার্কেট খোলা আছে। এই পদ্ধতিটি আপনাকে স্থানীয়ভাবে সুপারমার্কেট অনুসন্ধানকারী গ্রাহকদের সরাসরি টার্গেট করার সুযোগও দেয়।

গুগল অ্যাডস এপিআই আপনাকে দেশ, অঞ্চল বা কোনো নির্দিষ্ট ভৌগোলিক বিন্দুর আশেপাশের এলাকা অনুযায়ী আপনার বিজ্ঞাপন টার্গেট করার সুযোগ দেয়।

ভৌগোলিক অবস্থান অনুযায়ী বিজ্ঞাপন টার্গেট করা সম্পর্কে আরও জানুন।

একটি অঞ্চলের জন্য ভূ-লক্ষ্য প্রচারাভিযান

আপনি যেকোনো ভৌগোলিক অঞ্চলে ক্যাম্পেইন টার্গেট করতে পারেন, যেগুলোর জন্য গুগল অ্যাডস লোকেশন টার্গেটিং সমর্থন করে, যেমন একটি দেশ, একটি রাজ্য, একটি শহর বা একটি পোস্টাল অঞ্চল। প্রতিটি টার্গেটযোগ্য অবস্থান একটি ক্রাইটেরিয়ন আইডি দ্বারা অনন্যভাবে চিহ্নিত করা হয়। আপনি GeoTargetConstantService.SuggestGeoTargetConstants ব্যবহার করে একটি ক্রাইটেরিয়ন আইডি খুঁজে নিতে পারেন। প্রতিটি GeoTargetConstant এর resource_name গঠন হলো geoTargetConstants/{Criterion ID} । উদাহরণস্বরূপ, নিউ ইয়র্ক রাজ্যের resource_name মান হলো geoTargetConstants/21167

আপনি CampaignCriterionService ব্যবহার করে আপনার ক্যাম্পেইনে জিও টার্গেট যোগ করতে পারেন। নিচের কোড স্নিপেটটিতে দেখানো হয়েছে কীভাবে একটি ক্রাইটেরিয়ন আইডি দিয়ে আপনার ক্যাম্পেইনকে টার্গেট করতে হয়।

জাভা

private static CampaignCriterion buildLocationIdCriterion(
    long locationId, String campaignResourceName) {
  Builder criterionBuilder = CampaignCriterion.newBuilder().setCampaign(campaignResourceName);

  criterionBuilder
      .getLocationBuilder()
      .setGeoTargetConstant(ResourceNames.geoTargetConstant(locationId));

  return criterionBuilder.build();
}
      

সি#

private CampaignCriterion buildLocationCriterion(long locationId,
    string campaignResourceName)
{
    GeoTargetConstantName location = new GeoTargetConstantName(locationId.ToString());
    return new CampaignCriterion()
    {
        Campaign = campaignResourceName,
        Location = new LocationInfo()
        {
            GeoTargetConstant = location.ToString()
        }
    };
}
      

পিএইচপি

private static function createLocationCampaignCriterionOperation(
    int $locationId,
    string $campaignResourceName
) {
    // Constructs a campaign criterion for the specified campaign ID using the specified
    // location ID.
    $campaignCriterion = new CampaignCriterion([
        // Creates a location using the specified location ID.
        'location' => new LocationInfo([
            // Besides using location ID, you can also search by location names using
            // GeoTargetConstantServiceClient::suggestGeoTargetConstants() and directly
            // apply GeoTargetConstant::$resourceName here. An example can be found
            // in GetGeoTargetConstantByNames.php.
            'geo_target_constant' => ResourceNames::forGeoTargetConstant($locationId)
        ]),
        'campaign' => $campaignResourceName
    ]);

    return new CampaignCriterionOperation(['create' => $campaignCriterion]);
}
      

পাইথন

def create_location_op(
    client: GoogleAdsClient,
    customer_id: str,
    campaign_id: str,
    location_id: str,
) -> CampaignCriterionOperation:
    campaign_service: CampaignServiceClient = client.get_service(
        "CampaignService"
    )
    geo_target_constant_service: GeoTargetConstantServiceClient = (
        client.get_service("GeoTargetConstantService")
    )

    # Create the campaign criterion.
    campaign_criterion_operation: CampaignCriterionOperation = client.get_type(
        "CampaignCriterionOperation"
    )
    campaign_criterion: CampaignCriterion = campaign_criterion_operation.create
    campaign_criterion.campaign = campaign_service.campaign_path(
        customer_id, campaign_id
    )

    # Besides using location_id, you can also search by location names from
    # GeoTargetConstantService.suggest_geo_target_constants() and directly
    # apply GeoTargetConstant.resource_name here. An example can be found
    # in get_geo_target_constant_by_names.py.
    campaign_criterion.location.geo_target_constant = (
        geo_target_constant_service.geo_target_constant_path(location_id)
    )

    return campaign_criterion_operation
      

রুবি

def create_location(client, customer_id, campaign_id, location_id)
  client.operation.create_resource.campaign_criterion do |criterion|
    criterion.campaign = client.path.campaign(customer_id, campaign_id)

    criterion.location = client.resource.location_info do  |li|
      # Besides using location_id, you can also search by location names from
      # GeoTargetConstantService.suggest_geo_target_constants() and directly
      # apply GeoTargetConstant.resource_name here. An example can be found
      # in get_geo_target_constant_by_names.rb.
      li.geo_target_constant = client.path.geo_target_constant(location_id)
    end
  end
end
      

পার্ল

sub create_location_campaign_criterion_operation {
  my ($location_id, $campaign_resource_name) = @_;

  # Construct a campaign criterion for the specified campaign using the
  # specified location ID.
  my $campaign_criterion =
    Google::Ads::GoogleAds::V24::Resources::CampaignCriterion->new({
      # Create a location using the specified location ID.
      location => Google::Ads::GoogleAds::V24::Common::LocationInfo->new({
          # Besides using location ID, you can also search by location names
          # using GeoTargetConstantService::suggest() and directly apply
          # GeoTargetConstant->{resourceName} here. An example can be found
          # in get_geo_target_constants_by_names.pl.
          geoTargetConstant =>
            Google::Ads::GoogleAds::V24::Utils::ResourceNames::geo_target_constant(
            $location_id)}
      ),
      campaign => $campaign_resource_name
    });

  return
    Google::Ads::GoogleAds::V24::Services::CampaignCriterionService::CampaignCriterionOperation
    ->new({
      create => $campaign_criterion
    });
}
      

কার্ল

বিভিন্ন কারণে গুগল মাঝেমধ্যে কিছু লোকেশন ক্রাইটেরিয়া বন্ধ করে দিতে পারে: যেমন, লোকেশনটিকে ছোট বা বড় এলাকায় পুনর্গঠন, ভূ-রাজনৈতিক পরিবর্তন, ইত্যাদি। কোনো লোকেশন ENABLED নাকি REMOVAL_PLANNED আছে) তা জানতে একটি GeoTargetConstant অবজেক্টের status ফিল্ডটি দেখুন।

অবস্থানের নাম দিয়ে অনুসন্ধান করুন

আপনি GeoTargetConstantService.SuggestGeoTargetConstants ব্যবহার করে অবস্থানের নাম দিয়েও ক্রাইটেরিয়ন আইডি খুঁজে নিতে পারেন। নিচের কোড উদাহরণটিতে দেখানো হয়েছে কীভাবে অবস্থানের নাম দিয়ে একটি লোকেশন ক্রাইটেরিয়ন আইডি খুঁজে বের করতে হয়।

জাভা

private void runExample(GoogleAdsClient googleAdsClient) {
  try (GeoTargetConstantServiceClient geoTargetClient =
      googleAdsClient.getLatestVersion().createGeoTargetConstantServiceClient()) {

    SuggestGeoTargetConstantsRequest.Builder requestBuilder =
        SuggestGeoTargetConstantsRequest.newBuilder();

    // Locale is using ISO 639-1 format. If an invalid locale is given, 'en' is used by default.
    requestBuilder.setLocale("en");

    // A list of country codes can be referenced here:
    // https://developers.google.com/google-ads/api/reference/data/geotargets
    requestBuilder.setCountryCode("FR");

    requestBuilder
        .getLocationNamesBuilder()
        .addAllNames(ImmutableList.of("Paris", "Quebec", "Spain", "Deutschland"));

    SuggestGeoTargetConstantsResponse response =
        geoTargetClient.suggestGeoTargetConstants(requestBuilder.build());

    for (GeoTargetConstantSuggestion suggestion :
        response.getGeoTargetConstantSuggestionsList()) {
      System.out.printf(
          "%s (%s,%s,%s,%s) is found in locale (%s) with reach (%d) for search term (%s).%n",
          suggestion.getGeoTargetConstant().getResourceName(),
          suggestion.getGeoTargetConstant().getName(),
          suggestion.getGeoTargetConstant().getCountryCode(),
          suggestion.getGeoTargetConstant().getTargetType(),
          suggestion.getGeoTargetConstant().getStatus().name(),
          suggestion.getLocale(),
          suggestion.getReach(),
          suggestion.getSearchTerm());
    }
  }
}
      

সি#

public void Run(GoogleAdsClient client)
{
    // Get the GeoTargetConstantServiceClient.
    GeoTargetConstantServiceClient geoService =
        client.GetService(Services.V24.GeoTargetConstantService);

    // Locale is using ISO 639-1 format. If an invalid locale is given,
    // 'en' is used by default.
    string locale = "en";

    // A list of country codes can be referenced here:
    // https://developers.google.com/google-ads/api/reference/data/geotargets
    string countryCode = "FR";

    string[] locations = { "Paris", "Quebec", "Spain", "Deutschland" };

    SuggestGeoTargetConstantsRequest request = new SuggestGeoTargetConstantsRequest()
    {
        Locale = locale,
        CountryCode = countryCode,
        LocationNames = new SuggestGeoTargetConstantsRequest.Types.LocationNames()
    };

    request.LocationNames.Names.AddRange(locations);

    try
    {
        SuggestGeoTargetConstantsResponse response =
            geoService.SuggestGeoTargetConstants(request);

        foreach (GeoTargetConstantSuggestion suggestion
            in response.GeoTargetConstantSuggestions)
        {
            Console.WriteLine(
                $"{suggestion.GeoTargetConstant.ResourceName} " +
                $"({suggestion.GeoTargetConstant.Name}, " +
                $"{suggestion.GeoTargetConstant.CountryCode}, " +
                $"{suggestion.GeoTargetConstant.TargetType}, " +
                $"{suggestion.GeoTargetConstant.Status}) is found in locale " +
                $"({suggestion.Locale}) with reach ({suggestion.Reach}) " +
                $"for search term ({suggestion.SearchTerm}).");
        }
    }
    catch (GoogleAdsException e)
    {
        Console.WriteLine("Failure:");
        Console.WriteLine($"Message: {e.Message}");
        Console.WriteLine($"Failure: {e.Failure}");
        Console.WriteLine($"Request ID: {e.RequestId}");
        throw;
    }
}
      

পিএইচপি

public static function runExample(
    GoogleAdsClient $googleAdsClient,
    array $locationNames,
    string $locale,
    string $countryCode
) {
    $geoTargetConstantServiceClient = $googleAdsClient->getGeoTargetConstantServiceClient();

    $response = $geoTargetConstantServiceClient->suggestGeoTargetConstants(
        new SuggestGeoTargetConstantsRequest([
            'locale' => $locale,
            'country_code' => $countryCode,
            'location_names' => new LocationNames(['names' => $locationNames])
        ])
    );

    // Iterates over all geo target constant suggestion objects and prints the requested field
    // values for each one.
    foreach ($response->getGeoTargetConstantSuggestions() as $geoTargetConstantSuggestion) {
        /** @var GeoTargetConstantSuggestion $geoTargetConstantSuggestion */
        printf(
            "Found '%s' ('%s','%s','%s',%s) in locale '%s' with reach %d"
            . " for the search term '%s'.%s",
            $geoTargetConstantSuggestion->getGeoTargetConstant()->getResourceName(),
            $geoTargetConstantSuggestion->getGeoTargetConstant()->getName(),
            $geoTargetConstantSuggestion->getGeoTargetConstant()->getCountryCode(),
            $geoTargetConstantSuggestion->getGeoTargetConstant()->getTargetType(),
            GeoTargetConstantStatus::name(
                $geoTargetConstantSuggestion->getGeoTargetConstant()->getStatus()
            ),
            $geoTargetConstantSuggestion->getLocale(),
            $geoTargetConstantSuggestion->getReach(),
            $geoTargetConstantSuggestion->getSearchTerm(),
            PHP_EOL
        );
    }
}
      

পাইথন

def main(client: GoogleAdsClient) -> None:
    gtc_service: GeoTargetConstantServiceClient = client.get_service(
        "GeoTargetConstantService"
    )

    gtc_request: SuggestGeoTargetConstantsRequest = client.get_type(
        "SuggestGeoTargetConstantsRequest"
    )
    gtc_request.locale = LOCALE
    gtc_request.country_code = COUNTRY_CODE

    # The location names to get suggested geo target constants.
    # Type hint for gtc_request.location_names.names is not straightforward
    # as it's part of a complex protobuf object.
    gtc_request.location_names.names.extend(
        ["Paris", "Quebec", "Spain", "Deutschland"]
    )

    results: SuggestGeoTargetConstantsResponse = (
        gtc_service.suggest_geo_target_constants(gtc_request)
    )

    suggestion: GeoTargetConstantSuggestion
    for suggestion in results.geo_target_constant_suggestions:
        geo_target_constant: GeoTargetConstant = suggestion.geo_target_constant
        print(
            f"{geo_target_constant.resource_name} "
            f"({geo_target_constant.name}, "
            f"{geo_target_constant.country_code}, "
            f"{geo_target_constant.target_type}, "
            f"{geo_target_constant.status.name}) "
            f"is found in locale ({suggestion.locale}) "
            f"with reach ({suggestion.reach}) "
            f"from search term ({suggestion.search_term})."
        )
      

রুবি

def get_geo_target_constants_by_names
  # GoogleAdsClient will read a config file from
  # ENV['HOME']/google_ads_config.rb when called without parameters
  client = Google::Ads::GoogleAds::GoogleAdsClient.new

  gtc_service = client.service.geo_target_constant

  location_names = client.resource.location_names do |ln|
    ['Paris', 'Quebec', 'Spain', 'Deutschland'].each do |name|
      ln.names << name
    end
  end

  # Locale is using ISO 639-1 format. If an invalid locale is given,
  # 'en' is used by default.
  locale = 'en'

  # A list of country codes can be referenced here:
  # https://developers.google.com/google-ads/api/reference/data/geotargets
  country_code = 'FR'

  response = gtc_service.suggest_geo_target_constants(
    locale: locale,
    country_code: country_code,
    location_names: location_names
  )

  response.geo_target_constant_suggestions.each do |suggestion|
    puts sprintf("%s (%s,%s,%s,%s) is found in locale (%s) with reach (%d)" \
        " from search term (%s).", suggestion.geo_target_constant.resource_name,
        suggestion.geo_target_constant.name,
        suggestion.geo_target_constant.country_code,
        suggestion.geo_target_constant.target_type,
        suggestion.geo_target_constant.status,
        suggestion.locale,
        suggestion.reach,
        suggestion.search_term)
  end
end
      

পার্ল

sub get_geo_target_constants_by_names {
  my ($api_client, $location_names, $locale, $country_code) = @_;

  my $suggest_response = $api_client->GeoTargetConstantService()->suggest({
      locale        => $locale,
      countryCode   => $country_code,
      locationNames =>
        Google::Ads::GoogleAds::V24::Services::GeoTargetConstantService::LocationNames
        ->new({
          names => $location_names
        })});

  # Iterate over all geo target constant suggestion objects and print the requested
  # field values for each one.
  foreach my $geo_target_constant_suggestion (
    @{$suggest_response->{geoTargetConstantSuggestions}})
  {
    printf "Found '%s' ('%s','%s','%s',%s) in locale '%s' with reach %d" .
      " for the search term '%s'.\n",
      $geo_target_constant_suggestion->{geoTargetConstant}{resourceName},
      $geo_target_constant_suggestion->{geoTargetConstant}{name},
      $geo_target_constant_suggestion->{geoTargetConstant}{countryCode},
      $geo_target_constant_suggestion->{geoTargetConstant}{targetType},
      $geo_target_constant_suggestion->{geoTargetConstant}{status},
      $geo_target_constant_suggestion->{locale},
      $geo_target_constant_suggestion->{reach},
      $geo_target_constant_suggestion->{searchTerm};
  }

  return 1;
}
      

কার্ল

কোনো অবস্থানের নৈকট্যের জন্য প্রচারণা লক্ষ্য নির্ধারণ করুন।

কখনও কখনও আপনি কোনো শহর বা দেশের চেয়েও আরও সুনির্দিষ্টভাবে টার্গেট করতে চাইতে পারেন। উদাহরণস্বরূপ, আপনি আপনার দোকানের অবস্থান থেকে ১০ কিলোমিটারের মধ্যে আপনার সুপারমার্কেটগুলোর বিজ্ঞাপন দিতে চাইতে পারেন। এই ধরনের ক্ষেত্রে, আপনি প্রক্সিমিটি টার্গেটিং ব্যবহার করতে পারেন। একটি প্রক্সিমিটি টার্গেট তৈরি করার কোডটি একটি লোকেশন টার্গেট যোগ করার মতোই, তবে এক্ষেত্রে আপনাকে LocationInfo অবজেক্টের পরিবর্তে একটি ProximityInfo অবজেক্ট তৈরি করতে হবে।

জাভা

private static CampaignCriterion buildProximityLocation(String campaignResourceName) {
  Builder builder = CampaignCriterion.newBuilder().setCampaign(campaignResourceName);

  ProximityInfo.Builder proximityBuilder = builder.getProximityBuilder();
  proximityBuilder.setRadius(10.0).setRadiusUnits(ProximityRadiusUnits.MILES);

  AddressInfo.Builder addressBuilder = proximityBuilder.getAddressBuilder();
  addressBuilder
      .setStreetAddress("38 avenue de l'Opéra")
      .setCityName("Paris")
      .setPostalCode("75002")
      .setCountryCode("FR");

  return builder.build();
}
      

সি#

private CampaignCriterion buildProximityCriterion(string campaignResourceName)
{
    ProximityInfo proximity = new ProximityInfo()
    {
        Address = new AddressInfo()
        {
            StreetAddress = "38 avenue de l'Opéra",
            CityName = "Paris",
            PostalCode = "75002",
            CountryCode = "FR"
        },
        Radius = 10d,
        // Default is kilometers.
        RadiusUnits = ProximityRadiusUnits.Miles
    };

    return new CampaignCriterion()
    {
        Campaign = campaignResourceName,
        Proximity = proximity
    };
}
      

পিএইচপি

private static function createProximityCampaignCriterionOperation(string $campaignResourceName)
{
    // Constructs a campaign criterion as a proximity.
    $campaignCriterion = new CampaignCriterion([
        'proximity' => new ProximityInfo([
            'address' => new AddressInfo([
                'street_address' => '38 avenue de l\'Opéra',
                'city_name' => 'Paris',
                'postal_code' => '75002',
                'country_code' => 'FR',
            ]),
            'radius' => 10.0,
            // Default is kilometers.
            'radius_units' => ProximityRadiusUnits::MILES
        ]),
        'campaign' => $campaignResourceName
    ]);

    return new CampaignCriterionOperation(['create' => $campaignCriterion]);
}
      

পাইথন

def create_proximity_op(
    client: GoogleAdsClient, customer_id: str, campaign_id: str
) -> CampaignCriterionOperation:
    campaign_service: CampaignServiceClient = client.get_service(
        "CampaignService"
    )

    # Create the campaign criterion.
    campaign_criterion_operation: CampaignCriterionOperation = client.get_type(
        "CampaignCriterionOperation"
    )
    campaign_criterion: CampaignCriterion = campaign_criterion_operation.create
    campaign_criterion.campaign = campaign_service.campaign_path(
        customer_id, campaign_id
    )
    campaign_criterion.proximity.address.street_address = "38 avenue de l'Opera"
    campaign_criterion.proximity.address.city_name = "Paris"
    campaign_criterion.proximity.address.postal_code = "75002"
    campaign_criterion.proximity.address.country_code = "FR"
    campaign_criterion.proximity.radius = 10
    # Default is kilometers.
    campaign_criterion.proximity.radius_units = (
        client.enums.ProximityRadiusUnitsEnum.MILES
    )

    return campaign_criterion_operation
      

রুবি

def create_proximity(client, customer_id, campaign_id)
  client.operation.create_resource.campaign_criterion do |criterion|
    criterion.campaign = client.path.campaign(customer_id, campaign_id)

    criterion.proximity = client.resource.proximity_info do |proximity|
      proximity.address = client.resource.address_info do |address|
        address.street_address = "38 avenue de l'Opéra"
        address.city_name = "Paris"
        address.postal_code = "75002"
        address.country_code = "FR"
      end

      proximity.radius = 10
      proximity.radius_units = :MILES
    end
  end
end
      

পার্ল

sub create_proximity_campaign_criterion_operation {
  my ($campaign_resource_name) = @_;

  # Construct a campaign criterion as a proximity.
  my $campaign_criterion =
    Google::Ads::GoogleAds::V24::Resources::CampaignCriterion->new({
      proximity => Google::Ads::GoogleAds::V24::Common::ProximityInfo->new({
          address => Google::Ads::GoogleAds::V24::Common::AddressInfo->new({
              streetAddress => "38 avenue de l'Opéra",
              cityName      => "cityName",
              postalCode    => "75002",
              countryCode   => "FR"
            }
          ),
          radius => 10.0,
          # Default is kilometers.
          radiusUnits => MILES
        }
      ),
      campaign => $campaign_resource_name
    });

  return
    Google::Ads::GoogleAds::V24::Services::CampaignCriterionService::CampaignCriterionOperation
    ->new({
      create => $campaign_criterion
    });
}
      

কার্ল

ভূ-লক্ষ্যগুলি পুনরুদ্ধার করুন

আপনি GoogleAdsService.SearchStream ব্যবহার করে একটি ক্যাম্পেইনের জিও টার্গেটগুলো পেতে পারেন। আপনি WHERE ক্লজে আপনার ফলাফল ফিল্টার করতে পারেন।

SELECT
  campaign_criterion.campaign,
  campaign_criterion.location.geo_target_constant,
  campaign_criterion.proximity.geo_point.longitude_in_micro_degrees,
  campaign_criterion.proximity.geo_point.latitude_in_micro_degrees,
  campaign_criterion.proximity.radius,
  campaign_criterion.negative
FROM campaign_criterion
WHERE
  campaign_criterion.campaign = 'customers/{customer_id}/campaigns/{campaign_id}'
  AND campaign_criterion.type IN (LOCATION, PROXIMITY)

ভূ-লক্ষ্য আপডেট করুন

একটি ক্যাম্পেইনের জন্য লোকেশন টার্গেট আপডেট করতে, আপনাকে বিদ্যমান জিও টার্গেটগুলোর তালিকা সংগ্রহ করে নতুন টার্গেটগুলোর তালিকার সাথে তুলনা করতে হবে। এরপর, আপনার অপ্রয়োজনীয় টার্গেটগুলো মুছে ফেলার জন্য remove অপারেশন এবং প্রয়োজনীয় (কিন্তু বিদ্যমান ক্যাম্পেইনে অনুপস্থিত) নতুন জিও টার্গেটগুলো যোগ করার জন্য create অপারেশন ব্যবহার করতে পারেন।

ভৌগোলিক লক্ষ্যবস্তু বাদ দিন

আপনি LocationInfo বাদ দিতে পারেন, কিন্তু ProximityInfo বাদ দিতে পারবেন না। এই বৈশিষ্ট্যটি সবচেয়ে বেশি উপযোগী যদি আপনি একটি অঞ্চলকে টার্গেট করতে চান, কিন্তু একটি উপ-অঞ্চলকে বাদ দিতে চান (উদাহরণস্বরূপ, নিউ ইয়র্ক সিটি ছাড়া সমগ্র মার্কিন যুক্তরাষ্ট্রকে টার্গেট করতে)। একটি অঞ্চল বাদ দিতে, CampaignCriterion এর negative ফিল্ডটিকে ' true সেট করুন।

একাধিক ভৌগোলিক অঞ্চলকে লক্ষ্য করুন

আপনি যদি LocationGroupInfo ব্যবহার করেন, তাহলে একটি ক্যাম্পেইনকে একাধিক ভৌগোলিক অঞ্চলকে টার্গেট করার জন্য সক্ষম করতে পারেন। একটি অঞ্চল ক্যাম্পেইনের লোকেশন এক্সটেনশন দ্বারা সংজ্ঞায়িত অবস্থানগুলোকে কেন্দ্র করে গঠিত হয়।

LocationGroupInfo তে সংজ্ঞায়িত ব্যাসার্ধ প্রতিটি অবস্থানের চারপাশে একটি বৃত্তাকার অঞ্চল নির্ধারণ করে এবং এটি একটি radius অবজেক্ট, দৈর্ঘ্য এবং radius_units নিয়ে গঠিত, যা LocationGroupRadiusUnitsEnum মাধ্যমে মিটার বা মাইল হতে পারে।

একটি LocationGroupInfo এর অন্তর্ভুক্ত অবস্থানগুলিকে geo_target_constant ফিল্ডে নির্ধারিত জিওটার্গেটিং ক্রাইটেরিয়ন আইডি-র একটি তালিকা দ্বারা ফিল্টার করা যায়। যদি এটি সংজ্ঞায়িত করা থাকে, তবে প্রদত্ত ক্রাইটেরিয়ন আইডি-গুলির বাইরে অবস্থিত কোনো অবস্থানকে টার্গেট করা হবে না।

GeoTargetTypeSetting সহ উন্নত অবস্থান বিকল্প

টার্গেট বা বাদ দেওয়ার জন্য লোকেশন নির্দিষ্ট করার পাশাপাশি, আপনি অ্যাডভান্সড লোকেশন অপশন ব্যবহার করে গুগল অ্যাডস কীভাবে ব্যবহারকারীদের সেই লোকেশনগুলোর সাথে মেলাবে, তা আরও পরিমার্জন করতে পারেন। এই সেটিংসগুলো Campaign.GeoTargetTypeSetting এর মাধ্যমে পরিচালনা করা হয়।

এই সেটিংটিতে দুটি ক্ষেত্র রয়েছে:

  • positive_geo_target_type : আপনার টার্গেট করা লোকেশনগুলোর জন্য ব্যবহারকারীদের কীভাবে মেলানো হবে তা নির্ধারণ করে।
  • negative_geo_target_type : আপনার বাদ দেওয়া অবস্থানগুলির জন্য ব্যবহারকারীদের কীভাবে মেলানো হবে তা নির্ধারণ করে।

পজিটিভ টার্গেটিং সেটিংস ( positive_geo_target_type )

PositiveGeoTargetTypeEnum থেকে মান ব্যবহার করে, আপনি আপনার পজিটিভ লোকেশন টার্গেটিং-এর জন্য নিম্নলিখিত বিকল্পগুলি থেকে বেছে নিতে পারেন:

  1. PRESENCE_OR_INTEREST (প্রস্তাবিত ডিফল্ট) :

    • এমন সব মানুষের কাছে পৌঁছায় যারা আপনার নির্ধারিত স্থানগুলোতে থাকার সম্ভাবনা রাখে বা নিয়মিত সেখানে যায়, এবং সেইসাথে যারা আপনার নির্ধারিত স্থানগুলোর প্রতি আগ্রহ দেখিয়েছে।
    • অনুসন্ধানের শব্দ, পূর্ববর্তী পরিদর্শন, বা অবস্থান-সম্পর্কিত বিষয়বস্তু গ্রহণের মাধ্যমে আগ্রহের ইঙ্গিত পাওয়া যেতে পারে।
    • এই বিকল্পটি সর্বাধিক নাগাল প্রদান করে।
  2. PRESENCE :

    • শুধুমাত্র সেইসব ব্যক্তিদের কাছেই পৌঁছায়, যারা আপনার নির্ধারিত স্থানগুলোতে সশরীরে উপস্থিত থাকার বা নিয়মিত যাতায়াত করার সম্ভাবনা রাখে।
    • এটি আরও বেশি সীমাবদ্ধকারী ও কার্যকর, যদি আপনার পরিষেবা বা পণ্য কোনো একটি এলাকায় শারীরিকভাবে উপস্থিত ব্যক্তিদের মধ্যেই কঠোরভাবে সীমাবদ্ধ থাকে।

দ্রষ্টব্য: SEARCH_INTEREST মতো অন্যান্য মানগুলি অপ্রচলিত এবং বেশিরভাগ ক্যাম্পেইন প্রকারের জন্য আর সেট করা যায় না।

নেতিবাচক টার্গেটিং সেটিংস ( negative_geo_target_type )

যেসব স্থান আপনি বাদ দিতে চান, সেগুলোর জন্য NegativeGeoTargetTypeEnum ব্যবহার করুন:

  1. PRESENCE (প্রস্তাবিত ডিফল্ট) :
    • আপনার বাদ দেওয়া স্থানগুলিতে শারীরিকভাবে উপস্থিত থাকার সম্ভাবনা রয়েছে এমন ব্যক্তিদের বাদ দেওয়া হয়েছে।
    • বাদ দেওয়া এলাকার বাইরের লোকেরা, এমনকি তারা আগ্রহী হলেও, আপনার বিজ্ঞাপন দেখতে পারেন, যদি তা আপনার ইতিবাচক টার্গেটিংয়ের সাথে মেলে।

দ্রষ্টব্য: বেশিরভাগ ক্যাম্পেইন টাইপে নেগেটিভ জিওটার্গেটিং-এর জন্য PRESENCE_OR_INTEREST ভ্যালুটি সাধারণত সমর্থিত নয়।

উন্নত অবস্থান বিকল্পগুলি পরিচালনা করুন

আপনি Campaign.geo_target_type_setting অবজেক্টটি আপডেট করার মাধ্যমে এই সেটিংসগুলো নিয়ন্ত্রণ করতে পারেন।

উদাহরণ: শুধুমাত্র PRESENCE ভিত্তিতে টার্গেট করার জন্য একটি ক্যাম্পেইন সেট করুন।

positive_geo_target_type পরিবর্তন করার জন্য আপনি কীভাবে একটি API কল গঠন করতে পারেন, তার একটি ধারণামূলক উদাহরণ এখানে দেওয়া হলো। ক্লায়েন্ট লাইব্রেরির ভাষার উপর ভিত্তি করে সঠিক কোডটি ভিন্ন হবে।

// Conceptual structure for a Campaign update operation
operations {
  update {
    resource_name: "customers/{customer_id}/campaigns/{campaign_id}"
    geo_target_type_setting {
      positive_geo_target_type: PRESENCE
      // negative_geo_target_type remains at its default PRESENCE if not specified
    }
  }
  update_mask {
    paths: "geo_target_type_setting.positive_geo_target_type"
  }
}

বর্তমান সেটিংস পেতে, আপনার GoogleAdsService সার্চ কোয়েরিতে campaign.geo_target_type_setting.positive_geo_target_type এবং campaign.geo_target_type_setting.negative_geo_target_type অন্তর্ভুক্ত করুন।

এই সেটিংসগুলো কনফিগার করার মাধ্যমে, আপনার নির্দিষ্ট করা ভৌগোলিক অবস্থানগুলোর সাথে সম্পর্কের ভিত্তিতে কারা আপনার বিজ্ঞাপন দেখবে তার উপর আপনি আরও সূক্ষ্ম নিয়ন্ত্রণ লাভ করেন, যা আপনার ব্যবসায়িক লক্ষ্যগুলোর সাথে আরও নিবিড়ভাবে সামঞ্জস্যপূর্ণ হয়।

সর্বোত্তম অনুশীলন

  • আপনার পণ্য বা পরিষেবা যদি কোনো নির্দিষ্ট স্থানে শারীরিকভাবে উপস্থিত ব্যক্তিদের জন্য কঠোরভাবে সীমাবদ্ধ থাকে, তাহলে PRESENCE নির্বাচন করুন। উদাহরণস্বরূপ, ধরুন ব্যবহারকারীদের দোকানে উপস্থিত থাকা বা স্থানীয় ডেলিভারির প্রয়োজন।
  • আপনার পণ্য বা পরিষেবা যদি কোনো নির্দিষ্ট স্থানে শারীরিকভাবে উপস্থিত না থেকেও সেই স্থানের প্রতি আগ্রহী ব্যক্তিদের জন্য উপকারী হতে পারে, তাহলে PRESENCE_OR_INTEREST বেছে নিন। উদাহরণস্বরূপ, ছুটি কাটানোর পরিকল্পনা করছেন এমন একজন ব্যবহারকারী তার গন্তব্য শহরের হোটেলগুলোতে আগ্রহী হতে পারেন।
  • আপনার প্রচারের পরিধি আরও সুনির্দিষ্ট করতে নেগেটিভ লোকেশন টার্গেটিং ব্যবহার করুন। আপনি যদি PRESENCE_OR_INTEREST ব্যবহার করে মার্কিন যুক্তরাষ্ট্রকে টার্গেট করেন, কিন্তু কোনো নির্দিষ্ট রাজ্যে আপনার বিজ্ঞাপন না পাঠান, তাহলে LocationInfo ক্রাইটেরিয়নে negative=true ব্যবহার করে সেই রাজ্যটিকে বাদ দিতে পারেন। এর সাথে negative_geo_target_type কে PRESENCE এ সেট করলে, এটি সেই রাজ্যের ব্যবহারকারীদের কাছে আপনার বিজ্ঞাপন দেখানো বন্ধ করে দেয়, কিন্তু রাজ্যের বাইরের সেইসব ব্যবহারকারীদের কাছে ঠিকই পৌঁছায় যারা মার্কিন যুক্তরাষ্ট্রের লোকেশনগুলোতে আগ্রহী হতে পারেন।

এরপর কী?