Theo dõi chuyển đổi

Hình 2: Tổng quan về tính năng Theo dõi lượt chuyển đổi

Tổng quan

Tính năng theo dõi lượt chuyển đổi theo dõi các lượt chuyển đổi do Google khởi tạo thông qua một trong các tính năng tích hợp với Trung tâm hành động của chúng tôi. Bạn cần phải duy trì hoạt động tích hợp và đảm bảo hoạt động tích hợp đó diễn ra hiệu quả, vì điều này có thể ảnh hưởng đến thứ hạng trên một số trang nhất định. Mỗi khi Google tạo một action_link, URL cụ thể sẽ được sửa đổi để thêm một tham số truy vấn duy nhất: rwg_token. Bạn có thể lưu trữ mã thông báo và trả về các giá trị thích hợp khi người dùng hoàn tất việc đặt phòng.

Để hoàn tất quá trình tích hợp, hãy làm theo các bước sau:

  1. Phân tích cú pháp và lưu trữ rwg_token.
  2. Phân tích cú pháp và lưu trữ thông tin người bán.
  3. Trả về các giá trị rwg_tokenmerchant_changed.
  4. Kiểm thử và xác minh tính năng theo dõi lượt chuyển đổi.

Phân tích cú pháp và lưu trữ rwg_token

Để hoàn tất quá trình tích hợp, bạn cần thu thập và lưu trữ rwg_token trong tối đa 30 ngày kể từ lượt giới thiệu ban đầu của Google. Giá trị rwg_token là một chuỗi đã mã hoá, chứa siêu dữ liệu về đường liên kết và thông tin người bán đã tạo action_link đó.

Phân tích cú pháp mã thông báo

Khi người dùng được chuyển đến trang đặt phòng, một rwg_token mới sẽ được thêm vào URL được cung cấp. Trong trang đặt phòng, bạn cần phân tích cú pháp giá trị mã thông báo.

Ví dụ sau đây cho thấy cách phân tích cú pháp rwg_token để theo dõi ở cấp thiết bị thông qua trình duyệt.

var query = location.search.substring(1);
var params = query.split('&');
var rwgToken = undefined;
for (var i = 0; i < params.length; ++i) {
  var pair = params[i].split('=');
  if (pair[0] == 'rwg_token') {
    rwgToken = decodeURIComponent(pair[1]);
    break;
  }
}

Mã thông báo được thêm vào URL của bạn được mã hoá, hãy xem ví dụ sau về rwg_token. Sử dụng mã thông báo mẫu này để đảm bảo bạn phân tích cú pháp mã thông báo chính xác, cùng với mọi ký tự đặc biệt như =.

AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ==

Lưu trữ mã thông báo

Khi lưu trữ rwg_token, bạn có thể triển khai tính năng theo dõi lượt chuyển đổi ở hai cấp:

  • Cấp thiết bị
  • Cấp người dùng

Bạn có thể lưu trữ mã thông báo ở bất kỳ cấp nào, nhưng bạn phải lưu trữ mã thông báo trong 30 ngày sau khi giới thiệu ban đầu.

Ví dụ sau đây cho thấy tính năng theo dõi lượt chuyển đổi ở cấp thiết bị. Bạn có thể lưu trữ giá trị mã thông báo trong trình duyệt bằng cookie của bên thứ nhất. Ví dụ này giả định rằng bạn đã phân tích cú pháp giá trị mã thông báo thành một biến. Hãy nhớ cập nhật rootdomain.com bằng miền của bạn.

if (typeof rwg_token !== 'undefined') {
  document.cookie =
  "_rwg_token=" + rwg_token + ";max-age=2592000;domain=rootdomain.com;path=/";
}

Mỗi khi Google tạo một action_link mà bạn đã cung cấp thông qua nguồn cấp dữ liệu, URL sẽ được sửa đổi để thêm một tham số truy vấn duy nhất: rwg_token. Bạn phải lưu trữ mã thông báo này và chuyển mã thông báo đó trở lại trong sự kiện chuyển đổi.

Lưu trữ ở cấp thiết bị

