This page is about delivering content from legacy dashboards. Dashboards render in the legacy format only if the Can use Legacy Dashboards legacy feature is enabled on your Looker instance. For information about scheduling new dashboard experience dashboards, visit the Scheduling and sending dashboards documentation page.
This page provides an overview of delivering legacy dashboards to Looker's native delivery destinations and to any integrated services that are available for your Looker instance. For information specific to Looks and Explores, see the Delivering Looks and Explores documentation page.
The Looker Scheduler is the name of the pop-up window in which you configure the settings for your content delivery.
If you are a Looker developer, you must turn off Development Mode to enable these scheduling options.
The delivery options available to you are dependent on the delivery-related permissions granted to you by your Looker admin.
Opening the Scheduler from a folder
To open the Scheduler from within a folder or subfolder, find the folder or subfolder containing the dashboard you want to deliver. When you navigate to a folder, any Looks and dashboards within the folder are listed in list view or grid view.
A calendar icon indicates that you have scheduled at least one recurring delivery for that content (in grid view, you must hover over the content thumbnail to see the calendar icon, if present):
- Clicking an item's calendar icon, if present, and then clicking New
- Clicking an item's three-dot menu and choosing Schedule delivery
Looker displays the Scheduler, a pop-up with your scheduling choices. See the Scheduling and sending dashboards documentation page for more information about configuring the settings for your delivery.
Creating a delivery
To create a delivery from within the Looker content, open the legacy Scheduler by clicking the gear menu in the upper right of the content and choosing Schedule (for recurring deliveries) or Send (for one-time deliveries).
Looker displays the legacy Scheduler, a pop-up with your scheduling choices, similar to this one, which shows a scheduled delivery of a legacy dashboard to an email in PDF format:
The legacy Scheduler for the delivery of a Look might look like this:
For recurring deliveries, the left panel of the legacy Scheduler shows all schedules created for the content and highlights the title of the schedule you are creating or editing. The left panel lists schedules in reverse chronological order from when they were last updated. You can duplicate or delete existing schedules by clicking the Duplicate or Delete icon to the right of the schedule, respectively.
If this is the first schedule you're creating for this content, the main panel displays scheduling options set to their default values. You can modify those values as desired. If you have previously created one or more schedules for this content, the main panel displays the saved scheduling settings for the schedule at the top of the list. Then:
- To edit an existing schedule's options, select that schedule and change the options as desired. When you are done, click Save All.
- To create additional schedules for the same content, click New + and enter the settings for that additional schedule.
When you are done, click Save All.
The following sections explain each scheduling setting.
Naming the delivery
Give the schedule a unique title in the Give your schedule a name field. The title will appear in the left panel after you save the schedule, in the list of schedules you've created, and on the schedule management pages in the Admin panel.
Depending on the destination of your delivery, the title may also appear in other places:
- For email deliveries, the title is used for the email's subject line and as part of the filename if you select a format that uses an email attachment.
- For webhooks, the title is included in the webhook payload under the Title field.
- For deliveries to an Amazon S3 bucket, the title is used in the filename of the delivery and in any error emails that are sent. The filename of the delivery follows the format
HASHis a random six-character identifier and
TIMESTAMPfollows the pattern
YYYY-MM-DDTHHMM(for example, the timestamp portion would look like
2019-05-31T0933for May 31, 2019 at 9:33 AM).
- For deliveries to integrated services that generate a file attachment, the title is included in the filename of the delivery.
For SFTP deliveries, the title is included in the filename of the delivery. The filename of the delivery follows the format
TOKENis a random six-character identifier and
TIMESTAMPfollows the pattern
YYYY-MM-DDTHHMM(for example, the timestamp portion would look like
2019-05-31T0933for May 31, 2019 at 9:33 AM).
For SFTP deliveries, only alphanumeric, underscore (_), and hyphen (-) characters are supported in the filename of the delivery. Looker will strip any characters other than
-characters from what you enter in the Give your schedule a name field.
Choosing the delivery destination
Depending on how your Looker admin has configured your permissions, all destinations may not be visible.
The Where should this data go? setting may display several destination options for data deliveries. Each destination offers different delivery options.
- Amazon S3 bucket
- Any integrated services that your Looker admin has enabled for your instance — you can see a list of available services for delivering dashboards in the Delivery options for third-party integrations section of this page.
Once you've selected a data destination, a new setting field appears for you to add specific details about that destination, such as an email address or a webhook URL.
Delivery options for email
Choose Email in the Where should this data go? section. Your content will be delivered to a list of email addresses that you specify.
In the Who should it be emailed to section, enter the email addresses of the recipients. Enter a single email address, or multiple addresses separated by commas, and click Add.
Depending on the settings for your Looker instance and on your assigned permissions, you may be able to send emails to email addresses that are unassociated with any user account on your Looker instance. These are classified as external emails. To deliver content to external users, your Looker admin must have granted you permissions to deliver content to external users or have added those recipients' email domains to the Email Domain Allowist for Scheduled Content.
If a recipient is another Looker user, that person will see the option to link back to the dashboard from the email, unless your Looker admin has set your Looker instance's emailed data policy to Send Data Only or the Include links option is deselected.
If all recipients unsubscribe from a scheduled email delivery, that schedule is deleted from Looker, even from the schedule management pages for users and admins. If a recipient unsubscribes on behalf of an email group, no members of the group will receive scheduled email deliveries.
See the Applying advanced delivery options section on this page for more information about email deliveries.
Check Include a custom message to add a customized message in the body of the email. Looker limits the number of characters in a custom message to 1,500.
Delivery options for webhooks
Webhooks are an increasingly common way to trigger exchanges between internet-based services. With a web service like Zapier, webhooks can let Looker data be delivered to a wide range of applications; for example, you may be able to schedule periodic delivery of a Look or dashboard to a webhook. When you set up a delivery, Looker will prompt you for the webhook address.
In the Where should this data go? section, choose Webhook. In the Webhook URL section, enter the URL where Looker should send an HTTPS request for this delivery. You can obtain this URL from the web service you're using to handle your webhook. To set up a webhook, go to your web service and do the following:
- Obtain a URL where Looker should send an HTTPS request.
- Specify a destination application for your Looker data delivery. The destination application may require additional configuration in order to receive data from Looker.
The exact procedure differs depending on what web service and destination application you're using to deliver the dashboard. See this Looker Community post on Scheduling Looks and dashboards using webhooks (3.46+) for guidelines on setting up another application to receive the webhook data from Looker.
Looker will attempt delivery to a webhook for a maximum of 30 minutes. Ensure that the destination can respond within 30 minutes to the webhook delivery attempt.
Delivery options for Amazon S3 buckets
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 the Amazon S3 destination option, Looker prompts you for additional settings about formatting and about the Amazon S3 bucket as described on this page. See this Looker Community post on Scheduling (unlimited) results to S3 for more details about delivering data using an Amazon S3 bucket.
In the Where should this data go? section, choose Amazon S3. The S3 Details section appears and prompts you for information about your Amazon S3 bucket:
- Bucket: The name of your Amazon S3 bucket.
- Optional Path: The folder that you want to save your data to, if any.
- Access Key: The Access Key ID to your S3 bucket, provided by Amazon.
- Secret Key: The Secret Access Key to your S3 bucket, provided by Amazon.
- Region: The Amazon services region where your S3 bucket is hosted.
Delivery options for SFTP servers
Choose SFTP in the Where should this data go? section to deliver your dashboard to an SFTP server. Sending results to an SFTP server is a good method to use when your data or visualization is too large to send via email. If you choose this delivery option, Looker prompts you for the SFTP server address, username, and password as described below.
Note the following about SFTP deliveries:
- To receive SFTP deliveries from Looker, be sure your network admin has added Looker's IP addresses to your SFTP server's IP allowlist or inbound traffic rules.
- When delivering to an SFTP server, only alphanumeric, underscore (_), and hyphen (-) characters are supported in the filename of the delivery. Looker will strip any characters other than
-characters from what you enter in the Give your schedule a name field.
When you choose to SFTP, Looker prompts you for the URL and login information for the server:
Address: The URL or IP address of the SFTP server to which you want to send your data. For example:
This example URL ends with the
/character. This indicates that the file will be saved in a folder named
In. If you leave out the trailing
/, the file will be saved in the
Marketingfolder, and "
In" will be prepended to the filename. You must have write access to the folder in which you want to create the file.
Username and Password: Login credentials for the SFTP server
Preferred key exchange algorithm: This field is optional. To configure it, choose the preferred SSH key exchange algorithm for establishing the connection. The supported options are:
If the connection is not established within five minutes, choose a different algorithm. Some algorithms take a long time to generate an SSH key. This option lets you use an algorithm that might take less time. Choosing one of the algorithms makes it the preferred algorithm for establishing the SSH connection. If the algorithm is not supported by the server, all the other algorithms are used in subsequent attempts. When this field is set to Default, the original order of algorithms in the connection library is used.
Currently, SFTP support is limited to username and password credentials. SSH private key credentials are not supported.
The host key algorithms supported by Looker SFTP deliveries are:
Looker stores SFTP fingerprints for your SFTP server. If you encounter errors with your SFTP delivery, it could indicate that the SFTP fingerprints are invalid. In this case, contact your Looker admin.
If you receive the error
Java::JavaLang::NullPointerExceptionswhen delivering data to an SFTP server, this may be due to a bug in JRuby that prevents the use of elliptic-curve (EC) algorithms and/or host keys for SSH connections from Looker to SFTP destinations. To avoid issues with sending data to SFTP destinations, do not use EC algorithms in the
/etc/ssh_configfiles or store EC host keys in
~/.sshon your Looker host.
Looker uploads the file to the specified directory on your SFTP server, using the following convention for the filename:
- The name you provided in the Give your schedule a name field, after Looker removes all characters other than
- The timestamp the schedule was sent, in the format
- A token consisting of a random six-character string
- The file extension
Delivery options for third-party integrations
The Scheduler will display any actions that have been enabled by your Looker admin. Depending on the service, there may be additional destination-specific fields. These fields provide the integrated service with additional information required to perform the selected action with your data. See more about delivering data from integrations in the Delivering dashboard or query data section of the Sharing data through an action hub documentation page.
To see a description of the information each service requires, find your service destination in one of the lists below, and browse to the URL shown in the How to Use This Destination column.
The following list shows all integrated services where you can deliver a dashboard:
Choosing the data format
To choose the format for your delivery, select the appropriate icon in the Format data as section of the Scheduler. See the table below for an explanation of how each format is delivered to each destination.
|The dashboard in PDF format. For deliveries to email, the PDF is delivered as a file attachment. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.||The dashboard in PDF format. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.||The dashboard in PDF format. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.||The dashboard in PDF format. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.|
|Visualization||The visualization in the body of the email as a PNG image. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.||The dashboard visualization in a single PNG image file. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.||The dashboard visualization in a single PNG image file. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.||The dashboard visualization in a single PNG image file. The default layout displays tiles as they are arranged in the dashboard, but other layout and sizing options are available under Advanced Options.|
|CSV ZIP file||The unformatted data from the dashboard delivered as a collection of comma-separated values (CSV) files in a zipped directory. For email deliveries, the ZIP file is delivered as an email attachment.||The unformatted data from the dashboard delivered as a collection of comma-separated values (CSV) files in a zipped directory.||The unformatted data from the dashboard delivered as a collection of comma-separated values (CSV) files in a zipped directory.||The unformatted data from the dashboard delivered as a collection of comma-separated values (CSV) files in a zipped directory.|
Dashboard query limits depend on the data delivery format:
- CSV ZIP files will include as many rows as the underlying query specifies, up to a 5,000 row limit.
- PDF and visualization formats show a static image of each tile at the time it was run. In the case of a tile showing a table visualization, you will see however many rows were visible in the tile when the file was rendered, and you will not be able to scroll the tile.
You will not see this option if sending a one-time delivery.
When scheduling recurring deliveries, you have two options to trigger deliveries:
- Repeating interval: Select this option to use the delivery schedule you set in the Specifying the delivery recurrence section on this page.
- Datagroup update: If your LookML developer has configured datagroups, you can schedule delivery to occur after a datagroup has been triggered, has managed the cache, and has rebuilt relevant PDTs.
Specifying the datagroup trigger
You will not see this option if sending a one-time delivery or if you have specified a repeating interval trigger for your recurring delivery.
To use a datagroup trigger, select Datagroup update in the Trigger section of the Scheduler. Then choose the source datagroup from the Select Datagroup pull-down:
To schedule content using a datagroup trigger, the model file on which the content is based needs to include a datagroup. Looker lists all datagroups defined in the models that are included in the given Look or dashboard tile, even if the datagroups are not used to handle caching for queries or PDTs.
Schedules based on datagroups are only triggered to deliver once the regeneration process has completed for all PDTs that are persisted with that datagroup, ensuring that your delivery includes the most up-to-date data.
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.
Specifying the delivery recurrence
You will not see this option if sending a one-time delivery or if you have specified a datagroup update trigger for your recurring delivery.
For deliveries that use a repeating interval, you can customize the timing of your schedule in the Deliver this schedule section. Select Repeating interval in the Trigger section of the Scheduler. The timing options change depending on whether you choose Daily, Weekly, Monthly, Hourly, or By minute. You can adjust the time zone for the schedule in Advanced options section.
The end time for Hourly and By minute intervals is not inclusive. The last delivery will be sent at the last selected interval prior to the specified end time. For example, if content is scheduled Hourly between 12:00 a.m. and 11:00 p.m., it will be sent on the hour, every hour, from 12:00 a.m. to 10:00 p.m. If content is scheduled By minute every 30 minutes between 12:00 a.m. and 11:00 p.m., the last delivery in that timeframe will be sent at 10:30 p.m.
Applying filters to the delivery
If you are delivering a Look or dashboard that has filters, you can modify the filter conditions to further filter the results delivered.
Click Filters to see and modify the filters associated with this Look or dashboard for your delivery. Changing these filter options in the Scheduler does not change the filters in your Look or dashboard. If a dashboard filter requires a filter value and the schedule filter is blank, a schedule will display no results upon delivery.
If you change field names that serve as filters in your Looks or dashboards, be sure to review the Filters section of your scheduled Looks and dashboards and update the filters as needed to reflect your changes. If a scheduled content delivery includes filters that no longer function (for example, if the referenced field has changed), the scheduled delivery could expose unfiltered data.
To further customize deliveries, you can use the matches a user attribute filter option (if your Looker admins have configured user-specific values called user attributes). Setting a filter to one of these attributes automatically customizes the results for each user, meaning that you can send customized results to many users even if you send a one-time delivery. You can read more about this on the User attributes documentation page.
Applying advanced delivery options
The Advanced options section provides additional customization for your delivery. Click the arrow next to Advanced options to expand this menu. The options available depend on the selected destination and format of your delivery, and whether you're delivering a dashboard, a Look, or an Explore. The links in the table below direct to a description of each option that is available for dashboard deliveries to Looker's native destinations. Deliveries to third-party integrations may have unique advanced options available.
|Email options||Run schedule as recipient||Not available for this destination||Not available for this destination||Not available for this destination|
|Format options||Use single column layout||Format options||Use single column layout||Format options||Use single column layout||Format options||Use single column layout|
|Expand tables||Expand tables||Expand tables||Expand tables|
|Paper size||Paper size||Paper size||Paper size|
|Visualization||Email options||Run schedule as recipient||Not available for this destination||Not available for this destination||Not available for this destination|
|Format options||Use single column layout||Format options||Use single column layout||Format options||Use single column layout||Format options||Use single column layout||Table resolution||Not available for this destination||Not available for this destination||Not available for this destination|
|CSV ZIP||Email options||Run schedule as recipient||Not available for this destination||Not available for this destination||Not available for this destination|
|Format options||Apply visualization options||Format options||Apply visualization options||Format options||Apply visualization options||Format options||Apply visualization options|
|Formatted data values||Formatted data values||Formatted data values||Formatted data values|
The following options are available only when you're scheduling data delivery over email:
Run schedule as recipient
This option is available only for the email destination.
The Run schedule as recipient option lets admins specify a list of users who will each receive the content delivery as if they ran the query, based on their permissions. Non-admin users may also enter their own email address to receive a delivery as if they had queried the content, based on their permissions. This means that each user's access filters and user attributes will be applied to the data included in each email.
For example, say that a Looker admin needs to schedule the following report to a series of users, and each user has different access filter values:
User A has an access filter set as
users.state = 'California'. When Run schedule as recipient is selected, the scheduled query will apply the access filter
users.state = 'California' and send the following filtered results to user A:
This option takes into account the permissions of the user creating the schedule as well as the types of email addresses added to the Who should it be emailed to? text field.
In some cases, the Run schedule as recipient option is not available:
- When a non-admin adds an email address other than their own
- When a Looker admin adds the email of a disabled user
- When a Looker admin adds an email that does not belong to a Looker user (a Looker account is indicated by a Looker icon next to the recipient):
- If the email was added before the Run schedule as recipient option was selected, then the option is disabled automatically. It becomes available again if that email address is deleted from the list of recipients.
- If the email address was added after the Run schedule as recipient option was selected, then adding the email address will produce an error and the email will be removed automatically from the Who should it be emailed to? field. The Run schedule as recipient option will remain enabled.
In the special case where a user is listed as a recipient on a schedule that has Run schedule as recipient enabled and then that user's account is disabled, the schedule will fail to deliver to the disabled user starting the next time it runs. If that user's account is deleted, the entire schedule will fail to deliver to any recipients. A Looker admin or user with the
see_schedules permission will be able to diagnose this failure in the Scheduler History page in the Admin panel.
If your Looker admin has set your Looker instance's emailed data policy to Send Links and Data, the Scheduler will display an option to Include links. When this option is checked, email data deliveries include a link back to Looker that says "View full report" for delivered Looks and Explores and "View full dashboard" for delivered dashboards.
This link lets the email recipients further explore the data on your Looker instance. Recipients must log in to Looker and have permissions to access the model on which the delivered content is based to view that content in Looker. If you want to remove this link from your data delivery emails, uncheck the Include Links checkbox.
Available format options are dependent on the selected data format and destination.
Use single column layout
Single column layout is available for PDF and Visualization deliveries to all native destinations.
For dashboard deliveries in PDF or Visualization format, you have the option to print your PDF in a single column layout, which displays dashboard tiles in a single vertical column. Check the Use single column layout box to use this option, or leave the box unchecked to show the tiles as they are arranged in the dashboard.
For dashboards, you must check the Use single column layout option for this option to appear.
When delivering content to email in Visualization format, you can customize the width of your visualization by using the Table resolution drop-down menu. Your width options are:
- Normal: 800 pixels
- Wide: 1680 pixels
If you choose Wide and the visualization width exceeds the limit set by your email client, email delivery recipients may need to scroll horizontally to see the entire visualization.
To display all rows of a data table — rather than just those rows that appear in the dashboard tile thumbnail — in a PDF dashboard delivery or download, check the Expand tables box. If you do not see the Expand tables option, talk to your Looker admin about installing the appropriate version of the Chromium renderer for your Looker instance.
Apply visualization options
This option is available for CSV deliveries to all destinations.
You can configure whether you want the data delivery to use the same options as your visualization:
Select Apply visualization options to apply some of the visualization settings to your delivery, causing your delivery to appear similar to a table chart. Any of the following settings in the Plot, Series, and Formatting menus that are configured for the visualization will be applied to the data delivery:
Unselect Apply visualization options if you do not want these visualization options applied. Looker sends the data as it appears in the Data section of the dashboard tile's Explore from Here pop-up.
Formatted data values
This option is available for CSV deliveries to all destinations.
You can configure the data'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.
This option is available for deliveries in all data formats to all native destinations.
By default, Looker uses the time zone associated with your account to determine when to send your data delivery. If you don't have a time zone associated with your account, Looker uses your Application time zone. If you want to specify a different time zone, select Use custom timezone. The time zone you select does not affect the data in your Look or dashboard, just the timing of the delivery.
This option is available for PDF deliveries to all native destinations.
You have the option to specify the optimal size and orientation of dashboard PDFs by selecting from the Paper size drop-down menu. Large visualizations or groups of overlapping dashboard tiles may need to be resized to fit cleanly on a PDF page. If you do not see the Paper size option, talk to your Looker admin about installing the latest version of the Chromium renderer for your Looker instance.
Testing the delivery
Click the Send Test button to send a one-time test delivery to the specified destination.
Saving the delivery
A summary of your delivery settings is displayed at the bottom of the Scheduler.
For one-time deliveries, when you are finished configuring delivery options, click the Send button to deliver your content immediately to your specified destination.
For recurring deliveries, when you are finished configuring delivery options, click the Save All button to save your schedule and close the window. The content will be delivered according to your delivery settings. If you reopen the Scheduler, your saved schedule appears in the left panel. You have the option of duplicating or deleting the schedule by clicking the Duplicate or Delete icon, respectively.
Your saved schedule will also appear on the Schedules You've Created page in your user profile and the Schedules and Schedule History pages in the Admin panel. See the Viewing deliveries section on this page for more information.
You can view the schedules that you have created and, given the appropriate permissions, all the schedules for the Looker instance.
Viewing deliveries that you created
You can see a list of all schedules that you have created on the Schedules You've Created page, which you can reach by clicking on your user profile icon and selecting Schedules. See the Viewing Your Scheduled Data Deliveries page for more information about viewing and managing the schedules that you've created.
Viewing deliveries created by other users
If your Looker admin has granted you permissions to view the Schedules and Schedule History admin pages, you can see the list of all schedules for the entire Looker instance. You will not be able to edit or delete those schedules, however.
Things to know
At times a scheduled email 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.
A few other challenges can arise:
- If your company has set up its own email settings in the Admin section of Looker, your Looker admins will need to make sure that the settings are correct and that your email provider is functioning properly.
- Depending on the Limit setting, the data delivery will be limited either to 5,000 rows or to a maximum file size of 15 MB for email with attachments and 20 MB for emails with inline content. Emails with more rows or data than these limits will not be sent.
- 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 happens, 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 Looker Community post on monitoring scheduler unsubscribe events.