Using URL Actions to Connect Your Tableau Dashboards

In a world where every second counts, dashboard performance can make the difference between a report that drives business decisions and one that gets ignored. As organisations work with increasingly large datasets and more complex reporting requirements, it's common to split a suite of dashboards across multiple workbooks. Each workbook can then use its own consolidated data model rather than relying on a single, interconnected model, helping to improve performance and reduce load times.

However, separating dashboards into multiple workbooks introduces a new challenge: navigation. Since Tableau's standard Navigation Buttons only work within the same workbook, they can't be used to move between dashboards stored in different workbooks. Instead, we need to use URL Actions to provide a seamless navigation experience.

URL navigation in Tableau works by directing an object (through URL Actions) to a specific web address. Fortunately for us, Tableau Server and Tableau Cloud use a consistent URL structure for dashboards, meaning we only need to modify a small part of the URL to navigate from one workbook to another. This allows users to move between dashboards almost as if they were all contained within a single workbook.

It's worth noting that URL Actions are only required when navigating between different workbooks. If you're moving between dashboards within the same workbook, Tableau's built-in Navigation Buttons and Navigation Actions remain the preferred option, as they offer a simpler implementation and avoid the overhead of loading an entirely new workbook.

 

Generic Tableau URL Structure

 

Server & Site

This is the environment in which you want to connect to (in this example tableau-server-victor.com) and within that host, what site your files live in (in this example VictorsEnvironment). These will become more apparent when you upload across multiple server (e.g. UAT server & Prod server) as the rest of the areas (i.e. Workbook, Dashboard) are usually the same, however the server used is different as these will need to be changed constantly as you move files from UAT into Production.

Another thing to note within this part of the URL is the use of either /t/ or /#/ between the server & site name. In general:

·        /t/<site> = Server-side site selector.
Tells Tableau which Site to use (multi‑tenant partition). It affects authentication, permissions, projects, workbooks—everything.

·        /#/<site> = Client-side “app shell” router.
The part after # is handled by the browser (JavaScript router), not the server. It’s mainly used for navigating the Tableau web UI (workbooks, explore pages).

For the purposes of using Tableau URL Actions, it is recommended to use /t/ rather than /#/ as this allows for easier embedding of the URL links within portals and to other dashboards.

 

Workbook & Dashboard/Sheet

This is content path to the specific workbook and the subsequent dashboards or sheets within said workbook, identifying what viz it need to render. This is broken up as

/views/<workbook-content-url>/<view-content-url>

·        <workbook-content-url> → The workbook’s content URL (not necessarily its display name).

·        <view-content-url> → The dashboard or worksheet content URL inside that workbook.

As seen above, the workbook segment of the URL is not necessarily the same as the display name of the Workbook which would have been set when first uploading the workbook to Server. The main instances of differing workbook-content-urls and workbook display names occurs when saving a workbook with the same name as another in the site (Tableau will usually assign the workbook-content-url as the display followed by an underscore and an array of numbers) or changing the display name of the workbook but the file remains the same (as it is still tied to original workbook-content-url).

 

URL Extension

This encapsulates everything after the base path, controlling how the dashboards/sheets are rendered (e.g. embedding, toolbar, tabs, banner) or what datapoints are shown (e.g. parameters, filters). When writing URL extensions, it should start with a ? followed by the extension. Any subsequent extensions should then be written with a & followed by the extension.

Some common rendering/embedding flags

·        %3Aembed=y — Clean, embed‑friendly view (hides navigation chrome).

·        %3AshowVizHome=no — Skip the Tableau “frame” and go straight to the viz canvas.

·        %3Atoolbar=no — Hide the toolbar.

·        %3Atabs=no — Hide the sheet tabs (when multiple views exist).

·        %3AshowAppBanner=false — Hide the “App banner” (esp. on Tableau Cloud links).

·        %3Arefresh=yes — Bypass cache for a fresh render (use sparingly).

·        %3AapiID=host0 — Used by the JavaScript API; commonly appears in shared/embedded links.

·        %3Alinktarget=_parent — Opens the link in the same browser tab (Note: initial loading of the workbook should include this extension otherwise the first navigation will open in a new tab)

o   Use this if workbook is not embedded

o   Replaces the entire page you are coming from

·        %3Alinktarget=_self — Opens the link in the same browser tab (Note: initial loading of the workbook should include this extension otherwise the first navigation will open in a new tab)

o   Use this if workbook is embedded

o   Replaces the target page in the same spot the dashboard is in

 

Encoding in URL's

URL encoding converts special characters into a “safe” format so they can be correctly interpreted inside a URL, otherwise Tableau may truncate the URL, apply the wrong value or even fail to load in the view.

It replaces characters that have:

·        a special meaning in URLs (e.g. ?, &, = /, #)

·        or are not valid in URLs (e.g. spaces, some symbols)

Examples of where encodement might needed is when passing through client names through the URLs. Clients may use special characters such as “/” or “&” in their naming conventions that have special meanings for URLs so Tableau will not return the correct client back and potentially could throw in errors if not encoded.

In order to safely pass through the special characters through the URL Actions, a calculated fields with replace formulas could be used to swap out the characters with their URL encodement counterparts

Some common encodement’s required include:

·        %20 - Space

·        %3A - Colon

·        %26 - Ampersand

·        %3D - Equals

·        %2F - Slash

·        %5C%2C - Comma

Author:
Victor Yuan
Powered by The Information Lab
1st Floor, 25 Watling Street, London, EC4M 9BR
Subscribe
to our Newsletter
Get the lastest news about The Data School and application tips
Subscribe now
© 2026 The Information Lab