Looker lets you schedule periodic email delivery of a user-defined dashboard, a Look’s visualization, or a Look’s data. You can send the information to one or more email addresses.
Starting a Schedule
There are several ways to create a schedule for your content:
If you are a Looker developer, you must turn off Development Mode to enable these scheduling options.
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:
For Looks, you can click the Create Schedules link in the side panel of the Look:
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.
You can also immediately send data directly from an Explore, Look, or dashboard with the same destination and formatting options that are available when scheduling data deliveries. This lets you send data right away, without setting up a schedule. In the case of an Explore, you can send a query immediately using all the destination and formatting options, without having to save the query to a dashboard or a Look.
Choosing Your Scheduling Options
After choosing Schedule, you see all of your scheduling choices:
The screen below shows an example Schedule window for a Look, with Email selected for the destination option.
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 content 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.
If you are scheduling a Look or dashboard and it has filters, you can specify the filters for each scheduled delivery, which lets 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.
Trigger Options (For Developers and Admins)
If your Looker admin has given you the develop permission, you will see the Trigger options:
- Schedule: Select this option for the data delivery to occur according to the schedule you set in the Timing section.
- Datagroups: If you have configured datagroups you can schedule delivery for after the datagroup has been triggered, managed the cache, and rebuilt relevant PDTs. Typically datagroups are configured to be triggered after the ETL cycle for the model's data has completed, meaning that your data is scheduled to be sent whenever the data has been updated, ensuring that your delivery includes the most up-to-date data.
For the Datagroups trigger, choose the source datagroup from the Datagroup pulldown:
In the case of dashboards, which may have multiple tiles associated with multiple datagroups, you are given the option to choose from any of the datagroups that are associated with the dashboard. The entire dashboard will be sent when the selected datagroup completes.
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.
In the Recipients field, enter the email addresses for data delivery. 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.
If you are a Looker admin and have enabled the Run schedule as recipient feature in Looker Labs, you can check the Run schedule as recipient box to send data to multiple Looker users, each receiving the data they would see if they ran the query. This means that each users' access filters and user attributes will be applied to the data included in each email. See this discourse article for more information about turning on and using this feature. This option is grayed out and unavailable if an admin sender adds an email without a Looker account or if a non-admin sender schedules data to anyone other than themselves.
Use the Message field to add 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 (Tiled): 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 (Tiled): 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, as part of the email body:
- Table (HTML): the data table of your Look in the body of the email in HTML
- Visualization (Image): the visualization of your Look in the body of the email as an image (must be enabled in Labs as explained in Enabling Scheduling for Your Looker Instance)
As an attachment to the email:
- 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 — Simple: the data table of your Look as a JSON file attachment
- XSLX: the data table of your Look as an Excel file attachment
- HTML: the data table of your Look as an HTML file attachment
Apply Visualization Options
For Looks, you can configure if you want the data delivery to use the same options as your visualization:
- 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
For Looks, you can configure the content's formatting:
- 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
You can add conditions to whether or not the data is delivered:
- 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.
When sending Looks, you can limit the size of your email to stay within your email server's message size limitations. Select one of the following limit options for your data:
- Results in Table:
Data is sent with a 5000 row limit. This is the only choice available for emails using the Inline Table or Inline Visualization format options.
- All Results:
If you are using a format option that sends results as an attachment, you can choose to send all of the rows of the query for a saved Look. This option ignores any limits set on a saved Look or Looker's typical 5,000 row limit.
There is, however, a total data limit of 7.5 MB so that email applications will accept the attachment. If you exceed that limit, you get an email that your scheduled job failed. While scheduling, you can click Send Test to see if your file is under the maximum size.
If you specified an inline format and then selected All Results, Looker automatically changes the format to use a Text attachment to support sending all results.
By default, email data deliveries include a link that reads "View this data in Looker":
This link lets the email recipients further Explore the data on your Looker instance. If you want to remove this link from your data delivery emails, set Include Links to No.
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.
As you navigate through Spaces, the listing for each Look and dashboard indicates whether you have scheduled that content.
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.
- Depending on the Limit setting, the data delivery will either have a maximum row limit of 5000, or a maximum file size of 7.5 MB. Emails with more rows or data than these limits will not send correctly.
- If an email does not send at the expected 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.