The Analytics-DA-201 blueprint is split across 4 domains. Weights are the official share of the exam; see the official exam guide for the authoritative breakdown.
What you must be able to do. Choose the right connection type and combine method for a scenario, reshape and clean messy data with the correct transformation, convert field roles correctly, and migrate existing sheets to a new source without rebuilding them.
In one sentenceThe connect-and-shape core: live versus extract, relationship versus join versus union, the right field role and transformation, and Replace Data Source matching by field name.
Recall check: answer these from memory first
- A team needs to query a throttled 40-million-row source offline with fast in-memory filtering and aggregation. Which connection type fits, and why does a live connection fail the offline and throttling requirements?
- Two tables hold data at different granularity and a report must combine them without duplicating or dropping rows. Which combine method preserves each table's grain, and how does it differ from a fixed join?
- An ID number keeps getting summed when it lands in a view. What single field-role change stops Tableau aggregating it, and why?
- A workbook must be re-pointed to a structurally identical replacement source without rebuilding worksheets. What does Replace Data Source match on, and what breaks the remapping?
What it tests. Getting data into Tableau and shaping it before analysis. Connecting to files, relational databases, extracts, and published data sources, and choosing between a live connection and an extract for a scenario. Replacing the data source for existing sheets without rebuilding them. Assessing data quality and cleaning, organising fields into folders, and combining data with relationships, joins, and unions. Preparing messy spreadsheets with Data Interpreter, pivoting wide columns to rows, and splitting delimited strings. Applying the right Tableau Prep transformation, unions, joins, aggregates, filters, and pivots, and choosing the flow output type, a .hyper file, a database table, or a published data source. Customising fields by changing default properties, renaming columns, converting between discrete and continuous and between dimension and measure, and creating aliases.
How to study it. Anchor this domain on two distinctions the exam returns to again and again. First, live versus extract: an extract snapshots data into a local columnar .hyper store that queries in memory and works offline, while a live connection sends a query to the source on every interaction and shows the latest rows but fails when the source is unreachable. Build both against the same source and feel the difference. Second, the three combine methods: a relationship is a logical, per-sheet link that keeps each table at its own grain and avoids row multiplication, a join flattens tables into one result and multiplies rows when the key is not unique on the matched side, and a union appends rows of like-structured tables and matches fields by name. Drill the field-role distinctions until they are automatic, dimension versus measure and discrete versus continuous, remembering the role depends on how the field organises the view, not on its data type. Practise Replace Data Source, which remaps references by field name so a renamed field breaks its worksheets and calculations. Build a Prep flow and learn why filtering rows early shrinks every downstream step, and which output type fits which sharing need.
Easy to confuse
- A live connection versus an extract. A live connection queries the source on every interaction, so it shows the latest rows but needs the source reachable and cannot work offline; an extract is a local columnar .hyper snapshot that queries in memory, works offline and fast, and only reflects new source rows after a refresh. Choose the extract for offline access and speed against a busy source, and the live connection when interactions must reflect the latest data in near real time.
- A relationship versus a join versus a union. A relationship is a logical, per-sheet link that keeps each table at its own granularity and aggregates each at its own level without multiplying rows; a join flattens tables into one fixed result by matching on a key and can fan rows out when the key is not unique on the matched side; a union stacks rows of like-structured tables and matches fields by name. Use a relationship to combine different grains safely, a join when you genuinely need one flattened row-matched table, and a union to append more rows of the same shape.
- A dimension versus a measure, and discrete versus continuous. Dimension versus measure is about role, dimensions set the level of detail and create headers while measures supply aggregated numbers, and the role depends on how the field organises the view, not its data type. Discrete versus continuous is about how the field renders, discrete fields create separate headers while continuous fields create a quantitative axis spanning a range. An identifier number that should not be summed belongs as a discrete dimension even though it is numeric.
Worked example from the Analytics-DA-201 bank
lock_openFree sampleConnect to and Transform Datamedium
A regional sales team works offline on long-haul flights and queries a 40-million-row table on a corporate database that throttles ad-hoc analytical reads during business hours. The team needs fast filtering and aggregation in the workbook without hitting the source repeatedly. Which connection approach best fits these constraints?
- ACreate an extract so the data is stored locally for offline use and fast in-memory querying that avoids repeated load on the throttled source.check_circle Correct
- BKeep a live connection so every interaction reflects the current state of the corporate database in real time.
- CUse a live connection but lower the workbook's refresh frequency so the database receives fewer queries during business hours.
- DKeep a live connection and rely on the source database's own result cache to satisfy offline interactions.
Choose an extract over a live connection when offline access and fast in-memory querying matter more than real-time freshness. An extract materialises the source data into a local, compressed, columnar store that is queried in memory, so it serves analysis offline and reduces repeated load on a source that throttles live reads.
Why A is correct: An extract snapshots the data into a local columnar store, which works offline and serves fast filtering and aggregation from memory without querying the throttled source each time.
Why B is wrong: A live connection sends a query to the source on every interaction, which fails the offline requirement and worsens the throttling problem the team is trying to avoid.
Why C is wrong: There is no per-interaction refresh frequency to lower on a live connection; each view interaction still issues a query, so this does not solve offline access or throttling.
Why D is wrong: A source-side cache cannot serve a disconnected client; with no network the live connection has nothing to query, so offline analysis is impossible.
What you must be able to do. Write the correct calculation or LOD for a stated result, scope a table calculation so it computes over the intended marks, apply and order filters correctly including context, and choose the right structuring or mapping feature for an analytical goal.
In one sentenceThe analysis core and the heaviest domain: the right calculation and LOD grain, the right table-calc compute-using scope, the right filter order, and the right map and structuring choice.
Recall check: answer these from memory first
- A measure must show one value per customer that ignores the dimensions on the view, then be averaged across customers on a coarser view. Which LOD types do the inner and outer steps use, and why does FIXED behave differently from INCLUDE?
- A Running Total gives the wrong figure because it accumulates across rows instead of down each category. Which table-calculation property fixes it, and what do addressing and partitioning each control?
- A Top N of products must be computed against the whole data set before a region dimension filter narrows the view. Which filter type runs first to make that happen, and where does it sit in the order of operations?
- Many overlapping point marks hide where activity concentrates on a map. Which map type exposes that concentration, and how does it differ from a symbol map and a filled choropleth?
What it tests. The largest and hardest domain by a wide margin: turning shaped data into analysis. Writing date, string, logical and Boolean, number, type-conversion, aggregate, and basic spatial calculations. Building and scoping table calculations, moving and window averages, percent of total, running total, difference and percent difference, percentile, index, and ranking. Applying dimension and measure filters, Top and Bottom N, wildcard, conditional, include and exclude filters, adding filters to context, and filtering across sheets and data sources. Creating parameters that drive calculations, filters, and reference lines, including dynamic refresh. Structuring data with sets, bins, hierarchies, and groups. Mapping geographically with symbol, density, and filled choropleth maps and mark layers. Using the analytics pane for totals and subtotals, reference lines and bands, trend and average lines, distribution bands, and forecasting. Writing FIXED, INCLUDE, EXCLUDE, and nested level of detail calculations.
How to study it. This is 41 per cent of the exam, so it earns the most time and the most deliberate drilling. Treat level of detail and table calculations as the two highest-yield, highest-difficulty topics. For LOD, build a single worksheet where you can read off all three results side by side: FIXED ignores the view's dimensions and aggregates strictly at the dimensions named inside it, INCLUDE adds a finer dimension to the view grain, and EXCLUDE removes one to coarsen it. Then learn the order of operations that the exam tests directly, that context filters run before FIXED expressions while ordinary dimension filters run after, so promoting a filter to context is what narrows a FIXED aggregate. For table calculations, stop thinking about the menu name and start thinking about compute-using scope: the addressing fields set the direction the calculation moves and the unnamed dimensions form the partition it restarts within, so the same Running Total or Percent of Total gives a different answer with Table across, Pane down, or Cell. Drill the calculation-function pairs the bank leans on: DATEDIFF counts calendar boundaries crossed not complete elapsed months, COUNT tallies non-nulls while COUNTD counts distinct values, IF tests arbitrary conditions while CASE matches exact values, and INT truncates while FLOAT keeps decimals. For maps, separate symbol, density, and filled: a symbol map keeps each location a discrete sized or coloured mark, a density map blends overlapping marks into an intensity gradient, and a filled choropleth shades whole areas and needs an area-level geographic role. For sets, parameters, and groups, learn what is dynamic and recomputes on refresh versus what is a fixed manual list.
Easy to confuse
- FIXED versus INCLUDE versus EXCLUDE level of detail expressions. FIXED aggregates strictly at the dimensions named inside it and ignores whatever dimensions are on the view; INCLUDE adds the named dimension to the view's grain so an inner aggregate can be rolled up by an outer one; EXCLUDE removes the named dimension from the view grain to return a coarser aggregate. The tell is the view: FIXED is independent of it, INCLUDE refines it, and EXCLUDE coarsens it, so the same dimension name gives three different results.
- A table calculation's compute-using scope, Table versus Pane versus Cell, and addressing versus partitioning. A table calculation's result depends on which marks it runs over: the addressing fields set the direction it moves (across, down) and the unnamed dimensions form the partition it restarts within. Table scope spans the whole view, Pane scope restarts within each pane, and Cell scope is per cell, so a Running Total or Percent of Total gives a different answer under each. Read the required denominator or accumulation grain, then set compute-using to match it rather than trusting the default.
- Context filters and the filter order of operations versus ordinary dimension filters. Context filters are evaluated first and create a smaller working subset, so they run before FIXED expressions and before Top N; ordinary dimension filters run after FIXED expressions, so they cannot change a FIXED aggregate. When a scenario needs a Top N or a FIXED total computed against a narrowed data set, the fix is to promote the relevant filter to context, not to add another ordinary filter.
Worked example from the Analytics-DA-201 bank
lock_openFree sampleExplore and Analyze Datamedium
A subscriptions dataset has a [Signup Date] and a [Cancel Date] field, both stored as dates. An analyst needs a calculated field that returns the whole number of complete months each customer stayed subscribed, so that a customer who signed up on 15 January and cancelled on 14 March counts as one month rather than two. Which calculation returns the correct result?
// Sample row:
// [Signup Date] = 2024-01-15
// [Cancel Date] = 2024-03-14
// Expected result = 1
- ADATEDIFF('month', [Cancel Date], [Signup Date]) - IIF(DAY([Cancel Date]) < DAY([Signup Date]), 1, 0)
- BDATEPART('month', [Cancel Date]) - DATEPART('month', [Signup Date]) - IIF(DAY([Cancel Date]) < DAY([Signup Date]), 1, 0)
- CDATEDIFF('month', [Signup Date], [Cancel Date]) + IIF(DAY([Cancel Date]) < DAY([Signup Date]), 1, 0)
- DDATEDIFF('month', [Signup Date], [Cancel Date]) - IIF(DAY([Cancel Date]) < DAY([Signup Date]), 1, 0)check_circle Correct
Understand that DATEDIFF with the 'month' part counts calendar boundaries crossed, not complete elapsed months. DATEDIFF('month', start, end) counts how many times the month boundary is crossed between the two dates, regardless of the day component, so it reports two for 15 January to 14 March. To get complete elapsed months you subtract one whenever the end day has not yet reached the start day.
Why A is wrong: The day-adjustment is correct but the two date arguments are reversed, so DATEDIFF returns a negative value for any customer who cancels after signing up. The dates must run start then end.
Why B is wrong: Subtracting month numbers ignores the year, so it miscounts across year boundaries and returns a negative figure when the cancel month is numerically lower than the signup month.
Why C is wrong: Adding rather than subtracting one inflates the count further; DATEDIFF already over-counts when the end day is earlier, so the correction must reduce the total, not increase it.
Why D is correct: DATEDIFF with 'month' counts calendar-month boundaries crossed, so it over-counts by one when the end day has not yet reached the start day; subtracting one in that case yields complete elapsed months.
What you must be able to do. Match the right chart type to an analytical question, build dashboards with the correct layout and container behaviour, add the interactivity action that produces the intended effect, and format and lay out responsively without duplicating sheets.
In one sentenceThe build core: the right chart for the question, the right layout and container behaviour, the right interactivity action, and responsive formatting on shared sheets.
Recall check: answer these from memory first
- A view must plot monthly revenue as columns and a running margin percentage as a line, with the two measures on independent scales. Which chart type fits, and why do a stacked bar and a single shared axis fail?
- A click on a mark should emphasise the matching marks in the target while keeping the rest visible for context. Which action type does that, and how does it differ from a filter action?
- A dashboard zone must appear only when a Boolean condition is true. Which dashboard feature controls that, and what kind of field or parameter does it require?
- A custom brand colour set must be reusable across a workbook's discrete dimension. Where is that categorical palette registered, and what file holds it?
What it tests. Building the visuals, dashboards, and narratives that carry the analysis. Constructing core chart types from scratch, bar, line, pie, scatter, histogram, tree map, box plot, dual axis, and combo, and sorting including custom sorts. Combining sheets into dashboards using tiled and floating layout, horizontal and vertical containers and distribute-evenly, and adding objects such as images and navigation. Building stories with story points. Adding interactivity with filter, highlight, URL, set, and parameter actions, dynamic zone visibility, navigation buttons, and show or hide buttons. Formatting with colour, fonts, custom palettes registered in Preferences, shapes, annotations, custom tooltips and viz in tooltip, padding, gridlines and banding, and responsive device layouts that rearrange the same shared sheets rather than duplicating them.
How to study it. Lead with chart-type selection, because the exam frames it as matching a chart to an analytical question. Drill the cues: two measures on very different scales call for a dual-axis chart with independent axes, not a stacked bar or a shared single axis; the relationship between two measures across records calls for a scatter plot; the frequency distribution of one continuous measure calls for a histogram with equal-width bins; proportional parts of nested categories call for a tree map; and comparing distributions and outliers across categories calls for a box plot with disaggregated marks. Then learn the four interactivity actions by what they do to the target, because the bank tests them as a set: a filter action removes non-matching rows, a highlight action keeps all marks and emphasises the match, a set action rewrites a set's membership from the selection, and a parameter action passes one selected value into a parameter. Separate the toggles: dynamic zone visibility shows or hides a zone based on a Boolean field or parameter, a navigation button jumps to another sheet or dashboard, and a show or hide button toggles a floating container in place. For layout, learn tiled versus floating and horizontal versus vertical containers, and that device layouts rearrange the same linked sheets so a source edit propagates to every layout. For formatting, know that a reusable custom palette is registered in Preferences.tps in My Tableau Repository and that Format Workbook sets fonts once for the whole workbook.
Easy to confuse
- A dual-axis chart versus a stacked bar versus a single shared axis for two measures. A dual-axis chart places two measures on separate, independently scaled axes so a currency value and a percentage stay readable together; a stacked bar forces both onto one axis and implies the parts sum to a whole, which is wrong for a rate and a value; a single shared axis flattens the smaller-scaled measure against the larger one. For two measures whose scales differ greatly, the dual-axis combination chart is the documented choice.
- A filter action versus a highlight action. A filter action removes the non-matching rows from the target sheet so only the selected data remains; a highlight action keeps every mark in the target and merely emphasises the matching ones while dimming the rest, preserving full context. Choose a filter action to drill the target down to the selection and a highlight action to spotlight without losing the surrounding data.
- A set action versus a parameter action. A set action writes the selected marks into a named set, so set-dependent calculations respond to whatever the viewer selects; a parameter action passes a single selected value into a parameter, which can then drive a calculation, filter, or reference line. Use a set action when the interaction must change a multi-member membership and a parameter action when one selected value should drive the rest.
Worked example from the Analytics-DA-201 bank
lock_openFree sampleCreate Contenteasy
A regional sales lead wants a single view that plots monthly revenue as columns and the running profit margin percentage as a line, with the two measures using independent vertical axes because their scales differ greatly. Which chart type meets this requirement?
- AA dual-axis combination chart with one measure as bars and the other as a linecheck_circle Correct
- BA stacked bar chart that layers both measures into a single set of columns
- CA pie chart split into slices for revenue and margin
- DA single-axis line chart drawing both measures against the same scale
Recognise that a dual-axis chart is the correct way to display two measures with very different scales in one view. A dual-axis chart synchronises two measures over the same dimension while giving each its own scale, so a large currency measure and a small percentage measure stay legible together rather than one swamping the other.
Why A is correct: A dual-axis chart places two measures on separate, independently scaled vertical axes, and combining bar and line marks lets revenue and margin share one view despite their different ranges.
Why B is wrong: Stacking is tempting for combining two measures, but it forces both onto one shared axis and implies the parts sum to a total, which is wrong for a percentage and a currency value.
Why C is wrong: A pie chart shows parts of a whole at a single point in time and cannot display a monthly trend across two differently scaled measures.
Why D is wrong: Drawing both on one axis is the natural first attempt, but the percentage line would be flattened against the much larger revenue scale, defeating the comparison.
What you must be able to do. Publish content so its data is reachable by others, schedule the correct refresh type, choose between an alert and a subscription, and apply site roles and permissions correctly, including the precedence rules.
In one sentenceThe share-and-govern core: publish local-file data as an extract, pick the right refresh type, distinguish an alert from a subscription, and respect the site-role cap and Deny precedence.
Recall check: answer these from memory first
- A workbook built on a local Excel file must be viewable by colleagues when the author's laptop is off. What must be done during publishing, and why does leaving the live connection fail?
- A source only ever appends rows and the refresh must stay cheap. Which refresh type fits, and what kind of change does it silently miss?
- A user must be emailed when a tracked sales figure crosses a threshold, not on a fixed schedule. Which feature is that, and how does it differ from a subscription?
- A permission rule grants a capability but the user still cannot use it. Which two governance rules explain that, the role cap and the precedence of an explicit Deny?
What it tests. The smallest domain by weight: getting content onto a site and keeping it useful. Publishing workbooks, data sources, and Prep flows from Desktop or Prep, and exporting content as a crosstab, image, PDF, or PowerPoint. Including an extract when publishing a workbook built on a local file so the data travels with it, and using Tableau Bridge to keep a published live connection reading on-premises file sources. Scheduling extract refreshes on Tableau Cloud and Tableau Server, including the difference between a full and an incremental refresh, central server schedules versus per-task Cloud frequencies, and Run Now. Creating data-driven alerts and subscriptions, saving custom views, understanding site roles and permission capabilities, and customising and distributing a published workbook including republishing in place.
How to study it. This domain is only 9 per cent, so study it for accuracy on a few high-frequency facts rather than depth. Lock down the publishing-with-local-data rule first: a workbook built on a local Excel or file source must include an extract when published, or colleagues see an error when your machine is off, because Tableau Cloud never reaches back to fetch local files. Learn the refresh distinctions, a full refresh reloads all rows while an incremental refresh appends only new rows keyed on an increasing field and therefore misses edits and deletes, and Run Now updates an extract immediately while leaving the recurring schedule in place. Separate the two delivery mechanisms cleanly: a data-driven alert fires when a tracked numeric value crosses a threshold, while a subscription emails a view on a recurring schedule regardless of the data, with an option to send only when the data has changed. For governance, learn that a site role caps a user's maximum capability so a permission rule cannot grant beyond it, that an explicit Deny on a capability overrides any inherited Allow, and that web editing needs its own Web Edit capability separate from viewing. Finally, know that a custom view saves one user's personalised filter state without changing the workbook for anyone else, and that republishing with the same project and name preserves the URL, permissions, and subscriptions.
Easy to confuse
- A data-driven alert versus a subscription. A data-driven alert is triggered by data: it emails recipients when a continuous numeric measure shown on an axis crosses a defined threshold; a subscription is triggered by time: it emails a snapshot of a view on a recurring schedule regardless of whether the data changed, with an optional send-only-if-changed setting. Choose an alert for a threshold event and a subscription for a regular scheduled snapshot.
- A full extract refresh versus an incremental refresh. A full refresh reloads every row from the source, so it captures edits and deletes but costs more; an incremental refresh appends only rows above a key column's last value, so it is cheap but silently misses updates and deletions to existing rows and needs an occasional full refresh to correct them. Use incremental only for append-only sources, and a full refresh when existing rows can change.
- A site role versus a permission capability versus an explicit Deny. A site role caps a user's maximum capability, so a content permission rule can only grant within that cap and never beyond it; a permission capability is an individual allow or deny on a piece of content; and an explicit Deny on a capability overrides an Allow inherited from any other group. If access is wrong, check the role cap first, then look for a Deny that is winning over an inherited Allow.
Worked example from the Analytics-DA-201 bank
lock_openFree samplePublish and Manage Content on Tableau Server and Tableau Cloudeasy
An analyst has built a workbook in Tableau Desktop that connects directly to a local Excel file saved on their laptop. They want to publish the workbook to Tableau Cloud so colleagues can view it without the analyst's laptop being switched on. What should the analyst do during publishing to make the data available to other users?
- APublish the workbook with the connection left as a live connection to the local Excel file path.
- BExport the workbook as a packaged PDF and email that file to each colleague instead.
- CPublish the workbook and rely on Tableau Cloud automatically uploading the Excel file from the laptop later.
- DInclude an extract of the Excel data in the published workbook so the data travels to Tableau Cloud.check_circle Correct
Understand that publishing a workbook built on a local file requires an extract so the data travels to the server or site. Local file connections are only resolvable from the authoring machine, so an extract is needed to embed a data snapshot inside the published workbook; this makes the data reside on Tableau Cloud and stay available to all viewers independent of the author's device.
Why A is wrong: A live connection to a local file path is only reachable from the analyst's own machine, so colleagues on Tableau Cloud would see an error when the laptop is off; this is the very problem the analyst is trying to avoid.
Why B is wrong: A PDF export produces a static document rather than an interactive published workbook on Tableau Cloud, so it does not meet the goal of giving colleagues a live, viewable workbook on the site.
Why C is wrong: Tableau Cloud never reaches back into a user's laptop to fetch local files on its own, so this imagined automatic upload does not exist and the data would remain unavailable to colleagues.
Why D is correct: Including an extract embeds a snapshot of the Excel data inside the published workbook, so it lives on Tableau Cloud and remains available to colleagues regardless of whether the analyst's laptop is switched on.