Tag initialization
Tip
Working with the JavaScript API requires knowledge of HTML and JavaScript. If you don’t know these languages, contact your website developer or webmaster.
Go to https://mc.yandex.ru/metrika/tag.js
and download the JavaScript library, which is required for the tag to work.
The code for enabling the library is available on the tag editing page. The library can be loaded asynchronously (recommended) or synchronously, but its functionality remains the same.
To create and manage a tag, use the ym
method. It is created in the download code:
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
ym
requires the tag ID and the name of the function being called. The method can also be passed arguments of the invoked function. For example, to initialize a tag, you need to pass the tag ID, the name of the init
function, and an array of parameters:
ym(XXXXXX, "init", {clickmap: true, webvisor: true});
If you don’t want to pass parameters to the function, initialization looks like this:
ym(XXXXXX, "init", {});
The part of the code containing the main initialization parameters is generated on the Settings page. The full list of initialization parameters is shown in the table.
Functions that can be called via the ym
method are described in the methods reference.
Tag initialization parameters
Name |
Default value |
Type |
Description |
|
|
Boolean | Number |
Accurate bounce rate The parameter can accept these values:
|
|
|
Boolean |
Whether to record iframe contents without a tag in a child window. |
|
|
Boolean |
Whether to collect data for a click map |
|
|
Boolean |
Whether to disable automatically sending data during tag initialization. |
|
|
Boolean | String | Array |
E-commerce data collection.
|
|
: |
Object | Array |
Session parameters transmitted during tag initialization. To transmit session parameters at any other time, use the params method. |
|
— |
Object |
Parameters of site users that are transmitted when initializing the tag. To transmit user parameters at any other time, use the userParams method. |
|
|
Boolean |
Tracking of hash changes in the browser’s address bar |
|
|
Boolean |
Track clicks on outbound links. |
|
— |
Array |
Indicates a trusted domain for recording the contents of a child iframe Contains the domain address of the parent window |
|
|
Number |
Tag type. 1 for YAN |
|
|
Boolean |
Whether to use Session Replay |
|
|
Boolean |
Whether to check if the tag is ready. |
|
|
Boolean |
Title records. If titles contain private data, the parameter should be set to |
Checking tag initialization
You can use a special JavaScript event to find out if the tag is ready to operate. However, you must add the triggerEvent
parameter set to true
in the code snippet:
ym(XXXXXX, "init", {triggerEvent: true});
For jQuery, you can use the following code sample up to the moment of tag initialization:
jQuery(document).on('yacounterXXXXXXinited', function () {
console.log('tag yaCounterXXXXXX ready');
});
Enabling a tag using the tag management system
You can also enable Yandex Metrica tags using tag management systems (also called tag dispatchers or tag containers). These systems let you store all the necessary HTML/JavaScript code on an external server and connect it to webpages using small code snippets. This means you can make changes to the connected code without changing the code of webpages.
Tag management systems usually support two types of integrated code for tags: JavaScript and image. Yandex Metrica supports both types of tags. To integrate them using tag management systems, use code snippets from the Settings page (under the Tag tab).
<script type="text/javascript">
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
ym(XXXXXX, "init", {<initialization parameters>});
</script>
<img src="https://mc.yandex.ru/watch/XXXXXX" style="position:absolute; left:-9999px;" alt="" />
Here, XXXXXX
is the Yandex Metrica tag number.
The data collected may vary depending on the type of tag code. To learn more, see Data collected by the Yandex Metrica tag.
Within each tag, you can connect multiple counters at once, similar to what is described in the Installing multiple tags on a site section.
Useful links |
Online training |