Twitter API の迷走とそれに対する反応に対する違和感


先日、こんな記事を読んだが、強烈な違和感を感じた。

なぜ違和感を感じるか

この件に関して、自分は Twitter と 開発者双方に違和感を感じている。しかし、一番大きいのはこの記事が開発者の視点に立ちすぎているところにある。

自分からすると、タイムラインの読み出しというのは営利企業が運用するネットワークサービスにとって当然制限されてしかるべきものだと感じている。なぜなら、そこは広告価値の一番高い面だからだ。

もちろん、アプリ開発者からすると振り回されて疲弊させられるということも理解はできる。しかし、それはプラットフォーム上でサービスを提供する限りは不可避なもので、別に今に始まったことではない。Twitter は以前からレートリミットが厳しかったし、Facebook / Instagram も 2014 年に権限審査制度を導入と同時にニュースフィードの読み出しも原則禁止、今年 8 月には Facebook に対する API 経由の投稿を一切禁止した。

SNS に限らず、例えば SEO も Google に「振り回されて」きている。ペンギンアップデート、パンダアップデートとしたファンシーな名前のアップデートで SEO が何度も打撃を受けてきたことを鮮明に覚えている方も多いだろう。

こういった開発者は忘れがちかもしれないが、Twitter は営利企業であり、かつグローバルで見るとここ何度もリストラをしてきた「非優良」企業なのだ。インフィード広告はそんな Twitter にとっては唯一に近いマネタイズ手段であり、インフィード広告を回避しうるサードパーティクライアントはなんとしてでも潰さなければならない存在なのだ。

では Twitter は悪くないのか

一方で、Twitter は単純な「被害者」ではない。Twitter こそが Twitter エコシステムの神聖不可侵な王である以上、「綸言汗の如し」ではないがその決断は慎重かつ長期的に見て一貫性がある必要があった

これまでを振り返ってみると、2013 年前後に

  • レートリミットの強化。
  • 1 app あたり発行可能なアクセストークンの数を 10 万トークンまでに制限。

といった制限が加わった。この時点で、すでにサードパーティクライアントの排除のムーブメントは起きていたと言ってよかった。

さらに今年 2018 年 8 月 16 日までに、以下の仕様変更が行われた。

  • UserStream API の廃止。
  • UserStream API にかわって Account Activity API の導入。15 分で 15 回までリクエスト可能。
  • 開発者と Twitter app への審査の導入。
  • 1 開発者アカウントあたりデフォルトでは 10 個までしか Twitter app を作成できなくなった。
  • レートリミットのさらなる詳細な強化。

正直なところ、2013 年時点で一気に制限を強化すべきだった。

実際、Facebook は 2014 年 5 月にニュースフィード読み出しの原則禁止および Facebook app の審査を含めた大幅な制限強化を導入しており、その後は API 経由での投稿を廃止したものの、それを除けばそこまで大幅な制限の追加は実施していない。

正直なところ、Twitter は対策の導入が逐次的すぎて、対応が後手後手に回っている感が強いと感じる。

ではどうすべきだったのか

確かに、Twitter API を通じて Twitter の機能のほとんどをサードパーティで提供できたことが今の巨大な Twitter エコシステムを作り上げる原動力になったのは間違いない。

しかし、ユーザを獲得するフェイズを過ぎ、次はその獲得した膨大なユーザベースを利用していかにマネタイズするかを考えたときに、一般ユーザに最も抵抗が少ないものは広告だろう。

そして Twitter の狙いは明白で、インフィード広告を Twitter の意図通りに配信することにある。インフィード広告を回すためには

  • そもそもタイムラインにインフィード広告が表示されること
  • 広告がクリックされたことが確実に Twitter 側に通知されること
  • In-App ブラウザなりで Twitter ログインした状態で広告が開き、コンバージョンを測定できること (ブランディングまたはダイレクトレスポンス広告の場合)

の 3 点が担保されている必要がある。サードパーティクライアントではこれらが担保できず、むしろ Twitter のマネタイズにとっては邪魔な存在なのだ。

であればこそ、2013 〜 2014 年、インフィード広告勃興期の時点で「サードパーティクライアントを排除する」意図を明確にすべきだった。Facebook がまさに 2014 年にニュースフィードの API 経由での読み出しを禁止したように、タイムライン読み出しの廃止または今と同等の制限を導入し、サードパーティクライアントが実装できないようにすべきだっただろう。2013 〜 2014 年はまだ Twitter の MAU が増加傾向だったし、やろうと思えばできたはずだと思う。

それができなかったのは、それまで Twitter エコシステムを支えてくれた開発者やユーザに対する遠慮、おもねりがあったからではないのか。または、Twitter 内で広告に対する謎の嫌悪感があったからではないのか。

Twitter が Facebook と比べると何歩も下がっている現状は機能やコンセプトの差が大きいとは思うが、根底にあるのはこういう意思決定における割り切りの差だと思っている。Facebook はインフィード広告の価値が見えた直後に何をすべきかを明確に切り分け、開発者からの反発を気にすることなく大きく舵を切った。一方で Twitter はそれができず、結果として制限措置の逐次投入になってしまい、結果として誰も得をしない状態になってしまった。


正直、広告を含めたプラットフォームビジネスに従事していると、今回の件はまさに「あるある」だと感じる。特に Twitter は目に見えないところも含めてインパクトの大きい変更を出してくることが多い印象がある。

だが、「あるある」だからこそ開発者側はプラットフォーム側が何を考えているかエスパーする必要があるし、プラットフォーム側は開発者側に余計なインパクトを与えないように思い切った意思決定が必要だと思う。