網站Cookie是什麼?同意橫幅與追蹤設定重點
Posted in :
網站 Cookie 是什麼?它是網站伺服器傳送給瀏覽器、由瀏覽器保存的一小段資料,之後瀏覽器再連到同一個網站時會把它送回去,網站因此能記住登入狀態、購物車內容與語言偏好,分析與廣告工具也能藉此辨識回訪的訪客。依保存時間,可以分成工作階段結束就刪除的,以及到期才刪除的持續型兩種。訪客在同意橫幅按下「不同意」時,維持網站運作的項目和分析、廣告用途要分開處理,Google 的同意聲明模式就是讓代碼依訪客選擇調整行為的機制。
瀏覽器怎麼保存與送回 Cookie
依 MDN 的說明,伺服器可以在回應中傳送 Set-Cookie 標頭,每個標頭設定一筆;瀏覽器保存後,會在之後的請求中把它們傳回給同一個伺服器。這段資料本身不是程式,常見內容是一組識別碼或設定值,網站拿到識別碼後,再到自己的資料庫找出對應的登入狀態或購物車。設定時可以加上屬性:
- Expires 或 Max-Age:指定到期時間,沒有指定的就屬於工作階段類型。
- Secure:只透過 HTTPS 的加密請求傳送。
- HttpOnly:不能被 JavaScript 讀取,只在送到伺服器時使用,常用來保護登入狀態。
因為它會跟著每個請求送出,MDN 建議一般的瀏覽器端資料儲存改用 Web Storage 或 IndexedDB,只把伺服器需要讀取的資訊放在這裡。
工作階段型與持續型怎麼區分
| 類型 | 何時刪除 | 常見用途 |
|---|---|---|
| 工作階段型 | 沒有設定 Expires 或 Max-Age,目前工作階段結束時刪除 | 登入狀態、結帳流程中的暫存資訊 |
| 持續型 | 到了 Expires 指定的日期,或經過 Max-Age 指定的時間後刪除 | 記住語言偏好、分析工具辨識回訪訪客 |
「工作階段結束」由瀏覽器決定,MDN 提到有些瀏覽器重新啟動時會還原工作階段,這類資料可能因此持續存在。持續型的例子是 GA4:官方說明 GA4 代碼用第一方 Cookie 識別不重複使用者與工作階段,其中 _ga 用來區分使用者,預設效期為兩年。
另一種分法看是誰設定的。Chrome 說明中心的定義是:由網址列顯示的網站建立的是第一方 Cookie(first-party cookie),由其他網站建立的是第三方 Cookie,後者的用途與瀏覽器限制另見第三方 Cookie 是什麼。
網站常見的用途與分類
MDN 把用途歸成三類:會話管理(登入狀態、購物車)、個人化(語言、介面主題等偏好)、追蹤(記錄與分析使用者行為)。放到企業網站上,可以再細分成同意橫幅常用的類別,也正好對應 Google 同意聲明模式的類型:
- 必要與安全:登入驗證、防詐欺,對應 security_storage。
- 功能:記住語言或地區設定,對應 functionality_storage;推薦內容等個人化對應 personalization_storage。
- 分析:GA4 這類流量分析工具,對應 analytics_storage。
- 廣告:廣告成效評估與再行銷,對應 ad_storage;ad_user_data 控制能否為廣告用途把使用者資料傳給 Google,ad_personalization 控制個人化廣告。
容易漏列的是代碼管理工具的轉換連接器:它會把到達網頁網址中的廣告點擊資訊,存進網頁所屬網域的第一方 Cookie 與瀏覽器本機儲存空間,盤點時也要列進廣告類別。
同意橫幅要給訪客哪些選擇
MDN 整理相關法規時,列出幾項常見要求:通知使用者網站使用了這類技術、允許使用者拒絕其中部分或全部、讓使用者不接收也能使用大部分服務。橫幅設計可以檢查:
- 「同意」與「不同意」同樣容易點選,不要只放一個「我知道了」。
- 提供分類設定,讓訪客可以只開啟分析、不開啟廣告。
- 記住訪客的選擇。Google 開發者文件建議使用者表示同意後保留選擇,並在後續頁面呼叫更新指令。
- 在頁尾留入口,讓訪客隨時改變選擇。
- 附上隱私權政策連結,內容要和實際使用的工具一致,寫法可參考隱私權政策範本的檢查清單。
各地區規範不同,Google 也建議依區域設定預設狀態。網站是否需要橫幅、預設要不要先阻擋,請以當地法規或專業意見為準。
不同意使用 Cookie 後,分析與廣告會怎樣
這取決於網站怎麼實作同意聲明模式。Google 開發者文件分成兩種:
- 基本同意聲明模式:訪客與橫幅互動前不載入 Google 代碼;訪客不同意,就不會向 Google 傳送任何資料。
- 進階同意聲明模式:開啟網站時就載入代碼,同意狀態為拒絕時改送不含 Cookie 的評估資料。GA4 說明中心指出,此時不會讀寫 Google Analytics Cookie,這些連線偵測資料會用於行為與轉換模擬,填補資料缺口。
對報表的影響是:不同意的訪客不會被辨識成回訪者,也不會進入再行銷名單,資源符合資格條件時,GA4 的部分數字會以模擬補足。Meta 像素(舊稱 Facebook Pixel)要另外處理,Meta 開發者文件提供撤回同意的指令,呼叫後會暫停傳送像素事件,而且每一頁都要呼叫。只把 Google 代碼接上同意狀態、其他代碼照常觸發,是常見的漏洞。
用代碼管理工具串接同意狀態的步驟
- 盤點代碼:列出網站載入的分析、廣告、客服與熱圖代碼,標記各自的類別。
- 決定橫幅來源:代碼管理工具的社群範本庫中有同意聲明管理平台(CMP)提供的範本,Google 建議使用代碼管理工具的網站以 CMP 處理同意狀態更新。
- 先設定預設狀態:在每個網頁、任何傳送評估資料的指令之前設定預設值,需要時依區域分別設定。
- 訪客選擇後更新:送出更新指令,並在後續頁面套用同一個選擇。
- 逐一設定代碼:在容器設定的「其他設定」中選取「啟用同意聲明總覽」。Google Ads、Google Analytics 這類代碼有內建同意聲明檢查,其他代碼可設為「需要額外同意聲明才能觸發代碼」,基本操作見GTM 教學。
- 驗證:用瀏覽器開發人員工具的 Cookie 窗格,按下不同意後重新載入頁面,確認沒有出現 _ga 開頭等分析與廣告項目;測試前先清除網站既有的 Cookie。採用進階同意聲明模式時,Google 代碼在拒絕狀態下仍會送出不含 Cookie 的評估資料,屬於預期行為,不代表設定失敗。
常見問題
清除瀏覽器的 Cookie 之後會怎樣?
網站會把你當成新的訪客,登入狀態、購物車與偏好設定可能要重新設定;分析工具也可能把這次造訪算成新的使用者,回訪數據會因此偏低。
Cookie 和 localStorage 有什麼不同?
兩者都存在瀏覽器裡,但前者會隨請求送回伺服器,localStorage 只在瀏覽器端由 JavaScript 讀取,不會自動附在請求中,適合存放伺服器不需要的資料。
網站一定要放同意橫幅嗎?
取決於網站面對的地區與使用的工具。部分地區要求在裝置上儲存或讀取資訊前先取得同意;網站實際是否需要,請以當地法規或專業意見為準。
保存期限可以自己調整嗎?
可以。網站設定時就能指定 Expires 或 Max-Age。以 GA4 為例,官方說明可以覆寫預設的 Cookie 到期時間,調整後要同步修改隱私權政策中的保存說明。
訪客改變主意時,網站要怎麼處理?
在頁尾提供重新開啟偏好設定的入口,訪客改選後立即送出新的同意狀態並保存。訪客撤回同意時,也可以一併刪除已寫入的分析或廣告識別資料。
本文由京采數位科技整理。我們自 2005 年起提供官網設計、系統開發與 Google SEO 服務,實際案例可見成果與案例。
想直接討論你自己的網站狀況,或需要一份初步的搜尋機會評估?
相關主題
下一步
建議先列出網站上所有分析、廣告與客服代碼,確認各自寫入了哪些資料,再決定同意橫幅的分類與預設狀態。京采的轉換優化與數據追蹤服務可以協助盤點代碼、在代碼管理工具設定同意聲明模式與各代碼的觸發條件,並檢查訪客拒絕後是否仍寫入追蹤用的 Cookie。想討論你的網站該怎麼設定,歡迎與我們聯繫。

