TagoIO offers a broad range of services that can be allocated the way your applications need. By provisioning the services that you will use throughout the month, you will know exactly how much you will be charged for.

You can visualize the limits and the usage history of each service in the Usage Statistics tab, located under the MyBilling session in your account.

https://cdn.elev.io/file/uploads/VkSrjeSoWpdg7LeGdh2jKUEagxh0dd_cO83j6HUV_6s/EpFjAe_Mrndoc0XVtJUR_VdX73vspwFgYAoihP1UBt4/usage_history-KMk.png
TagoIO doesn't charge by the number of devices, dashboards or users that access your dashboards.

Learn more about payment options, carry over policies, and other topics in our FAQ.

TagoIO will send warning Emails to the address registered to your account each time a service exceeds 80%, 90%, and 100% of the limit.

1. Data Input Transaction

This diagram shows how data input transactions are counted at TagoIO.

https://cdn.elev.io/file/uploads/VkSrjeSoWpdg7LeGdh2jKUEagxh0dd_cO83j6HUV_6s/bw991tOHjrLRmvwphl6a-Wrgihg6EiQpbuiVhR1X5SA/Screen Shot 2018-07-23 at 8.42.15 AM-TEY.png

Each time a device sends data to TagoIO, it is considered an Input Event. One transaction will be counted for each register sent in that event ,as they are immediately stored in the data buckets.

Also, one additional transaction will be counted for each function enabled in the 'Connection Settings' field for that device. These additional functions are:

  1. verify if an Action needs to be triggered (triggers are used to call Analysis, post data to end point, send SMS or email, and others)
  2. make data available to dashboards in real-time.

The Connection Settings field is found in the device configuration under the 'More' tab.

https://cdn.elev.io/file/uploads/VkSrjeSoWpdg7LeGdh2jKUEagxh0dd_cO83j6HUV_6s/NJq-ZNjFsKzwd5yqW29AuZtUa-HO71NFbZieElUxe_I/Screen Shot 2018-07-21 at 2.52.00 PM-yUs.png

By default, when a device is created, these two additional functions are enabled, which means that up to 3 data input transactions can be counted for each register sent to TagoIO. Therefore, the service usage can be reduced to 1/3 if your application doesn't require that the specific device triggers any Action verification or displays the data in real-time. Learn more about Connection Settings here.

Before defining the limit for Data Input Transactions for your account, you need to estimate the maximum number of transactions per hour and the peak per minute.

1.1 Data Input limit of transactions per hour

You should select a limit that you are sure your application will not exceed during a period of one hour. When an account hits this limit, that service will be blocked up to the 1-hour period until the next counting cycle.

TagoIO will deny requests from any devices linked to an account that is blocked.

Example of how to estimate the Input Transactions limit:

If your device sends the registers 'temperature' and 'humidity' in the same post at every 2 minutes, and both Connection Settings are enabled, the usage of Data Input Transactions will be:

2 (registers) * 3 (transactions per register) * 30 (requests per hour) = 180/hour

Multiply the previous number by the number of devices and you will have the total number of data input transactions per hour.

1.2 Data Input limit of transactions per minute

You also need to make sure that your account will not exceed the limit of transactions per minute. This limit is only applied to input transaction related to the data storage, and it doesn't count the other 2 transactions (Action or Realtime).

Data Input limit per minute is automatically set as 1/10 of the limit you set for the data input transaction per hour.

If you, for example, set your Data Input Transactions limit to 50,000/hour, your limit per minute will be 5,000/min.

If your account exceed this limit, TagoIO will NOT respond to any device requests during that 1 minute period.

This is necessary to avoid high demand peaks, and to add DDOS attack protection at TagoIO system.


2. Data Output Transaction

If for example, a device reads one variable resulting in a response of 100 registers (100 data points of temperature, for example), the operation will count 100 Data output transactions.

If for example, a device reads one variable resulting in a response of 100 registers (100 data points of temperature, for example), the operation will count 100 data Output Transactions.

For Data Output Transactions, only the limit per hour is applied.
If this limit is exceeded, any attempt to read (get) data will be denied for the rest of the 1-hour period.

Accessing data from the dashboards doesn't count against the Data Output limit, even if data is downloaded in .csv format from the widgets. But, the system will count downloads using the function 'Export Data' from the bucket feature.


3. Analysis

Every time a script successfully runs at TagoIO, one analysis 'run' is counted. This limit defines the maximum number of analysis that can be run in a one hour period.

If this limit is exceeded, no scripts will be executed for the rest of that 1-hour period.

4. Data Register Storage

Each register is composed by a variable and the metadata associated with it. The data storage limit will define the maximum storage capacity for your account at all times.

If this limit is exceeded, no data will be saved on the buckets until the limit is increased or the number of registers is reduced. API response will indicate that the limit was exceeded.

As location is part of same variable, you can consider location as part of the register, if your device sends it inside the Json field 'location', which is expected in most applications. The same rule applies to any metadata that is sent together.

Example: Your device sends temperature, humidity, speed, and location at every 1hour. As a result, 3 new registers will be added every hour.


5. SMS

Each time a SMS is successfully sent by the Action or Analysis function, it is counted as one unit sent. This limit will define the maximum number of SMS that can be sent during a one month period. Each SMS unit is limited to 140 characters.

If this limit is exceeded, no SMS will be sent until the limit is increased or the billing period ends.

SMS pricing is only valid for US, Canada, Mexico, Colombia, Chile. For other countries, contact us.

SMS messages not used during the period will not be carried over to the next month.

6. Email

Each time an Email is successfully sent by the Action or Analysis function, it is counted as one unit sent. This limit will define the maximum number of Emails that can be sent during a one month period.

If this limit is exceeded, no Email will be sent until the limit is increased or the billing period ends.
Emails not used will not be carried over to the next month.

More information about examples and FAQ can be found here.