Penghitung Karakter X (Twitter)

Hitung kiriman seperti platform: tautan bernilai 23, emoji bernilai 2, sisanya karakter biasa. Batas tweet 280, bio 160, nama 50.

Penghitungan berjalan lokal di browser Anda. Tidak ada tombol kirim dan draf Anda tidak pernah meninggalkan halaman.

0/280
—

280/160/50 adalah batas tier gratis standar. Akun Premium mendapat batas lebih besar dan X sesekali menyesuaikan bobot grafem — untuk kasus batas, verifikasi di aplikasi resmi.

Cara kerja

Penghitung ini meniru pembobotan platform, bukan panjang string naif. Pertama ia mencari setiap token http:// atau https:// dan mengenakan biaya tetap 23 untuk masing-masing — pemendek t.co membuat panjang tautan tidak relevan. Sisa teks ditempuh sebagai klaster grafem, dan klaster apa pun yang dimulai dengan code point di atas U+FFFF bernilai 2 sementara yang lain bernilai 1.

Jebakan UTF-16
.length JavaScript menghitung unit kode 16-bit, sehingga satu emoji wajah tersenyum melaporkan panjang 2 dan emoji keluarga lima code point melapor jauh lebih banyak. Penghitungan naif juga membelah surrogate pair menjadi dua; alat ini menelusuri klaster utuh sehingga memotong hitungan tidak pernah merusak karakter.
Aturan 23 t.co
Saat dikirim, setiap tautan ditulis ulang lewat pemendek layanan, jadi URL 5 karakter dan monolit pelacakan 300 karakter sama-sama berbobot 23. Penghitung menghapus token URL sebelum menimbang teks dan melaporkan jumlah tautan yang terdeteksi secara terpisah.
Penghitungan grafem dengan Intl.Segmenter
Jika browser mendukung Intl.Segmenter, bendera, modifier warna kulit, dan keluarga ZWJ diperlakukan sebagai satu karakter yang terlihat. Mesin yang lebih tua memakai iterasi code point lewat Array.from yang tetap aman terhadap surrogate, hanya sedikit lebih ketat pada emoji gabungan.

Pertanyaan yang sering diajukan

Apakah markdown atau format tersembunyi mengubah hitungan?

Tidak. X menyimpan kiriman sebagai teks biasa, jadi penanda markdown atau gaya tak terlihat dihitung sebagai karakter literal yang Anda ketik. Satu-satunya yang berbeda dari panjang mentah adalah tautan — dinormalkan jadi 23 — dan karakter di luar Basic Multilingual Plane yang bernilai 2.

Mengapa emoji dihitung dua karakter?

String JavaScript berbasis UTF-16, dan kebanyakan emoji berada di atas Basic Multilingual Plane, tempat satu karakter yang terlihat menempati dua unit kode 16-bit — sebuah surrogate pair. X menimbang code point itu sebagai 2, dan halaman ini menirunya dengan menelusuri klaster grafem memakai Intl.Segmenter (dengan fallback code point jika tidak ada).

Apakah bisa untuk utas atau kiriman panjang?

Alat ini menghitung satu blok teks terhadap satu batas — persis seperti utas bekerja: tiap kiriman punya jatahnya sendiri, jadi periksa satu per satu. Kiriman long-form adalah fitur premium terpisah dengan batas jauh lebih besar; penghitung ini tidak memodelkannya.

Apakah 280 batas yang tepat untuk akun saya?

280 adalah batas tier gratis standar untuk tweet, 160 untuk bio, dan 50 untuk nama tampilan — ketiganya tersedia di pemilih. Akun Premium mendapat batas lebih besar dan X sesekali menguji lebih banyak karakter per grafem. Untuk kasus batas, verifikasi di aplikasi resmi sebelum mengunggah.

Apakah ada yang diunggah ke server?

Tidak. Penghitungan hanyalah beberapa baris JavaScript murni di browser Anda — tidak ada tombol kirim, tidak ada penyimpanan, dan tidak ada permintaan jaringan yang terkait teks Anda. Draf tetap di perangkat Anda.