YouTube動画をyoutube-nocookie.comで埋め込むと何が変わるのか
youtube-nocookie.comとは
youtube-nocookie.com
は、YouTube埋め込みプレーヤーをプライバシー強化モードに切り替えるためのURLとされている。
YouTube動画を埋め込む際のURLを https://www.youtube.com/embed/動画ID
から https://www.youtube-nocookie.com/embed/動画ID
のようにすると、YouTube埋め込みプレーヤーのプライバシー強化モードが有効になるのだが、具体的に何が変わるのかを調べてみた。
プライバシー強化モードとは
YouTubeのプライバシー強化モードとは、YouTube動画を埋め込む際に、視聴情報をもとにしたパーソナライズ(関連動画や広告のカスタマイズ)をしないモード。URLが示す通り、動作上Cookieを使わなくなる。
YouTube 埋め込みプレーヤーのプライバシー強化モードは、埋め込んだ YouTube コンテンツの視聴情報が、視聴者の YouTube でのブラウジング体験に影響を与えないようにするための機能です。つまり、プライバシー強化モードの埋め込みプレーヤーで表示された動画を視聴しても、プライバシー強化モードの埋め込みプレーヤー内や視聴者の今後の YouTube 視聴体験において、その視聴情報が YouTube のブラウジング体験のカスタマイズに使用されることはありません。
プライバシー強化モードの埋め込みプレーヤーで表示される動画に広告が掲載される場合も、同様に広告はカスタマイズされません。また、プライバシー強化モードの埋め込みプレーヤーに表示される動画の視聴情報は、サイト外またはアプリ外の視聴者に表示される広告のカスタマイズにも使用されません。
プライバシー強化モードを有効にする - YouTubeヘルプ
Cookie, LocalStorageのセット状況
実際にHTML上でiframeを使ってYouTube動画を埋め込んだ際に、youtube.com
とyoutube-nocookie.com
で、CookieとLocalStorageがどのようにセットされるかを調べた。
TYPE | 名前 | ドメイン | 目的 | youtube | youtube-nocookie |
---|---|---|---|---|---|
Cookie | VISITOR_INFO1_LIVE | .youtube.com | 機能,広告 | セットされる | セットされない |
Cookie | YSC | .youtube.com | 機能 | セットされる | セットされない |
Cookie | IDE | .doubleclick.net | 広告 | セットされる | セットされない |
Local Storage | yt-remote-device-id | www.youtube.com | 機能? | セットされる | セットされる |
Local Storage | yt-remote-connected-devices | www.youtube.com | 機能? | セットされる | セットされる |
Local Storage | yt-player-bandwidth | www.youtube.com | 機能? | セットされる | セットされる |
Local Storage | yt-player-headers-readable | www.youtube.com | 機能? | セットされる | セットされる |
Local Storage | yt-player-bandaid-host | www.youtube.com | 機能? | セットされる | セットされる |
上図の通り、youtube-nocookie.com
で動画を埋め込んだ場合は、Cookieが一切セットされていないことがわかる。(一方でLocalStorageはどちらにおいても保存されていた)
Googleの説明では、上記のうちVISITOR_INFO1_LIVE
とIDE
が広告に利用されているので、youtube-nocookie.com
を使って動画を埋め込めば、広告目的でユーザーを追跡するCookieはセットされないことになる。(LocalStorageについては説明を見つけることができなかったが、全て機能のために利用されていると推測している)
またYSC
はセッションクッキーなので、永続化はされず、ユーザーがブラウザを閉じれば削除される。
youtube-nocookie.com
を利用する方法
YouTube IFrame Player APIから YouTubeのIFrame Player APIからyoutube-nocookie.com
を利用したい場合、new YT.Player()
でプレイヤーのインスタンスを作る際のhost:
パラメーターにhttps://www.youtube-nocookie.com
を指定することで動画のロード先を変更することができる。
var player = new YT.Player('player', {
height: '390',
width: '640',
videoId: 'M7lc1UVf-VE',
host: 'https://www.youtube-nocookie.com'
});
しかしこの場合は、APIのscriptをhttps://www.youtube.com/iframe_api
から読み込む際にCookieがセット(VISITOR_INFO1_LIVE,YSC)されてしまう。youtube.comのCookieを一切セットしないことが目的なのであれば、IFrame Player APIを使わない実装にする必要がある。
参考
- Is it possible to disable cookies for YouTube API iFrame Player
- Disable cookies when using the YouTube IFrame Player API script with the youtube-nocookie.com domain
Googleの利用するCookieの利用目的説明リンク
以下のリンクで、GoogleにおけるCookie利用目的を説明している。
Discussion