Scheduling Data Deliveries

On this Page
Docs Menu

Looker lets you schedule periodic delivery of a user-defined dashboard. You also can schedule delivery of a Look’s visualization or data in the form of an email, webhook, Amazon S3 bucket, or upload to an SFTP server.

Each saved Look or dashboard can have multiple schedules, and each user of that data has their own set of schedules. If a user edits or deletes one of their schedules, only their recipients will be impacted; other users might have other schedules related to that data.

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

Scheduling Data Deliveries

Starting a Schedule

There are several ways to schedule a dashboard or data delivery.

First, you can click Browse to find the content (dashboard or Look) you want to schedule. Then click the item’s gear menu and choose Schedule:

The second option is to create a schedule for a Look or dashboard while you’re viewing it. Click the gear menu in the upper right and choose Schedule:

Finally, if you are on an Explore page you can click Save & Schedule to save your choices as a Look and then schedule that Look.

If you are a Looker developer and the Schedule option is disabled, turn off Development Mode before scheduling the Look.

Choose Your Scheduling Options

After choosing Schedule, you see all of your scheduling choices:

If this is the first schedule you’re creating for this content the left pane shows and highlights the title of the schedule you are creating. On the right side, the fields show the scheduling settings and their default values. You can modify those values as desired.

If you have previously created one or more schedules for this content, the left pane shows those schedules. One of the schedules will be highlighted, and the right pane displays its saved scheduling settings.

If you want to create additional schedules for the same content, click Create New Schedule and enter the settings for that additional schedule.

If you do not click Create New Schedule please be careful not to overwrite an existing schedule, unless that is your intention.

When you are done, click Save All.

The following sections explain each scheduling setting.


Give the schedule a unique title in the Title row. This title will appear in the left hand pane after you save this schedule, and is used to differentiate this schedule from other saved schedules.

Looker displays a summary of the schedule timing and delivery options below the Title row.

Filters (Dashboards Only)

If you are scheduling a dashboard and that dashboard has filters, you can customize the filters for each scheduled delivery, letting you customize the results for each set of recipients. For example, you might send regional teams dashboard results that are filtered for their States of interest:

When on the scheduling window, click Filters to see the filters associated with that schedule.

To make customized deliveries even easier, you may want to make use of the “equals a user attribute” option. In some cases your admins will configure user-specific values called “user attributes”. Setting a dashboard filter to one of these attributes can allow the dashboard results to be automatically customized for each user, meaning that you can send out customized results with only one schedule. You can read more about user attributes here.

Timing Options

The timing options that you see will change depending upon what you choose in the Delivery dropdown menu, which specifies how frequently the delivery will be sent.

  • The Repeat and At rows let you further configure the frequency and timing of the delivery.
  • The Timezone determines the timezone that is used to interpret the schedule you’ve selected.

Destination Options

In Destination, choose your desired type of data delivery about your data delivery:

  • Email: The data or visualization is delivered to a list of email addresses you specify. Later in this page is more information about scheduling email.
  • Webhook: Webhooks are a modern, increasingly common way to trigger exchanges between internet based services. They generally require some technical or developer knowledge to use, but with a product like Zapier, webhooks can let Looker data to be delivered to a wide range of places. If you choose this delivery option, Looker prompts you for the webhook address, as described below. Check out this Discourse post for more usage details.
  • Amazon S3: Amazon S3 buckets are a common way to store large amounts of data. You or your company will need to have created an S3 bucket with Amazon before Looker can use it. If you choose this delivery option, Looker prompts you for additional settings about formating and about the Amazon S3 bucket as described below. Check out this Discourse post for more details about delivering data using an Amazon S3 bucket.
  • SFTP: Sending results to an SFTP server is a good method when your data or visualization is too large to send via email. If you choose this delivery option, Looker prompts you for the SFTP credentials as described below. Check out this Discourse post for more details about delivering data using SFTP.

Format Options

In Format, choose the format of the data in your delivery.

For dashboards, you can choose:

  • Inline Visualization: (for emails only, must be enabled in Labs as explained below) the visualization of your Look or your dashboard in the body of the email
  • PDF (Tile): your dashboard in PDF format with all tiles arranged as in the dashboard
  • Vertical PDF (Legacy): your dashboard in PDF format with all tiles shown in a single vertical column

For Looks, you can choose:

  • HTML attachment: the data table of your Look as an HTML file attachment
  • Text (tab-separated values) attachment: the data table of your Look as a tab-delimited text file attachment
  • Inline Visualization: (for emails only, must be enabled in Labs as explained below) the visualization of your Look or your dashboard in the body of the email
  • Inline Tables: (for emails only) the default option for email, this is the data table of your Look in the body of the email
  • CSV attachment: the data table of your Look as a comma-separated text file attachment
  • JSON attachment: the data table of your Look as a JSON file attachment
  • Inline JSON: (for webhooks only) the data table of your Look submitted directly in the webhook request
  • Excel Spreadsheet attachment: the data table of your Look as an Excel file attachment