Cấp thiết bị bao gồm việc sử dụng cookie trình duyệt, bộ nhớ cục bộ, bộ nhớ cục bộ của ứng dụng hoặc bất kỳ phương thức nào khác có thể duy trì mã thông báo trong khoảng thời gian phân bổ 30 ngày. Mã thông báo được lưu trữ cục bộ trên thiết bị của người dùng. Do đó, sự kiện chuyển đổi không thể phân bổ đúng cách nếu người dùng:

  • Thay đổi thiết bị mà họ sử dụng.
  • Xoá bộ nhớ cục bộ hoặc cookie.
  • Sử dụng trình duyệt ở chế độ riêng tư hoặc ẩn danh.

Khi sử dụng tính năng theo dõi lượt chuyển đổi ở cấp thiết bị, bạn cần triển khai lại sự kiện chuyển đổi trên mọi thiết bị được hỗ trợ, bao gồm cả thiết bị di động.

Lưu trữ ở cấp người dùng

Cấp người dùng lưu giữ mã thông báo trong cơ sở dữ liệu ứng dụng của bạn, thông qua hệ thống phân tích phía máy chủ hoặc các hệ thống phía máy chủ khác. Mã thông báo được lưu trữ ở phía máy chủ. Do đó, sự kiện chuyển đổi vẫn phân bổ chính xác sau khi người dùng đăng nhập lại.

Khi sử dụng tính năng theo dõi lượt chuyển đổi ở cấp người dùng dựa trên cấu trúc hệ thống, bạn có thể triển khai sự kiện chuyển đổi một lần ở phía máy chủ và sử dụng lại sự kiện đó trên tất cả thiết bị được hỗ trợ.

Làm mới mã thông báo

Khi Google giới thiệu người dùng đến cùng một người bán, mã thông báo hiện có đã được lưu trữ sẽ được thay thế bằng mã thông báo mới từ lượt giới thiệu gần đây nhất. Sau khi thay thế mã thông báo, thời lượng phân bổ 30 ngày của bộ nhớ mã thông báo sẽ đặt lại và mọi lượt chuyển đổi mới cho người bán này sẽ được phân bổ cho mã thông báo mới nhất.

Hãy tham khảo phần Yêu cầu đối với mô hình phân bổ lượt chuyển đổi để biết thêm thông tin chi tiết.

Phân tích cú pháp và lưu trữ thông tin người bán

Khi người dùng được chuyển hướng đến trang đặt phòng, bạn cần triển khai logic có thể tìm và ghi lại thông tin chi tiết về người bán. Thông thường, các đối tác sẽ thêm siêu dữ liệu của người bán hoặc merchant_id vào đường liên kết hành động của họ và sử dụng siêu dữ liệu đó để xác định và lưu trữ thông tin của người bán.

Bạn nên lưu trữ merchant_id hoặc giá trị nhận dạng đã chọn cùng với rwg_token. Khi người dùng xác nhận đặt phòng, bạn có thể tham khảo ý kiến của người bán trước khi gửi yêu cầu chuyển đổi hoàn chỉnh. Tương tự như bộ nhớ mã thông báo, bạn phải lưu thông tin chi tiết về người bán cùng với mã thông báo trong 30 ngày sau khi giới thiệu ban đầu.

Ví dụ sau đây sửa đổi rwg_token đã lưu trước đó. Phương thức này giả định rằng bạn đã phân tích cú pháp thông tin người bán từ siêu dữ liệu trong URL được cung cấp và lưu thông tin đó dưới dạng merchant_id hoặc so khớp thông tin đó với merchant_id hiện có.

if (typeof rwg_token !== 'undefined') {
  document.cookie =
  "_rwg_token=" + rwg_token + ";_merchant_id=" + merchantid + ";max-age=2592000;domain=rootdomain.com;path=/";
}

Trả về giá trị rwg_tokenmerchant_changed

Khi người dùng hoàn tất một lượt đặt phòng bắt đầu từ một lượt giới thiệu action_link, bạn cần gửi một yêu cầu POST qua HTTP đến điểm cuối chuyển đổi. Có hai điểm cuối:

  • Môi trường phát hành công khai: https://www.google.com/maps/conversion/collect
  • Môi trường hộp cát: https://www.google.com/maps/conversion/debug/collect

