Bluesky の文字数制限と投稿のコツ

約 6 分で読めます

Bluesky は分散型プロトコル AT Protocol 上に構築された SNS です。2024 年 2 月に一般公開され、X (旧 Twitter) の共同創業者ジャック・ドーシー氏が立ち上げたプロジェクトを起源としています。投稿の文字数制限は 300 文字ですが、この「300 文字」の数え方には他の SNS にはない独自の仕組みがあります。本記事では、AT Protocol の技術仕様に踏み込みながら、文字数制限の背景と効果的な投稿術を解説します。分散型 SNS の技術書も併せて参考にしてみてください。

書記素クラスタカウント - Bluesky 独自の文字数計算方式

Bluesky の文字数カウントは「書記素クラスタ (grapheme cluster)」単位で行われます。これは Unicode 標準の UAX #29 で定義された、人間が「1 文字」と認識する最小単位です。この方式は X や Threads のカウント方法とは根本的に異なります。

具体的な違いを見てみましょう。絵文字の肌色バリエーション「👋🏽」は、内部的には U+1F44B (手を振る絵文字) と U+1F3FD (肌色修飾子) の 2 つの Unicode コードポイントで構成されています。X ではこれを 2 文字としてカウントしますが、Bluesky では書記素クラスタとして 1 文字です。同様に、国旗絵文字「🇯🇵」は 2 つの Regional Indicator コードポイント (U+1F1EF + U+1F1F5) から成りますが、Bluesky では 1 文字としてカウントされます。

この仕組みは、家族絵文字のような複合絵文字でさらに顕著です。「👨‍👩‍👧‍👦」は 7 つのコードポイント (4 つの絵文字 + 3 つの ZWJ) で構成されますが、Bluesky では 1 文字です。X では同じ絵文字が 7〜11 文字としてカウントされるため、絵文字を多用する投稿では Bluesky のほうが実質的に多くの情報を詰め込めます。

Bluesky の文字数制限一覧

項目文字数上限カウント方式備考
投稿 (ポスト)300 文字書記素クラスタリンクカードの URL は文字数に含まれない
表示名64 文字書記素クラスタプロフィールに表示
プロフィール (自己紹介)256 文字書記素クラスタBio 欄
リプライ300 文字書記素クラスタ投稿と同じ制限
ハンドル名253 文字バイト数DNS ドメイン名の制約に準拠
リスト名64 文字書記素クラスタカスタムフィード・リスト
リスト説明300 文字書記素クラスタリストの説明文
ALT テキスト (画像説明)10,000 文字書記素クラスタアクセシビリティ用

注目すべきは、ハンドル名だけがバイト数ベースのカウントである点です。これはハンドル名が DNS ドメイン名として機能するため、RFC 1035 のドメイン名長制限 (253 バイト) に準拠しているためです。また、ALT テキストが 10,000 文字まで入力できる点は、アクセシビリティへの配慮が際立つ特徴です。視覚障害のあるユーザーに対して、画像の詳細な説明を十分な文字数で記載できます。

なぜ 300 文字なのか - AT Protocol の設計思想

Bluesky が 300 文字を採用した背景には、技術的制約とユーザー体験の両面があります。AT Protocol の仕様では、1 レコード (投稿) のデータサイズに上限が設けられています。分散型ネットワークでは各サーバー (PDS: Personal Data Server) がデータを同期するため、1 投稿あたりのデータ量を抑えることがネットワーク全体の負荷軽減に直結します。

ユーザー体験の観点では、X の 280 文字制限からの移行ユーザーが違和感なく使える範囲を意識しています。X より 20 文字多い設定は、「もう少し書きたい」というニーズに応えつつ、短文 SNS としての簡潔さを維持する絶妙なバランスです。

興味深いのは、AT Protocol 自体はテキスト長の上限をアプリケーション層に委ねている点です。つまり、AT Protocol 上に構築された別のアプリケーションが 500 文字や 1,000 文字の制限を設定することも技術的には可能です。300 文字は Bluesky というアプリケーションの設計判断であり、プロトコルの制約ではありません。将来的に Bluesky が文字数制限を変更する可能性も否定できません。

