TABLEAU โ€ข CONNECTING TO DATA

Data Source Page โ€” Use Data Source page to preview data and set metadata

Master Tableau's Data Source page to inspect, validate, and configure your data before building visualizations.

Historical Context & Motivation

The challenge of transforming raw data into meaningful visual insight has driven the evolution of business intelligence tools for decades. Early BI platforms like Business Objects and Cognos required analysts to work through complex ETL pipelines and rigid schema definitions before any visualization could be rendered, often consuming days of effort just to validate that the correct data had been ingested. Tableau disrupted this paradigm by introducing an interactive, visual-first approach to data analysis, and at the heart of this approach lies the Data Source page โ€” a unified interface where users can preview their data, set metadata, define relationships, and verify data quality before ever dragging a field onto a canvas.

2003
Tableau Founded
Tableau Software was founded by Chris Stolte, Pat Hanrahan, and Christian Chabot, building on Stanford research into the VizQL visual query language. Early versions provided direct database connectivity but lacked a unified data preparation interface.
2010
Data Source Page Introduced
Tableau 6.x introduced the dedicated Data Source page, consolidating connection setup, join configuration, and data preview into a single interactive environment. This eliminated the need to toggle between external tools and Tableau's worksheet canvas.
2020
Relationships Model
Tableau 2020.2 (released June 2020) introduced the logical layer with Relationships on the Data Source page, replacing the flat join-only paradigm with a more flexible, multi-table data model that preserves native granularity.
2022
Virtual Connections & Metadata Management
Tableau Cloud and Server introduced virtual connections and centralized metadata management, extending the Data Source page's concepts into governed, enterprise-scale data access patterns with row-level security and certified data sources.

The core question the Data Source page addresses is deceptively simple: How can an analyst rapidly verify that the right data, in the right shape, with correct types and semantics, is available before committing to analysis? Without this validation step, downstream visualizations inherit silent errors โ€” wrong aggregations due to mistyped fields, incorrect joins producing duplicated rows, or string fields masquerading as dates. The Data Source page exists precisely to catch these issues at the point of ingestion rather than after hours of dashboard development.

Core Principles & Definitions

The Data Source page is the gateway between your raw data and Tableau's analytical engine. Understanding its architecture requires familiarity with several foundational concepts that govern how Tableau interprets, transforms, and presents data for visualization. These principles operate in concert: connection parameters determine what data is available, the data model defines how tables relate, metadata controls how fields are interpreted, and the preview grid provides immediate feedback on the cumulative effect of all configuration decisions.

1

Connection Pane

The left panel of the Data Source page lists available databases, schemas, and tables from your connected data source. You drag tables from here onto the canvas to begin building your data model. It supports search, filtering, and custom SQL queries.
2

Canvas (Logical & Physical Layers)

The canvas area is where you define relationships (logical layer) or joins/unions (physical layer). Double-clicking a logical table opens the physical layer for traditional join and union operations within that table's scope.
3

Data Preview Grid

The bottom section displays a tabular preview of up to 10,000 rows (for live connections) or the entire extract sample. Each column header shows the field name, data type icon, and provides access to metadata controls via right-click context menus.
4

Metadata Grid View

Toggling to the metadata grid transposes the view so each row represents a field, showing its name, table of origin, remote field name, and data type. This view is essential for bulk renaming, hiding, and type-casting operations across many fields simultaneously.
5

Data Type System

Tableau assigns every field one of seven data types: String, Number (whole), Number (decimal), Date, Date & Time, Boolean, or Geographic Role. Correct assignment is critical because it determines available aggregation functions, filter types, and pill behavior on the worksheet.
โœฆ KEY TAKEAWAY
Think of the Data Source page as a pre-flight checklist in aviation. Just as pilots systematically verify instruments, fuel levels, and control surfaces before takeoff, analysts use the Data Source page to verify data types, relationships, and field semantics before launching into visualization. Skipping this step is like taking off without checking your altimeter โ€” you might fly for a while, but the landing will be rough.

Visual Explanation โ€” Data Source Page Layout

