Nepali (देवनागरी) & English · NTC · Ncell

SMS Character Counter

Paste or type your message to see the character count, the encoding it will be sent in, how many SMS parts it splits into, and how many credits it costs. Nepali text in Devanagari sends as Unicode, so one SMS holds 70 characters, not 160 — this page counts it exactly the way an operator does, and explains every rule below.

Counting happens in your browser. Your message is never uploaded, stored or sent anywhere.

Characters
0
Encoding
SMS parts
0
Left in this part
0
Credits per recipient
0
0 billable units
Send this SMS
Split into SMS parts

Start typing and every character appears here, grouped into the parts your recipient's phone will actually receive.

GSM-7 character Costs 2 (GSM-7 extension) Not in GSM-7 → Unicode Costs 2 (emoji) Space / line break

How SMS character counting works

An SMS is not measured in words or in bytes of a file — it is measured in a fixed 140-byte payload defined by the 3GPP standards every mobile network follows, Nepal Telecom and Ncell included. How many characters fit into those 140 bytes depends entirely on which alphabet your text can be encoded in.

GSM-7: the 160-character alphabet

If every character of your message appears in the GSM 03.38 default alphabet — the plain English letters, digits, common punctuation and a handful of European letters — each character is packed into 7 bits instead of 8. Seven bits × 160 characters = 140 bytes exactly. That is where the famous 160-character SMS comes from.

Unicode (UCS-2): the 70-character alphabet

The moment a single character in your message is not in that alphabet — any Nepali letter, an emoji, a curly apostrophe — the whole message must be sent in UCS-2, a 16-bit encoding. Two bytes per character means only 70 characters fit into the same 140 bytes. This is all-or-nothing: one Devanagari character in an otherwise English message drops the limit for the entire message from 160 to 70.

Longer messages: 153 and 67

A message longer than one part is not rejected — it is chopped into several SMS, each carrying a small User Data Header (UDH) that tells the receiving phone how to stitch them back together. That header eats 6 bytes of the 140, so every part of a multipart message holds 153 GSM-7 characters or 67 Unicode characters instead of 160 or 70. The recipient normally sees one long message; you are billed for each part.

EncodingUsed forSingle SMSPer part when longerBits per character
GSM-7English, romanised Nepali, digits, basic punctuation 1601537
Unicode (UCS-2)Nepali (Devanagari), Hindi, emoji, smart quotes, ₹ रु 706716
Where the boundary sits. A 161-character English message is not “one and a bit” — it becomes two parts of up to 153, so 161 characters costs 2 credits. The same cliff exists at 70 for Nepali: a 71-character Devanagari message costs 2 credits, and 141 characters costs 3.

Counting Nepali (Devanagari) SMS

This is the part that surprises almost every sender in Nepal, so it is worth being precise. Nepali written in Devanagari — नेपाली — has no place in the GSM-7 alphabet, which contains only Latin letters, Greek capitals and a few symbols. Every Nepali SMS is therefore sent as Unicode, and the working limits are:

Every matra, halanta and anusvara is its own character

A Nepali reader sees नमस्ते as a few letters. The network sees six separate Unicode characters, because the vowel signs (ा ि ी े ो ौ), the halanta or virama () that joins consonants into a conjunct, and the anusvara and chandrabindu (ं ँ) are all independent code points that simply render attached to the letter beside them. Each one uses two bytes on the wire and each one counts against your 70.

WordCounted asCharacters
नमस्ते
◌् ◌े
6
धन्यवाद
◌् ◌ा
7
तपाईंको
◌ा ◌ं ◌ो
7
श्रीमान्
◌् ◌ी ◌ा ◌्
8
क्षेत्र
◌् ◌े ◌्
7
काठमाडौँ
◌ा ◌ा ◌ौ ◌ँ
8

Marks are shown on a dotted circle (◌) because they cannot stand alone. Hover any cell to see its Unicode code point.

Nepali digits and the danda cost you the whole message

Three habits quietly force a message into Unicode even when the rest of it is English:

Romanised Nepali fits more than twice as much

The same sentence written in Devanagari and in Roman letters costs very differently, because the Roman version stays in GSM-7:

MessageEncodingCharsParts
Namaste! Tapaiko balance Rs 250 chha. Dhanyabaad. GSM-7491 of 160
नमस्ते! तपाईंको ब्यालेन्स रु २५० छ। धन्यवाद। Unicode441 of 70

Both fit in one SMS here — but the Devanagari version has only 26 characters of room left, while the romanised one has 111. For long notices, receipts and reminders, writing in romanised Nepali routinely turns a 3-credit message into a 1-credit message. Whether that is worth it depends on your audience: Devanagari reads far better for public notices and older recipients, and every handset sold in Nepal renders it correctly.

NTC and Ncell both deliver Unicode SMS

Nepal Telecom and Ncell both accept and deliver UCS-2 messages, and both support concatenated (multipart) SMS, so a long Devanagari message arrives as one continuous message on any modern handset. Two practical notes for Nepal:

Worked examples

These are counted by the same code that prices a real send on Kusha SMS:

MessageEncodingChars PartsCredits
Your OTP is 458213. Do not share it with anyone.
English OTP
GSM-7 48 1 × 160 1
Namaste! Tapaiko KushaSMS balance Rs 250 chha. Dhanyabaad.
Romanised Nepali
GSM-7 58 1 × 160 1
नमस्ते! तपाईंको ब्यालेन्स रु २५० छ। धन्यवाद।
Nepali (Devanagari)
Unicode 44 1 × 70 1
Dear customer, your balance is रु 250.
English with one Nepali word
Unicode 38 1 × 70 1
Dear member, your membership hasn’t been renewed.
English with a curly apostrophe
Unicode 49 1 × 70 1
Dear customer, your bill is Rs. 1,250 — due 15 Shrawan.
English with an em dash
Unicode 55 1 × 70 1
Thank you for your payment! 🙏
English with an emoji
Unicode 30 1 × 70 1
सूचना: आगामी शुक्रबार बिहान ७ बजेदेखि दिउँसो १ बजेसम्म पानी वितरण बन्द रहनेछ। असुविधाको लागि क्षमा चाहन्छौं। — काठमाडौं उपत्यका खानेपानी
Nepali notice (multipart)
Unicode 136 3 × 67 3

