Halaman ini menjelaskan peristiwa pengguna untuk aplikasi penelusuran dan rekomendasi, termasuk jenis peristiwa pengguna, persyaratan, dan contoh untuk jenis peristiwa pengguna.
Jenis aplikasi berikut mendukung peristiwa pengguna:
- Aplikasi media: Aplikasi penelusuran dan rekomendasi media. Untuk informasi selengkapnya, lihat Tentang dokumen media dan penyimpanan data.
- Aplikasi generik: Aplikasi penelusuran dan rekomendasi yang tidak bergantung pada vertikal. Untuk mengetahui informasi selengkapnya tentang jenis data yang terdiri dari aplikasi generik, lihat Tentang aplikasi dan penyimpanan data.
Tabel berikut mencantumkan jenis aplikasi yang memerlukan peristiwa pengguna. Google merekomendasikan agar Anda mengupload peristiwa pengguna untuk semua jenis aplikasi. Makin banyak peristiwa pengguna, makin baik kualitas penelusuran dan rekomendasi.
Jenis aplikasi | Apakah peristiwa pengguna diperlukan? |
---|---|
Rekomendasi media | Ya |
Penelusuran media | Tidak, tetapi sangat direkomendasikan |
Rekomendasi umum | Tidak, tetapi sangat direkomendasikan |
Penelusuran umum | Tidak, tetapi sangat direkomendasikan |
Untuk mendapatkan bantuan dalam merekam peristiwa pengguna, lihat Merekam peristiwa pengguna real-time.
Bergantung pada jenis aplikasi penelusuran atau rekomendasi yang Anda gunakan, pilih salah satu dari opsi berikut untuk melihat detail peristiwa pengguna yang relevan:
Jenis peristiwa pengguna
Anda dapat merekam jenis peristiwa pengguna berikut saat pengguna akhir menjelajahi situs Anda:
Nama peristiwa pengguna | Tindakan pengguna |
---|---|
view-category-page |
Melihat halaman kategori, seperti Beranda > TV > Drama, Beranda > Film > Action. |
view-item |
Melihat detail dokumen. |
view-home-page |
Melihat halaman beranda. |
search |
Menelusuri penyimpanan data. |
Untuk informasi mendetail tentang objek UserEvent
, lihat
referensi API UserEvent
.
Contoh dan skema jenis peristiwa pengguna
Bagian ini memberikan format data untuk setiap jenis peristiwa yang didukung oleh rekomendasi media aplikasi umum.
Contoh untuk Pixel JavaScript disediakan. Untuk BigQuery, skema tabel lengkap untuk setiap jenis disediakan.
Untuk semua jenis peristiwa pengguna, userId
bersifat opsional.
Perhatikan bahwa:
- Kolom
tagIds
hanya diperlukan jika Anda menjalankan eksperimen A/B. - Kolom
attributionToken
bersifat opsional; kolom ini digunakan untuk mengukur performa. Peristiwasearch
danview-item
yang dihasilkan dari rekomendasi media klik harus memiliki token atribusi untuk menautkan peristiwa kembali ke rekomendasi yang menghasilkannya.
Untuk mengetahui detail selengkapnya tentang objek peristiwa pengguna, lihat
dokumentasi referensi UserEvent
API.
view-category-page
Berikut adalah format peristiwa pengguna view-category-page
.
Objek halaman kategori tampilan minimum yang diperlukan
Contoh berikut hanya menampilkan kolom yang diperlukan dari format peristiwa pengguna
view-category-page
.
Meskipun biasanya hanya ada satu kategori yang terkait dengan halaman, kolom pageCategories
juga mendukung hierarki kategori, yang dapat Anda berikan sebagai daftar.
Piksel JavaScript
var user_event = { "eventType": "view-category-page", "userPseudoId": "user-pseudo-id", "eventTime": "2020-01-01T03:33:33.000001Z", "pageInfo": { "pageCategory": "category1 > category2" } };
BigQuery
Ini adalah skema JSON lengkap untuk jenis peristiwa pengguna ini. Tentukan skema ini saat membuat tabel untuk jenis peristiwa pengguna ini di BigQuery.
Mode untuk kolom wajib diisi ditetapkan ke REQUIRED
atau REPEATED
. Mode untuk
kolom opsional ditetapkan ke NULLABLE
.
Perhatikan bahwa eventTime
diperlukan untuk mengimpor peristiwa dengan
BigQuery. eventTime
adalah string dengan format Stempel Waktu.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageviewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageCategory", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "tagIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributes", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "example_text_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "text", "type": "STRING", "mode": "REPEATED" } ] }, { "name": "example_number_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "numbers", "type": "NUMERIC", "mode": "REPEATED" } ] } ] } ]
view-item
Berikut adalah format data peristiwa pengguna view-item
.
Objek item tampilan minimum yang diperlukan
Contoh berikut hanya menampilkan kolom yang diperlukan dari format peristiwa pengguna
view-item
.
Pada umumnya, documents
berisi detail untuk dokumen terkait.
Piksel JavaScript
var user_event = { "eventType": "view-item", "userPseudoId": "user-pseudo-id", "eventTime": "2020-01-01T03:33:33.000001Z", "documents": [{ "id": "document-id" }] };
BigQuery
Ini adalah skema JSON lengkap untuk jenis peristiwa pengguna ini. Tentukan skema ini saat membuat tabel untuk jenis peristiwa pengguna ini di BigQuery.
Mode untuk kolom wajib diisi ditetapkan ke REQUIRED
atau REPEATED
. Mode untuk
kolom opsional ditetapkan ke NULLABLE
.
Perhatikan bahwa eventTime
diperlukan untuk mengimpor peristiwa dengan
BigQuery. eventTime
adalah string dengan format Stempel Waktu.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageviewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "tagIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributes", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "example_text_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "text", "type": "STRING", "mode": "REPEATED" } ] }, { "name": "example_number_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "numbers", "type": "NUMERIC", "mode": "REPEATED" } ] } ] } ]
view-home-page
Berikut adalah format peristiwa pengguna view-home-page
.
Objek lihat halaman beranda minimum yang diperlukan
Contoh berikut hanya menampilkan kolom yang diperlukan dari format peristiwa pengguna
view-home-page
.
Piksel JavaScript
var user_event = { "eventType": "view-home-page", "userPseudoId": "user-pseudo-id", "eventTime": "2020-01-01T03:33:33.000001Z", };
BigQuery
Ini adalah skema JSON lengkap untuk jenis peristiwa pengguna ini. Tentukan skema ini saat membuat tabel untuk jenis peristiwa pengguna ini di BigQuery.
Mode untuk kolom wajib diisi ditetapkan ke REQUIRED
atau REPEATED
. Mode untuk
kolom opsional ditetapkan ke NULLABLE
.
Perhatikan bahwa eventTime
diperlukan untuk mengimpor peristiwa dengan
BigQuery. eventTime
adalah string dengan format Stempel Waktu.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageviewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" }, { "name": "quantity", "type": "INT64", "mode": "NULLABLE" } ] }, { "name": "tagIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributes", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "example_text_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "text", "type": "STRING", "mode": "REPEATED" } ] }, { "name": "example_number_attribute", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "numbers", "type": "NUMERIC", "mode": "REPEATED" } ] } ] } ]
search
Berikut adalah format peristiwa pengguna search
.
Objek penelusuran minimum yang diperlukan
Contoh berikut hanya menampilkan kolom yang diperlukan dari format peristiwa pengguna
search
.
Setidaknya salah satu kolom searchQuery
atau pageCategory
harus ada:
Berikan
searchQuery
untuk peristiwa penelusuran saat pengguna memasukkan kueri teks.Berikan
pageCategory
saat pengguna membuka item yang menarik dengan menjelajah, yaitu dengan mengklik kategori, bukan dengan memasukkan kueri teks.
documents
harus menyertakan daftar ID dokumen yang ditampilkan kepada pengguna akhir di
halaman hasil penelusuran.
Piksel JavaScript
var user_event = { eventType: "search", userPseudoId: "user-pseudo-id", eventTime: "2020-01-01T03:33:33.000001Z", searchInfo: { searchQuery: "search-query", }, pageInfo: { pageCategory: "category1 > category2", }, attributionToken: "attribution-token", documents: [ { id: "document-id1", }, { id: "document-id2", }, ] };
BigQuery
Ini adalah skema JSON lengkap untuk jenis peristiwa pengguna ini. Tentukan skema ini saat membuat tabel untuk jenis peristiwa pengguna ini di BigQuery.
Mode untuk kolom wajib diisi ditetapkan ke REQUIRED
atau REPEATED
. Mode untuk
kolom opsional ditetapkan ke NULLABLE
.
Perhatikan bahwa eventTime
diperlukan untuk mengimpor peristiwa dengan
BigQuery. eventTime
adalah string dengan format Stempel Waktu.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "userPseudoId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "searchInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "searchQuery", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "pageInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "pageCategory", "type": "STRING", "mode": "NULLABLE" } ] }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "documents", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" } ] } ]
Tentang informasi pengguna
userPseudoId
mewakili ID pengguna unik dan diperlukan saat Anda
mencatat peristiwa pengguna.
Informasi pengguna (UserInfo
) yang disertakan saat Anda merekam peristiwa pengguna berisi nilai userPseudoId
dan, jika tersedia, nilai userId
.
userId
bersifat opsional dan dapat digunakan sebagai ID unik dan persisten untuk
pengguna di seluruh perangkat setiap kali pengguna login ke situs Anda. Saat Anda merekam
userId
untuk pengguna,
aplikasi penelusuran dan rekomendasi Anda
dapat menghasilkan hasil yang lebih dipersonalisasi untuk satu pengguna di beberapa perangkat,
seperti perangkat seluler dan browser web.
Tentang stempel waktu
Saat Anda merekam peristiwa pengguna, pastikan untuk menyertakan stempel waktu yang akurat saat peristiwa terjadi. Stempel waktu yang akurat memastikan peristiwa Anda disimpan dalam
urutan yang benar. Stempel waktu dicatat secara otomatis untuk peristiwa yang dikumpulkan menggunakan Piksel JavaScript. Saat mengimpor peristiwa, Anda harus memberikan stempel waktu di kolom eventTime
dalam format yang ditentukan oleh RFC 3339.
Langkah berikutnya
- Pelajari cara mencatat peristiwa pengguna.