You might be interested to calculate your delivery quota.

The intuitive first approach to calculate this quota is to use the following calculation:

(messages [all sent] - messages [on status failed]) / messages [all sent] = delivery quota in percent


(500 [all sent] - 25 [on status failed]) / 500 [all sent] = 95%

The above calculation is not really wrong but in many cases it might produce false results because it starts from the wrong premise that all phone numbers used are all active numbers/devices, which is usually not the case. Since it is impossible to deliver a message to an inactive number and the chances to be able to reach a successful delivery do not increase with the number of tries towards this number, the calculation should ideally try to cater to these facts by not counting FAILED deliveries to a number multiple times. 

The chances of achieving something truly impossible, do not increase with the number of tries.

Trying repeated times will bring down your quota in theory but in practice it is an invalid calculation.

Here is an example to illustrate this:

Let's say we are sending messages to a pool of 100 phone numbers. 99 of those are active and our messages receive the status DELIVERED. The message to the inactive number gets the status FAILED.

Our calculation brings up the correct quota of 99%:

(100 [all sent] - 1 [on status failed]) / 100 [all sent] = 99%

Now let's say we kept retrying to deliver messages to this one inactive number and we tried 100 times more after the first try. This will add 100 messages on status FAILED to our calculation>

(200 [all sent] - 101 [on status failed]) / 200 [all sent] = 49.5%

The above calculation - while algebraically correct - falsified/worsens our delivery quota extremely. The value is low but not because there is a technical/quality problem of the messaging route. It is low because we repeatedly tried something impossible.

Hence we suggest to use only the distinct count per numbers on status FAILED for the calculation or in other words: to count each FAILED message only once per number.

Our example from above would then become:

(100 [all sent minus the impossible tries] - 1 [distinct count of numbers on status failed]) / 100 [all sent minus the impossible tries] = 99%

And it would represent the quality of the route much better.


To eliminate inactive numbers entirely from the equation and thereby also eliminate the related costs, we suggest to use our HLR feature. For more info on this, please see the following articles:

Related articles:

If you have any questions, please send an email to