# 如何设计埋点方案 用户行为是由用户一系列的事件组成,包含5个基本要素:何人,何时,何地,通过何种方式,发生了何种行为。 一份完整的埋点方案由事件、事件属性和用户属性三部分组成。 ## 事件 记录用户在使用网站、APP 或小程序的过程中触发的行为。 用户的行为有一部分会在他们使用的过程中自动被采集上来,常见的如:跟访问有关的“页面浏览”,“停留时长”;另外一部分包含具体业务含义的,则需要通过埋点才能得到,例如:“注册”、“登录”、“支付”等等。 ## 事件属性 可以通过属性为事件补充相关的信息,例如:位置,方式和内容。 用户产生行为时就会上报具体的属性值,比如对“购买事件”定义了“支付方式”的属性值,则根据不同的行为可能上报的是微信支付,支付宝支付。 > 小舟在电商平台上花一万元购买了一台联想电脑。这个动作就会产生一个名为“购买”的事件; 而“购买”事件,同时也可以包含:“品牌”,“价格”这两个属性,而“联想”和“一万元”就是属性的具体值了。 | Event要素 | 要素说明 | 采集的数据 | 示例 | | ------- | --------- | ------------------------------------------------- | --------------------------------------------------------------------------------------------------- | | Who | 参与事件的用户 | 用户唯一ID | H522a3bd525a2af | | When | 事件发生的时间 | 自动获取 事件当时时间 | 11月11日00:02:03 | | Where | 事件发生的地理位置 | 自动获取 IP、GPS信息 | 114.242.249.113 | | How | 事件发生的方式 | 使用的环境 | <p>设备品牌:Apple <br>设备型号:iPhone 6s<br>操作系统:iOS<br>屏幕分辨率:1920*1680<br>运营商:中国联通 <br>网络类型:Wifi<br>……</p> | | What | 事件的内容 | <p>自定义采集的事件:EventID <br> 事件属性:Key-Value</p> | <p>add_to_cart <br> product_name:耳麦<br> product_price:666</p> | 其中,用户、时间、地理位置、事件发生的环境等可以自动采集,但采集哪些事件、事件更丰富的属性就需要用户自己来上报了。 ## 用户属性 在分析过程中,需要引入注册用户的更多维度,比如注册用户ID、姓名、用户等级等等,也需要进行梳理,方法同事件属性。 **方舟提供的事件模板和用户属性模板来帮助梳理** | 事件ID | 事件名称 | 事件说明 | 属性ID | 属性名称 | 属性说明 | 属性值类型 | | -------------- | ----- | --------- | ------------- | ---- | ---- | ----- | | PayOrder | 支付订单 | 点击支付按钮时触发 | paymentMethod | 支付方式 | | 字符型 | | ViewDetailPage | 浏览页详情 | 点击详情页时触发 | PageID | 页面ID | | 字符型 | | 用户属性ID | 用户属性名称 | 属性说明 | 属性值类型 | | --------- | ------ | --------- | ----- | | UserLevel | 用户等级 | 上传用户的等级信息 | 字符型 | >[info] >**下载地址:** > >[事件埋点方案模版.xlsx](https://imguserradar.analysys.cn/files/ark/doc/%E6%98%93%E8%A7%82%E6%96%B9%E8%88%9F-%E4%BA%8B%E4%BB%B6%E5%9F%8B%E7%82%B9%E6%96%B9%E6%A1%88%E6%A8%A1%E6%9D%BF\_20190520.xlsx) > >[用户埋点方案模版.xlsx](https://imguserradar.analysys.cn/files/ark/doc/%E6%98%93%E8%A7%82%E6%96%B9%E8%88%9F-%E7%94%A8%E6%88%B7%E5%9F%8B%E7%82%B9%E6%96%B9%E6%A1%88%E6%A8%A1%E6%9D%BF\_20190520.xlsx) #### **模板说明:** **事件ID:** 仅支持数字、字母和下划线,用于SDK埋点标识事件 **事件名称:** 工程师无需写在代码中,仅用分析模型中显示方便查看,可修改 **事件说明:** 说明埋点位置 **属性值类型:** 选择属性值的类型,不同类型的属性值会有不同的运算,例如 “商品价格” 这个属性值的类型应该是数值型,分析时可以对商品价格求和、最大值、最小值、均值等。属性值的类型参考[《数据格式》](data-type.md)-属性值得数据类型。 **属性ID:** 仅支持数字、字母和下划线,用于SDK埋点标识事件的属性 **属性名称:** 工程师无需写在代码中,仅用分析模型种显示方便查看,可修改 **属性说明:** 说明属性的注意事项 > ⚠️ 特别说明: > > 建议您在设计埋点和上报数据时,用户属性ID 和 事件属性ID 使用小写英文字母和下划线组合 命名,例如 pagename 、page_name; > > 不建议使用含大写字母的属性ID,例如 pageName 、pageTitle。 > > 因为易观方舟会将 事件属性ID 和 用户属性ID 中的大写字母强制转换为小写字母。 >[info] 以上内容没有解答我的问题?[点击我进入方舟论坛去反馈](https://www.analysysdata.com/forum/index) 🚀