> For the complete documentation index, see [llms.txt](https://docs.messageflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.messageflow.com/pl/sms/billingowanie-sms.md).

# Billingowanie SMS

Koszt wysyłki SMS zależy od jego długości, która jest determinowana przez rodzaj znaków użytych w treści. System automatycznie dobiera odpowiednie kodowanie (GSM-7 lub Unicode), co bezpośrednio wpływa na limit znaków w pojedynczej wiadomości.

Poniższe zasady są zgodne z globalnymi standardami GSM i dotyczą wszystkich wysyłek (zarówno z panelu, jak i przez API).

### Wiadomość standardowa (Kodowanie GSM-7)

Jeśli Twoja wiadomość składa się wyłącznie ze znaków z podstawowego alfabetu łacińskiego, cyfr i podstawowych symboli, jest kodowana w oszczędnym standardzie GSM-7.

* Pojedynczy SMS: **do 160 znaków**.
* Wiadomości łączone: Każdy kolejny segment (SMS) to **153 znaki** (system rezerwuje miejsce na instrukcję łączenia wiadomości).

#### Bezpieczne znaki (liczone jako 1 znak):

| Rodzaj       | Znaki                                                             |
| ------------ | ----------------------------------------------------------------- |
| Litery       | A-Z, a-z                                                          |
| Cyfry        | 0-9                                                               |
| Symbole      | @ £ $ ¥ \_ ! " # % & ' ( ) \* + , - . / : ; < = > ? ¡ ¿ § ¤       |
| Greckie/Inne | Δ Φ Γ Λ Ω Π Ψ Σ Θ Ξ Ä ä Ö ö Ñ ñ Ü ü à ò ù å Å è é É ì ç Ø ø Æ æ ß |

{% hint style="warning" %}
**Uwaga na znaki rozszerzone (liczone podwójnie)**&#x20;

Alfabet GSM-7 posiada zestaw znaków, które mimo że nie zmieniają kodowania na Unicode, zajmują 2 bajty. Oznacza to, że każdy z nich zabiera 2 znaki z dostępnego limitu.

Są to: `^`, `{`, `}`, `\`, `[`, `~`, `]`, `|`, `€`.
{% endhint %}

#### Tabela naliczania (GSM-7):

<table data-search="false"><thead><tr><th>Ilość znaków</th><th>Liczba SMS</th></tr></thead><tbody><tr><td>1-160 znaków</td><td>1</td></tr><tr><td>161-306 znaków</td><td>2</td></tr><tr><td>307-459 znaków</td><td>3</td></tr><tr><td>460-612 znaków</td><td>4</td></tr><tr><td>613-765 znaków</td><td>5</td></tr><tr><td>766-918 znaków</td><td>6</td></tr><tr><td>919-1071 znaków</td><td>7</td></tr><tr><td>1072-1224 znaków</td><td>8</td></tr><tr><td>1225-1377 znaków</td><td>9</td></tr></tbody></table>

### Wiadomość ze znakami specjalnymi (Kodowanie Unicode)

Użycie w treści choćby jednego znaku spoza tabeli GSM-7 wymusza zmianę kodowania całej wiadomości na Unicode (UCS-2). Jest to niezbędne, aby poprawnie wyświetlić znaki diaktryczne czy emoji na telefonie odbiorcy.

**Co zmienia kodowanie na Unicode?**

* Polskie znaki: `ą`, `ć`, `ę`, `ł`, `ń`, `ó`, `ś`, `ź`, `ż`.
* Inne alfabety: Cyrylica (np. `Б`, `Д`, `Ж`), Hebrajski, Arabski.
* Znaki diakrytyczne: Czeskie/słowackie (`č`, `ž`), francuskie "daszki" (`â`, `ô`), hiszpańskie akcenty (`á`, `í`).
* Emoji: np. 🙂, 🔥, ❤️.

Limity dla Unicode:

* Pojedynczy SMS: **do 70 znaków**.
* Wiadomości łączone: Każdy kolejny segment to **67 znaków**.

#### Tabela naliczania (Unicode):

| Ilość znaków   | Liczba SMS |
| -------------- | ---------- |
| 1-70 znaków    | 1          |
| 71-134 znaków  | 2          |
| 135-201 znaków | 3          |
| 202-268 znaków | 4          |
| 269-335 znaków | 5          |
| 336-402 znaków | 6          |
| 403-469 znaków | 7          |
| 470-536 znaków | 8          |
| 537-603 znaków | 9          |

{% hint style="info" %}

#### Wpływ personalizacji na koszt

Jeśli używasz tagów personalizacyjnych (np. `##imie##`), końcowa długość wiadomości będzie różna dla każdego odbiorcy. Może to spowodować, że część bazy zostanie rozliczona jako 1 SMS, a część jako 2 SMS-y.

Przykład: Załóżmy, że Twój szablon (z polskimi znakami) ma 65 znaków.

* Dla imienia "Anna" (4 znaki) – wiadomość ma 69 znaków. Mieści się w limicie 70. -> Koszt: 1 SMS.
* Dla imienia "Katarzyna" (9 znaków) – wiadomość ma 74 znaki. Przekracza limit 70. -> Koszt: 2 SMS.\
  \
  Planując kampanię, zawsze zostawiaj bezpieczny margines znaków, uwzględniając najdłuższe dane w Twojej bazie (np. długie nazwiska lub nazwy miast).&#x20;
  {% endhint %}

{% hint style="success" %}
**Rekomendacja:** Przed wysyłką zawsze zweryfikuj w naszym panelu, jak system zliczył znaki w Twojej wiadomości. Licznik znaków na bieżąco pokazuje, z ilu części będzie składał się SMS, co pozwala uniknąć niespodziewanych kosztów.
{% endhint %}
