How to Overlay Maps in Tableau
Overlaying multiple sets of geographic data on one map can turn a flat list of addresses and regions into a powerful analytical tool. With Tableau, you can visualize things like store locations layered over sales territories or shipping routes on top of customer clusters. This guide will walk you through exactly how to combine different map layers in Tableau, starting with the classic dual-axis method and then moving to the newer, more intuitive map layers feature.
Why Overlay Maps? Uncovering Spatial Relationships
Creating a map with a single set of data points, like plotting all your customer locations, is useful. But the real insights often appear when you layer a second, or even third, set of data on top. This technique helps you understand the relationship between different geographic elements.
Here are a few common scenarios where overlaying maps is incredibly valuable:
- Sales and Operations: A retail company could plot its store locations (as large dots) on top of a map showing customer sales volume by ZIP code (as a color-shaded area). This instantly reveals which stores are well-positioned and which areas are underserved.
- Logistics and Supply Chain: A distribution company could map its warehouses and delivery routes, then overlay them with customer addresses. This visualization helps in identifying opportunities to optimize routes and reduce delivery times.
- Public Health Analysis: A health organization could create a map with hospital locations and overlay it with a heat map showing population density or demographic data to assess healthcare accessibility.
- Environmental Science: Researchers might layer data on industrial sites over maps showing reported pollution levels to identify potential correlations.
By bringing different datasets together visually, you move beyond simple location plotting and start asking deeper analytical questions about how different factors interact spatially.
Free PDF · the crash course
AI Agents for Marketing Crash Course
Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.
Prepping Your Data for Mapping in Tableau
Before you start building, make sure your data is ready. Tableau is excellent at recognizing geographic data, but a little preparation goes a long way. To create an overlay, you'll need at least two distinct sets of geographic fields in your data source(s). For example:
- Customer locations based on City and State.
- Store locations based on specific Latitude and Longitude coordinates.
- Sales territories defined by State or Country.
Tableau can generate latitude and longitude values for recognized geographic roles (like City, State, ZIP Code). For more specific locations like store addresses or custom landmarks, you’ll achieve the best results by having dedicated latitude and longitude columns in your dataset.
If your geographic data exists in separate tables (e.g., a customer table and a store table), you will need to join them in Tableau's "Data Source" tab on a common field before you begin building your map.
How to Overlay Maps: The Dual-Axis Method
The "dual-axis" chart is a classic Tableau technique used to overlay two different charts on top of one another. We can apply the same logic to maps. Here’s a step-by-step breakdown using an example where we want to map customer cities and store locations from a single dataset.
Step 1: Create Your First Map (Base Layer)
First, create a map with your primary geographic data. This will be your base layer.
- In a new sheet, drag your Longitude field to the Columns shelf and your Latitude field to the Rows shelf. If your data uses recognized geographic fields like "City" or "State," you can just double-click that field, and Tableau will automatically generate the map.
- Drag your first geographic dimension (e.g., Customer City) to the Detail shelf on the Marks card. You should now see dots representing each city.
- To make it more interesting, drag a measure like Sales or Number of Customers to the Color or Size shelf. Now, your dots will give you quick visual feedback on performance.
At this point, you have a standard map visualizing your customer locations.
Step 2: Duplicate the Map to Create a Second Layer
Next, we'll create a second map right next to the first one within the same worksheet.
Hold down the Ctrl key (or Cmd key on a Mac) and drag the Longitude pill that's currently on the Columns shelf to the right of itself. This action duplicates the field and creates an identical second map side-by-side.
Step 3: Configure Your Second Map Layer
Now you can configure this second map to show your other set of geographic data. Notice that your Marks card has changed. It now has three tabs: All, a tab for your first map (e.g., AVG(Longitude)), and a tab for your new, second map (e.g., AVG(Longitude) (2)).
- Click on the Marks card tab for the second map to activate it.
- Remove the fields that are currently defining that map's marks (e.g., remove Customer City from Detail, Sales from Color).
- Drag your second set of geographic data onto this Marks card. For example, if you have specific store locations, drag Store Latitude to Rows and Store Longitude to Columns for this specific map mark layout, then add Store Name to the Detail shelf.
- Change the Mark Type for this layer to something different so you can easily distinguish it - perhaps a "Shape" or a simple "Square." This helps visually separate the two layers. Make this map meaningful by dragging a relevant measure, like Store Profit, onto its Color shelf.
Step 4: Combine the Maps with a Dual Axis
Finally, it's time to layer the two maps.
- In the Columns shelf, right-click the second Longitude pill (the one you created in Step 2).
- Select Dual Axis from the menu.
Your two maps will now be merged into one, with the second map layered on top of the first. You can now use the individual Marks cards for each layer to fine-tune the color, size, shape, and transparency until your visualization is clear and insightful.
A More Modern Way: Using Map Layers (Tableau 2020.4+)
If you're using a modern version of Tableau, there's an even easier and more flexible way to achieve this: map layers. This feature allows you to add multiple geographic layers directly to a single map visualization without the workaround of a dual-axis chart.
Here’s how to do it, using an example of layering city-level sales dots over a state-level profit map.
Step 1: Create Your Base Map
Start by creating the initial map that will serve as the background or base layer.
- Double-click a geographic field like State. Tableau will create a point map.
- In the Marks card, change the Mark Type from "Automatic" to "Map." This will turn your points into filled-in shapes (a choropleth map).
- Drag a measure like Profit onto the Color shelf. Your states are now color-coded based on their profitability.
Step 2: Add Your Second Layer
Now, simply drag your next geographic field directly onto the map.
Drag the City field from the Data pane and hover over the map visualization. A small box will appear in the top-left corner that says Add a Marks Layer. Drop the City field onto that box.
Free PDF · the crash course
AI Agents for Marketing Crash Course
Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.
Step 3: Customize Each Layer Independently
A new Marks layer for "City" has been added to your Marks card. Just like with the dual-axis method, you have an independent set of controls for this new layer.
- Click on the "City" Marks layer to select it.
- Leave its mark type as "Circle."
- Drag a measure like Sales to the Size shelf. Now you have circles over each city, where the size of the circle represents the sales volume.
The beauty of this method is its simplicity and flexibility. You can add more than just two layers! For example, you could add another layer for distribution centers using their specific latitude and longitude coordinates.
Tips for Better Map Visualizations
- Play with Transparency: On the Marks card for your top layer, click on "Color" and adjust the "Opacity" slider. Reducing the opacity makes your top marks semi-transparent, allowing the background layer to show through more clearly.
- Use Different Shapes and Sizes: Differentiate your layers by using distinct mark types (circles, squares, custom shapes). Using size to encode a key measure is a great way to add another dimension of analysis.
- Customize Your Tooltips: Each map layer has its own tooltip. Customize them to show relevant information when a user hovers over a data point. Your city marks can show city-specific sales data, while your state layer shows aggregate profit.
- Keep it Clean: Don't try to cram too much information onto a single map. Too many overlapping marks can make a visualization confusing. Use filters to allow users to drill down into specific regions or data categories.
Final Thoughts
Overlaying data in Tableau maps, whether you use the dual-axis method or the newer map layers feature, is a fantastic way to uncover spatial patterns and tell a more compelling data story. It elevates your analysis from simply knowing where things are to understanding how different geographic elements relate to one another.
Of course, getting all your data sources connected and spending time to build these multi-layered dashboards can still pull you or your team away from other priorities. We designed Graphed to remove that friction completely. Instead of manually joining data and configuring visualizations step-by-step, we let you use plain English to get straight to the answer. Just connect your apps, then ask, “Build a dashboard that maps our Shopify revenue by state and overlays it with our top-performing Facebook Ad campaigns by city.” Graphed builds the interactive dashboard instantly, using live data, so you spend less time building and more time acting on the insights.
Related Articles
How to Create Facebook Ads API for Claude Code
Create a Meta Marketing API access token that never expires, using a system user, so Claude Code can pull Facebook ad reports and manage campaigns.
ClickHouse vs Postgres: When to Switch to Columnar
Comparing ClickHouse vs PostgreSQL means matching storage architecture to workload. Row storage wins for transactions. Columnar wins for scan-heavy analytics.
Google Ads for Orthodontists: Get More Booked Consults
Most orthodontic Google Ads campaigns waste money on low-intent searches. The problem is structure, not the platform.