Creative & Writing

文字数カウンター

SNS投稿・ブログ原稿・API設計。入力しながらリアルタイムで文字数・バイト数・行数を確認できるブラウザツール。

📝 文字数カウンターを開く

このツールを作った背景

SNSやブログを書いていると「あと何文字?」が気になる場面は頻繁にあります。X(Twitter)は140文字、Instagramキャプションは2200文字、LINEのノートは1000文字——プラットフォームごとに制限が違い、毎回数えるのは手間です。

エンジニア視点では「APIのpayloadサイズ」「データベースのVARCHAR制限」「メール件名のバイト数」など、文字数ではなくバイト数で管理されるケースも多い。日本語1文字はUTF-8で3バイト消費するため、文字数だけの確認では不十分な場面があります。

文字数とバイト数を同時に、入力しながらリアルタイムで確認できるシンプルなツールが手元にほしくて作りました。

主な機能

  • 文字数リアルタイムカウント(入力のたびに即更新)
  • バイト数カウント(UTF-8基準・マルチバイト文字対応)
  • 行数・段落数の同時表示
  • スペース込み/スペースなし切り替え
  • テキストをワンクリックでクリップボードにコピー

具体的な使いどころ

X(Twitter)投稿文

140文字ちょうどに仕上げるとき。貼り付けてオーバーした分だけ削る、のサイクルが一目でわかります。

note・ブログ原稿

「2000文字以上書く」という目標を立てているとき、リアルタイムで達成状況を確認しながら書けます。

API / DBのバイト制限確認

MySQLのutf8mb4ではVARCHAR(255)に日本語が最大63文字。バイト数を見ながら設計するとミスを防げます。

メール件名

件名が長すぎると受信画面で途切れます。30〜40文字以内に収めるときの確認に。

日本語とバイト数の落とし穴

「VARCHAR(255)なら255文字入る」は誤解です。MySQLのutf8mb4では1文字が最大4バイトを使うため、255バイト制限の列には日本語が63文字しか入りません。「文字数」と「バイト数」を混同するバグは開発現場でよく起きます。

Webフォームの入力制限でも同様の問題があります。フロントエンドで「maxlength=100」と設定しても、バックエンドがバイト数で制限していると日本語ユーザーだけエラーになるケースがあります。このツールで事前確認することで、そういったすれ違いを防げます。

また、絵文字は1文字でも4バイト以上(UTF-16では2コードポイント)を消費するため、絵文字を多用するSNS投稿を想定したシステム設計では特に注意が必要です。

使い方

  1. ツールを開く — テキストエリアが表示されます
  2. テキストを入力または貼り付ける — 文字数・バイト数・行数が即座に更新されます
  3. 目標値に合わせて調整 — オーバーした分を削ったり、足りなければ補足したり
  4. コピーボタンで転記 — 調整完了したらボタン1つでコピー
📝 文字数カウンターを開く