calendar Last updated: 4 October 2026
Tableau Google Search Console Dashboard Template
Data Visualisation
Google Search Console
SEM Dashboards
Tableau
Templates

Tableau Google Search Console Dashboard Template

Try It Now

Free forever plan, no credit card

Got insights from this post? Give it a boost by sharing with others!

This page shows how to build a Google Search Console dashboard in Tableau with your own data from Windsor.ai: the fields to load, the sheets to build, and the calculated fields that keep CTR and average position correct. We tested the data steps and the trend chart below in Tableau Public on 4 October 2026, with windsor.ai’s own Search Console data.

Our 2022 template workbook on Tableau Public was built for Windsor.ai’s Web Data Connector at tableau.windsor.ai, which no longer responds. You can still view the 2022 workbook for its layout, but it does not reconnect to new data. When we replaced its data source with a Windsor.ai file, most of its fields broke.

Tableau Public line chart of Search Console clicks by day and device for windsor.ai, 23 to 29 September 2026, from a Windsor.ai CSV file, SUM(Clicks) 13,813

Above: clicks by day and device for windsor.ai, 23 to 29 September 2026, from the CSV file in step 2.

What the dashboard should show

  • Clicks and impressions by day, split by device, to see when a change started and on which device.
  • Totals for clicks, impressions, CTR and average position for the dates you pick.
  • Top queries and top landing pages, with clicks, impressions and CTR.
  • Clicks by country, as a map or a table.
  • Search type as a filter, to look at web or image results on their own.

How to build it with your data

1. Connect Search Console to Windsor.ai

Sign in at onboard.windsor.ai, choose Google Search Console and select your property. Domain properties appear as sc-domain:example.com.

2. Get the data as a CSV file

Request the data from the Windsor.ai API with these fields and save the response as a .csv file. This is the code we ran:

import os
import requests

params = {
    "api_key": os.environ["WINDSOR_API_KEY"],
    "date_from": "2026-09-23",
    "date_to": "2026-09-29",
    "fields": "account_name,clicks,countryname,date,device,impressions,page,position,position_page,query,search_type",
    "_renderer": "csv",
}
r = requests.get("https://connectors.windsor.ai/searchconsole", params=params, timeout=900)
open("gsc.csv", "wb").write(r.content)

For windsor.ai this returned 255,789 rows for seven days, a 36 MB file, in 55 seconds. Each row is one combination of date, query, page, country, device and search type. The Search Console to Python page explains the API key and the other fields.

You can also load the data into a Google Sheet with the Windsor.ai add-on and connect Tableau to the sheet. Check the row count if you do: in our test Tableau’s Google Drive connector read 123,356 of a sheet’s 136,565 rows. The Search Console to Tableau page has that test.

3. Open the file in Tableau

In Tableau, choose Connect, To a File, Text file, and open the CSV. Check that the row count next to the field count matches the file. Tableau renames the columns, for example date becomes Date; if it does not mark Countryname as a country, set its geographic role to Country.

4. Add the calculated fields

CTR and position have to be calculated from totals. Averaging the values of single rows gives wrong results:

  • CTR: SUM([Clicks]) / SUM([Impressions]), formatted as a percentage.
  • Average position: SUM([Position] * [Impressions]) / SUM([Impressions]), so a query shown 40,000 times counts more than one shown once.

5. Build the sheets and the dashboard

  • Trend: a continuous Day of Date on Columns, SUM(Clicks) on Rows, Device on Color.
  • Totals: one text sheet each for SUM(Clicks), SUM(Impressions), CTR and Average position.
  • Top queries: Query on Rows, sorted by SUM(Clicks), with Impressions and CTR next to it.
  • Top pages: the same with Page.
  • Countries: Countryname on Detail of a map, with SUM(Clicks) on Color.

Drag the sheets into a new dashboard and add Date and Search Type as filters that apply to all sheets. To publish it, choose File, Save to Tableau Public.

What we found in our test

Same Tableau chart from the Google Drive connector (123,356 of 136,565 rows, 23 September missing) and from a CSV file (all 136,565 rows)

  • The CSV route read every row. 136,565 of 136,565 for date, query, page and device, with 13,813 clicks.
  • The Google Sheet route did not. Tableau read 123,356 rows and 11,269 clicks, and the missing rows held the clicks for 23 September.
  • CTR arrives as a ratio. Tableau shows it as 0.00 until you format it as a percentage, or use the calculated field above.
  • The newest days arrive late. On 4 October the latest day in Search Console was 29 September.

Other Search Console templates

If you do not need Tableau, the Data Studio SEO report template and the Search Console Google Sheets template work with your data as they are. The Search Console dashboard templates page compares all of them, and our Tableau templates page lists templates for other sources.

FAQs

Can I still use the 2022 Tableau template workbook?

You can view it on Tableau Public for its layout, but it no longer connects to new data. It was built for Windsor.ai’s Web Data Connector at tableau.windsor.ai, which no longer responds (checked 4 October 2026), and replacing its data source with a Windsor.ai file broke most of its fields in our test.

Tired of juggling fragmented data? Get started with Windsor.ai today to create a single source of truth

Let us help you automate data integration and AI-driven insights, so you can focus on what matters, growth strategy.
g logo
fb logo
big query data
youtube logo
power logo
looker logo