Khi gửi một sự kiện chuyển đổi, bạn phải đưa vào rwg_token đã lưu trữ và giá trị merchant_changed1 hoặc 2. Để biết thêm thông tin chi tiết về merchant_changed, hãy xem phần Trả về giá trị thay đổi của người bán.

Nội dung POST phải là một đối tượng được mã hoá JSON ở định dạng:

{
  "conversion_partner_id": "<partnerId>",
  "rwg_token": "<rwg_token_val>",
  "merchant_changed": "1|2"
}
{
  "conversion_partner_id": "XXXXXXX",
  "rwg_token": "AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ==",
  "merchant_changed": "2"
}

Ví dụ sau đây bao gồm tính năng theo dõi lượt chuyển đổi ở cấp thiết bị bằng một cookie trên thiết bị của người dùng, được viết bằng JavaScript:

const partnerId = XXXXXXXXXX;

const endpoint = `https://www.google.com/maps/conversion/collect`;

const rwgTokenCookie = document.cookie
  .split('; ')
  .find(row => row.startsWith('_rwg_token='));

if (typeof rwgTokenCookie !== 'undefined') {
  const rwgTokenVal = rwgTokenCookie.split('=')[1];
  fetch(endpoint, {
    method: "POST",
    body: JSON.stringify({
      conversion_partner_id: partnerId,
      rwg_token: rwgTokenVal,
      merchant_changed: merchantChanged
    })
  });
}

Trả về Giá trị thay đổi của người bán

Giá trị merchant_changed được dùng để xác định xem người bán có được thay đổi từ người bán chuyển hướng ban đầu hay không. Việc thay đổi người bán là điều thường thấy nếu trang đích của bạn nằm trong một nền tảng có cả những người bán khác. Trong trường hợp này, nếu người dùng được Google giới thiệu đến nền tảng của bạn và quyết định chuyển đến một người bán khác để hoàn tất việc đặt phòng, thì bạn cần biết rằng một lượt chuyển đổi đã xảy ra với một người bán riêng biệt. Bạn có thể sử dụng Boolean để xác định thay đổi về người bán, nhưng không xác định được thông tin chi tiết về người bán.

Khi quyết định giá trị nào sẽ được gán cho merchant_changed, bạn cần lấy người bán ban đầu đã lưu trong phần Phân tích cú pháp và lưu trữ thông tin người bán. Kiểm tra xem người bán có thay đổi hay không và chỉ định giá trị theo yêu cầu của bạn.

  • Yêu cầu: khi người dùng rời khỏi trang web của người bán ban đầu và hoàn tất giao dịch mua qua nền tảng của bạn với một người bán khác.
    • Giá trị thay đổi của người bán: 1
  • Yêu cầu: khi người dùng hoàn tất giao dịch thông qua người bán ban đầu.
    • Giá trị thay đổi của người bán: 2

Thử nghiệm và xác minh tính năng Theo dõi lượt chuyển đổi

Các trường hợp kiểm thử sau đây sử dụng mã thông báo kiểm thử được cung cấp trong phần Mã thông báo kiểm thử và nhằm hướng dẫn bạn thực hiện tất cả các tình huống có thể dẫn đến một sự kiện chuyển đổi. Điều này đảm bảo rằng mã thông báo được lưu trữ đúng cách, giá trị merchant_changed được đặt chính xác và sự kiện chuyển đổi được gửi khi thích hợp.

Sử dụng đường liên kết hành động hoặc URL trang đặt phòng được cung cấp trong nguồn cấp dữ liệu của bạn và chạy từng trường hợp kiểm thử bằng cách thêm Mã thông báo kiểm thử vào cuối URL. Hãy nhớ sử dụng cửa sổ trình duyệt riêng tư hoặc ẩn danh. Thao tác này sẽ xoá mọi mã thông báo hiện có liên kết với người dùng hiện tại và giúp bạn có một không gian trống để làm việc.

