
APIs, SDKs, & iFrames: A Practical Guide to Embedded BI
TL;DR
Looking to embed analytics into your software? Your method of integration boils down to a key trade-off between cost, time, and customization.
- iFrames offer the fastest, lowest-cost integration for basic, read-only analytics.
- APIs provide maximum flexibility and control for a deeply custom user experience, but require the most development effort.
- SDKs are the sweet spot, providing a developer-friendly toolbox for a native feel with less work than a full API build.
Book a demo and see how Yellowfin makes embedding analytics easy.
As a software product owner, you already know that embedded analytics is a game-changer for delivering a great user experience and creating a truly data-driven user experience.
The question now isn't whether to embed, but how, and sometimes, you need to cut through the jargon to choose the right integration strategy.
This guide is your no-fluff resource for making that decision, focusing on the practical differences and tradeoffs between APIs, SDKs, and iFrames, the three technical approaches of the modern embedded BI model that will transform your product.
iFrames: Why is this the easiest way to embed analytics?
For a straightforward, low-code way to embed analytics, iFrames are the go-to solution. Think of them as a "window" you place in your app that displays a read-only view of content from another webpage, like a Yellowfin dashboard, in your customer portal.
This approach is quick to implement, making it ideal for teams with tight deadlines or limited developer resources. The main benefit is simplicity; you can add analytics in minutes, not days.
An iFrame's simplicity, however, has limits. Users can't interact with the dashboard natively, making it feel isolated. Performance may also suffer since the entire application runs within the frame. While some UI elements can be hidden, overall customization is also restricted.
For broader questions about what embedded analytics is and levels of integration, we recommend you read our Ultimate Guide to Embedded Analytics.
APIs: How do they offer more flexibility and control?
When you need granular control and deep customization, APIs are your answer.
An API acts as a communication bridge, allowing your software product to send requests to and receive data from the BI solution you are integrating. This gives you flexibility to build a truly bespoke embedded analytics experience that feels like a native part of your product, not just a window.
With APIs, you can query data, programmatically create and embed dashboards, manage user access, and even trigger automated reports based on specific events.
Leveraging APIs requires support from the BI solution and more development effort than iFrames; it’s up to you to handle user authentication (often via Single Sign-On tokens) and scripting elements, but the payoff is a seamless user experience that doesn’t require you to build the analytics UI from scratch.
Using a JS API like Yellowfin’s, your users can manipulate data, filter data visualizations, and drill down into reports without leaving your app's familiar interface. This is crucial for software-as-a-service (SaaS) platforms where a fluid, integrated feel is a key differentiator.
APIs are the ideal path for teams that want to tightly integrate their BI functionality and provide a greater level of control and personalization over dashboards/reports to customers.
Read more: The Future of Embedded BI: Customization Without the Overhead
SDKs: What do they do to accelerate integration?
SDKs are the toolbox to an API's building blocks. They are collections of pre-built tools and code that streamline using a BI platform's API. Your developers can use the SDK's components to accelerate the integration process and reduce the risk of errors.
For example, Yellowfin specifically offers a JavaScript (JS) API that functions like a SDK and allows you to embed individual content items – such as a Yellowfin report, chart, dashboard, or story – directly into your web application. This is done by inserting a small script snippet into your page that calls Yellowfin’s JS API with the content’s ID.
Yellowfin can generate a script tag pointing to its JS API endpoint, with parameters like a report’s UUID or desired width/height. When you include that script, it will render the Yellowfin report or dashboard inline within your page’s Document Object Model (DOM), no separate iframe needed. You can even set the content’s state (pre-filtered reports) via function calls.
While an SDK integration requires slightly more development effort and authentication handling (often via SSO), the result is a fluid, integrated feel that's crucial for SaaS platforms.
This approach is ideal for teams aiming to provide a high level of control and personalization without building an entire analytics UI from scratch.
Yellowfin's unique embedding approach: REST API integration
For maximum embedding flexibility, Yellowfin offers a fourth option: REST API.
The REST API provides a powerful and flexible way for third-party developers to not only programmatically interact with the Yellowfin platform, but create their own utilities and synergize endpoints with existing integrations via JS API.
You can use REST API to pull data, create dashboards, manage users, configure system settings, user roles, and automate tasks. This gives you granular control and is ideal for building a fully custom, back-end integration that feels completely native to your application and adheres to your data security and governance needs.
For a complete technical guide, we recommend you visit our REST API Wiki page.
How to choose the right approach for embedded BI?
So, how do you decide which path is right for your product? The decision comes down to a few key trade-offs between speed, cost, and control.
Evaluating your needs: cost, time, and customization
- iFrames are best for rapid, low-cost deployment. You get a functional result fast, but at the expense of deep integration and customization.
- APIs offer the most control and customization but require a greater investment of developer time. This is the path for mature products that need analytics to be a core, differentiated part of the user experience and have a team dedicated to development.
- SDKs strike a balance between control and efficiency. They provide a native-feeling, deeply integrated solution without the extensive development effort of a pure API implementation.
Beyond the core integration, you also need to consider how the BI platform supports your product's advanced needs.
Look for features like AI-powered analytics that empower your users to create their own reports and analyze their data without needing to contact support.
Also, for SaaS products, a BI platform with robust multi-tenancy is crucial to ensure that each customer's data is isolated and secure from other tenants.
What is the importance of a seamless UX for end-users?
Ultimately, your users are the most important factor. Ask yourself: what level of interaction do they expect?
- If your users simply need to view a report or dashboard, an iFrame may be sufficient.
- If they need to filter, explore, and manipulate data within your application's existing workflow, APIs or SDKs are necessary to create a truly seamless and delightful user experience.
Ready to embed BI and add greater value?
In a crowded market, simply having a great product isn’t enough.
Whether you choose the speed of an iFrame, the flexibility of APIs, or the efficiency of an SDK, the goal remains the same: to deliver a superior, data-driven experience that creates a deeper connection with your customers.
Request a Yellowfin demo today and let us help you choose the right integration path to embed our powerful BI functionality and value into your product.
Next steps: Try Yellowfin Embedded BI
Request a Yellowfin demo and let us help you choose the right integration path to embed our powerful BI functionality and value into your product.