Detailed charges and pricing

How much will messages cost?

Only messages sent out from Postman's production environment will be charged.

The below pricing is independent of where the recipient is located (i.e. local number pricing will still apply to recipients who are overseas but own Singapore numbers).

All charges are subject to GST which will be applied in the invoice.

Local Number (numbers starting with +65)
Foreign Numbers (all other numbers)

$0.046 SGD per segment

$0.23 SGD per segment

Refer to the message segment calculator to understand more about message segments.

What kind of messages will be charged?

A breakdown of when a message is charged is dependent on the status of a message.

Message status
Will the message be charged?

success

✅ Yes

recipient_invalid

✅ Yes

recipient_unavailable

✅ Yes

content_invalid

✅ Yes

routing_error

✅ Yes

message_expired

✅ Yes

sent_to_telco

✅ Yes (only for foreign numbers as this is the terminal state for foreign numbers)

delivery_unknown_error

🚫 No

server_unknown_error

🚫 No

Why are charges applied to non-success message statuses?

  • recipient_invalid - Mobile number is not recognised by the network operator: The system must validate the number and attempt initial routing, using resources as it tries to establish if the message can be delivered. We advise all users to ensure that recipients' numbers are updated to avoid unnecessary costs.

  • recipient_unavailable - Recipient is not currently connected to the mobile network: While the message remains undelivered, the attempt to route it still consumes network resources and incurs charges from the operator as it processes the delivery.

  • content_invalid - Message content contains prohibited elements or incorrect encoding: Although messages with invalid content are blocked by the network, they still pass through several stages of processing, including identifying and handling these messages which involves costs. We advise all users to ensure that their message content does not contain invalid characters to avoid unnecessary costs.

  • routing_error - Issues with routing to the recipient’s mobile network: Network operators still process these messages and attempt routing, so the resources used in these steps incur costs.

  • message_expired - Message was not successfully delivered within the expected timeframe: The message remains in the network queue, and several delivery attempts may be made, incurring costs throughout the process.

Last updated