2026年8月13日、Xが「For You」タイムラインのランキングコードと表示制限(visibility filtering)の仕組みをGitHubで公開し、あわせて自分の投稿に制限ラベルが付いているかを確認できる「Under the Hood」ページのテストを始めました。
X運用を担当する人・代理店にとっては、これまで推測するしかなかったリーチ低下の理由を裏取りできる材料が初めて出た形です。
公開コードを実際に読むと、SNS上で拡散している数字の解釈にはひとつ大きな落とし穴があることも分かります。
「シャドウバンの条件が30個公開された」の中身
日本語圏では8月13日夜から「シャドウバンされる条件が公式から30個公開された」という投稿が広がり、53万回以上表示されました。
この「30個」は、おおむね実態と合っています。
公開されたリポジトリ(xai-org/x-algorithm、Apache 2.0ライセンス)の表示制限モジュールを見ると、投稿に付くラベルで投稿を落とすルールに17種類、アカウントに付くラベルで落とすルールに12種類のラベル名が登場します。
合わせて29種類。
SPAM_HIGH_RECALL(自動検知でスパムの疑いがあるもの)、MALICIOUS_URL(悪意あるリンクの疑い)、SPAM、BOUNCEといった、スクリーンショットで出回っていた名前もそのまま確認できます。
つまり噂ベースだった話が、初めて読めるコードとして出てきた。
ここまでは報道されている通りです。
コードを読むと、表示制限は「二段構え」だった
より実務に効くのは、ラベルの名前そのものよりも適用のされ方です。
公開コードでは、ホームタイムラインに適用するルールセットが2つに分かれています。
ひとつは通常のルールセット。
もうひとつは「おすすめとして、フォローしていない相手に配信するとき」だけに追加で適用されるルールセットで、こちらには26本の追加ドロップルールが並んでいます。
この構造が意味するのは単純です。
SPAM_HIGH_RECALLやMALICIOUS_URLが付いた投稿は、フォロワーのタイムラインには普通に流れるのに、非フォロワーへのおすすめからだけ消える。
コード内のテストにも「in-network(フォロー関係あり)では通す/OON(フォロー関係なし)では落とす」という期待値がそのまま書かれています。
さらに厄介なのが、ほとんどのルールに「投稿者本人が見ているときは通す」という例外が入っている点です。
自分で自分の投稿を開けば、当然いつも通りに見えます。
だから当事者は気づけない。
「シャドウバンされている気がするが証明できない」という長年のもやもやは、感覚の問題ではなく仕様どおりの結果だった、ということになります。
もうひとつ、FOSNR_で始まる一群のラベル(ヘイト行為・暴力的発言・侮辱など)があります。
Xが以前から掲げてきた「表現の自由はあるが、リーチは与えない」という方針に対応する分類とみられ、投稿は消さないがおすすめには乗せない、という中間段階が明示的に実装されています。
「1リポート=いいね468件分」は、Xのコード自身が否定している
今回の公開でいちばん拡散しているのが、ランキングの重みづけです。
実際、コードには次の値が既定値として書かれています。
| アクション | 重み |
|---|---|
| リンクをコピーして共有 | 20.0 |
| 返信 | 5.0(相互フォローからの返信はさらに +15.0) |
| 引用 | 5.0 |
| DMで共有 | 5.0 |
| 共有(一般) | 2.0 |
| リポスト | 1.0 |
| いいね | 0.5 |
| リンククリック | 0.2 |
| 画像を開く/動画を開く | 0.05 |
| 「興味がない」 | -43.2 |
| ブロック | -31.2 |
| ミュート | -58.8 |
| 報告(リポート) | -234.0 |
ここから「報告1件はいいね468件分のマイナス」(234 ÷ 0.5)という計算が広まりました。
分かりやすい数字なので、日本語圏でもそのまま引用されています。
ただ、公開されたソースコードのコメントには、この読み方が名指しで否定されています。
曰く、重みは各アクションの予測確率にかかるものであって、実際の件数に掛かるものではない。
そのうえで「one report cancels 468 likes」という表現を「incorrect(誤り)」だと明記しています。
報告が発生する確率はいいねの1000分の1以下なので、予測値としてランキングに効かせるために大きな係数が付いている、という説明です。
同じコメントには、組織的な大量ブロック・大量報告でリーチを潰せるのではないかという懸念への回答も添えられています。
推薦はパーソナライズされているため、悪意あるアカウントからの報告は主にその人たちに似たユーザーへの推薦に影響するにとどまること。
そしてホームタイムラインに配信された投稿への反応しかランキングには効かず、グループチャットでURLを配って直接開かせても影響しない、という2点です。
ここは正直に言って、拡散している数字より地味な話です。
ただ、クライアントに「報告1件でいいね468件が消えます」と説明してしまうと、公開されたコードのコメントと真逆のことを言うことになる。
この一点だけは押さえておく価値があります。
それでも重みの「並び順」は読む価値がある
では数字は無意味かというと、そうではありません。
件数への換算はできなくても、Xが何を重く見ているかの順序は読み取れます。
目を引くのは、リンクのコピー共有(20.0)といいね(0.5)の差です。
相互フォロー相手からの返信も合計20.0まで跳ね上がります。
一方でリポストは1.0、いいねは0.5。
プロフィールクリックと滞在(dwell)の既定値は0.0で、ブックマークにいたってはこのブレンドに項目自体がありません。
現場感覚で言えば、「いいねを稼ぐ投稿」より「誰かがURLをコピーして別の場所に持っていく投稿」「会話が始まる投稿」を評価する設計です。
反応の総量ではなく、反応の種類で差がつく。
企業アカウントの月次レポートで「いいね数が前月比◯%」だけを追っている場合、その指標はランキング上もっとも軽い行動を数えていることになります。
もっとも、これらは既定値であり、実運用では設定で変更されうる値です。
「この比率で計算すれば順位が出せる」ではなく「方向性が確認できた」くらいの受け止めが適切だと考えています。
Under the Hood は、まだ全員が使えるわけではない
自分のアカウントのラベルを確認できる「Under the Hood」ページは、設定内に追加されます。
ただし現時点では条件があります。
対象は、直近1カ月に10回以上投稿しているアカウントで、かつ作成から1年以上経過していること。
そのうえでランダムに選ばれたテストグループから順次開放される、と報じられています。
取得できるのは直近1カ月分の集計データで、JSON(機械が読み取りやすい形式のデータファイル)としてダウンロードする形です。
日本語圏でも「まだ解除されない」「直った」といった投稿が飛び交いましたが、そもそも自分が対象群に入っていなければデータは出ません。
「レポートはまだ入手できません」という表示のスクリーンショットが出回っていたのも、この段階の話です。
なお、Grokを使ってルール違反を予測する仕組みは今回の公開対象に含まれていません。
悪用を防ぐためとされています。
市民的誠実性(civic integrity)に関わるラベルも、投稿者本人のプロフィールでしか見られない扱いになっている点は、報道でも触れられています。
全部が透明化されたわけではない、という理解が正確です。
運用担当者が今週やっておけること
まず、リーチが落ちたときの切り分けの解像度を上げられます。
フォロワーのタイムラインには出ているのに非フォロワーへの露出だけが落ちているなら、おすすめ側のドロップルールに引っかかっている可能性がある。
全方位で見えなくなっているなら、より重い分類か、アカウント単位のラベルを疑う——この2つは対処がまったく違います。
次に、アカウント単位のラベル(SPAM_HIGH_RECALL、COMPROMISED、READ_ONLYなど)は投稿単位のラベルより影響が長く続きます。
1本の投稿を消して解決する話ではないので、レポートで「特定の投稿が伸びなかった」と書く前に、期間全体のインプレッション推移を見ておくと判断を誤りにくくなります。
そして、外部の「シャドウバン判定ツール」の結果をそのままクライアントに出すのは、以前にも増して慎重になったほうがよさそうです。
X本体が集計データの提供を始めた以上、推測ベースの判定と公式データが食い違ったときに説明できなくなります。
SocialReport の視点から
今回のような「自分の投稿1本にどのラベルが付いたか」は、X本体のUnder the Hoodでしか確認できない領域で、SocialReportでは追えません。
この点は正直にお伝えしておきます。
一方で、SocialReportのXアカウント分析では、いいね・リポスト・リプライ・ブックマーク・インプレッション(実測値)を期間で追い、投稿ごとのパフォーマンスを比較できます。
今回のランキングの重みづけを踏まえるなら、いいね数だけでなく引用・リプライがどれだけ発生しているかを並べて見る使い方が相性がよさそうです。
キーワード調査と組み合わせれば、自社の投稿が話題全体の中でどの程度拾われているかも確認できます。
カスタムレポートはPDFで出力でき、パスワード付きの共有URLでクライアントへ渡せます。
自社アカウント1つを日々ウォッチする用途については、「アカウント運用サポートツール」として構想を進めている段階です。
形が見えてきた段階で改めてご案内させていただければと思います。
まとめ
今回のニュースの価値は「シャドウバンの条件が30個分かった」ことよりも、表示制限がフォロワー向けと非フォロワー向けで二段構えになっていて、投稿者本人からは見えない設計だと確認できたことにあります。
感覚で語られてきたものが、検証可能な対象になりました。
そのうえで、拡散している「1リポート=いいね468件分」という換算は、公開されたコード自身が誤りだと書いています。
せっかく一次情報が読める状態になったので、まとめ記事の数字ではなく、コードとX自身の説明を出発点にしたいところです。
最終更新:2026-08-17