Advanced Customization

This section covers the Databox Designer web app – an intuitive GUI for customizing visualizations. Most Databox users won’t need to use the Designer, but the cool kids will want to learn to harness the full power of our platform. However, you should probably read and understand the rest of documentation available on this site before you dive into this.


Databox has a powerful built-in data modeling. This means, it’s not just a visualizing tool for mirroring exact numbers pushed in, but it will also allow you to apply various data aggregations (summarize, average, etc).

What are Datatypes? Datatypes are descriptors that give context to the data and define what kind of numbers you are pushing in. You can push different types of data: from unprocessed raw numbers to current balances, averages, uniques, rates… each metric can have a different Datatype.

To handle this wide range of data, your input has to be described so that Databox can enable the correct data modeling to be run on it.

By default we assume that you’re sending the difference from previous (‘Diff’). This is the right type when pushing event value. The best example is to push the deal/sale size every time a deal/sale happens. To see the total of sales in a day or longer date range, we will sum those sales pushed on a specific day or period of days.

However, if your data does not conform to these rules, don’t worry, we support other Datatypes too.

In the case of pushing clicks on a specific button on the website, you would need to push new clicks only (one push for each click or batched together every hour or so) to use the default data type. If you would like to push the total value of clicks (increasing over the day and then starting with 0 after midnight), you would need to set the sum for day type. In that case we would show the latest value for a specific date to be the real and final value, and sum those latest daily values when showing the total for a longer period of days.

These are just two examples, please check the Datatypes list below.

Note: For all integrations build by Databox the current Datatypes have been already set. Setting Datatypes is relevant only for pushing custom data via Databox API and all SQL integrations.

Difference from previous [Default] Diff Raw unprocessed data (event data) that allows all aggregations. Each sent value represents an increase or decrease in value. For example, if you trigger an update to Databox on every transaction made in your online store and send us the value, we’ll sum these values up to show the total amount of income.

Example: Deal value pushed each time a sale happens.

Difference of average from previous DiffAverage Raw unprocessed data identical to ‘difference from previous’, but for the case you would like to display average data. Both aggregation functions will be set to Average (AVG) by default.

Example: Average order value

Sum for day DailyLatestSum Default type for fully aggregatable data (non-uniques). If you push values many times a day, the latest value counts as the ‘real and final’ value for that particular day. The value is reset to 0 at midnight UTC. Most cloud services treat data this way.

Example: Current number of all visitors this day (improving with each push)

Minimum for day DailyLatestMin Identical data as for ‘Sum for day’, but the aggregation functions will be set to minimum (MIN) by default, to display the lowest pushed value in a given period of dates.
Maximum for day DailyLatestMax Identical data as for ‘Sum for day’, but the aggregation functions will be set to maxim (MAX) by default, to display the highest pushed value in a given period of dates.

Example: Highest closed deal

Unique Daily value UniqueDailyLatest Pushing latest value for today, with data that has been irreversibly processed before and where further data aggregation is not allowed.

Example: Unique users this day, percentual or average values for this day

Overall value OverallTotal Overall current value for metrics, where data doesn’t ever reset, but represents the current status (visualized with a ‘All time’ date range). The latest value pushed is the only one that matters.

Example: Facebook likes, Current account balance

Unique daily value for individual [Date range] Unique7dDailyLatest
Pushing latest value for a specific date range, with data that has been irreversible processed before and where further data aggregation is not allowed. This is practical with using metric mappings, where a specific date range is mapped to another unique metric.

Example: Unique users for last 7 days (by using type ‘Unique7dDailyLatest’)

How to set the Datatype

The Datatype for a specific metric can be set after the first value for a metric has been pushed to Databox. Metrics are bundled in Data sources (tokens) and are accessible from the Databox web application under the Data manager tab. Custom metrics can be pushed to the default access token (‘Token’) or a new token created by the user. To see the metrics pushed to a token and set their Datatypes, click on the context menu for that token and then ‘Edit metric keys’.

Data source options menu

This page allows you to change the display name of the metric, the Datatype, default number format, compare number format, compare function, inverted value option (optional, if checked increases will be marked with red and decreases with green, meaning lower values are better) and available date ranges (optional, if you want to disable some date ranges from being selected when setting up Databoards).

