Exago Logo
Generic filters
Exact matches only

Technical teams come to us with Exago BI implementation questions all the time, so we decided to answer the most common ones here. The following explanations come directly from our engineers.

How does Exago BI handle data security and multi-tenanting?

Exago BI sits behind your existing security and enforces those protocols pertaining to reporting. It connects directly to your data source and is equipped to handle whatever tenanting structure you already have in place, whether you tenant at the row, schema, or database level.

Exago BI does not authenticate users. Rather, it provides data, features, and report authorization to those users your application has authenticated.

Because the solution connects directly to your database via a connection string, you are not required to ETL or migrate your data. You remain in full control of where it is housed and processed. Exago never comes into possession of your or your customers’ data.

What user roles or user levels does the Exago BI implementation provide?

Unlike most other embedded BI solutions, Exago BI allows admins to define their own user roles. Instead of providing an out-of-the-box “report builder” role with a fixed set of permissions and capabilities, for example, Exago BI lets you create a role, call it “report builder” (or anything else), and stipulate exactly what tools, capabilities, permissions, and settings a report builder will have. You can create any number of roles, call them whatever you like, and either make them global or unique to each customer. With Exago BI, “Acme Corp Executive Data Consumer” is a perfectly plausible role.

Where can I deploy Exago?

You can deploy an Exago BI implementation on premises, in the cloud, on site with your clients, or in a Docker container. See Installation and Configuration for more details.

How does Exago BI embed?

There are two components to this answer: 1) how Exago BI elements are passed to the host application, and 2) how they render on a host page.

Let’s first look at element transfer. Unlike a YouTube video or a tweet, an Exago BI element cannot be passed to the host application in the form of a URL or componentized embed code snippet. Rather, Exago BI integrates with the host application at the code level via an API, either .NET or REST. This is how Exago BI elements — be they charts, reports, icons, or the entire user interface — are relayed to the host application.

Second, admins can render Exago BI on the host page using either iframes or JavaScript in conjunction with divs. Each method has its pros and cons, so it’s good to choose based on the use case.

How can we present Exago BI in our system?

You can embed virtually any element of Exago BI anywhere in your application, though it’s most traditional to embed output and designers. Output is data analysis and includes charts, maps, KPIs, tables, reports, crosstabs (pivot tables), and dashboards. Designers are studios for building reports and dashboards. You can also embed UI elements such as menus and toolbars if you like.

There is no limit to the number of elements you can embed on a single page. The JavaScript API makes this a performant option and prevents multiple embeds from affecting load speeds. You can also embed Exago BI elements alongside any native content you like.


You produce veterinary software for animal hospitals. When a user opens a pet owner’s file, it lists the owner’s pets and insurance information. With Exago BI, you could enhance this profile with an embedded report listing the owner’s prior visits and a data visualization showing their outstanding balance. If these two elements are part of a dashboard, you could also include an interactive date filter by which to change the period of interest.

How do users log in to and access Exago?

Exago supports a single sign-on experience, meaning that once your users log in to your application, they don’t have to then log in a second time in order to gain access to your application’s BI implementation. As soon as a user logs in to the host application, Exago BI dynamically receives the information it needs to load the appropriate configuration.

This is commonly done using the “base plus delta” method. The “base” is a default configuration stipulating what features, data connections, objects, culture settings, to load. The “delta,” applied via the API, is a set of temporary customizations added to accommodate individual users.


Each of your customer organizations has its own base configuration of Exago BI. The base configuration reflects their subscription level, database location, and report storage location. When Project Manager Pam logs in, however, the API layers changes onto the base configuration to ensure that she is assigned the right user role, sees only the data she is credentialed to see, may access only the correct features, and has all the right folder privileges.

How do we expose our data in an end-user friendly way?

There’s a lot you can do to make data tables more consumable before adding them to Exago BI as objects (see links below to learn more), but there are also a few tools you can use after adding them.

The first is aliasing. As an Exago BI admin, you can simplify table and field names to make them more intuitive to users unfamiliar with your database naming conventions.

The second is custom columns. Custom columns are a way for admins to add columns to a table that don’t exist in the original data source. If a sales table has a Quantity column and a Unit Price column but no Revenue column, for example, you can add Revenue as a custom column by creating a formula that multiplies quantity by unit price.

Lastly, you have the option of organizing tables into folders. Folder names can go a long way toward helping users locate the appropriate tables and data models.

Cartoon from Dataedo: https://dataedo.com/cartoon

How does Exago BI handle performance?

At a high level, Exago BI optimizes performance by:

  1. Supporting distributed architectures for both user sessions and report scheduling.
  2. Supporting JavaScript embedding, which permits multiple asynchronous calls to the
  3. Exago BI server without initiating a new session for each call.
  4. Providing global configuration settings designed to prevent your database servers from becoming overloaded.
  5. Allocating data processing tasks to database servers wherever possible.
  6. Giving administrators control over when and how cached data is used.

How do I control which users see which reports when they access the system?

All Exago BI content — which includes not just reports, but also folders, report template files, report themes, chart themes — is stored in relational databases using a system called Storage Management. Storage Management allows for granular control over who can access which assets and how. Because all content must be stored in a folder, permissions are attached to folders, and content moved to those folders inherit their permissions.

For example, if Tim creates a report and saves it to a private folder, only he will have permission to access it. If he later moves the report to a folder he shares with the rest of his department, his teammates will have the same access rights to that report as they have to all other reports in that shared folder (e.g., the ability to read, copy, and share).

Can I write a single report for multiple customers?

Yes. If Customer A and Customer B share the same database schema(s), then their report definition files will be identical. Run in either customer environment, the report will return only the data that customer is permitted to access, as dictated by their configuration and session-specific changes from the API.

How can Exago BI be set up in a highly available way?

There are three Exago BI processes that can be set up in a highly available way:

  1. User Sessions. Exago BI can be set up in a web farm to ensure high availability during each session. An Exago web farm consists of three components: a load balancer, a state server, and a shared file storage.
  2. Report Execution. Exago BI’s scheduler service makes it possible to refer report execution tasks to remote servers.
  3. Scheduled Report Execution. Exago BI’s scheduler queue ensures that scheduled report execution tasks are completed by the most available servers in the network and delivered on time.

For a detailed explanation of each component and its requirements, see our documentation.

How do we plan our BI implementation project?

When it comes time to implement, Exago’s Professional Services team will guide you through the process using Exago Launchpad. Exago Launchpad is a project management and communication hub complete with all the tasks, workflows, documentation, and support channels you will need to achieve your timeline goals.

Launchpad covers all areas of implementation:

  1. Planning
  2. Permissioning
  3. Environment Configuration
  4. Storage Management
  5. Data Source Configuration
  6. Integration
  7. Report Building and Staff Training
  8. Deployment
  9. Post-Deployment
  10. Optional Features

Your Professional Services Engineer will tailor each area to fit your unique project specifications and be with you every step of the way to answer questions, offer guidance, provide hands-on assistance, and supply resources.

To learn more about Exago BI, visit our Knowledge Base, or get in touch, and we’ll answer your questions in person.

BI Newsletter

Stay up-to-date on all things SaaS and analytics with fresh content each month.

Share This