How to Enable Data Extracts in Tableau Public
Trying to speed up your Tableau Public dashboards by using a data extract, but finding the "Extract" option is frustratingly grayed out? You're not alone. This is one of the most common points of confusion for new Tableau Public users. This guide will explain why this happens and show you the simple steps to create and manage your extracts effectively within the limitations of the free platform.
Why Is the "Extract" Option Grayed Out in Tableau Public?
The short answer is: the option is grayed out because Tableau Public forces you to use an extract. You don't get a choice between a live connection and an extract, an extract is created automatically every time you save your workbook.
Tableau Public is a fantastic free tool for creating and sharing data visualizations, but it comes with certain limitations to encourage users to upgrade to the paid versions like Tableau Creator. The primary limitation is that you cannot save your detailed workbooks locally. You can only save them to the public Tableau server for anyone to see.
This "save to public" requirement is directly linked to the disabled extract button. To ensure performance and security on the public server, Tableau Public cannot maintain live, constant connections to your private data sources (like databases on your company server). Imagine thousands of public dashboards constantly pinging private databases - it would be slow, unreliable, and a big security no-no.
So, when you connect your data and build a chart, Tableau Public knows your ultimate destination is its public gallery. To prepare for this, it defaults "Extract" as the only option. The extract creation process happens in the background when you publish your workbook.
Understanding Tableau Data Extracts vs. Live Connections
Before moving on to the how-to, it’s helpful to understand what’s happening under the hood. In the world of Tableau, you have two primary ways to connect to your data.
What is a Live Connection?
A live connection queries your underlying data source (like an SQL database or a real-time analytics platform) directly. Every time you filter, sort, or interact with your visualization, Tableau sends a new query to the database and displays the results.
Pros: The data is always in real-time. If a number changes in the database, it's reflected in your dashboard on the next refresh or interaction.
Cons: Performance depends entirely on the speed of your database and network. Large, complex queries can make your dashboards slow and sluggish. This also puts a continuous load on the source database.
What is a Tableau Extract (.hyper file)?
A data extract is a compressed, optimized snapshot of your data that gets pulled from the original source and stored locally within a special Tableau file format called a .hyper file. This file becomes part of your workbook when you publish it.
Pros: Performance is drastically improved. Visualizations load much faster because Tableau isn't waiting on an external database, it's querying its own optimized
.hyperfile. This also reduces the query load on your primary data source.Cons: The data is not live. It's only as current as the last time the extract was created or refreshed. For up-to-the-minute analysis, this can be a limitation.
For Tableau Public, the massive performance benefit of extracts is essential for providing a smooth experience to anyone viewing your visualization on the web.
The Simple "Workaround": How to Create Your Extract in Tableau Public
Even though you can't click the button, you can still control how your extract is created. The trick is to remember that the extract isn't generated until you save your work to the Tableau Public server. Here is the step-by-step process.
Step 1: Connect to Your Data Source
First, open the Tableau Public desktop application and connect to your data. Tableau Public primarily works with local files, so for this example, we'll connect to a simple sales data CSV file.
On the main screen, under "Connect," choose "Text file" to connect to a CSV, or "Microsoft Excel" for an
.xlsxfile.Navigate to your file and select it.
You'll land on the Data Source page. Here, you'll see your data in a tabular view. In the top right corner, you can see the "Connection" options with "Live" selected but "Extract" grayed-out. This is the expected behavior. Ignore it for now.
This is a great moment to prepare your data. Any changes you make here will be reflected in the extract when it’s eventually created. To make a smaller, more efficient extract, you can:
Hide Unused Fields: If your dataset has 50 columns but you only need 10 for your visualization, hide the other 40. Click the small dropdown arrow next to a column name and select "Hide."
Add Data Source Filters: If you only need to analyze data from the last two years, add a filter here to exclude older data before it even makes it into the visualization. This dramatically reduces the size of your final extract.
Step 2: Build Your Visualization
Once your data is ready, click on a sheet tab ("Sheet 1") at the bottom of the window. Create a simple chart to make sure your data is working as expected. For example, you could drag "Order Date" to Columns and "Sales" to Rows to create a simple line chart of sales over time.
Step 3: Save to Tableau Public to Create the Extract
This is the moment of truth. The extract is made during the publishing process.
In the menu bar, go to File > Save to Tableau Public As...
A dialog box will appear, prompting you to log in to your Tableau Public account. Enter your credentials.
Next, you'll be asked to give your workbook a title. Choose something descriptive.
Before clicking "Save," look carefully at the settings. If you connected to a Google Sheet instead of a local file, you will see a special checkbox: "Keep my data in sync with Google Sheets, and embed my Google credentials." (More on this in the next section).
Click Save.
Now, watch the magic unfold. Tableau will display a dialog box that says, "Creating extract" or "Executing query," then "Uploading data to server." This is the confirmation that Tableau is taking your optimized data, converting it into a high-performance .hyper file, and bundling it with your workbook for publishing.
Once finished, your workbook will automatically open in your web browser, running off the brand-new extract you just created.
How to Refresh Your Tableau Public Extract
Your data is now live on the web, but what happens when your source file (your CSV or Excel sheet) is updated with new information? Unlike in an enterprise Tableau environment, you can't schedule an automatic refresh for most data sources in Tableau Public. The process is manual.
For Local Files (Excel, CSV, Text)
Refreshing an extract from a local file essentially means re-publishing the workbook.
Update the data in your source file (e.g., add new rows of sales data to your Excel sheet) and save the file.
Open the corresponding workbook in your Tableau Public desktop application.
The data in your visualization should update automatically. If not, go to the Data menu > [Your Data Source Name] > Refresh.
Crucially, this has only updated the data in your local application. The version on the web is still using the old extract.
Go to File > Save to Tableau Public. Note: this is "Save to Tableau Public," not "Save As...".
Tableau will recognize that you're overwriting an existing workbook and upload the new version, complete with a new extract based on your updated source file. Your visualization on the web is now current.
For Google Sheets (The One Exception)
Google Sheets is the only data source that Tableau Public can refresh automatically. If you connect to a Google Sheet and check the box to "Keep my data in sync" when you publish, Tableau will refresh your extract once every 24 hours. This is an incredibly powerful feature for a free tool. You can build a public dashboard on a Google Sheet, update the sheet as often as you want, and know that your Tableau visualization will reflect those changes daily without any manual intervention.
Final Thoughts
So, the mysterious grayed-out "Extract" button in Tableau Public isn’t a bug but a core feature of the platform. It ensures every public visualization is performant by automatically creating an extract when you publish. Understanding this workflow allows you to prepare your data effectively, control your final extract, and know exactly how to keep your public portfolio fresh and up-to-date.
Manually connecting, cleaning, and republishing files can consume a surprising amount of time, especially when your data is scattered across different marketing or sales platforms. We created Graphed specifically to solve this problem. Instead of wrestling with files and republishing reports, you can connect your platforms like Google Analytics, Shopify, and Facebook Ads with one click. Then, simply ask a question in plain English like, "Show me my campaign ROI by channel," and our AI will build a live, interactive dashboard for you in seconds - no extracts or manual refreshes required.