Data source options menu

Metric defaults

Metric defaults can be set in the Databox Designer - “Edit metric keys” under each metric’s data source menu.

Data source options menu

Apart from changing the data type described in the previous section, you can also change the label (human-readable name) and the default format, e.g. if you’re sending a specific currency or percentage values (you can enter a custom format too!)

Data source metric keys page

Please keep in mind that changing these settings is not retroactive and will not update previously created datablocks, alerts or any other items.

Advanced metric settings

Opening advanced metric settings

To get from a raw data to a number or graph on a datablock, several settings must be applied.

We call them ‘metric settings’ and you can see (most of) the options by selecting a block in the Databox Designer by clicking on the ‘Advanced settings’ cogwheel near the block title in the right-hand panel as shown on the image.

It will open the Advanced settings popup as shown below:

Advanced metric settings popup

Interval and granularity

Interval and granularity together define the range and chunk size of data shown. Let’s look at a practical example. The timeline shown below represents values sent to Databox. You can see different intervals marked with colored borders.


Let’s choose a ‘Last 7 days’ interval. Now we split the interval by granularity. You can see in the image below that daily granularity splits the interval into 7 chunks, while for weekly granularity we only have one chunk.


Aggregation functions

Aggregation function defines what to do with the different data points inside one granularity chunk. It’s used to calculate one ‘Daily’ (or whichever granularity we’ve selected) value from all the data items sent in this chunk (a day).

Let’s return to the example from before. You can see the actual values for each granularity chunk below the data timeline.

After the first aggregation is applied, we still have multiple values (one for each granularity chunk), which is just enough to draw a line graph. But if we want the output to be a single value (like on a ‘Number’ datablock), we need to specify a second aggregation function that will aggregate all the aggregated (..brainmelt..) granularity chunk values into one, as shown on the pink line in the example below.

Aggregation functions


While number formats are fairly obvious, there are a couple that might require special attention - relative time, duration and unit formats.

Relative time format is useful wherever your data is a unix timestamp. This format will make the value appear as, for example, 3 minutes ago.

Duration format also operates with time by taking amount of seconds and outputting duration like 3h 25m 13s.

Unit formats (Prefixed unit and Postfixed unit) only work when your metric has units (read more about them here). It attaches the unit value either before or after the value.

Don’t forget that instead of setting format for every visualized datablock, you can define the default format for the metric itself.

Format and Scale

Scale, along with Format, is used only for visual number representation. With default scale and format (‘Auto’), the number “123456” will show as 123,456. However, you could also set the Scale to “Thousand”, and it’ll force the number to show as 123k.

Compare with

Compared metric section: apart from the obvious choices, you can also compare this number with another metric, even from another source. This usually is the ‘change’ shown next to the metric (when set for one-number items) or when tool-tipping (when set on graph items)

If you play around with advanced settings in this popup, you can see the results in the ‘Data preview’ section below.

Note that when a specific datablock’s visualization has more than one possible metric shown in it (for example, a combo chart has separate metrics for bars and lines), you’ll notice a tabbed interface that allow you to switch between the metric settings in this popup and also rename them (for example, setting up and renaming a bar and line in combo chart).

Advanced metric settings popup with tabs

You can learn more about different datablocks’ visualization options in the next section.

Customizing datablocks

Single- vs. multiple-source datablocks

Single vs multiple source table switch

Normally, you define a separate metric for each row in a table and slice in a pie chart. If you’re sending data with attributes (read about them here), however, instead of setting up a table row for each attribute, you can switch the table to ‘single source’ and select this metric.

Not only does it save you time, but it keeps the datablock up-to-date with any new attribute values sent, and also allows for automatic sorting by name, value or change.

Currently, we support single-source metrics only for table, pie and pipeline datablocks.

Adding extra intervals

Adding time intervals to datablock

On (almost) every datablock, there’s an option to add extra time intervals. So if you have set up a datablock that shows your sales today, you can navigate to the ‘Intervals’ tab and add, let’s say, WTD and MTD.

Still can’t set up something the way you want? Contact us and we’ll let you know if (and how) it’s possible.

Are you stuck? You're always welcome to contact us - we're here to help!