Skip to content

Tracking - Button tracking ​

Tính năng này để làm gì ​

Button tracking đo lượt bấm của những nút quan trọng trên website như "Mua ngay", "Nhận báo giá", "Chat Zalo", mà không phải sửa code. Mỗi quy tắc nhận diện một nút gọi là click rule. Kết quả xem trong báo cáo và dùng được làm một bước của phễu chuyển đổi.

Đường dẫn: Data Hub → Tracking → Website → mở project → tab Button tracking

Bạn cũng vào được từ tab Tổng quan của project: bước Theo dõi click nút quan trọng → Tạo rule click, hoặc thẻ Theo dõi click nút → Cấu hình.

Màn Button tracking ​

  • Khung trạng thái: Version đang chạy, Rule đang chạy, Publish lần cuối, kèm một nhãn Có thay đổi chưa publish, Đã publish bản mới nhất hoặc Chưa publish lần nào, và nút Publish.
  • Bật button tracking: công tắc chung cho cả project, mặc định bật.
  • Cài đặt chung: Bỏ click trùng trong (ms) (mặc định 500 ms) và Tối đa event mỗi pageview (tính cho từng rule, mặc định không giới hạn). Bấm Lưu cài đặt sau khi sửa.
  • Danh sách rule: các cột Ưu tiên, Tên rule, Điều kiện khớp, Event phát ra, Bật/Tắt và Thao tác (Chỉnh sửa, Xóa).
Tab Button tracking
Tab Button tracking. Ảnh chụp thực tế của một project đang chạy 3 rule.
  1. Khung trạng thái - version và số rule đang chạy, lần publish cuối, nhãn trạng thái và nút Publish.
  2. Cài đặt chung - công tắc Bật button tracking, Bỏ click trùng trong (ms), Tối đa event mỗi pageview và nút Lưu cài đặt.
  3. Danh sách rule - bấm Thêm rule để tạo rule mới. Mỗi dòng có công tắc Bật/Tắt, nút sửa và xoá.

Mọi thay đổi chỉ chạy sau khi Publish

Thêm, sửa, xoá, bật hay tắt rule đều chỉ ghi vào bản nháp. Bấm Publish để đẩy toàn bộ bản nháp lên website. Nếu một rule trong bản nháp có lỗi, cả lần Publish sẽ không thành công.

Tạo một click rule ​

  1. Thêm rule Bấm Thêm rule. Form Rule mới mở ngay trong tab.
  2. Đặt tên Nhập Tên rule (bắt buộc, tối đa 120 ký tự), ví dụ "Nút Mua ngay".
  3. Bước 1: Khi khách bấm vào… Chọn cách nhận diện nút. Form mở sẵn điều kiện Chữ trên nút; bấm vào dòng Thêm cách nhận diện để thêm cách khác. Nhiều điều kiện được kết hợp: nút phải thoả tất cả. Mỗi cách chỉ thêm được một lần.
  4. Bước 2: Thì ghi nhận event… Nhập Tên event nếu muốn (bỏ trống thì là "Clicked"), hoặc chọn nhanh một gợi ý như Add to Cart, Begin Checkout, Contact Click. Có thể thêm Thông tin gắn kèm event theo cặp Tên/Giá trị, tối đa 20 cặp.
  5. Kiểm tra và lưu Đọc thanh Tóm tắt rule: một câu mô tả rule bằng lời, cập nhật ngay khi bạn sửa. Đúng ý thì bấm Lưu.
  6. Publish Quay lại danh sách và bấm Publish.
Form Rule mới
Form Rule mới. Phần đầu của form. Kéo xuống cuối form để đọc Tóm tắt rule và bấm Lưu.
  1. Tên rule - bắt buộc, tối đa 120 ký tự.
  2. Bước 1: Khi khách bấm vào… - form mở sẵn điều kiện Chữ trên nút. Chọn cách so khớp, ví dụ Chứa, rồi nhập chữ trên nút.
  3. Thêm cách nhận diện - link mà nút dẫn tới, mã #id, class CSS, data-attribute, CSS selector, loại phần tử, hoặc giới hạn trang áp dụng.
  4. Bước 2: Thì ghi nhận event… - nhập Tên event hoặc bấm một gợi ý. Bỏ trống thì là "Clicked".

