User Guide Help Center Documentation User Forums Training
Managing Business User Features

Various documentation pages discuss the business user features for exploring data and for finding, viewing, organizing, sharing, sending, scheduling, and downloading content. Many of those features have Looker admin-specific or developer-specific functionality or must be enabled by a Looker developer. This page organizes all the sharing, downloading, scheduling, sending, public sharing, importing, and embedding features onto one page for easy access.

Sending and Scheduling Data

Sending and scheduling data may require some system administration considerations.

Managing Scheduling Issues

In the Admin section of Looker, admins can use the Scheduler Plans and Scheduler History pages to look up and resolve schedule issues. Admins should be careful about deleting or disabling a user who may be the owner of important scheduled deliveries, because the schedules are also deleted or disabled.

Rendering Image-Based Data Formats for Sending and Scheduling

When scheduling or sending Looks and dashboards, PhantomJS is required to render these data formats:


PhantomJS is a headless browser, scriptable with Javascript, required for rendering image-based data formats.

If your instance is hosted by Looker, this software is already installed.

If you’re hosting your Looker instance on-premise, follow the instructions below to install PhantomJS. Make sure you install PhantomJS into an executable path on the same machine as the one on which the Looker instance is hosted. Looker requires PhantomJS 2.1.1+ to run. When upgrading from earlier versions of PhantomJS, you must restart Looker for the new version to be recognized. If Looker detects an older version, it will default to the old behavior where PDFs have one page per visualization instead of the optimized dashboard layout.

To install PhantomJS:

  1. Get the correct binary for your platform from the official PhantomJS repository. PhantomJS is available for Mac, Windows, and various distributions of Linux. For example, the 64-bit Linux version 2.1.1 is:


    On Linux, you will need to untar the file. For example:

    tar -xjf phantomjs-2.1.1-linux-x86_64.tar.bz2
  2. Copy the bin/phantomjs binary to a place that is in your system's path. On Ubuntu we recommend /usr/local/bin. For example:

    mv phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/
  3. Verify that PhantomJS is installed and is the correct version: phantomjs --version

  4. You should now be able to schedule, send, and download data in image-based formats.

Rendering Emailed Images

The Easy to Read Email Images Labs feature allows the email client to determine the optimal image size for images sent or scheduled in the body of emails. This Labs feature is on by default. If images appear distorted when delivered by email, your users’ email client may be incompatible with this feature. You may want to consider disabling the Labs feature.

Downloading Data

This section includes admin-specific or developer-specific functionality and tips for the business user downloading data feature.

Rendering Image-Based Data Formats for Downloads

When downloading data, PhantomJS is required to render these data formats:

Refer to the PhantomJS installation instructions in the Rendering Image-Based Data Formats for Sending and Scheduling section above.

Downloading Data from Dashboard Tiles without Download Permission

Typically, a user requires a role that includes the see_user_dashboards and either the download_with_limits or download_without_limits permissions to view and download data from tiles on a dashboard. There is a condition, however, where a user can see and download data from a model to which they do not have those permissions. It occurs when the following is true:

In this case, that user can view and download data from the entire dashboard, including tiles based on models to which the user does not have permissions to view or download data.

Large Excel Files Hanging or Not Opening

For downloads or deliveries of large Excel files (files over 5 GB), the download or delivery screen may appear to freeze, or you may be unable to open the delivered file. Here are some conditions that can cause this behavior, and how you might fix it:

Preventing Injection of Malicious Code into CSV Files

CSV files can contain macros that can run on Microsoft Excel or Google Sheets. Because of that, it is possible to inject malicious code into CSV files, making CSV files a possible security risk.

To remove this risk, Looker admins can request a license update that causes Looker to pad any value in a cell that could be executable code. When this is enabled, Looker will add a ' character to any cell value that begins with a special character (=, -, +, or @) when generating a CSV file. This disables all macros in Looker-generated CSV files.

Please contact your Account Manager or if you want to update your license for this feature.

On-Premise Considerations

Some Looker behaviors visible to your business users may differ for on-premise Looker instances.

Sending and Scheduling Data to Streamed Destinations with Action Hub

Looker hosts and provides a stateless server, Action Hub, that implements Looker’s Action API and exposes popular actions.

With the Looker Action Hub you can send and schedule data from within Looker to other SaaS tools automatically. Sending or scheduling data to destinations that support streaming relies on synchronous queries running between Action Hub and Looker’s executable server, or .jar, file. For hosted Looker instances, these sources are configured to communicate, but users of on-premise instances may experience hanging queries when sending or scheduling data to streamed destinations if the on-premise .jar file from Looker is not able to communicate with Looker’s Action Hub.

One solution to address this potential issue is to host an on-premise Action Hub. Looker’s Action Hub service is open source so that you can contribute additional actions or host an instance of the service within your own infrastructure. Learn more about deploying Action Hub on-premise on this page.

Another solution is to ensure that the executable server file is hosted in a public server so that Looker’s Action Hub can communicate with it.