Characters that cost more than they look

Most “why is my message suddenly two SMS?” tickets come down to one of these. Word processors, phone keyboards and copy-pasted text introduce them without asking.

CharacterWhat it costsWrite this instead
’ ‘ “ ”Curly quotes from autocorrect are not in GSM-7 — the whole message becomes Unicode (70 per part)' "
— –Em dash and en dash force Unicode-
The single-character ellipsis forces Unicode...
🙏 😊Emoji force Unicode and most of them count as two characters, because they sit outside the 16-bit range
₹ रुCurrency in Devanagari or the rupee sign forces Unicode Rs
The danda forces Unicode.
० ९Devanagari digits force Unicode0 9
^{}\[~]|€In GSM-7, but each one costs two characters (it is sent as an escape pair)Avoid in long messages
Invisible charactersNon-breaking spaces and zero-width joiners pasted from the web count exactly like visible onesRetype the line
Line breaks. A line break counts as one character in both encodings, and that is what this counter shows. One caveat worth knowing: when a message is submitted from a web form, the browser sends every line break as a carriage return and a line feed — two characters — so a multi-line message posted from a browser can cost one character per line break more than it does through the API, where the line break stays a single character. Either way, trailing blank lines left at the end of a pasted message are a common reason a message spills into an extra part.

The full GSM-7 alphabet

If your message uses only these characters, it sends as GSM-7 at 160 characters per SMS. Anything else — including every Devanagari character — makes it Unicode at 70.

@ £ $ ¥ è é ù ì ò Ç Ø ø Å å Δ _ Φ Γ Λ Ω Π Ψ Σ Θ Ξ Æ æ ß É ! " # ¤ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? ¡ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Ä Ö Ñ Ü § ¿ a b c d e f g h i j k l m n o p q r s t u v w x y z ä ö ñ ü à

Plus the line feed and carriage return used for line breaks. These characters — ^{}\[~]|€ — are also GSM-7 but count as two characters each.

Frequently asked questions

How many characters is one SMS?

160 characters if the message is written entirely in the GSM-7 alphabet (plain English letters, digits and basic punctuation), or 70 characters if it contains anything else. Longer messages are split into parts of 153 or 67 characters.

How many characters can a Nepali SMS have?

70 characters. Nepali written in Devanagari is not part of the GSM-7 alphabet, so the message is sent as Unicode (UCS-2) at two bytes per character. Once a Nepali message needs more than one part, each part holds 67 characters.

Why did my message switch to Unicode?

Because at least one character in it is outside the GSM-7 alphabet. The usual culprits are a Nepali letter or digit, the danda, an emoji, a curly quote or apostrophe from autocorrect, an em dash, or the rupee sign. It is all-or-nothing: one such character changes the limit for the whole message from 160 to 70.

Do matras, halanta and anusvara count as characters?

Yes. Every vowel sign, the halanta that forms a conjunct, and the anusvara or chandrabindu is its own Unicode character, even though it renders attached to the letter beside it. That is why namaste written as नमस्ते counts as six characters, not four.

Are Nepali digits counted differently from 0-9?

Each digit counts as one character either way, but the Devanagari digits ० to ९ are outside GSM-7 and force the whole message into Unicode, while the ASCII digits 0 to 9 do not.

Does the sender ID count towards the character limit?

No. The sender ID or sender name is carried in a separate field of the message, not in the body, so it does not use any of your 160 or 70 characters.

How many credits does a long message cost?

One credit per part, per recipient. A 200-character Nepali message is three parts, so sending it to 500 people costs 1,500 credits.

Do spaces and line breaks count as characters?

Yes. A space is one character, and a line break is one character in both GSM-7 and Unicode. Note that a browser sends each line break of a web form as a carriage return plus a line feed, so a multi-line message submitted from a form can cost one character per line break more than the same text sent through the API. Blank lines left at the end of a pasted message are a common reason a message spills into an extra part.

How many characters is an emoji?

An emoji forces the message into Unicode, and most emoji count as two characters because they are encoded outside the basic 16-bit range. A single emoji can therefore turn a 69-character message into a two-part message.

Will a long message arrive as one message or several?

It is sent as several parts, each carrying a header that tells the handset how to reassemble them, and virtually every phone shows them as one message. Some very old feature phones display the parts separately. Either way you are charged per part.

Is this counter accurate for NTC and Ncell?

Yes. Nepal Telecom and Ncell both follow the same 3GPP encoding and segmentation rules, and this page counts with the exact code that prices and bills a real send on Kusha SMS.

Is my message sent anywhere when I use this counter?

No. The counting runs entirely in your browser. Nothing you type is uploaded, logged or stored.

About this counter

This tool is published by Kusha SMS, a bulk SMS platform for Nepal built by Sahasra Tech. It sends campaigns, alerts and OTPs to NTC and Ncell numbers with contacts, templates, scheduling, delivery reports and a REST API. The counter on this page runs the same encoding and segmentation rules the platform uses to price and bill every message, so what you see here is what a send actually costs.

Nothing you type is transmitted: the count is computed in your browser and the page makes no network request while you type.

Now send it

Create a free account and send your first campaign to NTC and Ncell numbers today — prepaid credits, no setup fee.

Get started free