Looker Embedded Analytics: Review, Pricing and Alternatives
When you shop for embedded analytics solutions, Looker inevitably comes up. With its code-based semantic layer and self-service capabilities, Looker remains the gold standard of BI tools even though its development speed and support quality have slipped in recent years, after Google's acquisition.
Looker's Embedded Analytics offers a robust way to integrate dashboards and reports directly into the applications users already work with. Developers can customize analytics presentations to create a seamless, engaging user experience within the same platform
Still, no tool is perfect, and Looker has its challenges. While it excels at customization and data interaction, it might not suit every organization. The learning curve can be steep, especially for non-technical teams, and the costs of scaling may add up quickly. In this article, we’ll explore Looker Embedded’s functionality, weigh its strengths and weaknesses, and highlight alternatives that may be a better fit for your data team.
Source: Looker Embed Themes
If you’re searching for a Looker alternative with similar embedding capabilities, take a look at Holistics Embedding. It provides self-service BI through a code-based semantic layer like Looker, but at a fraction of the cost—with unlimited viewers and reports.
How Looker Embedded Analytics Works
The simplest version of Looker embedded analytics works via iframes—HTML elements that load Looker content inside your host application. However, there’s a bit more than just dropping a dashboard into a webpage.
For a quick demo, check out this video.
There are at least three different editions of Looker:
- Standard Edition: Tailored for small teams and small/medium-sized businesses with up to 50 internal platform users.
- Enterprise Edition: Includes all features of the Standard edition and offers advanced security features such as VPC-SC, Private IP, and Private Service Connect.
- Embed Edition: Includes all the features of the Enterprise edition along with signed embedding, a private label option, and custom themes.
For embedding, Looker offers multiple approaches:
- Private Embedding: This approach requires Looker user authentication. It’s the most basic approach, where your application manages the iframe, and Looker handles user authentication with Looker login, Google Auth, or OpenID Connect.
- Signed Embedding: If you already have a user authentication system in place, signed embedding is likely the best option. This method generates a unique URL for every session. It's a common choice for customer-facing applications (Looker Developer Portal).
- Public Embedding: Can be accessed publicly without authentication, which means anyone with the URL can view the content.
While private embedding is useful in certain cases, signed embedding offers a more secure, flexible, and scalable approach, especially when your application already has its own user authentication system. So, for the purpose of this guide, let’s assume you have an application where you want to embed a Looker dashboard using an iframe and Looker’s signed embedding.
Let’s break down how this method works.
Breaking Down Looker Signed Embedding
TLDR; Here’s a quick rundown of the typical workflow for Looker signed embedding:
- A user logs into your application.
- Your server generates a signed URL for a Looker dashboard, customized with user-specific filters.
- The signed URL is embedded into your app via an iframe.
- The user interacts with the dashboard without having to log into Looker, and they only see the data they’re authorized to access.
At the core of signed embedding is the generation of a signed URL. This URL is constructed on your backend and includes details about the user, the session, the permissions that you want the user to have, and the security token. The URL is "signed" using HMAC (Hash-based Message Authentication Code) with a secret embed key to ensure that no one can tamper with the data passed through the URL.
Such URLs can be generated by using the Get embed URL option on the three-dot dashboard menu of a dashboard, or the Explore actions gear menu of a Look or Explore, by using Embed SDK, or by manually coding the URL.
A signed embed URL has the following format:
https://HOST/login/embed/EMBED URL?PARAMETERS&signature=SIGNATURE
Here’s an example of the Signed URL:
https://analytics.mycompany.com/login/embed//embed/dashboards/1?
nonce="22b1ee700ef3dc2f500fb7"&
time=1407876784&
session_length=86400&
external_user_id="user-4"&
permissions=["access_data","see_user_dashboards","see_looks"]&
models=["model_one","model_two"]&
group_ids=[4,3]&
external_group_id="Allegra K"&
user_attributes={"vendor_id":"17","company":"xactness"}&
access_filters={}&
first_name="Alice"&
last_name="Jones"&
user_timezone="US/Pacific"&
force_logout_login=true&
signature=123456789ABCDEFGHIJKL
Once the signed URL is generated, it’s embedded into your application via an iframe. The iframe will load the specified Looker content (dashboards, reports) and display it to the user.
The key advantage here is that the signed URL contains everything Looker needs to authenticate and serve the correct data, so users don’t need to log in again. From their perspective, the embedded analytics appear as a seamless part of your application.
Signed embedding also allows for a high degree of customization. You can pass in filters, parameters, or custom themes via the URL.
The URL needs to be generated in your app's backend system, and it will be used as the source URL for the iframe.
To verify that the generated URL works correctly, Looker provides an Embed URI Validator.
One of the concerns raised in the Looker community —is the potential exposure of user information in the embed URL. To solve this, Looker provides Create Signed Embed Url endpoint, which takes a set of signed embed parameters that includes the URL of the content that you want to embed and returns a shorter, complete, encoded, one time use, cryptographically signed URL.
Pros of Looker Embedded Analytics
Here’s what I consider the best aspects of Looker for customer-facing analytics.
- Data Interaction: Looker’s embedded analytics let users interact with data right within the application they’re using. This reduces friction, allowing decision-makers to drill into data, adjust filters, and create custom reports without leaving the embedded environment.
- Customizable Experience: Looker offers robust customizability, allowing you to create interactive data visualizations that match your product's branding. From themes to fonts and layouts, you can make embedded analytics feel like a natural part of your platform. With Looker as “Headless BI,” (take a look at this and this conversation in dbt Slack), you can leverage its API and SDK to pull data into your app and use custom-built chart components.
- Why It Matters: Seamlessly embedding data into your platform creates a cohesive user experience, building trust and reducing the learning curve. Plus, customization means your product can evolve with analytics that feel fully integrated, not just "tacked on."
- Advanced Security: Looker provides row-level access controls, ensuring users only see the data they're authorized to access—essential for handling sensitive information.
- Centralized Data Management with a Semantic Layer: Looker’s semantic model ensures consistent definitions and calculations across your organization, centralizing data definitions and business logic for better governance.
- Why It Matters: In large organizations, consistent data usage is crucial. A semantic layer standardizes metrics, improving accuracy and reliability in decision-making across departments.
Limitations of Looker Embedded Analytics
- Cost Considerations: Looker isn’t the cheapest option on the market, especially for smaller businesses or startups. The platform’s pricing structure, while scalable, might pose challenges as you scale up, especially when factoring in customizations and large user bases.
- Limited Out-of-the-Box Visual Customization: While Looker provides extensive options for customization, its out-of-the-box visuals are somewhat limited. You’ll need to invest time into designing your embedded visualizations to ensure they meet your specific aesthetic and user experience requirements.
- Advanced Use Requires Steep Learning Curve: While Looker makes it easy to start embedding analytics, advanced customization or handling specific use cases (such as multi-tenancy) often requires a deeper understanding of Looker’s inner workings, especially its API and LookML (Looker’s data modeling language).
A Closer Look at Looker Pricing For Embedded Analytics
Navigating the pricing structure of Looker can be a bit of a challenge, as it is not as straightforward as many users might hope. Instead of clear, public pricing tiers, potential customers are encouraged to contact Looker’s sales team to discuss specific needs and get tailored pricing information.
Looker offers different editions. These editions range from basic functionalities to more advanced features suitable for larger enterprises and embedded analytics. The capabilities of each edition can significantly impact the overall pricing, with the Embed Edition likely costing more than the Enterprise Edition. This pricing structure is generally not inexpensive. Based on my personal experience testing Looker last year, the Standard Edition was priced at approximately $5,000 per month.
For more information on Looker pricing, check out this deep dive.
In addition to the pricing of the platform editions, Looker's licensing model primarily operates on a per-user basis. This means organizations will pay based on the number of users accessing the platform, which can lead to increased costs as teams grow or as more users require access. While this model provides flexibility, it can become a significant expense for larger teams or organizations with many users needing analytics capabilities.
Workaround: According to a Reddit user, it seems that there's an option to negotiate with the Looker sales team for a predefined number of embedded users based on the expected number of visits, rather than being charged for each unique user created by Looker’s automatic process. This approach could offer more flexibility and help you control costs, especially if you anticipate a high volume of user visits to the embedded analytics.
Source: Reddit r/Looker
Final Thoughts: Looker Embedded for Your Business
Looker is a powerful tool that offers embedded analytics with robust security and governance features, but it comes with a trade-off: greater complexity for advanced uses, potentially higher costs, and limited out-of-the-box visualization options. Teams with the necessary technical resources and budget will find Looker an excellent solution, while smaller organizations might need to carefully weigh the benefits against the investment required.