Appearance
Đo chuyển đổi cho quảng cáo Facebook
Khi chạy quảng cáo Facebook, bạn muốn Meta biết ai đã đăng ký học sau khi bấm quảng cáo để thuật toán tìm thêm người giống vậy. Hệ thống báo sự kiện ghi danh khoá học về Meta bằng hai đường song song:
| Đường | Chạy ở đâu | Ưu điểm | Hạn chế |
|---|---|---|---|
| Pixel qua Google Tag Manager | Trình duyệt của học viên, ngay lúc ghi danh | Tức thời, phủ cả người đã có tài khoản từ trước | Bị trình chặn quảng cáo và iOS chặn một phần |
| Conversions API | Máy chủ, mỗi ngày một lần | Không bị trình duyệt chặn; gửi kèm thông tin đối sánh (email, số điện thoại đã mã hoá, IP, trình duyệt) | Chỉ phủ lượt có mã click Facebook (xem Ai được gửi); gửi trễ tối đa khoảng một ngày |
Hai đường gửi cùng một mã sự kiện cho mỗi lượt ghi danh, nên Meta tự gộp làm một, không đếm đôi. Bạn có thể chỉ làm Phần 1 (Pixel), nhưng làm cả hai thì số liệu đầy đủ hơn.
Chạy cả quảng cáo Google?
Cùng khối cấu hình này có phần Google Ads — xem Đẩy chuyển đổi về Google Ads.
Link quảng cáo vẫn nên gắn UTM
UTM (?utm_source=facebook&utm_campaign=...) phục vụ báo cáo trong hệ thống, xem Link theo dõi nguồn (UTM). Còn Meta ghép chuyển đổi với quảng cáo bằng mã fbclid do Facebook tự gắn vào link khi có người bấm, bạn không cần làm gì thêm.
Chuẩn bị
- Website đã cài Google Tag Manager (dán mã GTM vào ô Mã header ở Cài đặt > Chung > Thương hiệu & trang chủ, mục Mã chèn thêm (header/footer)), và trong GTM đã có thẻ Pixel cơ bản (thẻ gọi
fbq('init', '<Pixel ID>')). - Với Phần 2: nhờ bộ phận kỹ thuật bật module Attribution và module Chuyển đổi quảng cáo cho trung tâm, đồng thời bật lịch gửi hằng ngày trên máy chủ.
- Tài khoản của bạn cần quyền cấu hình chuyển đổi quảng cáo (
configure_ads_conversions). Vai tròadminvàmarketercó sẵn quyền này.
Phần 1: Pixel qua Google Tag Manager
Mỗi khi một người tự ghi danh thành công trên website (khoá miễn phí, học thử, nhập mã ghi danh, hoặc đơn 0 đồng nhờ mã giảm giá 100%), trang web đẩy sự kiện sau vào dataLayer:
js
{
event: 'course_enrolled',
event_id: 'enrollment:123', // mã của lượt ghi danh, dùng để Meta gộp với Conversions API
course_id: '46',
course_name: 'Lập trình Python cơ bản',
enroll_method: 'free' // free, trial, code, payment
}Sự kiện được đẩy đúng một lần cho mỗi lượt ghi danh. Tải lại trang không đẩy lại.
Bạn chỉ cần dạy GTM gọi Pixel khi thấy sự kiện này:
Tạo biến. Trong GTM, vào Biến > Biến do người dùng xác định > Mới, chọn loại Biến lớp dữ liệu (Data Layer Variable). Tạo hai biến:
- Tên
course_id, Tên biến lớp dữ liệu làcourse_id. - Tên
event_id, Tên biến lớp dữ liệu làevent_id.
- Tên
Tạo trình kích hoạt. Vào Trình kích hoạt > Mới, chọn Sự kiện tùy chỉnh (Custom Event), Tên sự kiện là
course_enrolled.Tạo thẻ. Vào Thẻ > Mới, chọn HTML tùy chỉnh, dán đoạn dưới đây và gắn trình kích hoạt ở bước 2:
html<script> fbq('track', 'CompleteRegistration', {content_ids: [{{course_id}}], value: 0, currency: 'VND'}, {eventID: {{event_id}}}); </script>Trong phần Cài đặt nâng cao > Trình tự gắn thẻ, chọn cho thẻ này chạy sau thẻ Pixel cơ bản.
Kiểm tra. Bấm Xem trước trong GTM, mở website, ghi danh thử một khoá miễn phí bằng một tài khoản thử. Trong cửa sổ Tag Assistant phải thấy sự kiện
course_enrolledvà thẻ vừa tạo đã chạy. Trong Meta Events Manager, tab Kiểm tra sự kiện, phải thấyCompleteRegistration.Bấm Gửi (Publish) để xuất bản vùng chứa GTM.
Giữ đúng tên sự kiện và eventID
Tên phải là CompleteRegistration và phải có {eventID: {{event_id}}}. Sai một trong hai thì Meta không gộp được với bản gửi từ máy chủ ở Phần 2, và mỗi lượt ghi danh bị đếm hai lần.
Những lượt không đẩy sự kiện: quản trị hoặc giảng viên ghi danh hộ học viên (kể cả duyệt đơn xin học), hệ thống tự ghi danh (ví dụ theo lộ trình học), ghi danh vai trò dự thính hoặc giảng viên phụ trách, và ghi danh được xác nhận qua cổng thanh toán online (thông báo đến từ máy chủ của cổng, không từ trình duyệt của khách; đơn hàng đó vẫn được tính là Mua hàng). Conversions API ở Phần 2 dùng đúng cùng quy tắc này, nên hai đường luôn tính cùng một tập lượt ghi danh.
Phần 2: Conversions API
Bước 1: Lấy Dataset / Pixel ID
- Vào Meta Events Manager, chọn Nguồn dữ liệu ở cột trái.
- Chọn đúng Pixel đang dùng trong GTM.
- Mở tab Cài đặt. Dãy số ở mục ID tập dữ liệu (Dataset ID) là giá trị cần lấy. Pixel ID và Dataset ID là cùng một số.
Đối chiếu số này với số trong fbq('init', '...') của thẻ Pixel cơ bản trong GTM: hai số phải trùng nhau. Khác Pixel thì Meta không gộp được hai đường.
Bước 2: Tạo Access token
Tạo token bằng người dùng hệ thống (system user) để token có đủ quyền và không hết hạn:
- Vào Business Settings, chọn Người dùng > Người dùng hệ thống.
- Chọn Conversions API System User nếu Meta đã tạo sẵn; nếu chưa có, bấm Thêm để tạo người dùng mới với vai trò Admin.
- Bấm Gán tài sản, chọn loại Tập dữ liệu (Pixel), tick đúng Pixel ở Bước 1, bật quyền Quản lý rồi lưu.
- Bấm Tạo mã mới:
- Chọn app của doanh nghiệp.
- Thời hạn: Không bao giờ.
- Tick quyền
ads_management(vàbusiness_managementnếu có). - Sao chép token ngay: Meta chỉ hiện một lần.
Không có app nào để chọn ở bước 4?
Token của người dùng hệ thống bắt buộc gắn với một app.
- Vào Meta for Developers, bấm Tạo ứng dụng, chọn loại Doanh nghiệp, gắn vào đúng Business Manager đang giữ Pixel.
- Quay lại Business Settings, Tài khoản > Ứng dụng, gán app đó cho người dùng hệ thống ở bước 2.
- Làm lại bước 4.
Kiểm tra token trước khi dùng: dán token vào Access Token Debugger rồi bấm Debug:
- Mục Scopes phải có
ads_management. - Mục Granular scopes phải có
ads_managementkèm Pixel ID ở Bước 1.
Token tạo từ nút trong Events Manager có thể thiếu quyền
Events Manager có nút tạo mã truy cập ngay trong trang cài đặt Pixel. Đã gặp trường hợp token tạo ra chỉ có quyền read_ads_dataset_quality (đọc điểm chất lượng dữ liệu), không đủ cho Conversions API. Nếu Access Token Debugger chỉ hiện quyền này, hãy tạo lại token theo các bước ở trên.
Token cho phép gửi sự kiện vào Pixel của bạn. Chỉ dán nó vào form cấu hình (hệ thống mã hoá trước khi lưu). Không gửi token qua chat, email hay tài liệu. Lỡ lộ thì thu hồi rồi tạo token mới.
Bước 3: Nhập vào hệ thống và kiểm tra
- Vào Cài đặt > Tích hợp, mở tab Chuyển đổi quảng cáo, khối Meta (Conversions API).
- Điền Dataset / Pixel ID và Access token, bật công tắc Bật.
- (Nên làm lần đầu) Trong Events Manager, tab Kiểm tra sự kiện, lấy mã kiểm thử dạng
TEST12345và dán vào ô Mã sự kiện kiểm thử. - Bấm Lưu. Nút kiểm tra dùng giá trị đã lưu, nên phải lưu trước.
- Bấm Kiểm tra kết nối — Meta (Conversions API) ở đầu khối cấu hình. Kết quả đúng là Meta: kết nối hợp lệ. Nếu có mã kiểm thử, một sự kiện thử xuất hiện trong tab Kiểm tra sự kiện sau vài giây.
- Xoá mã sự kiện kiểm thử rồi bấm Lưu. Khi ô này còn giá trị, mọi sự kiện đi vào luồng kiểm thử và không được tính vào tối ưu quảng cáo.
Công tắc Bật ở đây khác với việc bật module: bật module mới chỉ có đường ống, bật công tắc thì dữ liệu mới bắt đầu được gửi sang Meta.
Thông tin đối sánh gửi kèm
Meta ghép chuyển đổi với người đã xem hoặc bấm quảng cáo càng tốt khi có càng nhiều thông tin về người đó. Mỗi lượt gửi kèm:
| Thông tin | Dạng gửi | Phụ thuộc công tắc bên dưới |
|---|---|---|
| Email, số điện thoại, họ, tên, mã người dùng | Đã mã hoá một chiều (SHA-256), Meta không đọc ngược được | Không |
Mã click Facebook (fbclid lúc tạo tài khoản, cookie _fbc lúc ghi danh) | Nguyên văn | Không |
Địa chỉ IP, trình duyệt (user-agent), cookie _fbp của Pixel | Nguyên văn, theo yêu cầu của Meta | Có |
| Trang khoá học nơi ghi danh | Nguyên văn | Không |
IP, trình duyệt và cookie được ghi lại ngay lúc học viên ghi danh, vì lượt gửi chạy ban đêm khi không còn ai trên trang. Hệ thống tự xoá chúng sau 30 ngày.
Công tắc Gửi kèm IP, user-agent và cookie Pixel nằm trong khối Meta, mặc định bật: Meta coi trình duyệt (user-agent) là thông tin bắt buộc với sự kiện từ website, thiếu nó thì điểm chất lượng đối sánh thấp. Tắt công tắc nếu trung tâm muốn hạn chế dữ liệu cá nhân gửi sang Meta: hệ thống ngừng ghi lại và ngừng gửi IP, trình duyệt, _fbp, kể cả với các lượt đã ghi trước đó. Mã click _fbc vẫn được gửi.
Cập nhật chính sách quyền riêng tư
IP, email và số điện thoại là dữ liệu cá nhân. Trước khi bật Conversions API, chính sách quyền riêng tư trên website của trung tâm nên nêu rõ việc chia sẻ dữ liệu này với Meta cho mục đích quảng cáo.
Sau vài ngày chạy, xem hiệu quả đối sánh ở Events Manager: mở sự kiện CompleteRegistration, mục Điểm chất lượng đối sánh (Event Match Quality) của phương thức Máy chủ.
Theo dõi việc gửi
Mỗi ngày lúc 03:30, hệ thống gửi các lượt ghi danh (và đơn hàng đã thanh toán) đủ điều kiện trong 7 ngày gần nhất (xem Ai được gửi). Xem kết quả ở Marketing > Sổ cái đẩy chuyển đổi (/admin/ads-conversion-uploads):
| Trạng thái | Nghĩa | Lượt sau |
|---|---|---|
| Đã gửi | Meta đã nhận | Không gửi lại |
| Gửi hỏng | Lỗi tạm thời (mạng, Meta quá tải) | Tự thử lại |
| Bỏ qua | Meta sẽ không bao giờ nhận (ví dụ quá 7 ngày) | Không tự thử lại; bấm Xếp lại hàng nếu đã sửa nguyên nhân |
| Chờ gửi | Đã xếp hàng, chưa có kết quả | Gửi ở lượt sau |
Sổ cái rỗng là bình thường cho tới khi bạn nhập token và có người ghi danh sau khi bấm quảng cáo.
Ai được gửi
Một lượt ghi danh được gửi qua Conversions API khi đủ cả hai điều kiện:
- Học viên tự ghi danh trên website, theo đúng quy tắc của Pixel ở Phần 1. Lượt do quản trị làm hộ, duyệt đơn xin học, hệ thống tự cấp, hoặc xác nhận qua cổng thanh toán không được gửi.
- Có mã click Facebook, từ một trong hai nguồn:
fbclidtrên link quảng cáo ở lần đầu người đó vào website, lúc tạo tài khoản; hoặc- cookie
_fbcmà Pixel lưu trong trình duyệt lúc ghi danh. Nhờ nguồn này, người đã có tài khoản từ trước rồi mới bấm quảng cáo vẫn được gửi, miễn là Pixel đã chạy trên trình duyệt của họ.
Xử lý lỗi thường gặp
| Thông báo khi bấm Kiểm tra kết nối | Nguyên nhân | Cách xử lý |
|---|---|---|
(#100) Missing Permission, bước Truy cập dataset/pixel thất bại | Token thiếu quyền ads_management trên Pixel này, hoặc token và Pixel ID thuộc hai Pixel khác nhau | Kiểm tra token bằng Access Token Debugger, tạo lại theo Bước 2, đối chiếu lại Pixel ID |
| Chưa bật hoặc chưa điền đủ thông tin. | Chưa bật công tắc Bật, thiếu ID hoặc token, hoặc chưa bấm Lưu | Điền đủ, bật, bấm Lưu rồi kiểm tra lại |
Có chữ Invalid OAuth access token hoặc Malformed access token | Token sai, bị cắt thiếu khi sao chép, hoặc đã bị thu hồi | Tạo token mới và dán lại |
Những gì không đo được
- Conversions API cần mã click Facebook. Người có tài khoản từ trước mà lúc tạo tài khoản không đến từ quảng cáo Facebook, sau đó bấm quảng cáo rồi ghi danh trên trình duyệt chặn Pixel (nên không có cookie
_fbc): cả hai đường đều không thấy lượt này. - Trình chặn quảng cáo và iOS chặn một phần sự kiện Pixel. Conversions API bù phần này cho những lượt có mã click (xem Ai được gửi).
- Meta chỉ gộp hai đường trong 48 giờ. Lịch hằng ngày gửi trong khoảng một ngày nên vẫn kịp. Một lượt Gửi hỏng được thử lại muộn hơn 48 giờ sẽ bị Meta tính là chuyển đổi riêng.
- Người đổi thiết bị (bấm quảng cáo trên điện thoại, ghi danh trên máy tính) thường không ghép được với quảng cáo.