Learn

URLトラッキング

URLトラッキングとは何か

URLのクエリパラメータには、流入元やキャンペーン、クリックIDが含まれることがあります。

URLは、Webページの場所を示すだけの文字列ではありません。

URLの中には、どのページを開くかだけでなく、どの広告から来たのか、どのSNSからクリックされたのか、どの利用者向けに発行されたリンクなのかを示す情報が含まれることがあります。

名前やメールアドレスを書いていなくても、URLに残ったパラメータが、流入元、検索語、キャンペーン、クリックID、紹介者、セッション情報の手がかりになることがあります。

匿名性を考えるとき、本文や画像だけを確認して、共有するURLをそのまま貼ってしまうのは危険です。

この記事では、URLトラッキングとは何か、URLのどの部分を確認すべきか、共有前にどのように判断すればよいかを整理します。

URLトラッキングとは

URLトラッキングとは、URLに付けられた情報を使って、アクセス元や利用者の行動を測定する仕組みです。

たとえば、広告、メールマガジン、SNS投稿、アフィリエイトリンク、キャンペーンページでは、URLの末尾に追加情報が付くことがあります。

この追加情報は、多くの場合 ? の後ろに置かれます。

sample.test/article?utm_source=newsletter&utm_campaign=spring

ここでの sample.test は説明用の文字列です。実在サービスの紹介ではなく、URLの構造を説明するために使っています。

? 以降の部分は、クエリ文字列と呼ばれます。クエリ文字列には、検索条件、ページ番号、商品ID、クリックID、広告ID、紹介者IDなどが入ることがあります。

URLトラッキングは、Webサイト運営者にとってはアクセス解析や広告効果測定に使われます。

しかし、匿名性の観点では、そのURLを共有した人やクリックした経路の手がかりになる場合があります。

URLのどこを見るのか

URLを確認するときは、全体をひとつの塊として見ないことが重要です。

URLには、意味の違う部分が含まれています。

部分匿名性で見るポイント
ドメインsample.testどのサイトへ接続するかを示す
パス/article/networkどのページや機能を開くかを示す
クエリ文字列?id=123&utm_source=sns検索語、識別子、追跡情報が含まれることがある
パラメータ名utm_source、ref、gclid何の情報かを推測する手がかりになる
パラメータ値newsletter、abc123流入元、個別ID、キャンペーンを示すことがある
フラグメント#section通常のHTTPリクエストではサーバーへ送られないことが多い

とくに注意するのは、クエリ文字列です。

すべてのクエリ文字列が危険というわけではありません。検索結果ページや商品ページでは、ページを正しく表示するために必要な値もあります。

一方で、共有に不要な追跡用パラメータが付いていることもあります。

重要なのは、「この値がないとページが開けないのか」「この値は誰かを識別するためのものではないか」を分けて考えることです。

よく見る追跡パラメータ

URLトラッキングでよく見る値には、一定のパターンがあります。

種類意味
UTMutm_source、utm_medium、utm_campaign流入元、媒体、キャンペーンを測定する
広告クリックIDgclid、fbclid、msclkid広告やSNSのクリックを識別する
参照元ref、referrer、sourceどこから来たかを示す
アフィリエイトaffiliate、aff、partner紹介者や提携元を示す
共有用IDshare、invite、campaign_id共有リンクや招待経路を示す場合がある
セッションらしき値session、sid、token個別の状態や認証に近い値の可能性がある

UTMやクリックIDのように、追跡目的が分かりやすいものもあります。

一方で、idtoken のような名前だけでは判断できないものもあります。id は記事IDかもしれませんし、利用者ごとに発行された識別子かもしれません。

分からない値を「たぶん大丈夫」と扱うのはよくありません。

URL共有で起きる失敗

URLトラッキングの失敗は、技術的に難しい攻撃で起きるとは限りません。

多くは、コピーしたURLをそのまま貼るだけで起きます。