Các cách nhận diện nút ​

Rule phải có ít nhất một trong sáu cách đầu của bảng. Loại phần tử và Giới hạn trang áp dụng chỉ dùng kèm các cách khác.

CáchDùng khiLưu ý
Chữ trên nútNút có chữ rõ ràngChọn Chứa (mặc định), Chính xác, Bắt đầu bằng hoặc Regex. Ô Không phân biệt hoa thường đã được tích sẵn. Nút chỉ có icon thì hệ thống dùng chữ trong aria-label hoặc title nếu có
Link mà nút dẫn tớiNút là một đường linkSo với địa chỉ đầy đủ có cả https:// và tên miền, nên dùng Chứa. Theo domain so đúng tên miền, www.shop.vn khác shop.vn
Mã #id của nútNút có thuộc tính idNhập không kèm dấu #. Khớp chính xác, phân biệt chữ hoa, chữ thường
Class CSSNút có class riêngGõ từng class rồi nhấn Enter, không kèm dấu .. Nút phải có tất cả các class đã nhập, tối đa 10 class
Data-attributeLập trình viên đã gắn thuộc tính data-… cho nútGhi đủ tên, ví dụ data-track. Bỏ trống ô Giá trị nghĩa là chỉ cần nút có thuộc tính đó
CSS selector (kỹ thuật)Lập trình viên muốn chỉ định chính xácTối đa 500 ký tự
Loại phần tửThu hẹp theo loại: button, link hoặc anyNút làm bằng thẻ div, span cần chọn any
Giới hạn trang áp dụngChỉ đo trên một số trangChọn Glob, Bắt đầu bằng hoặc Regex. So với đường dẫn và tham số, không gồm tên miền. Ví dụ Glob /product/*

Nút không bắt được bằng chữ

Rule chỉ có điều kiện Chữ trên nút mà không chọn Loại phần tử thì chỉ khớp các nút thật (button), đường link, nút gửi form và phần tử khai báo là nút. Nút làm bằng div hay span cần chọn Loại phần tử = any. Chữ trên nút gửi form dạng <input type="submit"> không được đọc, hãy dùng #id hoặc class.

Phần Nâng cao ​

Bấm Nâng cao: thu thập dữ liệu, chống nhiễu, phạm vi trang bên dưới Bước 2 để mở. Mọi ô trong phần này đều không bắt buộc. Bỏ qua thì rule vẫn chạy, mỗi lượt bấm vẫn có trang, thiết bị, nguồn truy cập, tên rule và loại thẻ HTML của nút.

Ô giới hạn trang không nằm ở đây dù tiêu đề có chữ "phạm vi trang": muốn rule chỉ chạy ở một số trang, dùng Thêm cách nhận diện → Giới hạn trang áp dụng ở Bước 1.

Bật rule và độ ưu tiên ​

  • Bật rule này: tắt thì rule vẫn nằm trong danh sách với nguyên cấu hình, nhưng website không ghi nhận lượt bấm nào cho rule. Công tắc này giống công tắc ở cột Bật/Tắt của danh sách rule, và cũng phải Publish mới có tác dụng.
  • Độ ưu tiên: mặc định 100. Khi một lượt bấm khớp nhiều rule, chỉ rule có số nhỏ nhất được ghi nhận, xem mục Cách một lượt bấm được ghi nhận bên dưới. Ví dụ đặt 10 cho rule "Mua ngay ở trang sản phẩm" để rule này được xét trước rule chung "Mọi nút Mua" đang để 100.

Tự thu thập properties từ DOM ​

Tích ô nào thì mỗi lượt bấm mang thêm dữ liệu đó, đọc từ chính nút được bấm. Tất cả mặc định tắt. Chỉ tích những gì bạn cần xem để không ghi thừa dữ liệu.

ÔThu gìLưu vào propertyXem ở Chi tiết click rule
Chữ trên nútChữ hiển thị trên nút. Nút chỉ có icon thì lấy aria-label hoặc title. Tối đa 200 ký tựtextKhối Chữ trên nút
Link (href)Địa chỉ đầy đủ mà nút dẫn tới. Nút không phải link thì lấy địa chỉ gửi của form chứa nút, hoặc thuộc tính data-hrefhrefKhối Dẫn tới đâu
#id phần tửMã id của nútelement_idKhối Chữ trên nút, chọn ID phần tử
Danh sách classCác class CSS của nútelement_classesKhông hiện, chỉ lưu kèm sự kiện
Đường dẫn selectorĐường dẫn CSS ngắn tới nút, tối đa 5 cấp, ví dụ div.product-card > button.btn-buyselector_pathKhối Chữ trên nút, chọn Vị trí phần tử
Vị trí clickToạ độ chỗ bấm, tính bằng pixel từ góc trên bên trái khung trình duyệtx, yKhông hiện, chỉ lưu kèm sự kiện

"Vị trí phần tử" không phải "Vị trí click"

Lựa chọn Vị trí phần tử trong Chi tiết click rule đọc từ ô Đường dẫn selector, cho biết nút nằm ở đâu trong cấu trúc trang. Ô Vị trí click chỉ ghi toạ độ chuột và không hiện trong báo cáo. Ô nào chưa tích thì lựa chọn tương ứng hiện "(không có)". Tích thêm sau khi đã Publish thì chỉ những lượt bấm mới có dữ liệu.

data-* được thu (allowlist) ​

Ô này và ô Lấy giá trị từ selector lân cận bên phải nó nằm ở cuối khối Tự thu thập properties từ DOM. Hai ô dùng để lấy thêm dữ liệu quanh nút, ví dụ khách bấm "Mua ngay" cho sản phẩm nào, giá bao nhiêu, và dùng riêng hoặc cùng lúc được. Báo cáo Tracking chưa hiển thị dữ liệu lấy theo hai cách này, dữ liệu được lưu kèm từng lượt bấm.

  • Gõ đủ tên thuộc tính, ví dụ data-sku, rồi nhấn Enter. Thêm được tối đa 20 thuộc tính, tên phải bắt đầu bằng data-.
  • Chỉ đọc trên chính nút khớp rule. Thuộc tính nằm ở khung bao ngoài nút thì không lấy được.
  • Property mang đúng tên thuộc tính, ví dụ data-sku. Nút không có thuộc tính đó thì bỏ qua, không báo lỗi.

Lấy giá trị từ selector lân cận ​

Gồm ba ô trên cùng một dòng, bên phải ô data-* được thu:

  • Selector: CSS selector của phần tử chứa giá trị, ví dụ .product-name. Tối đa 500 ký tự.
  • Attribute (tùy chọn): để trống thì lấy chữ hiển thị của phần tử đó. Điền tên thuộc tính, ví dụ data-price, thì lấy giá trị của thuộc tính.
  • Lưu vào property: tên property chứa giá trị, ví dụ ten_san_pham. Tối đa 64 ký tự.

Hệ thống tìm phần tử bên trong nút trước. Không thấy thì tìm trong thẻ bao ngay ngoài nút, chỉ lên đúng một cấp, không tìm cả trang. Có nhiều phần tử khớp thì lấy phần tử đầu tiên. Chữ khách đang gõ trong ô nhập liệu không lấy được. Giá trị dài quá 200 ký tự bị cắt bớt.

Phải điền đủ Selector và Lưu vào property

Thiếu một trong hai ô thì cách này bị bỏ qua khi lưu rule, không có thông báo lỗi. Kiểm tra ở Tóm tắt rule: cách này chỉ xuất hiện trong tóm tắt khi đã điền đủ. Mỗi rule chỉ lấy được một giá trị theo cách này.

Ví dụ: ghi lại sản phẩm khách bấm "Mua ngay"

html
<div class="product-card" data-product-id="SP001">
  <h3 class="product-name">Áo thun basic</h3>
  <span class="price" data-price="199000">199.000đ</span>
  <button class="btn-buy" data-sku="AT-001">Mua ngay</button>
</div>

Rule khớp nút bằng Chữ trên nút Chứa "Mua ngay". Ở phần Nâng cao điền:

Muốn lấyĐiềnMỗi lượt bấm có thêm
Mã SKUdata-* được thu: data-skudata-sku = AT-001
Tên sản phẩmSelector .product-name, Attribute để trống, Lưu vào property ten_san_phamten_san_pham = Áo thun basic
Hoặc giá, thay cho tênSelector .price, Attribute data-price, Lưu vào property giagia = 199000
  • data-product-id nằm trên khung product-card chứ không nằm trên nút, nên không lấy được bằng cả hai cách. Muốn có mã này, nhờ lập trình viên gắn thêm data-product-id lên thẻ button.
  • Nếu nút được bọc thêm một lớp, ví dụ <div class="actions"><button …>Mua ngay</button></div>, thì thẻ bao ngay ngoài nút là actions. Khi đó .product-name và .price nằm ngoài phạm vi tìm, lượt bấm không có property này.

Dữ liệu bị che hoặc làm mất cả lượt bấm

  • Email và chuỗi trông giống số điện thoại trong chữ trên nút, giá trị data-* và giá trị lấy từ selector lân cận được tự che thành [email], [phone]. Chuỗi số dài từ 9 ký tự trở lên, tính cả dấu chấm, dấu cách xen giữa, cũng bị che. Ví dụ giá hiển thị 1.990.000đ thành [phone]đ, mã vạch 8935049501234 thành [phone]. Muốn lấy giá, đọc thuộc tính chứa số thô như data-price="1990000".
  • Tên property, kể cả tên data-*, có chứa email, phone hoặc kết thúc bằng _address thì cả lượt bấm bị hệ thống bỏ, ví dụ data-phone, data-customer-email.
  • Không đặt tên property trùng tên property hệ thống: text, href, element_id, element_classes, selector_path, x, y, rule_id, rule_name, event_name, tag. Trùng tên thì một trong hai giá trị bị ghi đè.

Chống nhiễu & phạm vi áp dụng ​

Ba ô này chỉ áp dụng cho rule đang sửa. Để trống thì rule dùng giá trị ở Cài đặt chung của tab Button tracking.

ÔÝ nghĩaĐể trốngGiới hạn
Bỏ click trùng trong (ms)Khách bấm lại cùng một nút trong khoảng thời gian này thì chỉ tính lần đầu. Hai nút khác nhau cùng khớp rule vẫn được tính riêngTheo Cài đặt chung, mặc định 500 msTừ 0 đến 600000 (10 phút). Đặt 0 thì tính mọi lượt bấm
Tối đa event mỗi pageviewSố lượt bấm tối đa rule này ghi nhận trong một lần xem trang. Đủ số thì các lượt bấm sau trên trang đó bị bỏTheo Cài đặt chung, mặc định không giới hạnTừ 1 đến 10000
Tỷ lệ lấy mẫu (0–1]Phần lượt bấm được ghi nhận, chọn ngẫu nhiên. Ví dụ 0.5 là khoảng một nửa1, ghi nhận tất cảLớn hơn 0, tối đa 1

Một lần xem trang kết thúc khi địa chỉ trang đổi, kể cả khi website dạng SPA chuyển trang mà không tải lại. Lúc đó cả bộ đếm Tối đa event mỗi pageview và Bỏ click trùng đều tính lại từ đầu.

Tỷ lệ lấy mẫu làm số liệu thấp hơn thực tế

Báo cáo hiển thị đúng số lượt đã ghi nhận, không nhân bù. Đặt 0.1 thì Click, Khách, Phiên của rule chỉ còn khoảng 10% thực tế, và phễu có bước dùng rule này cũng bị hụt theo. Chỉ dùng cho nút bị bấm rất nhiều mà bạn chỉ cần xem xu hướng.

Bao lâu website áp dụng rule ​

Sau khi Publish, khách mới vào website thường thấy rule mới trong khoảng 1 phút. Khách đang mở website có thể mất tới vài phút và phải tải lại trang, vì trình duyệt giữ cấu hình cũ tới 5 phút. Website dạng SPA cũng chỉ nhận rule mới khi khách tải lại trang.

Cách một lượt bấm được ghi nhận ​

  • Mỗi lượt bấm chỉ được ghi cho một rule: rule đầu tiên khớp, xét theo Độ ưu tiên từ nhỏ đến lớn. Nếu rule đó đang bị chống nhiễu chặn (ví dụ bấm trùng trong 500 ms) thì lượt bấm bị bỏ, không chuyển sang rule khác.
  • Hệ thống tính bấm chuột trái, nhấn Enter hoặc Space trên nút, và chạm trên điện thoại. Chuột phải, chuột giữa không được tính.
  • Nút xuất hiện sau khi trang đã tải (ví dụ trong website dạng SPA) vẫn được ghi nhận.

Xem hiệu quả click rule ​

Đường dẫn: Data Hub → Tracking → Tổng quan → tab Tổng quan → bảng Hiệu quả click rule

Bảng có các cột Rule, Nhãn event, Click, So kỳ trước, Xu hướng, Khách, Phiên, Click gần nhất và Trạng thái (Đang chạy, Đã tắt hoặc Không còn publish). "Khách" ở đây là số trình duyệt, không phải số người.

Bảng tự gắn cảnh báo khi rule có vấn đề:

Cảnh báoKhi nào xuất hiệnBạn cần làm gì
Im lặngRule đang bật và đã publish nhưng không có lượt bấm nào trong khoảng đang xem. Rule vừa publish xong cũng hiện cảnh báo này cho tới khi có lượt bấm đầu tiênKiểm tra chữ, link của nút trên website có bị đổi không, sửa rule cho khớp
Bắn nhiềuTrung bình 3 ngày gần nhất gấp từ 3 lần kỳ trước trở lên và đạt ít nhất 100 lượt. Chỉ xét khi báo cáo hiển thị theo ngày, nên không có khi xem "Hôm nay"Điều kiện khớp có thể đang rộng hơn dự định, thu hẹp lại
Còn click sau khi gỡRule không còn trong bản publish nhưng vẫn có lượt bấm trong khoảng đang xem (kể cả lượt bấm trước lúc gỡ)Trình duyệt khách còn giữ cấu hình cũ hoặc website còn chạy bản mã nhúng cũ. Chờ thêm, hoặc cập nhật mã nhúng

Bấm một dòng để mở Chi tiết click rule:

  • Điều kiện khớp: mô tả bằng lời, có nút Xem cấu hình kỹ thuật.
  • Số liệu rule: Click, Khách bấm, Phiên có bấm, Click / phiên, Khách đã định danh, Trang có bấm.
  • Xu hướng click: kỳ này so với kỳ trước.
  • Rule này được bấm ở đâu, bởi ai: bấm ở trang nào, chữ trên nút, dẫn tới đâu, thiết bị và nguồn; mỗi khối 5 giá trị đầu. Khối Chữ trên nút có ô chọn để đổi sang Thẻ HTML, Vị trí phần tử hoặc ID phần tử.
  • Khách đã bấm: tối đa 20 khách đã được nhận diện bấm nhiều nhất, kèm nút Mở Customer 360 để xem hồ sơ trước khi gọi tư vấn.
Chi tiết click rule mở từ bảng Hiệu quả click rule
Chi tiết click rule. Mở bằng cách bấm một dòng trong bảng Hiệu quả click rule (phía sau).
  1. Điều kiện khớp - rule mô tả bằng lời. Bấm Xem cấu hình kỹ thuật để xem điều kiện gốc.
  2. Số liệu rule - sáu chỉ số. Con số nhỏ bên cạnh là thay đổi so với kỳ trước.
  3. Xu hướng click - lượt bấm theo ngày, kỳ này so với kỳ trước.
  4. Rule này được bấm ở đâu, bởi ai - trang, chữ trên nút, đích đến, thiết bị và nguồn. Kéo xuống tiếp là danh sách Khách đã bấm.

Dùng click rule trong phễu ​

Ở tab Phễu chuyển đổi, chọn loại bước Bấm nút rồi chọn một click rule. Xem Tracking - Báo cáo.

Giới hạn và lưu ý ​

  • Tối đa 100 rule mỗi project, tính cả rule đang tắt.
  • Không bắt được lượt bấm bên trong khung nhúng từ trang khác (iframe), ví dụ video YouTube, khung chat, cổng thanh toán nhúng.
  • Không gửi email hay số điện thoại trong Thông tin gắn kèm event hay dữ liệu thu thập: sự kiện chứa thông tin cá nhân sẽ bị hệ thống bỏ qua. Không đặt tên thuộc tính kiểu email, phone, address, và không bật thu thập Link với các nút mailto:.

Lỗi thường gặp ​

Hiện tượngNguyên nhân thường gặpCách xử lý
Rule báo Im lặngChữ hoặc link của nút đã đổi, hoặc nút làm bằng div/spanSửa điều kiện; chọn Loại phần tử = any; Publish lại
Đã lưu rule nhưng không có lượt bấmChưa bấm PublishBấm Publish ở khung trạng thái
Publish báo lỗiCó một rule trong bản nháp sai (regex lỗi, quá dài, thiếu điều kiện)Sửa rule đó rồi Publish lại
Rule theo link không bao giờ khớpChọn "Chính xác" hoặc "Bắt đầu bằng" với đường dẫn như /checkoutĐổi sang Chứa, hoặc nhập địa chỉ đầy đủ có https://
Hai rule cùng khớp một nút nhưng chỉ một rule có sốMỗi lượt bấm chỉ ghi cho một ruleĐặt Độ ưu tiên nhỏ hơn cho rule cần ghi nhận
Chi tiết rule hiện "(không có)" ở chữ, linkChưa tích ô thu thập trong phần Nâng caoTích các ô cần thiết, Lưu và Publish
Vị trí phần tử hiện "(không có)" dù đã tích Vị trí clickVị trí phần tử đọc từ ô Đường dẫn selectorTích Đường dẫn selector, Lưu và Publish
Lượt bấm thiếu property lấy từ selector lân cậnChưa điền ô Lưu vào property, hoặc phần tử nằm ngoài thẻ bao ngay ngoài nútĐiền đủ Selector và Lưu vào property; nhờ lập trình viên gắn data-… lên chính nút
Giá trị thu được là [phone]Chuỗi số dài từ 9 ký tự trở lên, ví dụ giá 1.990.000đ, bị coi là số điện thoạiĐọc thuộc tính chứa số thô, ví dụ data-price
Số click thấp hơn thực tếTỷ lệ lấy mẫu nhỏ hơn 1, hoặc Tối đa event mỗi pageview quá thấpĐể trống hai ô này hoặc tăng giá trị
Sửa rule mà website chưa đổiTrình duyệt khách còn giữ cấu hình cũChờ vài phút và tải lại trang

Bước tiếp theo ​

Tài liệu hướng dẫn sử dụng nền tảng CNV CDP