The basics of any Internet of Things application powered by Ubidots are: devices, variables, analytics engine, dashboards, and events. Within this article we will address each of these concepts as they relate to Ubidots IoT enablement software and how you can better organize your Ubidots Apps to best connect with the users. 

Once your devices, variables, and general Application is assembled, give your App some layers with Ubidots Device Management to learn more about Ubidots internal architecture and the how you can use Apps, Organizations, and Users to efficiently connect your data with those who should be using it. 


A device in Ubidots is a virtual representation of a data-source or simply, an asset taking in sensor data and transmitting said data through a connection protocol to Ubidots' cloud. Click here for current firmware examples and tutorials for connecting your device to Ubidots. 

All devices are different, but the standard setup on any device entails:

  • A library that should be installed in the device's IDE. (not required)
  • Filling parameters for authentication and connection such as a TOKEN (i.e. the unique ID for each account or user), device label, variable label (i.e. devices and variables identifiers or names in Ubidots), Wi-Fi SSID, or Wi-Fi password, depending on the device and requirements.  
  • Making API request (i.e a call from a device to the web server). Ubidots’ libraries spare the need to manually make these requests. However, if you’re working with a device not currently in the list of supported hardware, you can choose a connectivity protocol such as MQTT or HTTP and make a request using API accordingly.

Creating devices: there are two ways to create devices:

  1. Devices are created automatically in Ubidots the first time a dot is received to a user's private TOKEN or an Organizational TOKEN.
  2. Clicking the "+" icon in the top right corner of any single device's screen. 


Once a device is created and receiving data from your hardware or another 3rd party data-source, the data will be presented in its raw or calculated form as a variable.

Types of Variables:

– Default - raw data coming from devices (people counted).

– Derived - the result of a mathematical operation of a default variable (people counted = 5).

– Rolling Window - correspond to statistical operations of default variables in a determined time-frame (e.g. average daily traffic this month).

Below you can read more about derived and rolling window variable setups. 

Creating variables: there are two ways to create variables.

  1. Assigning a label as a variable within your hardware's code.
  2. Clicking the "+" icon in the top right corner of any single device's screen to receive the Variable's ID. To find the variable's ID - select the "eye" icon form the variables card. 

Analytics Engine

Ubidots Analytics Engine is a simple and effective way to create insights from the raw data stored in Ubidots' Cloud. Using Ubidots Analytics Engine, users can create Derived and Rolling Window variables that calculate and enhance data to give data-driven decision to user of an Ubidots powered application.  

For example, to calculate Average Energy consumed this week, we will need to create a derived variable called Power, then calculate the product of Current and Voltage (P=C*V). The default variables Current is multiplied by Voltage. Then a rolling window variables is needed to calculate the average over a week. 

Derived Analytics

Here is a complete list of available functions, such as cos(x) or ceil(x) functions, and more!

Rolling Window Analytics

Note that default variables are yellow, and variable and Rolling Window variables are green.

For additional examples of variables, please look to these video tutorials: 

Check out this quick Tutorial for how you can quickly and effortlessly create Devices and Variables with Ubidots. 

Dashboards and Visualizations

Dashboards are the human-machine interfaces where data is easily visualized. Your Ubidots account will let you create as many dashboards as needed, containing widgets and data-visualizations to comprehend your data at a glance. For additional details on your dashboard's construction, check out this tutorial


In Ubidots, Events are Alerts that are messages triggered and delivered through email, SMS message, Telegrams, or webhook messages based on a customized design rule created in the application. If you wish to create alerts for your IoT application, check out this tutorial for additional support. 

3 Event types:

You can also determine the format of alerts by choosing between emails, SMS, Telegrams or Webhook

Check out this video tutorial below for a hands on view to creating alerts —and their end delivery format. 

Did this answer your question?