Trường hợp kiểm thử Mô tả kiểm thử Luồng người dùng Kết quả dự kiến
1 Người dùng hoàn tất một lượt đặt phòng không bắt nguồn từ Google. Người dùng chuyển thẳng đến trang đặt phòng mà không được Google giới thiệu hoặc không có lượt giới thiệu nào. Việc này sẽ không dẫn đến bất kỳ sự kiện chuyển đổi nào. Không có sự kiện chuyển đổi vì người dùng chưa từng truy cập vào trang đặt phòng hoặc chưa được Google giới thiệu.
2 Người dùng hoàn tất một lượt đặt phòng bắt nguồn từ Google. Người dùng tìm thấy người bán của bạn thông qua Google, được chuyển hướng đến trang đặt trước của bạn và hoàn tất việc đặt trước. Sự kiện chuyển đổi sẽ được gửi với giá trị Mã thông báo Angười bán đã thay đổi2 vì người dùng được Google giới thiệu đến trang đặt phòng.
3 Một người dùng (gốc từ Google) bắt đầu quy trình đặt phòng, nhưng bỏ dở phiên trước khi hoàn tất việc đặt phòng.

Lưu ý: Hãy giữ phiên này mở cho Bài kiểm thử 4 và 5.
Người dùng được chuyển đến trang đặt phòng của bạn nhưng phiên hoạt động kết thúc và họ không hoàn tất việc đặt phòng. Không có lượt chuyển đổi vì người dùng chưa hoàn tất việc đặt phòng, nhưng Mã thông báo B phải được lưu trữ trong 30 ngày.
4 Người dùng quay lại trang đặt phòng mà không bắt nguồn từ Google và hoàn tất việc đặt phòng.

Lưu ý: URL của luồng đặt phòng không được chứa rwg_token.
Người dùng quay lại trang đặt phòng sau Kiểm thử #4. Mã thông báo B phải được lưu trữ trong 30 ngày và mọi lượt chuyển đổi trong 30 ngày đó phải trả về một sự kiện chuyển đổi. Sự kiện chuyển đổi sẽ được gửi với giá trị Mã thông báo Bngười bán đã thay đổi2 vì người dùng đang quay lại trang đặt phòng sau khi được Google giới thiệu trước đó.
5 Người dùng hoàn tất một lượt đặt phòng mới bắt nguồn từ Google sau Kiểm thử #4. Nếu người dùng quay lại trang đặt phòng của bạn bằng một lượt giới thiệu trên Google sau một lượt giới thiệu trên Google trước đó, thì khoảng thời gian lưu trữ 30 ngày của họ sẽ được đặt lại và mã thông báo mới Mã thông báo C sẽ thay thế mã thông báo cũ Mã thông báo B. Sau đó, tất cả lượt chuyển đổi trong tương lai sẽ được phân bổ cho Mã thông báo C. Sự kiện chuyển đổi sẽ được gửi với giá trị Mã thông báo Cngười bán đã thay đổi2 vì người dùng đã hoàn tất việc đặt phòng và mã thông báo mới đã thay thế mã thông báo được lưu trước đó.

Nếu bạn có một nền tảng cho phép người dùng thanh toán qua một người bán khác, hãy thử nghiệm những điều sau.

Trường hợp kiểm thử Mô tả kiểm thử Luồng người dùng Kết quả dự kiến
6 Người dùng được Google giới thiệu đến trang đặt phòng của bạn và hoàn tất việc đặt phòng với một người bán khác. Người dùng được Google giới thiệu đến trang đặt phòng của bạn, Mã thông báo A được sử dụng, nhưng trước khi hoàn tất việc đặt phòng, họ chuyển đến một trang khác và hoàn tất việc đặt phòng với một người bán khác với người bán giới thiệu ban đầu. Sự kiện chuyển đổi sẽ được gửi vì người dùng đã hoàn tất một lượt đặt phòng bắt nguồn từ một lượt giới thiệu của Google với giá trị Mã thông báo Angười bán đã thay đổi1 vì người dùng đã hoàn tất lượt đặt phòng trong một người bán khác với người bán giới thiệu.