Facets - Bluesky のリッチテキスト処理と文字数への影響

Bluesky の投稿には「Facets」と呼ばれるリッチテキスト機能があります。これはリンク、メンション (@)、ハッシュタグなどのメタデータを投稿テキストに付与する仕組みで、文字数カウントに直接影響します。

リンクの場合、本文中に URL を記述するとその文字列自体が文字数にカウントされます。しかし、リンクカード (外部サイトのプレビュー) として添付した場合、URL は本文の文字数に含まれません。たとえば「https://example.com/very-long-path/to/article」という 50 文字の URL を本文に書くと 50 文字を消費しますが、リンクカードとして添付すれば 0 文字です。この違いを理解しているかどうかで、実質的に使える文字数が大きく変わります。

メンション (@ユーザー名) は、表示されるテキスト部分のみが文字数にカウントされます。たとえば「@alice.bsky.social」と記述すると 19 文字を消費します。ハンドル名が長いユーザーへのメンションは、それだけで文字数を圧迫する点に注意が必要です。

300 文字で効果的に伝える 5 つのコツ

  1. 結論ファーストで書く。タイムラインでは最初の 2〜3 行が勝負です。Bluesky のタイムラインは投稿の冒頭部分のみを表示し、残りは「もっと見る」で展開する仕様のため、最も伝えたいメッセージを冒頭に配置しましょう。
  2. 不要な修飾語を削る。「非常に」「とても」「基本的に」などの副詞を削るだけで 10〜20 文字節約できます。日本語の場合、「〜することができます」を「〜できます」に置き換えるだけで 4 文字の節約です。
  3. 改行で読みやすさを確保する。スマートフォンでの閲覧が中心のため、3〜4 行ごとに空行を入れると視認性が向上します。ただし、改行も 1 文字としてカウントされるため、改行の入れすぎには注意が必要です。
  4. リンクカードを活用する。URL を本文に書かず、リンクカードとして添付すれば文字数を消費しません。50 文字以上の URL を本文から除外できるため、その分を本文の充実に使えます。
  5. 投稿前に文字数カウントスで文字数を確認。書記素クラスタ単位のカウントは手動では正確に把握しにくいため、ツールでの事前チェックが安心です。

よくある失敗パターンと回避策

Bluesky での投稿で陥りがちな失敗を、原因と対策を含めて紹介します。

プロのテクニック

Bluesky を効果的に活用するための実践的なテクニックを紹介します。SNS 運用の参考書籍も併せて参考にしてみてください。

他の SNS との文字数比較 - カウント方式の違いに注意

プラットフォーム投稿文字数カウント方式URL の扱い
Bluesky300 文字書記素クラスタリンクカードは 0 文字
X (Twitter)280 文字 (Premium: 25,000 文字)NFC 正規化後のコードポイントURL は一律 23 文字 (t.co 短縮)
Threads500 文字Unicode コードポイントURL は文字数にカウント
Mastodon500 文字 (サーバーにより異なる)サーバー実装依存URL は一律 23 文字

単純な文字数だけを比較すると Bluesky の 300 文字は X の 280 文字より 20 文字多いだけに見えます。しかし、書記素クラスタカウントにより絵文字や結合文字の扱いが有利なこと、リンクカードの URL が文字数に含まれないことを考慮すると、実質的な情報量の差はさらに大きくなります。SNS の文字数制限一覧も参考にしてください。

まとめ

Bluesky の 300 文字制限は、AT Protocol の分散型アーキテクチャと短文 SNS としての使いやすさを両立した設計です。書記素クラスタカウントによる直感的な文字数計算、リンクカードによる URL の文字数非消費、Facets によるリッチテキスト処理など、他の SNS にはない技術的特徴を理解することで、300 文字の枠を最大限に活用できます。カスタムフィードや独自ドメインハンドルといった Bluesky 固有の機能と組み合わせ、簡潔かつ魅力的な投稿を心がけましょう。投稿前に文字数カウントスで文字数を確認すれば、制限オーバーを防げます。