Encoding & Character Sets

GSM##

The default character set used to send an SMS is GSM. GSM supports a small number of characters, which you can check here. If you use a character that is not defined in GSM, the SMS will be transformed in Unicode before being sent. This transformation changes the maximum number of characters per SMS, hence the number of the SMS parts.

Maximum number of Characters##

The maximum number of characters per SMS is defined as follows:

  • Gsm: 160 characters
  • Unicode: 70 characters

Concatenated Split##

If the message exceeds the above mentioned maximum number of characters it will be automatically split by Routee. In this case, the maximum number of characters per concatenated message is slightly reduced as follows:

  • Gsm: 153 characters
  • Unicode: 67 characters

🚧

Pricing

Keep in mind that each SMS part is considered to be a different SMS message, hence it is priced separately. So, sending an SMS in Unicode may increase the total cost. Sometimes though, you can avoid sending the message in Unicode and transcode it in GSM.

Example##

For example, the greek letter 'α' (alpha) is not supported by GSM. However, its capital is depicted exactly the same as the English capital letter 'A'. So, if you capitalize the message and use the English letter 'A', the visual result will be the same to the recipient and your message will be sent as GSM.

In order your messages to be transcoded add "transcode" parameter in body or use the enforce transcoding.

With the sms analysis endpoints Routee will inform you if your message can be transcoded and will suggest you to change it (perhaps capitalizing it and changing some letters to their 'visually' corresponding English ones), in order to reduce the cost.

👍

Enforce Transcoding

Routee can transcode your messages by default, by applying a simple application setting.
Using this feature, you ensure that your messages will always be transcoded (if possible) when the body of the message is in unicode format and exceeds one part.
If the message parts are less than two, then the message will be sent as unicode.
Transcoding is available for Greek, French, Italian, Spanish and German locales.

To enforce transcoding for your application you have to apply it through application settings on the appropriate menu found on https://dev.routee.net/#/management/applications.

More about applications and their settings here

Table of Character Mapping for the Enforce Transcoding feature##

Unsupported GSM Character GSM Supported Mapped Character
`'
¨"
«"
´'
»"
ÀA
ÁA
ÂA
ÈE
ÊE
ËE
ÌI
ÍI
ÎI
ÏI
ÒO
ÓO
ÔO
ÙU
ÚU
ÛU
àà
áa
âa
êe
ëe
еe
íi
îi
ïi
óo
ôo
÷/
úu
ûu
ăa
ıi
΅
Ϛ
ŞS
ǃ!
ȘS
șs
ȚT
țt
ɢG
ɪI
ɴN
ʀR
ʏY
ʙB
ʜH
ʟL
ʹ'
ʺ"
ʻ'
ʼ'
ʽ'
ˆ^
ˈ'
ˊ'
ˋ'
ː:
˖+
˜~
ˮ"
˷~
˸:
̂^
̃~
̓'
̔'
̦,
̰~
̲_
̴~
̷/
̸/
͇=
ΆA
ΈE
ΉH
ΊI
ΌO
ΎY
ΏΩ
ΐΙ
ΑA
ΒB
ΕE
ΖZ
ΗH
ΙI
ΚK
ΜM
ΝN
ΟO
ΡP
ΤT
ΥY
ΧX
ΪI
ΫY
άA
έE
ήH
ίI
ΰY
αA
βB
γΓ
δΔ
εE
ζZ
ηH
θΘ
ιI
κK
λΛ
μM
νN
ξΞ
οO
πΠ
ρP
ςΣ
σΣ
τT
υY
φΦ
χX
ψΨ
ωΩ
ϊI
ϋY
όO
ύY
ώΩ
A
C
D
E
J
K
M
МM
O
P
T
U
V
W
Z
^
-
-
-
-
_
'
'
,
'
"
"
"
"
>
<
-
/
*
;
£
|
|
\
/
*
|
~
*
|
|
|
|
-
-
|
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
'
'
"
"
(
)
(
)
{
}
(
)
:
(
)
*
\
/
\
.
"
"
F
S
:
=
'
'
:
;
!
?
,
,
.
;
?
!
(
)
{
}
#
&
*
+
-
<
>
=
\
$
%
@
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
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
[
\
]
^
__
{
|
}
~
.
,
U+0000
U+0003
U+0004
U+0009
U+0010
U+0011
U+0012
U+0013
U+0014
U+0017
U+0019
U+0080
U+008D
U+0090
U+009B
U+009F
U+2000
U+2001
U+2002
U+2003
U+2004
U+2005
U+2006
U+2007
U+2008
U+2009
U+2028
U+2029
U+202F
U+205F
U+2060
U+3000

What’s Next