Trong khi kiểm thử, hãy gửi yêu cầu POST HTTP đến điểm cuối chuyển đổi. Có hai điểm cuối:

  • Môi trường phát hành chính thức: https://www.google.com/maps/conversion/collect
  • Môi trường hộp cát: https://www.google.com/maps/conversion/debug/collect

Mã thông báo kiểm thử

Để kiểm thử tính năng theo dõi lượt chuyển đổi, hãy thêm một trong các mã thông báo kiểm thử sau vào cuối đường liên kết Hành động hoặc URL trang đặt phòng mà bạn cung cấp trong nguồn cấp dữ liệu.

Mã thông báo A:

rwg_token=AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ%3D%3D

Mã thông báo B:

rwg_token=AJKvS9U2QfiQanHFQrlJxBjD0AyFany3qpaJVEWOcY4nHqY_UkLYFFDj6RIa-EXS1iEmV8gtFPG6v1cU1jnusJK66ijXXnaqkQ%3D%3D

Mã thông báo C:

rwg_token=AJKvS9VwInjZ_hGZPvBz0COVWJ5oFDzocFt9hGi7TMurlo2l71uiXP48PspPUMmRnqCUDE1mF_A5H_dMV78cBTF8jIfSQK6lEA%3D%3D

Khi gửi các sự kiện chuyển đổi thành công, bạn có thể xem các sự kiện đó được tổng hợp trong Trung tâm hành động trong trang tổng quan theo dõi lượt chuyển đổi.

conversion-tracking-dashboard

Yêu cầu đối với tính năng Phân bổ lượt chuyển đổi

Tiêu chuẩn bắt buộc của Google đối với việc phân bổ lượt chuyển đổi là khoảng thời gian phân bổ 30 ngày cho mọi lượt tương tác với đường liên kết đến hành động tại địa điểm, tại bất kỳ cửa hàng nào.

Khoảng thời gian phân bổ này có nghĩa là Google có thể gửi một sự kiện chuyển đổi trong bất kỳ trường hợp nào sau đây:

  • Người dùng nhấp vào đường liên kết dẫn đến hành động tại địa điểm và đặt hàng cho cùng một người bán trong cùng một phiên. Giá trị thay đổi của người bán = 2.
  • Người dùng nhấp vào đường liên kết hành động đặt hàng, sau đó quay lại từ một kênh khác trong khoảng thời gian phân bổ là 30 ngày để đặt hàng cho cùng một người bán. Giá trị thay đổi của người bán = 2.
  • Người dùng nhấp vào đường liên kết hành động tại địa điểm, sau đó đặt hàng tại một cửa hàng khác, trong cùng một phiên hoặc một phiên khác trong khoảng thời gian phân bổ là 30 ngày. Giá trị thay đổi của người bán = 1.

Ngoài ra, Google dự kiến sẽ gửi sự kiện chuyển đổi từ bất kỳ thiết bị nào mà người dùng có thể truy cập thông qua đường liên kết hành động tại địa điểm. Các thiết bị này bao gồm:

  • Ứng dụng web dành cho máy tính hoặc thiết bị di động.
  • Ứng dụng dành cho thiết bị di động, thông qua đường liên kết sâu trong ứng dụng hoặc ý định ứng dụng đã đăng ký cho miền của bạn.

Nếu mã thông báo được lưu trữ ở cấp người dùng, thì bạn phải cung cấp tính năng phân bổ trên nhiều thiết bị. Để biết thêm thông tin, hãy xem phần Lưu trữ ở cấp người dùng. Trong trường hợp này, người dùng nhấp vào một đường liên kết hành động từ máy tính rồi hoàn tất giao dịch trên thiết bị di động bằng cùng một tài khoản người dùng, phải kích hoạt một sự kiện chuyển đổi.

Nếu mã thông báo được lưu trữ riêng ở cấp thiết bị, chẳng hạn như trong cookie trình duyệt, thì bạn không nên cung cấp tính năng phân bổ trên nhiều thiết bị. Trong trường hợp này, mỗi thiết bị có thể có một mã thông báo riêng biệt được duy trì nếu người dùng truy cập vào một đường liên kết hành động trên thiết bị đó và mỗi thiết bị có thể tuân theo các quy tắc phân bổ riêng biệt.