In Values, choose how you want the query results to appear:

  • If you choose Unformatted, Looker does not apply any special formatting of your query results, such as rounding long numbers or adding special characters your Looker developers may have put in place. This is often preferred when data is being fed into another tool for processing.

  • If you choose Formatted the data will appear more similar to the Explore experience in Looker, although some features (such as linking) aren’t supported by all file types.

Email Options

If your destination is Email, you can choose:

  • To: The email addresses of the recipients. Enter a single email address, or a multiple addresses separated by commas, and click Add. The domain of those emails must be allowed by your Looker administrators. If the recipient is another Looker user, they will have the option to link back to the saved Look or dashboard from the email.
  • Run schedule as recipient: If your Looker administrator has enabled this feature then checking this box for a schedule causes the content to be run as the email recipient instead of as the schedule owner. This means that each users’ access filters and user attributes will be applied to the data included in each email.

    This option is only available when scheduling to named users on your Looker instance. If you have an email address that does not match a Looker user, this option is grayed out and unavailable. See this discourse article for more information about turning on and using this feature.

Webhook Option

If your destination is a Webhook, in the Address row, enter the URL to which the webhook should send a request. Check out this Discourse post for more information about using webhooks.

Amazon S3 Bucket Options

If your destination is an Amazon S3 bucket, Looker prompts you for what to send (format and values) and for information about the Amazon S3 bucket:

  • Bucket: The name of your Amazon S3 bucket.
  • Path (optional): The folder that you want to save your data too, if any.
  • Access Key: The Access Key ID to your S3 bucket, provided by Amazon.
  • Secret Key: The Secret Acess Key to your S3 bucket, provided by Amazon.
  • Region: The Amazon services region where your S3 bucket is hosted.

Check out this Discourse post for more details about delivering data using an Amazon S3 bucket.

SFTP Server Options

If your destination is an SFTP server, you can choose:

  • Address: The URL of the SFTP server to which you want to send your data.
  • Username and Password: Login credentials for the SFTP server.

Check out this Discourse post for more details about delivering data using SFTP.

Result-based Options

  • Send If: You can choose to send a Look or dashboard only if there are results, only there are no results, or in either case. This option lets you only receive emails when the filters of your Look or dashboard are met or not met. For example, you can filter for situations that you need to be alerted about such as items that are below a certain amount in inventory, expenditures above a certain value, and so forth.
  • And results changed since last run: This option help cuts down on unnecessary emails. You can tell Looker to send an email only if the query results have changed since the last email was sent.

Limit Options

For Webhook, Amazon S3 Bucket, and SFTP destinations, you can choose:

  • Results in Table: Data is sent as a single delivery.
  • All Results: Data is streamed. This is useful for large data sets, as it bypasses file-size, browser, and memory limitations.

If you choose “Results in Table”, Looker will obey whatever row limitations you’ve setup in the saved Look. If you choose “All Results”, Looker will return all the rows of the query, regardless of the saved Look settings, and regardless of Looker’s typical 5,000 row limit. This can be desirable for retrieving very large datasets, but you should use caution to ensure the query is not too large for your database.

Testing Your Schedule

Click the Send Test button to send a one time test. If you are using email, Looker will sent the test only to you, not the other recipients.

Creating Additional Schedules for the Content

If you want to create another schedule for the same content, click Create New Schedule, possibly change the copy’s default name, and specify its scheduling options. Your schedules are listed by title in the left pane of the window.

Alternatively, you can click the copy icon to the right of a schedule to create a copy of that schedule.

Saving Your Schedule

When you are finished creating schedules for this content, click the Save All button to save your schedule and close the window.

Scheduling Visualization Emails

As noted above, Looker lets you choose the Inline Visualizations format to email dashboards or the visualization (charts) from Looks. However, this feature must be enabled in the Labs Section of the Admin panel. If you do not have access to the Admin panel, please contact your Looker Administrator to do this for you.

For Scheduled Visualizations to work, your Looker instance must have PhantomJS installed. If your instance is hosted by Looker, this will already be installed. Otherwise, installation instructions are here. Make sure you install PhantomJS into an executable path on the same machine as the Looker is hosted.

Email Challenges

When you schedule an email, there are a few common challenges that can arise:

  1. If you’re using Looker’s default email configuration, things should work ok. However, if your company has set up its own email settings in the Admin section of Looker, your admins will need to make sure they are correct, and that your email provider is functioning properly.
  2. Looker’s maximum row limit for emails is 5000. The maximum size limit is 20 MB. Emails with more rows or data than these limits will not send correctly.
  3. If an email does not send at the scheduled time - but does eventually arrive - it is likely because you’re competing with other Looker tasks. These tasks can include other scheduled emails, many people exploring data at the same time, or persistent derived tables being built. If this occurs check with your Looker admins about competing tasks.
  4. If a specific email keeps disappearing from your distribution list, it’s likely because a user is unsubscribing from that scheduled email. This can be a particular challenge if you use a group email alias to send to multiple people, because any individual recipient can unsubscribe that entire email alias. If you need to understand un-subscriptions check out this Discourse article.
Still have questions?
Go to Discourse - or - Email Support