失敗何が起きるか
広告経由のURLをそのまま共有する広告クリックIDやキャンペーン情報が残る
メール内のリンクをそのまま貼るメール配信用の識別情報が残ることがある
検索結果URLを共有する検索語や検索条件がURLに残ることがある
ログイン後のURLを共有するセッションや個別画面の情報が混ざることがある
を展開せずに共有する中継先や追跡の有無を確認できない

たとえば、ある人が匿名アカウントで記事を紹介するとします。

本文には個人情報を書いていません。しかし、貼ったURLにメール配信用のIDや広告クリックIDが残っていれば、そのリンクをどの経路で取得したかを示す材料になります。

それだけで本名が出るとは限りません。

ただし、、アカウント、、ログイン状態、アクセスログと組み合わさると、同じ人物らしさを強めます。

匿名性では、このような小さな手がかりを軽く見ないことが重要です。

削ってよい値と削ってはいけない値

URLのパラメータは、何でも削ればよいわけではありません。

削るとページが正しく開かなくなる値もあります。

種類扱い理由
utm_source など削れることが多いアクセス解析用で、ページ表示に不要な場合が多い
gclid、fbclid など削れることが多い広告やSNSのクリック測定用であることが多い
ref、affiliate など内容を確認する紹介情報や収益計測に関係する場合がある
page、q、id など慎重に確認するページ表示や検索条件に必要な場合がある
token、sid、session など共有しない判断を優先する個別状態や認証に近い値の可能性がある

判断の基本は単純です。

消しても同じページが開けるなら、共有に不要な値である可能性があります。

消すと別のページになったり、検索結果が変わったり、必要な情報が失われたりするなら、その値はページの内容に関係しています。

ただし、tokensession のような値が付いたURLは、そもそも公開共有に向きません。

そのURLをきれいにするより、共有用の正式なリンクを別に探したほうが安全です。

共有前の確認手順

URLを共有する前は、次の順番で確認します。

順番確認すること理由
1URL全体を確認する? 以降に不要な情報がないかを見る
2追跡らしいパラメータを探すutm、gclid、fbclid、ref などを確認する
3不明な値を分類する表示に必要な値か、識別子らしい値かを分ける
4削ったURLで開き直す同じ内容が表示されるか確認する
5短縮URLなら展開する最終的な接続先と中継を確認する

確認は、できればログインしていない状態や別ブラウザで行います。

普段のブラウザで確認すると、Cookieやログイン状態の影響で「自分には開けるが、他人には開けないURL」を共有してしまうことがあります。

匿名用途では、共有前に一度、別環境で開けるか確認するだけでも失敗を減らせます。

URLだけでは匿名性は決まらない

URLをきれいにしても、それだけで匿名になるわけではありません。

URLは手がかりのひとつです。

同じ投稿には、文章、画像、投稿時間、アカウント、通信経路、ログイン状態、過去投稿も関係します。

たとえば、URLから追跡パラメータを削っても、実名アカウントでログインしたまま投稿すれば、匿名性は弱くなります。

反対に、を使っていても、共有したURLに個別IDが残っていれば、ネットワーク対策とは別の場所で相関されます。

URL確認は、匿名性全体の中の一工程です。

まとめ

URLトラッキングとは、URLに含まれるパラメータを使って、アクセス元や行動を測定する仕組みです。

UTM、クリックID、紹介コード、短縮URL、は、共有元や流入経路の手がかりになります。

匿名性を考えるときは、本文や画像だけでなく、共有するURLも確認します。

重要なのは、削ってよい値と削ってはいけない値を分けることです。追跡用パラメータは削れることが多い一方で、検索語やページIDのように表示に必要な値もあります。

分からない値が残る場合は、安全扱いせず、共有を遅らせる、別の正式リンクを探す、別環境で確認する、という判断を取ります。

URLは小さな文字列に見えます。

しかし、匿名性では、その小さな文字列が行動の経路を示すことがあります。

関連記事