The Data Source page is divided into three primary zones: the Connection Pane (left) lists available tables; the Canvas (top-right) shows the logical relationships between tables; and the Data Preview Grid (bottom) displays actual row-level data with type indicators on each column header.

The diagram above represents a typical state of the Data Source page after connecting to a PostgreSQL database and dragging three tables onto the canvas. Notice how the Connection Pane provides a searchable inventory of all available tables, while the canvas displays relationship noodles (the dashed lines) connecting tables via their key columns. The data preview grid at the bottom reflects the result of these relationships, showing denormalized output with data type indicators (Abc for strings, # for numbers, ๐Ÿ“… for dates) on each column header. Toggling between the Preview and Metadata views using the buttons in the upper-right corner of the grid allows you to shift between row-level inspection and field-level configuration โ€” a workflow you will use constantly in practice.

How It Works โ€” Data Type System & Metadata Configuration

Tableau's Data Source page provides a rich set of metadata configuration capabilities that directly influence how the VizQL engine processes queries. Understanding the mechanism behind data type inference, role assignment, and field aliasing is essential for producing accurate and performant visualizations. When Tableau connects to a data source, it reads the schema metadata from the source system โ€” column names, native data types (e.g., VARCHAR, INTEGER, TIMESTAMP) โ€” and maps them to Tableau's internal type system.

Data Type Mapping

Mapping from common SQL data types to Tableau's internal type system
Source Type (SQL)Tableau TypeDefault RoleIcon
VARCHAR / TEXTStringDimensionAbc
INTEGER / BIGINTNumber (whole)Measure#
FLOAT / DECIMALNumber (decimal)Measure#
DATEDateDimension๐Ÿ“…
TIMESTAMPDate & TimeDimension๐Ÿ“…
BOOLEANBooleanDimensionT|F

Metadata Operations Available on the Data Source Page

  • Change Data Type โ€” Click the type icon in the column header to re-cast a field (e.g., change a ZIP code from Number to String to prevent aggregation).
  • Rename Field โ€” Double-click a column header to assign a human-readable alias without altering the underlying source column name.
  • Hide Field โ€” Right-click and select Hide to remove a field from the Data pane on worksheets while retaining it in the data model.
  • Assign Geographic Role โ€” Set a string or number field to a geographic role (Country, State, City, ZIP Code, Latitude, Longitude) to enable automatic geocoding on maps.
  • Set Default Properties โ€” Configure default aggregation (SUM, AVG, COUNT, etc.), number format, color, and comment for a field. These defaults propagate to every worksheet that uses this data source.
โš ๏ธ Common Pitfall: Numeric IDs
Tableau often infers numeric columns like customer_id or zip_code as measures with Number type. If you drop such a field onto a shelf, Tableau will attempt to aggregate it (e.g., SUM of ZIP codes). Always cast identifier columns to String on the Data Source page to ensure they are treated as categorical dimensions.

Detailed Breakdown โ€” The Logical and Physical Layers

The Data Source page's canvas operates on two distinct layers that together form Tableau's data model. The logical layer is the default view where you create relationships between tables โ€” these are flexible, context-aware associations that Tableau resolves at query time based on which fields you use in a visualization. The physical layer is accessed by double-clicking any logical table and is where you define traditional SQL joins (inner, left, right, full outer) and unions. Understanding when to use each layer is one of the most impactful decisions you make on the Data Source page.

The logical layer (top) uses relationships denoted by 'R' connectors, while the physical layer (bottom) uses explicit joins and unions. Relationships are preferred for multi-table models because they avoid data duplication and incorrect aggregations that can occur with fixed joins.

A key architectural insight is that the logical layer defers join execution until a visualization is rendered, meaning Tableau generates the most efficient SQL for each specific combination of fields. If a bar chart uses only fields from the Orders table, Tableau will not join to Customers at all, avoiding unnecessary row multiplication. The physical layer, by contrast, materializes the join immediately โ€” useful when you need to union yearly tables or perform a lookup join within a single logical table but inappropriate when the tables have different granularities (e.g., one row per order vs. one row per customer).

Worked Example โ€” Configuring a Multi-Table Data Source

Consider a scenario where you are building a sales dashboard and need to connect to a PostgreSQL database containing four tables: orders, order_items, products, and customers. The orders table has columns order_id (INT), customer_id (INT), order_date (DATE), and zip_code (INT). Walk through the full Data Source page configuration.

Configuring a Sales Dashboard Data Source
1
Step 1 โ€” Connect and Drag the Primary TableOpen Tableau Desktop and select PostgreSQL from the Connect pane. Enter the server hostname, port, database name (e.g., analytics_db), and credentials. Once connected, the Data Source page opens. In the Connection Pane on the left, locate the orders table and drag it onto the canvas. This becomes the first logical table.
The Data Preview Grid shows all columns from the orders table with Tableau's inferred types.
2
Step 2 โ€” Fix Data Types (zip_code and customer_id)In the preview grid, notice that zip_code and customer_id both display # icons, indicating Tableau has inferred them as Number (whole). Click the # icon on zip_code and select String from the dropdown. Repeat for customer_id. This prevents Tableau from aggregating these identifier fields.
Both columns now display Abc icons and will be treated as dimensions on the worksheet.
3
Step 3 โ€” Assign a Geographic Role to zip_codeRight-click the zip_code column header, navigate to Geographic Role, and select ZIP Code/Postcode. Tableau now associates each value with latitude/longitude coordinates from its internal geocoding database, enabling automatic map visualizations.
The field icon changes to a globe symbol, and the field will generate map marks when placed on a worksheet.
4
Step 4 โ€” Create Relationships with Other TablesDrag the customers table onto the canvas next to the orders table. Tableau auto-detects a relationship on customer_id. Verify the match and click the relationship noodle to confirm. Repeat with order_items (related via order_id) and products (related to order_items via product_id).
Four logical tables are now connected by three relationships. The preview grid shows fields from all tables.
5
Step 5 โ€” Rename Fields and Hide Unnecessary ColumnsSwitch to the Metadata Grid view by clicking the toggle. Rename cust_nm to "Customer Name" and prod_cat to "Product Category" for clarity. Hide the surrogate key columns (customer_id, product_id) since they are only needed for relationships, not for analysis. Right-click each and select Hide.
The Data pane on worksheets will show clean, human-readable field names with no extraneous key columns.
6
Step 6 โ€” Validate with the Preview GridSwitch back to the Data Preview view. Scan the first several hundred rows to verify that dates parse correctly, that no unexpected NULL values appear in critical fields, and that the row count is consistent with expectations. Check that the relationship indicators show matched records and review any performance warnings Tableau surfaces for large tables.
The data source is fully configured and ready for visualization. Navigate to Sheet 1 to begin building the dashboard.

Relationships vs. Joins โ€” Strengths & Limitations

One of the most consequential decisions made on the Data Source page is choosing between relationships (logical layer) and joins (physical layer). While both mechanisms combine data from multiple tables, they differ fundamentally in when and how the combination occurs, and these differences have profound implications for data accuracy and query performance.

Comparison of Relationships vs. Joins on the Data Source page
CriterionRelationships (Logical Layer)Joins (Physical Layer)
Resolution TimeAt query time โ€” Tableau generates optimized SQL per visualizationAt data source load โ€” fixed join is materialized upfront
GranularityPreserves native granularity of each table independentlyFlattens to the grain of the most detailed table, potentially duplicating rows
Aggregation AccuracyCorrect by default โ€” no risk of inflated sums from row duplicationRequires LOD expressions (FIXED, INCLUDE, EXCLUDE) to avoid over-counting
Unmatched ValuesAutomatically included โ€” behaves like a context-aware outer joinDepends on join type (inner drops non-matching rows)
Use CaseMulti-table models with different granularities (orders โ†” customers โ†” products)Combining tables at the same grain (yearly tables via union, lookup joins)
โœฆ KEY TAKEAWAY
Relationships are to joins what lazy evaluation is to eager evaluation in programming. Just as a lazy evaluator defers computation until the result is actually needed โ€” avoiding unnecessary work and preserving correctness โ€” a relationship defers the table combination until the specific fields in a visualization demand it. This is why Tableau recommends relationships as the default approach: they produce correct aggregations without requiring the analyst to reason about join fan-out problems.

Connection to Advanced Concepts โ€” Extracts, Live Connections & Governance

The Data Source page is not merely a static configuration screen โ€” it connects directly to Tableau's broader data management architecture. The choices you make here cascade into performance characteristics, refresh schedules, and governance workflows across the Tableau ecosystem.

How Data Source page concepts extend into advanced Tableau features
ConceptData Source Page RoleAdvanced Extension
Live vs. ExtractToggle between Live and Extract in the upper-right corner of the Data Source pageExtracts (.hyper files) enable incremental refresh, data source filters, and offline analysis
Data Source FiltersAdd filters via the filter area to restrict rows before they reach any worksheetCombined with row-level security and user filters for governed multi-tenant dashboards
Published Data SourcesConfigure and publish a data source to Tableau Server/Cloud for shared useEnables centralized metadata management, certification badges, and usage analytics
Custom SQLWrite SQL queries directly in the Connection Pane for complex transformationsCan incorporate parameters for dynamic queries, but may prevent Tableau from pushing down optimizations
Tableau Prep IntegrationPreview results of Prep flows as published data sources on the Data Source pageComplex ETL (pivots, fuzzy joins, regex cleaning) handled in Prep before reaching Tableau Desktop

As you advance in Tableau proficiency, the Data Source page becomes the control plane for increasingly sophisticated data architectures. Published data sources, for instance, allow a data engineering team to curate metadata, set default aggregations, and certify a data source so that downstream analysts work from a single source of truth. Virtual connections extend this further by separating connection credentials from data source definitions, enabling row-level security policies that follow the data regardless of which workbook consumes it. All of these capabilities trace back to the foundational metadata configuration you learn on the Data Source page.

Practice Problems

PROBLEM 1 โ€” CONCEPTUAL
Explain the difference between the Data Preview Grid and the Metadata Grid on Tableau's Data Source page. When would you choose to use each view, and what specific operations are more efficiently performed in the metadata view?
PROBLEM 2 โ€” BASIC CALCULATION
You connect to a CSV file and notice that the column employee_id shows a # icon and the column hire_date shows an Abc icon. What two metadata corrections should you make on the Data Source page, and what is the exact click sequence for each?
PROBLEM 3 โ€” INTERMEDIATE
You have two tables: invoices (one row per invoice) and payments (multiple rows per invoice, one per payment installment). If you use a physical-layer inner join on invoice_id, what happens to SUM(invoice_amount)? How does using a relationship instead solve this problem?
PROBLEM 4 โ€” APPLIED
Your organization has a PostgreSQL database with tables for sales transactions across 12 regional schemas (schema_us_east, schema_us_west, schema_eu, etc.), each with an identical transactions table structure. Describe the Data Source page configuration you would use to combine all regional transaction data into a single analytical data source, including how you would handle the region identification.
PROBLEM 5 โ€” CRITICAL THINKING
A colleague publishes a Tableau data source that uses physical-layer joins between five tables of varying granularity. Dashboard consumers report that revenue figures appear inflated. Your colleague suggests switching to extracts to 'fix the numbers.' Critically evaluate this suggestion and propose a principled alternative using Data Source page features.

Summary โ€” Data Source Page in Tableau

The Data Source page is Tableau's centralized interface for connecting to data, inspecting its structure, and configuring metadata before analysis begins. Its three primary zones โ€” the Connection Pane for browsing tables and schemas, the Canvas for defining relationships and joins across logical and physical layers, and the Data Preview / Metadata Grid for inspecting rows and configuring field properties โ€” work together to ensure data is correctly typed, meaningfully named, and structurally sound.

Key operations include changing data types (especially casting numeric IDs to strings), assigning geographic roles for map-ready fields, renaming and hiding fields for a clean analytical interface, and choosing between relationships versus joins โ€” preferring relationships for multi-granularity models to avoid fan-out aggregation errors. These configurations propagate to every worksheet and dashboard that uses the data source, making the Data Source page the single most impactful step in the Tableau workflow.

Varsity Tutors โ€ข Tableau โ€ข Data Source Page โ€” Use Data Source page to preview data and set metadata