---
metadata:
  - name: generator
    content: Diplodoc Platform v5.54.1
alternate:
  - https://yandex.com/support/metrica/en/data/user-params-data.md
  - https://yandex.com/support/metrica/es/data/user-params-data.md
  - https://yandex.com/support/metrica/pt/data/user-params-data.md
  - https://yandex.com/support/metrica/ru/data/user-params-data.md
  - https://yandex.com/support/metrica/tr/data/user-params-data.md
  - https://yandex.com/support/metrica/zh/data/user-params-data.md
  - href: zh/data/user-params-data.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
title: 传输用户参数
description: "Yandex\_Metrica 允许您发送任何自定义数据，这些数据称为用户参数。 对于用户参数，我们建议传输不会因会话而改变且不包含用户姓名等个人数据的用户特征。"
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/support/metrica/zh/llms.txt


# 传输用户参数

<!-- source: zh/_includes/code/counter-initialize/id-counter-initialize/rest-js.md -->
{% note warning %}

使用 JavaScript API 需要了解 HTML 和 JavaScript。 如果您不了解这些语言，请联系您的网站开发人员或站长。

{% endnote %}
<!-- endsource: zh/_includes/code/counter-initialize/id-counter-initialize/rest-js.md -->

大多数会话数据由 Yandex Metrica 计数器自动收集。 您可以通过[会话参数](https://yandex.com/support/metrica/zh/data/visit-params-data.md)发送您自己的数据来进行补充。 但是，您可能会发现有关用户本身的信息比会话统计数据更有用。

Yandex Metrica 允许您发送任何自定义数据，这些数据称为_用户参数_。 对于用户参数，我们建议传输不会因会话而改变且不包含用户姓名等个人数据的用户特征。 [用户参数和会话参数的区别](https://yandex.com/support/metrica/zh/general/how-it-works.md#difference)

如果您希望传递的参数反映在报表中，Yandex Metrica 应该将它们链接到网站用户。 为此，使用以下特殊 ID：[ClientID](*ClientID) 和 [UserID](*UserID)。 参数会链接到数据发送到 Yandex Metrica 之前 90 天内访问过该网站的用户的会话。

{% note info %}

当传输指定 ClientID 和 UserID 的用户参数时，由于 UserID 与 ClientID 的绑定方式，Yandex Metrica 报表中的用户总数可能与传递的 ID 数量不同。

{% endnote %}

报表会在几个小时内更新新信息。 要查看统计数据，请使用[User parameters report](https://yandex.com/support/metrica/zh/reports/user-params.md)。 

{% note info %}

发送到 Yandex Metrica 的参数将在上次上传后存储两年。 存储期结束后，报表将不再显示数据。

{% endnote %}

{% cut "何时传输 ClientID" %}

您不需要在报表中获取自己的 ID，我们建议在传输数据中使用 [ClientID](*ClientID)。

{% endcut %}

{% cut "何时传输 UserID" %}

例如，如果您的网站已有用户 ID 系统，并且您需要获取显示这些 ID 的报表，我们建议使用 [UserID](*UserID)。

{% endcut %}

您可以通过多种方式将用户参数发送到 Yandex Metrica：

- [在网站会话期间](#online)。
- 随时使用 [CSV 文件](#offline)。

## 在网站会话期间传递数据 {#online}

当您根据用户查看网站时收到的数据生成报表时，此方法非常有用。

用户参数通过 JavaScript API 传输到 Yandex Metrica。 使用此方法发送的信息无法从 Yandex Metrica 中删除。

要在任何其他时间传输参数，请使用 [userParams](https://yandex.com/support/metrica/zh/objects/user-params.md) 方法。 要在计数器初始化期间传输参数，请在 [userParams](https://yandex.com/support/metrica/zh/code/counter-initialize.md) 参数中指定数据。 信息以 JavaScript 对象的形式传输。

<!-- source: zh/_includes/data/visit-params-data/id-visit-params-data/data1.md -->
根据字段值的类型，按如下方式处理字段值：
<!-- endsource: zh/_includes/data/visit-params-data/id-visit-params-data/data1.md -->

- <!-- source: zh/_includes/data/visit-params-data/id-visit-params-data/1.md -->
  **object** —— 为每个对象键创建一个新的树分支，并为每个值递归调用算法。
  <!-- endsource: zh/_includes/data/visit-params-data/id-visit-params-data/1.md -->
    
- <!-- source: zh/_includes/data/visit-params-data/id-visit-params-data/2.md -->
  **string** —— 计算字符串中每个不同值出现的次数。
  <!-- endsource: zh/_includes/data/visit-params-data/id-visit-params-data/2.md -->
    
- <!-- source: zh/_includes/data/visit-params-data/id-visit-params-data/3.md -->
  **number** —— 计算所有数字的总值和与平均值。
  <!-- endsource: zh/_includes/data/visit-params-data/id-visit-params-data/3.md -->
    
- <!-- source: zh/_includes/data/visit-params-data/id-visit-params-data/4.md -->
  **true**、**false** 或 **null** —— 计算每个值出现的次数。
  <!-- endsource: zh/_includes/data/visit-params-data/id-visit-params-data/4.md -->
    
仅当在用户会话期间调用 `userParams` 方法才会将数据绑定到 [ClientID](*ClientID)。 要获得更完整的统计数据，请等待大量数据传输到 Yandex Metrica。

> ## 示例
> 
> 让我们看一下有两种类型客户的在线商店：“普通”和“VIP”。 客户状态数据存储在网站自己的数据库中。 用户登录网站后，会在每个页面的 **Sign in** 链接处看到自己的用户名。 如果用户具有特殊身份，该身份会显示在用户名旁边：**Jane / VIP**。 除了状态之外，您还可以传输存储在数据库中的用户 ID。
> 
> 要向 Yandex Metrica 发送数据，请在网站的所有页面中添加调用 `userParams` 方法的代码。
> 
> 为发送有关具有特殊状态的用户的数据，代码将如下所示：
> 
> 
> {% list tabs %}
> 
> - 随时
> 
>   
>   ```javascript
>   ym(XXXXXXXX, 'userParams', {
>       vip_status: true,
>       child: 1,
>       child_age: 13,
>       UserID: 12345
>   });
>   ```
>   
> 
> - 初始化计数器时
> 
>   
>   ```javascript
>   ym(XXXXXXXX, 'init', {
>       clickmap: true,
>       webvisor: true,
>       userParams: {
>           vip_status: true,
>           child: 1,
>           child_age: 13,
>           UserID: 12345
>       }
>   });
>   ```
> 
> {% endlist %}
> 
> 
> 如果正在传输有关某个“普通”用户的信息，代码将如下所示：
> 
> {% list tabs %}
> 
> - 随时
> 
>   
>   ```javascript
>   ym(XXXXXXXX, 'userParams', {
>       vip_status: false,
>       child: 1,
>       child_age: 13,
>       UserID: 12345
>   });
>   ```
>   
> 
> - 初始化计数器时
> 
>   
>   ```javascript
>   ym(XXXXXXXX, 'init', {
>       clickmap: true,
>       webvisor: true,
>       userParams: {
>           vip_status: false,
>           child: 1,
>           child_age: 13,
>           UserID: 12345
>       }
>   });
>   ```
> 
> {% endlist %}
> 
> 其中 `XXXXXXXX` 是您的计数器编号。
> 
> 如果一个“普通”客户获得 VIP 身份，`userParams` 方法会在该用户下次登录该网站时将新数据发送到 Yandex Metrica。 此新状态将应用于该用户会话的整个历史记录，就好像客户始终是 VIP 一样。

## 随时以 CSV 文件形式传输数据 {#offline}

通过这种方法，Yandex Metrica 会接收在网站会话期间以及用户离开网站后收集的数据。

[CSV 格式规范](http://www.rfc-editor.org/rfc/rfc4180.txt)

[CSV 格式描述](https://en.wikipedia.org/wiki/Comma-separated_values)

#|

## Обязательные поля для передачи данных {#offline}

||
**字段名称**
|
**描述**
|
**示例**
||
||
`clientID` \| `userID`
|
网站用户 ID
|
P12345
||
||
`key`
|
用户 ID。 每个用户最多 1,000
|
age \| client.age
||
||
`value`
|
用户 ID 值
|
40
||
|#

要发送参数的层次结构，请使用“.”符号（句点）。 例如，要传输 `key` 字段的多个值，指定 `client.demography.age`。

Yandex Metrica 报表中显示的字段中的最大字符数：
- `key` —— 255；
- `value` —— 50。

使用参数传递信息：

{% list tabs %}

- ClientID

  
  1. 使用 [getClientID](https://yandex.com/support/metrica/zh/objects/get-client-id.md) 方法获取 ClientID。
  1. 生成一个指定 ClientID 的 CSV 文件并在 Yandex Metrica 界面中提交。
  

- UserID

  
  1. 使用 [setUserID](https://yandex.com/support/metrica/zh/objects/set-user-id.md) 方法发送您的 UserID。
  1. 生成一个指定 UserID 的 CSV 文件并在 Yandex Metrica 界面中提交。

{% endlist %}

### 使用文件 {#data-send}

Yandex Metrica 界面允许您上传数据和删除数据。 您可以在 **Settings**（找到 **Upload data** 选项卡并选择 **User parameters**）中管理该文件。

{% list tabs %}

- 上传数据
  
  要将生成的 CSV 文件发送到 Yandex Metrica：
  
  1. 点击 **Upload data**。
  1. 在出现的窗口中，根据您要上传的 ID 类型选择文件类型（[UserID](*UserID) 或 [ClientID](*ClientID)）。
  1. 选择您计算机上的文件，并根据需要在上传内容中添加注释。
  1. 点击 **Upload data**。
  
  [用于上传数据的示例 CSV 文件](https://download.cdn.yandex.net/from/yandex.com/support/en/metrica/files/upload-data-example.csv)

- 删除数据
  
  要从服务中删除之前上传的数据或部分数据，请准备一个 CSV 文件。 该文件应只包含您要删除的数据的 `key` 字段。 然后按照下列步骤操作：
  
  1. 点击 **Delete data**。
  2. 在出现的窗口中，根据 ID（[UserID](*Идентификатор-посетителя-сайта,-заданный-владельцем-сайта,-например-при-входе-посетителя-сайта-в-личный-кабинет.) 或 [ClientID](*Идентификатор-уникального-посетителя-сайта,-который-Яндекс-Метрика-задает-автоматически.)）选择要应用更改的文件类型。
  3. <!-- source: zh/_includes/data/user-params-data/id-offline/1.md -->
     选择您计算机上的文件，并根据需要在上传内容中添加注释。
     <!-- endsource: zh/_includes/data/user-params-data/id-offline/1.md -->
      
  4. <!-- source: zh/_includes/data/user-params-data/id-offline/2.md -->
     点击 **Upload data**。
     <!-- endsource: zh/_includes/data/user-params-data/id-offline/2.md -->
  
  [用于删除数据的示例 CSV 文件](https://download.cdn.yandex.net/from/yandex.com/support/en/metrica/files/delete-data-example.csv)

{% endlist %}

该服务需要一些时间来处理该文件。 处理完成后，您提交的信息将在 User parameters 报表中提供。 

<!-- source: zh/_includes/buttons/chat-button.md -->
[与我们聊天](https://yandex.com/chat/#/user/036e6a02-3620-9cdc-4c5e-a34667a7379e?utm_source=spravka){.button}

<!-- source: zh/_includes/styles/href-to-button.md -->

<!-- endsource: zh/_includes/styles/href-to-button.md -->
<!-- endsource: zh/_includes/buttons/chat-button.md -->

<!-- source: zh/_includes/reports/support-button.md -->
[联系我们](https://yandex-ad.cn/contact){.button}


<!-- source: zh/_includes/styles/cut-button.md -->

<!-- endsource: zh/_includes/styles/cut-button.md -->

<!-- source: zh/_includes/styles/href-to-button.md -->

<!-- endsource: zh/_includes/styles/href-to-button.md -->
<!-- endsource: zh/_includes/reports/support-button.md -->

<!-- source: zh/_includes/footer-links.md -->
- - -

<div class="borderless-table">

#|
||
实用链接

- [演示计数器](https://metrica.yandex.com/r/dashboard?)
- [添加计数器](https://metrica.yandex.com/add/)
- [免费计数器设置](https://yandex.com/promo/freeservice/metrica?utm_source=help_metrica_en&utm_medium=cpc&utm_campaign=1)
- [Yandex Metrica API](https://tech.yandex.com/metrika/)
- [提出您的想法](https://yandex.com/support/metrica/troubleshooting/idea.html)
|
线上培训



- [参加培训课程](https://yandex.com/adv/edu/online/metrika?utm_source=metrika_help&utm_medium=web&utm_campaign=static&utm_content=useful_links)

||
|#

</div>

<!-- source: zh/_includes/styles/table-style.md -->

<!-- endsource: zh/_includes/styles/table-style.md -->
<!-- endsource: zh/_includes/footer-links.md -->

[*ClientID]: 由 Yandex Metrica 自动创建的独立网站用户 ID。

[*UserID]: 网站所有者设置的用户 ID（例如，当网站用户登录其个人帐户时）。

[*Идентификатор-посетителя-сайта,-заданный-владельцем-сайта,-например-при-входе-посетителя-сайта-в-личный-кабинет]: 网站所有者设置的用户 ID（例如，当网站用户登录其个人帐户时）。

[*Идентификатор-уникального-посетителя-сайта,-который-Яндекс-Метрика-задает-автоматически]: 由 Yandex Metrica 自动创建的独立网站用户 ID。