Targeting is selecting a target audience for an ad or ad group and defining conditions for impressions. This is done by setting parameters for campaigns, ad groups, and keywords.


Keywords get an ad to the target audience that is interested in the advertised product. Ads are shown to consumers whose search queries contain the specified words. In the Yandex Advertising Network, the ad is shown on pages that have subject matter described by the specified words.

Use the CreateOrUpdateBanners method to set up keywords.

At the campaign level, you can turn on Autofocus using the AutoOptimization parameter (CreateOrUpdateCampaign method). Autofocus is intended for increasing keyword effectiveness, so ads are shown more often for requests that lead to clicks, and less often for other requests.

When ad groups are edited (at the time of saving parameters), duplicates are automatically deleted — keywords that differ only in their word forms and auxiliary parts of speech, such as [exchange dollars to rubles] and [exchanging rubles and dollars].

Negative keywords

Negative keywords can be set directly in keywords (the Phrase parameter), or shared negative keywords can be set for ad groups in the MinusKeywords parameter. Negative keywords that are shared for a campaign should preferably be set in the campaign parameter with the same name.

Moving negative keywords to the group or campaign level makes configuration easier and reduces the risk of exceeding the limit on keyword length (4096 characters).

Removing keyword duplication

Starting from the Live 4 version, ad group keywords can be automatically made non-intersecting, which makes statistics more accurate.

Non-overlapping keywords means that any search query can be matched by no more than one keyword in a group. This is achieved by adding negative keywords to overlapping keywords.

An example of overlapping keywords is [fur] and [fur mink]. Both keywords match the query [mink fur], since each word in each of the keywords is included in the query. A keyword is randomly selected for impression statistics, which makes statistics less accurate. To remove duplication, a negative keyword is added to the first keyword to get the value [fur -mink]. This means the keyword no longer matches the query.

To make keywords non-intersecting when calling the CreateOrUpdateBanners method, pass the AutoMinusWords parameter with the value set to Yes. After this, non-intersecting keywords are not automatically maintained; if keywords are added or changed, they may again overlap each other.


Negative keywords increase the length of a keyword. If the limit of 4096 characters per keyword is exceeded, new negative keywords aren't added, and there is no guarantee that there won't be duplicates.

Relevant keywords

Direct has information about which keywords, other than the ones explicitly specified, can get an ad to the target audience. These are called relevant keywords. They can be used automatically for impressions equally as well as explicitly specified keywords.

Using relevant keywords is enabled in the AddRelevantPhrases campaign parameter (CreateOrUpdateCampaign method). Relevant keywords are added to ads without the user noticing, since the GetBanners method and other methods that return an array of keywords do not output relevant keywords to the array.

Bids for relevant keywords are determined automatically and cannot be changed by the user. The RelevantPhrasesBudgetLimit campaign parameter limits the budget to be spent on clicks on relevant keywords.

Statistics for relevant keywords are available in the Yandex.Direct web interface on the “Statistics” tab.


Impressions can be restricted geographically, such as including only regions that have a representative of the advertiser. The list of regions is set in the Geo ad group parameter (CreateOrUpdateBanners method).

Time targeting

The impressions schedule is configured in the TimeTarget campaign structure (CreateOrUpdateCampaign method) and applies to all ad groups in the campaign. The TimeZone parameter in this structure specifies the time zone at the advertiser's location. The DaysHours nested structure contains the days and times for impressions in the Days and Hours arrays.

Starting from the Live 4 version, you can set hourly rates for increasing or decreasing prices in the impressions schedule. This saves money by automatically lowering the user's bids during the corresponding times. Set these coefficients in the schedule parameter BidCoefs.

The impressions schedule for government holidays are set separately (days off other than normal weekend days). They are set using the parameters ShowOnHolidays, HolidayShowFrom, and HolidayShowTo.

Additional conditions for impressions

Additional conditions are set for a campaign (the CreateOrUpdateCampaign method) and propagate to all ad groups.

The campaign parameter StatusBehavior is used for enabling behavioral targeting, which provides more impressions in the Yandex Advertising Network. Ads are shown to consumers who showed interest in the advertised product. However, the subject of the advertising site is not taken into account. For example, an ad for theater events may be shown on an appliances website, if an interest in the theater has been demonstrated by the visitor to this site. Interests are ascertained by observing the activity of consumers on various Yandex services and partner sites.

Ads can be excluded from impressions on certain sites in the Yandex Advertising Network. Excluded domains are listed in the DisabledDomains parameter. The DisabledIps parameter makes it possible to not show ads to consumers with certain IP addresses.

Ad impressions are affected by the StatusMetricaControl and StatusContextStop parameters.