Looker lets you schedule delivery of a user-defined dashboard or a Look’s visualization or data. You email data periodically, such as a certain dashboard every Monday. You also can specify emailing alerts depending on the data values or whether the data changed since the prior time.
In addition to email, you can send data to an Amazon S3 bucket, a variety of integrators managed by Segment, an SFTP server, or a webhook. To learn more about these types of data delivery, see this page.
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. Admins 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 Edit Schedule (if there is already a schedule for the item) or Add Schedule (if there is not already a schedule for the item):
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.
If you are scheduling a Look or dashboard and it 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 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 filter to one of these attributes can allow the 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.
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.
In Destination, choose 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. To learn more about other types of data delivery, see this page.
- Recipients (count): 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. Looker shows the number of email recipients in parentheses next to the field name.
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.
- Message: A customized text message that will appear in the body of the email message.
In Format, choose the format of the data in your delivery.
For dashboards, you can choose:
- PDF (Tile): your dashboard in PDF format with all tiles arranged as in the dashboard
- PDF (Single Column): your dashboard in PDF format with all tiles shown in a single vertical column
- Inline Images (Tile): the visualization of your dashboard in the body of the email (in a single PNG file showing tiles arranged as in the dashboard)
- Inline Images (Single Column): the visualization of your dashboard in the body of the email (in multiple PNG files showing the individual tiles in a single vertical column)
For Looks, you can choose:
- Inline Table: the data table of your Look in the body of the email
- HTML: the data table of your Look as an HTML file attachment
- Text: the data table of your Look as a tab-delimited text file attachment
- CSV: the data table of your Look as a comma-separated text file attachment
- JSON: the data table of your Look as a JSON file attachment
- XSLX: the data table of your Look as an Excel file attachment
- Inline Visualization: the visualization of your Look or your dashboard in the body of the email (must be enabled in Labs as explained below
Apply Visualization Options
- Select Apply Visualization Options if you want to apply some of the visualization settings to your data delivery, causing your data delivery to appear similar to a table chart. Any of the following settings in the Plot and Series menus that are configured for the visualization will be applied to the data delivery:
- Unselect Apply Visualization Options if you do not want visualization options applied, which will cause the data delivery to appear like the data table in the Data section of the Look or Explore.
Formatted Data Values
- Select Formatted Data Values if you want the data to appear more similar to the Explore experience in Looker, although some features (such as linking) aren’t supported by all file types.
- Unselect Formatted Data Values if you do not want to 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.
Sending Alerts: Result-based Options
- Send If: For Looks, you can choose to send the data only if there are results, only if there are no results, or in either case. This option lets you receive emails only when the filters of your Look are met (or not met). For example, you can filter for situations about which you need to be alerted, 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.
Testing Your Schedule
Click the Send Test button to send a one time test. Looker will send a test email to each email address listed in the Recipients field.
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 permission to view the Admin panel, please contact your Looker admin 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.
At times a scheduled delivery could fail to reach one or more of its recipients. This could happen if the underlying model has an error, if the recipient does not have access to the data, or if there are rendering problems or page errors.
There are a few other challenges that can arise:
- 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.
- 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.
- 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.
- 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.